59 lines
1.8 KiB
JavaScript
59 lines
1.8 KiB
JavaScript
const dir = "src/scss/lib";
|
|
const outputDir = "src/scss";
|
|
|
|
const fs = require('fs');
|
|
|
|
var settingsToImportString = "";
|
|
var filesToImportString = "";
|
|
|
|
var files = fs.readdirSync(dir);
|
|
files.forEach(file => {
|
|
let newFileName = file;
|
|
if (!fs.lstatSync(dir + "/" + file).isDirectory()) {
|
|
|
|
if (!file.startsWith("_")) {
|
|
newFileName = "_" + newFileName;
|
|
}
|
|
if (file.endsWith("settings.scss") || file.endsWith("Settings.scss")){
|
|
settingsToImportString += '@import "lib/' + newFileName + '";\n';
|
|
}
|
|
else{
|
|
filesToImportString += '@import "lib/' + newFileName + '";\n';
|
|
}
|
|
fs.readFile(dir + "/" + file, 'utf8',function (err, data) {
|
|
if (err) {
|
|
return console.log(err);
|
|
}
|
|
// console.log(data.match(/@import "\.\.\//g));
|
|
var result = data.replace(/@import "\.\.\//g, '@import "../../');
|
|
result = result.replace(/@import "[a-zA-z].*[\n\r]/g, "");
|
|
result = result.replace(/@import '\.\.\//g, "@import '../../");
|
|
result = result.replace(/@import '[a-zA-z].*[\n\r]/g, "");
|
|
// var result = data;
|
|
// console.log(result);
|
|
|
|
fs.unlink(dir + "/" + file, function (err) {
|
|
if (err) return console.log(err);
|
|
});
|
|
fs.writeFile(dir + "/" + newFileName, result, 'utf8', function (err) {
|
|
if (err) return console.log(err);
|
|
});
|
|
});
|
|
}
|
|
});
|
|
|
|
fs.writeFile(outputDir + "/_defaultSettings.scss", settingsToImportString, err => {
|
|
if (err) {
|
|
throw err;
|
|
}
|
|
});
|
|
|
|
// var newFileContent = settingsToImportString;
|
|
var newFileContent = '@import "settings";\n';
|
|
newFileContent += filesToImportString;
|
|
|
|
fs.writeFile(outputDir + "/_imports.scss", newFileContent, err => {
|
|
if (err) {
|
|
throw err;
|
|
}
|
|
}); |