You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
2.6 KiB

6 months ago
'use strict';
1 year ago
6 months ago
const fs = require('fs');
6 months ago
6 months ago
Object.defineProperty(exports, '__esModule', { value: true });
1 year ago
/**
* 同步 platform-core 定义的前端项目配置
* platform-core 库的 template-project 目录中复制前端项目文件到本地项目
*/
6 months ago
const { rm, cp, mergeJsonFile } = require('./util.js');
1 year ago
const sync = async () => {
6 months ago
const sourceDir = process.cwd() + '/node_modules/platform-core/template-project/';
const targetDir = process.cwd() + '/';
5 months ago
cp(sourceDir + 'src/css/tailwind.css', targetDir + 'src/css/tailwind.css');
6 months ago
cp(sourceDir + '.browserslistrc', targetDir + '.browserslistrc');
cp(sourceDir + '.editorconfig', targetDir + '.editorconfig');
cp(sourceDir + '.gitignore', targetDir + '.gitignore');
cp(sourceDir + '.npmignore', targetDir + '.npmignore');
cp(sourceDir + '.npmrc', targetDir + '.npmrc');
cp(sourceDir + '.prettierignore', targetDir + '.prettierignore');
cp(sourceDir + '.prettierrc.json', targetDir + '.prettierrc.json');
cp(sourceDir + 'babel.config.cjs', targetDir + 'babel.config.cjs');
cp(sourceDir + 'frontend-register.json', targetDir + 'frontend-register.json');
cp(sourceDir + 'nodemon.json', targetDir + 'nodemon.json');
cp(sourceDir + 'postcss.config.cjs', targetDir + 'postcss.config.cjs');
cp(sourceDir + 'tailwind.config.cjs', targetDir + 'tailwind.config.cjs');
cp(sourceDir + 'util-components-generator.cjs', targetDir + 'util-components-generator.cjs');
cp(sourceDir + 'util-frontend-register.cjs', targetDir + 'util-frontend-register.cjs');
1 year ago
cp(sourceDir + 'webpack.config.common.cjs', targetDir + 'webpack.config.common.cjs');
6 months ago
cp(sourceDir + 'webpack.config.mf.cjs', targetDir + 'webpack.config.mf.cjs');
cp(sourceDir + 'webpack.env.build.cjs', targetDir + 'webpack.env.build.cjs');
cp(sourceDir + 'webpack.env.prod.cjs', targetDir + 'webpack.env.prod.cjs');
cp(sourceDir + 'webpack.env.serve.cjs', targetDir + 'webpack.env.serve.cjs');
6 months ago
6 months ago
if (fs.existsSync(targetDir + 'public/webjars')) {
6 months ago
rm(targetDir + 'public/webjars');
}
6 months ago
rm(targetDir + 'public/configure.js');
rm(targetDir + 'public/favicon.svg');
rm(targetDir + 'public/index.html');
rm(targetDir + 'public/login-bg.jpg');
rm(targetDir + 'public/logo.svg');
6 months ago
cp(sourceDir + 'public', targetDir + 'public');
1 year ago
6 months ago
mergeJsonFile(targetDir + 'frontend-register.json', sourceDir + 'frontend-register.json', ['path']);
mergeJsonFile(targetDir + 'package.json', sourceDir + 'package.json', ['scripts', 'devDependencies', 'dependencies']);
mergeJsonFile(targetDir + 'tsconfig.json', sourceDir + 'tsconfig.json', ['compilerOptions']);
1 year ago
console.info('sync completed!');
};
module.exports = sync;