Add fix-compatibility npm command

This commit is contained in:
MengYX 2020-03-04 08:43:23 +08:00
parent 37c60caa06
commit e78118b4d0
No known key found for this signature in database
GPG Key ID: E63F9C7303E8F604
3 changed files with 11 additions and 4 deletions

View File

@ -15,6 +15,7 @@ steps:
- name: build
image: node:lts
commands:
- npm run fix-compatibility
- npm run build
- tar -czf legacy.tar.gz -C ./dist .
- npm run build -- --modern

View File

@ -4,7 +4,8 @@
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build"
"build": "vue-cli-service build",
"fix-compatibility": "node ./src/fix-compatibility.js"
},
"dependencies": {
"browser-id3-writer": "^4.4.0",

View File

@ -5,16 +5,21 @@
// now manually edit the dependency files
const fs = require('fs');
const filePath = "../node_modules/file-type/core.js";
const filePath = "./node_modules/file-type/core.js";
const regReplace = /{\s*([a-zA-Z0-9:,\s]*),\s*\.\.\.([a-zA-Z0-9]*)\s*};/m;
if (fs.existsSync(filePath)) {
console.log("File Found!");
let data = fs.readFileSync(filePath).toString();
const regResult = regReplace.exec(data);
if (regResult != null) {
data = data.replace(regResult[0],
"Object.assign({ " + regResult[1] + " }, " + regResult[2] + ");"
);
fs.writeFileSync(filePath, data);
console.log("Object rest spread in file-type fixed!");
} else {
console.log("No fix needed.");
}
fs.writeFileSync(filePath, data);
console.log("Object rest spread in file-type fixed!")
} else {
console.log("File Not Found!");
}