@@ -58,12 +58,12 @@ function addDepsToPackageJson() {
58
58
const packageJSON = JSON . parse ( fs . readFileSync ( pkgJSONPath , 'utf8' ) ) ;
59
59
packageJSON . devDependencies = Object . assign ( packageJSON . devDependencies , {
60
60
'ts-loader' : '^9.0.0' ,
61
- '@tsconfig/svelte' : '^3 .0.0' ,
61
+ '@tsconfig/svelte' : '^4 .0.0' ,
62
62
'@types/node' : '^16.0.0' ,
63
- 'svelte-check' : '^3.0.0 ' ,
64
- 'svelte-preprocess' : '^5.0.0 ' ,
63
+ 'svelte-check' : '^3.4.4 ' ,
64
+ 'svelte-preprocess' : '^5.0.4 ' ,
65
65
tslib : '^2.5.0' ,
66
- typescript : '^4.9 .0'
66
+ typescript : '^5.0 .0'
67
67
} ) ;
68
68
69
69
// Add script for checking
@@ -127,12 +127,12 @@ function updateWebpackConfig() {
127
127
// Add preprocess to the svelte loader, this is tricky because there's no easy signifier.
128
128
// Instead we look for 'hotReload: 'prod,'
129
129
[
130
- / h o t R e l o a d : \! p r o d (? ! , \n \s * p r e p r o c e s s ) / g,
130
+ / h o t R e l o a d : \! p r o d (? ! , \r ? \ n\s * p r e p r o c e s s ) / g,
131
131
'hotReload: !prod,\n\t\t\t\t\t\tpreprocess: sveltePreprocess({ sourceMap: !prod })'
132
132
] ,
133
133
// Add ts-loader
134
134
[
135
- / m o d u l e : { \n \s * r u l e s : \[ \n \s * (? ! { \n \s * t e s t : \/ \\ \. t s \$ \/ ) / g,
135
+ / m o d u l e : { \r ? \ n\s * r u l e s : \[ \r ? \ n\s * (? ! { \r ? \n \s * t e s t : \/ \\ \. t s \$ \/ ) / g,
136
136
`module: {\n\t\trules: [\n\t\t\t{\n\t\t\t\ttest: /\\.ts$/,\n\t\t\t\tloader: 'ts-loader',\n\t\t\t\texclude: /node_modules/\n\t\t\t},\n\t\t\t` ,
137
137
]
138
138
] ) ;
@@ -149,6 +149,12 @@ function createTsConfig() {
149
149
createFile ( path . join ( projectRoot , 'tsconfig.json' ) , tsconfig ) ;
150
150
}
151
151
152
+ // Add ambient file so webpack/VS Code can pick up the Svelte ambient types
153
+ function createSvelteAmbientFile ( ) {
154
+ const file = '/// <reference types="svelte" />\n' ;
155
+ createFile ( path . join ( projectRoot , 'src' , 'global.d.ts' ) , file ) ;
156
+ }
157
+
152
158
// Adds the extension recommendation
153
159
function configureVsCode ( ) {
154
160
const dir = path . join ( projectRoot , '.vscode' ) ;
@@ -192,6 +198,8 @@ updateWebpackConfig();
192
198
193
199
createTsConfig ( ) ;
194
200
201
+ createSvelteAmbientFile ( ) ;
202
+
195
203
configureVsCode ( ) ;
196
204
197
205
// Delete this script, but not during testing
0 commit comments