@@ -22,6 +22,8 @@ export default defineAddon({
22
22
23
23
sv . devDependency ( 'eslint' , '^9.18.0' ) ;
24
24
sv . devDependency ( '@eslint/compat' , '^1.2.5' ) ;
25
+ sv . devDependency ( 'globals' , '^15.14.0' ) ;
26
+ sv . devDependency ( 'eslint-plugin-svelte' , '^3.0.0' ) ;
25
27
sv . devDependency ( 'globals' , '^16.0.0' ) ;
26
28
sv . devDependency ( 'eslint-plugin-svelte' , '^2.46.1' ) ;
27
29
sv . devDependency ( '@eslint/js' , '^9.18.0' ) ;
@@ -58,6 +60,8 @@ export default defineAddon({
58
60
AstKinds . ExpressionKind | AstTypes . SpreadElement | AstTypes . ObjectExpression
59
61
> = [ ] ;
60
62
63
+ imports . addDefault ( ast , './svelte.config.js' , 'svelteConfig' ) ;
64
+
61
65
const gitIgnorePathStatement = common . statementFromString (
62
66
'\nconst gitignorePath = fileURLToPath(new URL("./.gitignore", import.meta.url));'
63
67
) ;
@@ -74,7 +78,7 @@ export default defineAddon({
74
78
eslintConfigs . push ( common . createSpreadElement ( tsConfig ) ) ;
75
79
}
76
80
77
- const svelteConfig = common . expressionFromString ( 'svelte.configs["flat/ recommended"] ' ) ;
81
+ const svelteConfig = common . expressionFromString ( 'svelte.configs. recommended' ) ;
78
82
eslintConfigs . push ( common . createSpreadElement ( svelteConfig ) ) ;
79
83
80
84
const globalsBrowser = common . createSpreadElement (
@@ -92,10 +96,24 @@ export default defineAddon({
92
96
93
97
if ( typescript ) {
94
98
const svelteTSParserConfig = object . create ( {
95
- files : common . expressionFromString ( '["**/*.svelte"]' ) ,
99
+ files : common . expressionFromString ( '["**/*.svelte", "**/*.svelte.ts", "**/*.svelte.js"]' ) ,
100
+ ignores : common . expressionFromString ( '["eslint.config.js", "svelte.config.js"]' ) ,
101
+ languageOptions : object . create ( {
102
+ parserOptions : object . create ( {
103
+ projectService : common . expressionFromString ( 'true' ) ,
104
+ extraFileExtensions : common . expressionFromString ( "['.svelte']" ) ,
105
+ parser : common . expressionFromString ( 'ts.parser' ) ,
106
+ svelteConfig : common . expressionFromString ( 'svelteConfig' )
107
+ } )
108
+ } )
109
+ } ) ;
110
+ eslintConfigs . push ( svelteTSParserConfig ) ;
111
+ } else {
112
+ const svelteTSParserConfig = object . create ( {
113
+ files : common . expressionFromString ( '["**/*.svelte", "**/*.svelte.js"]' ) ,
96
114
languageOptions : object . create ( {
97
115
parserOptions : object . create ( {
98
- parser : common . expressionFromString ( 'ts.parser ' )
116
+ svelteConfig : common . expressionFromString ( 'svelteConfig ' )
99
117
} )
100
118
} )
101
119
} ) ;
0 commit comments