This repository has no description
3.5 kB
137 lines
1// For more info, see https://github.com/storybookjs/eslint-plugin-storybook#configuration-flat-config-format
2import storybook from "eslint-plugin-storybook";
3
4import js from '@eslint/js';
5import prettierPlugin from 'eslint-plugin-prettier';
6import tseslint from '@typescript-eslint/eslint-plugin';
7import tsparser from '@typescript-eslint/parser';
8
9export default [js.configs.recommended, {
10 ignores: [
11 'src/webapp/**',
12 'dist/**',
13 'node_modules/**',
14 'src/modules/atproto/infrastructure/lexicon/**',
15 'src/webapp/next-env.d.ts',
16 ],
17}, {
18 files: ['**/*.js'],
19 languageOptions: {
20 ecmaVersion: 2022,
21 sourceType: 'script',
22 globals: {
23 console: 'readonly',
24 process: 'readonly',
25 Buffer: 'readonly',
26 __dirname: 'readonly',
27 __filename: 'readonly',
28 module: 'readonly',
29 require: 'readonly',
30 exports: 'readonly',
31 global: 'readonly',
32 setTimeout: 'readonly',
33 },
34 },
35 plugins: {
36 prettier: prettierPlugin,
37 },
38 rules: {
39 'prettier/prettier': 'error',
40 'no-unused-vars': 'warn',
41 'no-console': 'warn',
42 },
43}, {
44 files: ['**/*.ts'],
45 plugins: {
46 '@typescript-eslint': tseslint,
47 prettier: prettierPlugin,
48 },
49 languageOptions: {
50 parser: tsparser,
51 ecmaVersion: 2022,
52 sourceType: 'module',
53 globals: {
54 console: 'readonly',
55 process: 'readonly',
56 Buffer: 'readonly',
57 __dirname: 'readonly',
58 __filename: 'readonly',
59 module: 'readonly',
60 require: 'readonly',
61 exports: 'readonly',
62 global: 'readonly',
63 fetch: 'readonly',
64 // Jest globals
65 describe: 'readonly',
66 test: 'readonly',
67 it: 'readonly',
68 expect: 'readonly',
69 beforeAll: 'readonly',
70 beforeEach: 'readonly',
71 afterAll: 'readonly',
72 afterEach: 'readonly',
73 jest: 'readonly',
74 URLSearchParams: 'readonly',
75 setTimeout: 'readonly',
76 NodeJS: 'readonly',
77 clearTimeout: 'readonly',
78 setImmediate: 'readonly',
79 setInterval: 'readonly',
80 clearInterval: 'readonly',
81 URL: 'readonly',
82 },
83 },
84 rules: {
85 'prettier/prettier': 'error',
86 'no-unused-vars': 'off', // Turn off base rule
87 '@typescript-eslint/no-unused-vars': 'warn',
88 'no-console': 'warn',
89 },
90}, {
91 files: ['**/*.test.ts', '**/*.spec.ts'],
92 languageOptions: {
93 parser: tsparser,
94 ecmaVersion: 2022,
95 sourceType: 'module',
96 globals: {
97 console: 'readonly',
98 process: 'readonly',
99 Buffer: 'readonly',
100 __dirname: 'readonly',
101 __filename: 'readonly',
102 module: 'readonly',
103 require: 'readonly',
104 exports: 'readonly',
105 global: 'readonly',
106 fetch: 'readonly',
107 // Jest globals
108 describe: 'readonly',
109 test: 'readonly',
110 it: 'readonly',
111 expect: 'readonly',
112 beforeAll: 'readonly',
113 beforeEach: 'readonly',
114 afterAll: 'readonly',
115 afterEach: 'readonly',
116 jest: 'readonly',
117 // Browser globals for e2e tests using Playwright
118 document: 'readonly',
119 window: 'readonly',
120 navigator: 'readonly',
121 location: 'readonly',
122 setTimeout: 'readonly',
123 NodeJS: 'readonly',
124 clearTimeout: 'readonly',
125 },
126 },
127 plugins: {
128 '@typescript-eslint': tseslint,
129 prettier: prettierPlugin,
130 },
131 rules: {
132 'prettier/prettier': 'error',
133 'no-unused-vars': 'off',
134 '@typescript-eslint/no-unused-vars': 'warn',
135 'no-console': 'warn',
136 },
137}, ...storybook.configs["flat/recommended"]];