diff --git a/electron-builder.json b/electron-builder.json index 55258f8a..a5f8c7e6 100644 --- a/electron-builder.json +++ b/electron-builder.json @@ -1,6 +1,7 @@ { "productName": "PicList", "appId": "com.kuingsmile.piclist", + "afterPack": "scripts/removeLocales.cjs", "afterSign": "scripts/notarize.cjs", "directories": { "output": "dist_electron", diff --git a/package.json b/package.json index 7cc2d349..6e442336 100644 --- a/package.json +++ b/package.json @@ -44,31 +44,25 @@ "@aws-sdk/client-s3": "^3.864.0", "@aws-sdk/lib-storage": "^3.864.0", "@aws-sdk/s3-request-presigner": "^3.864.0", - "@headlessui/vue": "^1.7.23", - "@highlightjs/vue-plugin": "^2.1.2", "@nodelib/fs.walk": "^3.0.1", "@octokit/rest": "^22.0.0", "@piclist/i18n": "^2.0.0", "@piclist/store": "^3.0.0", "@smithy/node-http-handler": "^4.1.1", - "@videojs-player/vue": "^1.0.0", "ali-oss": "^6.23.0", "axios": "^1.11.0", "chalk": "^5.6.0", "compare-versions": "^6.1.1", "cos-nodejs-sdk-v5": "^2.15.4", "dayjs": "^1.11.13", - "dexie": "^3.2.4", "electron-updater": "^6.6.2", "fast-xml-parser": "^5.2.5", "form-data": "^4.0.4", "fs-extra": "^11.3.1", "got": "^14.4.7", - "highlight.js": "^11.11.1", "hpagent": "^1.2.0", "js-yaml": "^4.1.0", "lodash-es": "^4.17.21", - "lucide-vue-next": "^0.540.0", "marked": "^16.2.0", "mime": "^4.0.7", "mitt": "^3.0.1", @@ -76,25 +70,31 @@ "node-ssh-no-cpu-features": "^2.0.0", "nodejs-file-downloader": "^4.13.0", "piclist": "^2.0.2", - "pinia": "^3.0.3", - "pinia-plugin-persistedstate": "^4.5.0", "qiniu": "7.14.0", - "qrcode.vue": "^3.6.0", "semver": "^7.7.2", "shell-path": "3.0.0", "ssh2-no-cpu-features": "^2.0.0", "tunnel": "^0.0.6", "upyun": "^3.4.6", "uuid": "^11.1.0", + "webdav": "^5.8.0", + "write-file-atomic": "^6.0.0", + "vue": "^3.5.18" + }, + "devDependencies": { + "@headlessui/vue": "^1.7.23", + "@highlightjs/vue-plugin": "^2.1.2", + "@videojs-player/vue": "^1.0.0", + "dexie": "^3.2.4", + "highlight.js": "^11.11.1", + "lucide-vue-next": "^0.540.0", + "pinia": "^3.0.3", + "pinia-plugin-persistedstate": "^4.5.0", + "qrcode.vue": "^3.6.0", "video.js": "^8.23.4", - "vue": "^3.5.18", "vue-i18n": "^11.1.11", "vue-router": "^4.5.1", "vue3-lazyload": "^0.3.8", - "webdav": "^5.8.0", - "write-file-atomic": "^6.0.0" - }, - "devDependencies": { "@electron/notarize": "^3.0.2", "@eslint/js": "^9.33.0", "@intlify/unplugin-vue-i18n": "^6.0.8", diff --git a/scripts/removeLocales.cjs b/scripts/removeLocales.cjs new file mode 100644 index 00000000..e5732411 --- /dev/null +++ b/scripts/removeLocales.cjs @@ -0,0 +1,16 @@ +const fs = require('node:fs') + +async function main(context) { + const localeDir = context.appOutDir + '/locales/' + + fs.readdir(localeDir, function (_err, files) { + if (!(files && files.length)) return + for (let i = 0, len = files.length; i < len; i++) { + if (!(files[i].startsWith('en') || files[i].startsWith('zh'))) { + fs.unlinkSync(localeDir + files[i]) + } + } + }) +} + +exports.default = main