56 lines
1.5 KiB
JavaScript
56 lines
1.5 KiB
JavaScript
// @ts-check
|
||
|
||
import eslint from "@eslint/js";
|
||
import tseslint from "typescript-eslint";
|
||
import eslintConfigPrettier from "eslint-config-prettier/flat";
|
||
import { globalIgnores } from "eslint/config";
|
||
import svelte from "eslint-plugin-svelte";
|
||
import globals from "globals";
|
||
import svelteConfig from "./svelte.config.js";
|
||
|
||
export default tseslint.config(
|
||
eslint.configs.recommended,
|
||
tseslint.configs.recommended,
|
||
tseslint.configs.stylistic,
|
||
...svelte.configs.recommended,
|
||
eslintConfigPrettier,
|
||
{
|
||
rules: {
|
||
"@typescript-eslint/no-unused-vars": [
|
||
"error",
|
||
{
|
||
argsIgnorePattern: "^_",
|
||
varsIgnorePattern: "^_",
|
||
caughtErrorsIgnorePattern: "^_",
|
||
},
|
||
],
|
||
},
|
||
},
|
||
[globalIgnores(["./android", "./dist", "./src-tauri"])],
|
||
{
|
||
languageOptions: {
|
||
globals: {
|
||
...globals.browser,
|
||
},
|
||
},
|
||
},
|
||
{
|
||
files: ["**/*.svelte", "**/*.svelte.ts", "**/*.svelte.js"],
|
||
languageOptions: {
|
||
parserOptions: {
|
||
projectService: true,
|
||
extraFileExtensions: [".svelte"], // Add support for additional file extensions, such as .svelte
|
||
parser: tseslint.parser,
|
||
// We recommend importing and specifying svelte.config.js.
|
||
// By doing so, some rules in eslint-plugin-svelte will automatically read the configuration and adjust their behavior accordingly.
|
||
// While certain Svelte settings may be statically loaded from svelte.config.js even if you don’t specify it,
|
||
// explicitly specifying it ensures better compatibility and functionality.
|
||
svelteConfig,
|
||
},
|
||
},
|
||
rules: {
|
||
"no-undef": "off",
|
||
},
|
||
},
|
||
);
|