mirror of
https://github.com/jgthms/bulma.git
synced 2025-01-09 15:44:25 +00:00
50 lines
1.2 KiB
JavaScript
50 lines
1.2 KiB
JavaScript
|
const fs = require('fs');
|
||
|
const path = require('path');
|
||
|
|
||
|
let utils = {
|
||
|
parseLine: (line) => {
|
||
|
if (line.startsWith('$') && line.endsWith('!default')) {
|
||
|
const colon_index = line.indexOf(':');
|
||
|
const variable_name = line.substring(0, colon_index).trim();
|
||
|
|
||
|
const default_index = line.indexOf('!default');
|
||
|
const variable_value = line.substring(colon_index + 1, default_index).trim();
|
||
|
|
||
|
return variable = {
|
||
|
name: variable_name,
|
||
|
value: variable_value,
|
||
|
type: utils.getVariableType(variable_name, variable_value),
|
||
|
};
|
||
|
}
|
||
|
|
||
|
return false;
|
||
|
},
|
||
|
|
||
|
getLines: (files, file_path) => {
|
||
|
const file = files[file_path];
|
||
|
const slash_index = file_path.lastIndexOf('/');
|
||
|
const dot_index = file_path.lastIndexOf('.');
|
||
|
const file_name = file_path.substring(slash_index + 1, dot_index);
|
||
|
|
||
|
return {
|
||
|
file_name,
|
||
|
lines: file.contents.toString().split(/(?:\r\n|\r|\n)/g),
|
||
|
}
|
||
|
},
|
||
|
|
||
|
ensureDirectoryExistence: (file_path) => {
|
||
|
var dirname = path.dirname(file_path);
|
||
|
|
||
|
if (fs.existsSync(dirname)) {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
utils.ensureDirectoryExistence(dirname);
|
||
|
fs.mkdirSync(dirname);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
utils.files = {};
|
||
|
|
||
|
module.exports = utils;
|