UNPKG

@vulcancreative/cross-colour

Version:

Dynamically translates a SASS/SCSS colour file to a JS object

34 lines (26 loc) 779 B
const colors = require("colors"); const fs = require("fs"); const readColours = (file) => { if (!fs.existsSync(file)) { throw `ERROR: SASS/SCSS file "${file}" doesn't exist`; } return fs.readFileSync(file).toString(); }; const writeColours = (colours, file, silent) => { const result = `// Auto-generated via CrossColour\n` + `const colours = ${JSON.stringify( colours, null, 2 )};\n\nexport default colours;`; const exists = fs.existsSync(file); const same = exists && result === fs.readFileSync(file).toString(); if (!exists || !same) { fs.writeFileSync(file, result); if (!silent) { console.log(colors.green("Colour data successfully emitted")); } } }; module.exports = { readColours, writeColours };