generate-themes-dev.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  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. tasks.push(
  16. fs.copy(path.resolve(__dirname, '../src/packages/styles'), path.resolve(__dirname, '../dist/theme/source/styles'))
  17. );
  18. Promise.all(tasks).then((res) => {
  19. fs.copy(
  20. path.resolve(__dirname, '../src/packages/styles/variables.scss'),
  21. path.resolve(__dirname, '../dist/theme/source/styles/variables.scss_source')
  22. );
  23. fs.writeFile(path.resolve(__dirname, `../dist/theme/source/styles/sass-styles.scss_source`), sassStyles, 'utf8');
  24. fs.outputFile(
  25. path.resolve(__dirname, '../dist/theme/source/styles/themes/default.scss'),
  26. fileStr,
  27. 'utf8',
  28. (error) => {
  29. // logger.success(`文件写入成功`);
  30. }
  31. );
  32. });