diff --git a/src/index.js b/src/index.js index 269c2d8..c7af6e7 100644 --- a/src/index.js +++ b/src/index.js @@ -82,7 +82,7 @@ These can be accessed using the object literal syntax; eg styles['delete'] inste // Prefix banner to CSS module cssModuleDefinition = query.banner + '\n' + cssModuleDefinition; } - persist.writeToFileIfChanged(cssModuleInterfaceFilename, cssModuleDefinition); + persist.writeToFileIfChanged(cssModuleInterfaceFilename, cssModuleDefinition, query); // mock async step 3 - make `async` return the actual callback again before calling the 'real' css-loader delegateToCssLoader(this, input, callback); }; diff --git a/src/persist.js b/src/persist.js index 5609a9b..538d458 100644 --- a/src/persist.js +++ b/src/persist.js @@ -1,21 +1,21 @@ import fs from 'graceful-fs'; import os from 'os'; -export const writeToFileIfChanged = (filename, content) => { +export const writeToFileIfChanged = (filename, content, options) => { if (fs.existsSync(filename)) { const currentInput = fs.readFileSync(filename, 'utf-8'); if (currentInput !== content) { - writeFile(filename, content); + writeFile(filename, content, options); } } else { - writeFile(filename, content); + writeFile(filename, content, options); } }; -const writeFile = (filename, content) => { +const writeFile = (filename, content, options) => { //Replace new lines with OS-specific new lines - content = content.replace(/\n/g, os.EOL); + content = content.replace(/\n/g, options.EOL || os.EOL); fs.writeFileSync(filename, content, 'utf8'); }; \ No newline at end of file