| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- // For more info, see https://github.com/storybookjs/eslint-plugin-storybook#configuration-flat-config-format
- import storybook from 'eslint-plugin-storybook';
- import prettier from 'eslint-config-prettier';
- import { includeIgnoreFile } from '@eslint/compat';
- import js from '@eslint/js';
- import svelte from 'eslint-plugin-svelte';
- import globals from 'globals';
- import { fileURLToPath } from 'node:url';
- import ts from 'typescript-eslint';
- import svelteConfig from './svelte.config.js';
- const gitignorePath = fileURLToPath(new URL('./.gitignore', import.meta.url));
- export default ts.config(
- includeIgnoreFile(gitignorePath),
- js.configs.recommended,
- ...ts.configs.recommended,
- ...svelte.configs.recommended,
- prettier,
- ...svelte.configs.prettier,
- {
- languageOptions: {
- globals: { ...globals.browser, ...globals.node }
- },
- rules: {
- // typescript-eslint strongly recommend that you do not use the no-undef lint rule on TypeScript projects.
- // see: https://typescript-eslint.io/troubleshooting/faqs/eslint/#i-get-errors-from-the-no-undef-rule-about-global-variables-not-being-defined-even-though-there-are-no-typescript-errors
- 'no-undef': 'off',
- 'svelte/no-at-html-tags': 'off'
- }
- },
- {
- files: ['**/*.svelte', '**/*.svelte.ts', '**/*.svelte.js'],
- languageOptions: {
- parserOptions: {
- projectService: true,
- extraFileExtensions: ['.svelte'],
- parser: ts.parser,
- svelteConfig
- }
- }
- },
- {
- // Exclude Storybook files from main ESLint rules
- ignores: ['.storybook/**/*']
- },
- storybook.configs['flat/recommended']
- );
|