Files
zep/eslint.config.js
T
2026-04-04 17:41:43 -04:00

90 lines
2.0 KiB
JavaScript

import globals from "globals";
import js from "@eslint/js";
import tseslint from "typescript-eslint";
import svelte from "eslint-plugin-svelte";
import svelteParser from "svelte-eslint-parser";
import { defineConfig } from "eslint/config";
export default defineConfig([
tseslint.configs.recommended,
js.configs.recommended,
...svelte.configs["flat/recommended"],
{
ignores: [
"dist/",
"**/node_modules/",
".git/",
"coverage/",
"vite.config.ts",
"tsconfig.json",
"tsconfig.app.json",
"tsconfig.node.json",
"spacetime.json",
"spacetime.local.json",
"package.json",
"pnpm-lock.yaml",
".windsurfrules",
"AGENTS.md",
"CHANGELOG.md",
"CLAUDE.md",
"index.html",
"LICENSE",
"README.md",
".github/",
".cursor/",
"spacetimedb/",
"src/module_bindings/",
"src-tauri/**",
],
},
{
languageOptions: {
globals: {
...globals.browser,
...globals.node,
},
},
},
{
files: ["**/*.ts"],
languageOptions: {
parser: tseslint.parser,
parserOptions: {
projectService: true,
extraFileExtensions: [".svelte"],
},
},
},
{
files: ["**/*.svelte", "**/*.svelte.ts"],
languageOptions: {
parser: svelteParser,
parserOptions: {
parser: tseslint.parser,
projectService: true,
extraFileExtensions: [".svelte"],
svelteFeatures: {
runes: true,
},
},
},
},
{
rules: {
"no-unused-vars": "off",
"@typescript-eslint/no-explicit-any": "off",
"@/no-trailing-spaces": "warn",
"@typescript-eslint/no-unused-vars": [
"warn",
{
argsIgnorePattern: "^_",
varsIgnorePattern: "^_",
},
],
"svelte/require-each-key": "off",
"svelte/no-unused-svelte-ignore": "off",
"svelte/prefer-svelte-reactivity": "off",
},
},
]);