01-read-initial-variables.js 611 B

1234567891011121314151617181920212223242526272829
  1. module.exports = plugin;
  2. const utils = require('./utils');
  3. function plugin() {
  4. let variables = {
  5. by_name: {},
  6. list: [],
  7. };
  8. return (files, metalsmith, done) => {
  9. setImmediate(done);
  10. Object.keys(files).forEach(file_path => {
  11. const {file_name, lines} = utils.getLines(files, file_path);
  12. lines.forEach(line => {
  13. const variable = utils.parseLine(line);
  14. if (variable != false) {
  15. variables.by_name[variable.name] = variable;
  16. variables.list.push(variable.name);
  17. }
  18. });
  19. utils.writeFile(file_path, variables);
  20. });
  21. };
  22. }