1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- import fs from 'node:fs';
- import path from 'path';
- import uglifyjs from 'uglify-js';
- const copySpider = ['app', 'kunyu77_open', 'alist_open'];
- const root = process.cwd();
- const src = path.join(root);
- const out = path.join(root, 'dist');
- function minify(s, d) {
- var jsContent = fs.readFileSync(s).toString();
- jsContent = jsContent.replace('./lib/cat.js', 'assets://js/lib/cat.js');
- jsContent = jsContent.replace('./cat.js', 'assets://js/lib/cat.js');
- jsContent = uglifyjs.minify(jsContent, {
- mangle: false,
- });
- fs.writeFileSync(d, jsContent.code);
- }
- function listAllFiles(dirPath, arrayOfFiles) {
- var files = fs.readdirSync(dirPath);
- arrayOfFiles = arrayOfFiles || [];
- files.forEach(function (file) {
- if (fs.statSync(dirPath + '/' + file).isDirectory()) {
- arrayOfFiles = listAllFiles(dirPath + '/' + file, arrayOfFiles);
- } else {
- arrayOfFiles.push(path.join(dirPath, '/', file));
- }
- });
- return arrayOfFiles;
- }
- function src2Out() {
- if (fs.existsSync(out)) fs.rmSync(out, { recursive: true, force: true });
- fs.mkdirSync(out, { recursive: true });
- const libSrc = path.join(src, 'lib');
- const libOut = path.join(out, 'lib');
- fs.mkdirSync(libOut, { recursive: true });
- const libs = listAllFiles(libSrc);
- for (let index = 0; index < libs.length; index++) {
- const element = libs[index];
- const relative = path.relative(libSrc, element);
- minify(element, path.join(libOut, relative));
- }
- for (const sp of copySpider) {
- minify(path.join(src, sp + '.js'), path.join(out, sp + '.js'));
- }
- }
- src2Out();
- fs.copyFileSync(path.join(src, 'config_open.json'), path.join(out, 'config_open.json'));
- console.log('done');
|