1
1
const { basename, extname } = require ( 'path' ) ;
2
2
const { compile } = require ( 'svelte' ) ;
3
3
const { getOptions } = require ( 'loader-utils' ) ;
4
- const { appendFileSync } = require ( 'fs' ) ;
4
+ const { statSync , utimesSync , writeFileSync } = require ( 'fs' ) ;
5
5
const { fileSync } = require ( 'tmp' ) ;
6
6
7
7
function sanitize ( input ) {
@@ -27,8 +27,6 @@ module.exports = function(source, map) {
27
27
options . shared =
28
28
options . format === 'es' && require . resolve ( 'svelte/shared.js' ) ;
29
29
30
- if ( options . emitCss ) options . css = false ;
31
-
32
30
if ( ! options . name ) options . name = capitalize ( sanitize ( options . filename ) ) ;
33
31
34
32
try {
@@ -37,8 +35,11 @@ module.exports = function(source, map) {
37
35
if ( options . emitCss && css ) {
38
36
const tmpobj = fileSync ( { postfix : '.css' } ) ;
39
37
css += '\n/*# sourceMappingURL=' + cssMap . toUrl ( ) + '*/' ;
40
- appendFileSync ( tmpobj . name , css ) ;
41
38
code = code + `\nrequire('${ tmpobj . name } ');\n` ;
39
+
40
+ writeFileSync ( tmpobj . name , css ) ;
41
+ const stats = statSync ( tmpobj . name ) ;
42
+ utimesSync ( tmpobj . name , stats . atimeMs - 9999 , stats . mtimeMs - 9999 ) ;
42
43
}
43
44
44
45
this . callback ( null , code , map ) ;
0 commit comments