generate-themes-dev.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. const config = require('../src/config.json');
  2. const path = require('path');
  3. const fs = require('fs-extra');
  4. let fileStr = `@import '../variables.scss';\n`;
  5. let tasks = [];
  6. let sassStyles = '';
  7. config.nav.map((item) => {
  8. item.packages.forEach((element) => {
  9. let folderName = element.name.toLowerCase();
  10. sassStyles += '\n';
  11. sassStyles += fs.readFileSync(path.resolve(__dirname, `../src/packages/__VUE/${folderName}/index.scss`), 'utf8');
  12. fileStr += `@import '../../packages/${folderName}/index.scss';\n`;
  13. });
  14. });
  15. fs.writeFile(path.resolve(__dirname, `../dist/theme/source/styles/sass-styles.scss_source`), sassStyles, 'utf8');
  16. tasks.push(
  17. fs.copy(path.resolve(__dirname, '../src/packages/styles'), path.resolve(__dirname, '../dist/theme/source/styles'))
  18. );
  19. tasks.push(
  20. fs.copy(
  21. path.resolve(__dirname, '../src/packages/styles/variables.scss'),
  22. path.resolve(__dirname, '../dist/theme/source/styles/variables.scss_source')
  23. )
  24. );
  25. Promise.all(tasks).then((res) => {
  26. fs.outputFile(
  27. path.resolve(__dirname, '../dist/theme/source/styles/themes/default.scss'),
  28. fileStr,
  29. 'utf8',
  30. (error) => {
  31. // logger.success(`文件写入成功`);
  32. }
  33. );
  34. });