forked from
jollywhoppers.com/witchsky.app
Bluesky app fork with some witchin' additions 馃挮
1// @ts-check
2import js from '@eslint/js'
3import tseslint from 'typescript-eslint'
4import simpleImportSort from 'eslint-plugin-simple-import-sort'
5import globals from 'globals'
6
7export default tseslint.config(
8 // Global ignores
9 {
10 ignores: ['dist/**', 'node_modules/**'],
11 },
12
13 // Base JS recommended rules
14 js.configs.recommended,
15
16 // TypeScript rules with type checking
17 ...tseslint.configs.recommendedTypeChecked,
18
19 // Main configuration
20 {
21 files: ['**/*.{js,jsx,ts,tsx}'],
22 plugins: {
23 'simple-import-sort': simpleImportSort,
24 },
25 languageOptions: {
26 ecmaVersion: 'latest',
27 sourceType: 'module',
28 globals: {
29 ...globals.browser,
30 },
31 parserOptions: {
32 projectService: true,
33 tsconfigRootDir: import.meta.dirname,
34 },
35 },
36 rules: {
37 'simple-import-sort/imports': 'warn',
38 'simple-import-sort/exports': 'warn',
39 'no-else-return': 'off',
40 '@typescript-eslint/no-require-imports': 'off',
41 '@typescript-eslint/no-unused-vars': [
42 'error',
43 {
44 argsIgnorePattern: '^_',
45 varsIgnorePattern: '^_.+',
46 caughtErrors: 'none',
47 ignoreRestSiblings: true,
48 },
49 ],
50 },
51 },
52)