From ef1812a8ebc76479d82799e49b33469560ebf9c7 Mon Sep 17 00:00:00 2001 From: Kuingsmile Date: Sat, 30 Sep 2023 12:46:01 +0800 Subject: [PATCH] :sparkles: Feature: update dialog will show change log now --- currentVersion.md | 16 +++++ currentVersion_en.md | 13 ++++ package.json | 12 ++-- src/main/lifeCycle/index.ts | 14 +++- yarn.lock | 138 ++++++++++++++++++++++-------------- 5 files changed, 133 insertions(+), 60 deletions(-) create mode 100644 currentVersion.md create mode 100644 currentVersion_en.md diff --git a/currentVersion.md b/currentVersion.md new file mode 100644 index 0000000..b8c9053 --- /dev/null +++ b/currentVersion.md @@ -0,0 +1,16 @@ +2.6.1 + +✨ Features + +- webdav图床现在支持设置授权方式,支持digest或basic授权 +- webdav管理页面新增授权方式选择 +- 手册页面现在会在单独的窗口中打开 +- 优化了管理页面首页列表的加载速度 + +🐛 Bug Fixes + +- 修复了管理页面中选择框失效的问题 +- 修复了管理页面中,切换图床时概率出现无法加载文件列表的问题 +- 修复了管理页面首页在开启自动导入时页面没有自动刷新的问题 +- 修复了管理页面中的计时器泄露导致的性能和文件加载问题 +- 解决了local图床和webdav图床缓存文件目录相同的问题 \ No newline at end of file diff --git a/currentVersion_en.md b/currentVersion_en.md new file mode 100644 index 0000000..0374d3a --- /dev/null +++ b/currentVersion_en.md @@ -0,0 +1,13 @@ +✨ Features + +- Now webdav image bed supports setting authorization mode, supports digest or basic authorization +- webdav management page adds authorization mode selection +- The manual page will now open in a separate window +- Optimized the loading speed of the list on the management page home page + +🐛 Bug Fixes + +- Fix the problem that the selection box is invalid on the management page +- Fixed the problem that the file list could not be loaded when switching the image bed on the management page +- Fixed the problem that the management page home page did not automatically refresh when automatic import was turned on +- Fixed the performance and file loading problems caused by the timer leak on the management page \ No newline at end of file diff --git a/package.json b/package.json index 04c5f59..e17bb36 100644 --- a/package.json +++ b/package.json @@ -34,20 +34,19 @@ "lint:dpdm": "dpdm -T --tsconfig ./tsconfig.json --no-tree --no-warning --exit-code circular:1 src/background.ts" }, "dependencies": { - "@aws-sdk/client-s3": "^3.420.0", - "@aws-sdk/lib-storage": "^3.420.0", - "@aws-sdk/s3-request-presigner": "^3.420.0", + "@aws-sdk/client-s3": "^3.421.0", + "@aws-sdk/lib-storage": "^3.421.0", + "@aws-sdk/s3-request-presigner": "^3.421.0", "@element-plus/icons-vue": "^2.1.0", "@highlightjs/vue-plugin": "^2.1.0", "@nodelib/fs.walk": "^2.0.0", "@octokit/rest": "^19.0.7", "@picgo/i18n": "^1.0.0", "@picgo/store": "^2.1.0", - "@smithy/node-http-handler": "^2.1.5", - "@types/mime-types": "^2.1.1", + "@smithy/node-http-handler": "^2.1.6", "@videojs-player/vue": "^1.0.0", "ali-oss": "^6.18.1", - "axios": "^1.5.0", + "axios": "^1.5.1", "compare-versions": "^4.1.3", "core-js": "^3.32.2", "cos-nodejs-sdk-v5": "^2.12.4", @@ -95,6 +94,7 @@ "@types/inquirer": "^6.5.0", "@types/js-yaml": "^4.0.6", "@types/lowdb": "^1.0.12", + "@types/mime-types": "^2.1.2", "@types/node": "^16.10.2", "@types/request-promise-native": "^1.0.18", "@types/semver": "^7.5.2", diff --git a/src/main/lifeCycle/index.ts b/src/main/lifeCycle/index.ts index 18a023c..6abff11 100644 --- a/src/main/lifeCycle/index.ts +++ b/src/main/lifeCycle/index.ts @@ -45,6 +45,7 @@ import path from 'path' import { CLIPBOARD_IMAGE_FOLDER } from '~/universal/utils/static' import fs from 'fs-extra' import { startFileServer } from '../fileServer' +import axios from 'axios' const isDevelopment = process.env.NODE_ENV !== 'production' const handleStartUpFiles = (argv: string[], cwd: string) => { @@ -71,14 +72,23 @@ autoUpdater.setFeedURL({ autoUpdater.autoDownload = false -autoUpdater.on('update-available', (info: UpdateInfo) => { +autoUpdater.on('update-available', async (info: UpdateInfo) => { + const lang = db.get('settings.language') || 'zh-CN' + let updateLog = '' + try { + const url = lang === 'zh-CN' ? 'https://release.piclist.cn/currentVersion.md' : 'https://release.piclist.cn/currentVersion_en.md' + const res = await axios.get(url) + updateLog = res.data + } catch (e: any) { + logger.error(e) + } dialog.showMessageBox({ type: 'info', title: T('FIND_NEW_VERSION'), buttons: ['Yes', 'No'], message: T('TIPS_FIND_NEW_VERSION', { v: info.version - }), + }) + '\n\n' + updateLog, checkboxLabel: T('NO_MORE_NOTICE'), checkboxChecked: false }).then((result) => { diff --git a/yarn.lock b/yarn.lock index 81407dc..c8e0e34 100644 --- a/yarn.lock +++ b/yarn.lock @@ -111,16 +111,16 @@ "@aws-sdk/util-utf8-browser" "^3.0.0" tslib "^1.11.1" -"@aws-sdk/client-s3@^3.420.0": - version "3.420.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-s3/-/client-s3-3.420.0.tgz#7d43dfc324442945d8d9ac2a2a5be974f57f00de" - integrity sha512-fmU0b8tM8vPCrEW8kNcY2yhFQBGuN4asYUAqybiSpzyF9Xy3Q0diQQE9WmoJVTO+DXB8tOhZZqUC1kxHCUDjww== +"@aws-sdk/client-s3@^3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-s3/-/client-s3-3.421.0.tgz#cf0e4a5e394c55463839b405af9dc6e3271509e4" + integrity sha512-vUXTY4toeHDf5EY2kOn04Ww9vTW2IVGy4+cymFp1cz5QT7g9KKj4Okj5DMdPld2y7wjgc+J/viTWEf26By49vw== dependencies: "@aws-crypto/sha1-browser" "3.0.0" "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/client-sts" "3.418.0" - "@aws-sdk/credential-provider-node" "3.418.0" + "@aws-sdk/client-sts" "3.421.0" + "@aws-sdk/credential-provider-node" "3.421.0" "@aws-sdk/middleware-bucket-endpoint" "3.418.0" "@aws-sdk/middleware-expect-continue" "3.418.0" "@aws-sdk/middleware-flexible-checksums" "3.418.0" @@ -172,10 +172,10 @@ fast-xml-parser "4.2.5" tslib "^2.5.0" -"@aws-sdk/client-sso@3.418.0": - version "3.418.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.418.0.tgz#c303ef8d3721b78a186f1079029c800b923a8db7" - integrity sha512-fakz3YeSW/kCAOJ5w4ObrrQBxsYO8sU8i6WHLv6iWAsYZKAws2Mqa8g89P61+GitSH4z9waksdLouS6ep78/5A== +"@aws-sdk/client-sso@3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.421.0.tgz#794350d63bd6b327f4919460ae908a1a39585165" + integrity sha512-40CmW7K2/FZEn3CbOjbpRYeVjKu6aJQlpRHcAgEJGNoVEAnRA3YNH4H0BN2iWWITfYg3B7sIjMm5VE9fCIK1Ng== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" @@ -212,14 +212,14 @@ "@smithy/util-utf8" "^2.0.0" tslib "^2.5.0" -"@aws-sdk/client-sts@3.418.0": - version "3.418.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.418.0.tgz#20cb08ea7e50e466cfa6559528fc20c95cfe0e51" - integrity sha512-L0n0Hw+Pm+BhXTN1bYZ0y4JAMArYgazdHf1nUSlEHndgZicCCuQtlMLxfo3i/IbtWi0dzfZcZ9d/MdAM8p4Jyw== +"@aws-sdk/client-sts@3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.421.0.tgz#1c7b3265be3acb609159533c24421da4e9466570" + integrity sha512-/92NOZMcdkBcvGrINk5B/l+6DGcVzYE4Ab3ME4vcY9y//u2gd0yNn5YYRSzzjVBLvhDP3u6CbTfLX2Bm4qihPw== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/credential-provider-node" "3.418.0" + "@aws-sdk/credential-provider-node" "3.421.0" "@aws-sdk/middleware-host-header" "3.418.0" "@aws-sdk/middleware-logger" "3.418.0" "@aws-sdk/middleware-recursion-detection" "3.418.0" @@ -266,14 +266,14 @@ "@smithy/types" "^2.3.3" tslib "^2.5.0" -"@aws-sdk/credential-provider-ini@3.418.0": - version "3.418.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.418.0.tgz#93d431eef20af22294321351ed7bc0d2c272f25a" - integrity sha512-LTAeKKV85unlSqGNIeqEZ4N9gufaSoH+670n5YTUEk564zHCkUQW0PJomzLF5jKBco6Yfzv6rPBTukd+x9XWqw== +"@aws-sdk/credential-provider-ini@3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.421.0.tgz#b58f8fd095c4389926d0e53ed2b775b184d03ec2" + integrity sha512-J5yH/gkpAk6FMeH5F9u5Nr6oG+97tj1kkn5q49g3XMbtWw7GiynadxdtoRBCeIg1C7o2LOQx4B1AnhNhIw1z/g== dependencies: "@aws-sdk/credential-provider-env" "3.418.0" "@aws-sdk/credential-provider-process" "3.418.0" - "@aws-sdk/credential-provider-sso" "3.418.0" + "@aws-sdk/credential-provider-sso" "3.421.0" "@aws-sdk/credential-provider-web-identity" "3.418.0" "@aws-sdk/types" "3.418.0" "@smithy/credential-provider-imds" "^2.0.0" @@ -282,15 +282,15 @@ "@smithy/types" "^2.3.3" tslib "^2.5.0" -"@aws-sdk/credential-provider-node@3.418.0": - version "3.418.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.418.0.tgz#8cc6d1a65a9564d924258bccbac51d23d3384610" - integrity sha512-VveTjtSC6m8YXj3fQDkMKEZuHv+CR2Z4u/NAN51Fi4xOtIWUtOBj5rfZ8HmBYoBjRF0DtRlPXuMiNnXAzTctfQ== +"@aws-sdk/credential-provider-node@3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.421.0.tgz#3d1793ee47d0335532eb01a23cbb7d5320dd3056" + integrity sha512-g1dvdvfDj0u8B/gOsHR3o1arP4O4QE/dFm2IJBYr/eUdKISMUgbQULWtg4zdtAf0Oz4xN0723i7fpXAF1gTnRA== dependencies: "@aws-sdk/credential-provider-env" "3.418.0" - "@aws-sdk/credential-provider-ini" "3.418.0" + "@aws-sdk/credential-provider-ini" "3.421.0" "@aws-sdk/credential-provider-process" "3.418.0" - "@aws-sdk/credential-provider-sso" "3.418.0" + "@aws-sdk/credential-provider-sso" "3.421.0" "@aws-sdk/credential-provider-web-identity" "3.418.0" "@aws-sdk/types" "3.418.0" "@smithy/credential-provider-imds" "^2.0.0" @@ -310,12 +310,12 @@ "@smithy/types" "^2.3.3" tslib "^2.5.0" -"@aws-sdk/credential-provider-sso@3.418.0": - version "3.418.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.418.0.tgz#7c43430663ded333e063e64f616bdff9a9fa0e7e" - integrity sha512-tUF5Hg/HfaU5t+E7IuvohYlodSIlBXa28xAJPPFxhKrUnvP6AIoW6JLazOtCIQjQgJYEUILV29XX+ojUuITcaw== +"@aws-sdk/credential-provider-sso@3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.421.0.tgz#1863eabf232dd6add900e045e36a0e6c1213e31c" + integrity sha512-f8T3L5rhImL6T6RTSvbOxaWw9k2fDOT2DZbNjcPz9ITWmwXj2NNbdHGWuRi3dv2HoY/nW2IJdNxnhdhbn6Fc1A== dependencies: - "@aws-sdk/client-sso" "3.418.0" + "@aws-sdk/client-sso" "3.421.0" "@aws-sdk/token-providers" "3.418.0" "@aws-sdk/types" "3.418.0" "@smithy/property-provider" "^2.0.0" @@ -333,10 +333,10 @@ "@smithy/types" "^2.3.3" tslib "^2.5.0" -"@aws-sdk/lib-storage@^3.420.0": - version "3.420.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/lib-storage/-/lib-storage-3.420.0.tgz#46a6d53dd58a17494e2a4ea2b5afe51b0e6a617a" - integrity sha512-t0IJQLjjYCubqir1yyrpAMx/ruLaugUqsoIi4rL0xTe3kAypTsJSoz7kIXipJ2Kok6qEfrthdRyl4l418SVP7Q== +"@aws-sdk/lib-storage@^3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/lib-storage/-/lib-storage-3.421.0.tgz#9ac29ae1823209afcedd8442b97dc888ca5751e2" + integrity sha512-m3zgZhTUfCp2vFWJA4azHgqaFB/OaWgdumYxPHr0JKbjBkGRFyQ90dmRtzVhROOIwI+GxKYxMi1HXhDU6FwsdQ== dependencies: "@smithy/abort-controller" "^2.0.1" "@smithy/middleware-endpoint" "^2.0.9" @@ -487,10 +487,10 @@ "@smithy/util-middleware" "^2.0.2" tslib "^2.5.0" -"@aws-sdk/s3-request-presigner@^3.420.0": - version "3.420.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.420.0.tgz#0afdb8c66e10df70e33918b365b92bbb8bf6432e" - integrity sha512-zR7TY0n4BZTL7KoHFWAhHnw51lBFFcU2rJ4NZBb4bSRIccIDbCJKXMku3Cn5S8UDFxtP+yWZ59xqjSeL2/z/EQ== +"@aws-sdk/s3-request-presigner@^3.421.0": + version "3.421.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.421.0.tgz#1ceb8a3a38a596d10ff16c5f7cb798dc307b780e" + integrity sha512-qQB6DRV81SZ4Q9JQL8/X4QH1aTyefeKIkmc3KH5QtP5PZJAKOoU4kqIXTFrUFCPan3CjWQw565ZR0usgR6RynQ== dependencies: "@aws-sdk/signature-v4-multi-region" "3.418.0" "@aws-sdk/types" "3.418.0" @@ -2573,6 +2573,14 @@ "@smithy/types" "^2.1.0" tslib "^2.5.0" +"@smithy/abort-controller@^2.0.10": + version "2.0.10" + resolved "https://registry.yarnpkg.com/@smithy/abort-controller/-/abort-controller-2.0.10.tgz#a6d0d24973ac35b59cc450c34decd68485fbe2c0" + integrity sha512-xn7PnFD3m4rQIG00h1lPuDVnC2QMtTFhzRLX3y56KkgFaCysS7vpNevNBgmNUtmJ4eVFc+66Zucwo2KDLdicOg== + dependencies: + "@smithy/types" "^2.3.4" + tslib "^2.5.0" + "@smithy/abort-controller@^2.0.9": version "2.0.9" resolved "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.0.9.tgz#f4b9ce1a9a09d446cf24d8bc1abc2b3b524cd7cd" @@ -2829,6 +2837,17 @@ "@smithy/types" "^2.3.3" tslib "^2.5.0" +"@smithy/node-http-handler@^2.1.6": + version "2.1.6" + resolved "https://registry.yarnpkg.com/@smithy/node-http-handler/-/node-http-handler-2.1.6.tgz#c2913363bbf28f315461bd54ef9a5394f1686776" + integrity sha512-NspvD3aCwiUNtoSTcVHz0RZz1tQ/SaRIe1KPF+r0mAdCZ9eWuhIeJT8ZNPYa1ITn7/Lgg64IyFjqPynZ8KnYQw== + dependencies: + "@smithy/abort-controller" "^2.0.10" + "@smithy/protocol-http" "^3.0.6" + "@smithy/querystring-builder" "^2.0.10" + "@smithy/types" "^2.3.4" + tslib "^2.5.0" + "@smithy/property-provider@^2.0.0", "@smithy/property-provider@^2.0.2": version "2.0.2" resolved "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.0.2.tgz#abe091d1e7dc5b617e3418b63eaed11363c96f21" @@ -2853,6 +2872,23 @@ "@smithy/types" "^2.3.3" tslib "^2.5.0" +"@smithy/protocol-http@^3.0.6": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@smithy/protocol-http/-/protocol-http-3.0.6.tgz#c33c128cc0f7096bf4fcdcc6d14d156ba5cd5b7c" + integrity sha512-F0jAZzwznMmHaggiZgc7YoS08eGpmLvhVktY/Taz6+OAOHfyIqWSDNgFqYR+WHW9z5fp2XvY4mEUrQgYMQ71jw== + dependencies: + "@smithy/types" "^2.3.4" + tslib "^2.5.0" + +"@smithy/querystring-builder@^2.0.10": + version "2.0.10" + resolved "https://registry.yarnpkg.com/@smithy/querystring-builder/-/querystring-builder-2.0.10.tgz#b06aa958b6ec1c56254d8cc41a19882625fd1c05" + integrity sha512-uujJGp8jzrrU1UHme8sUKEbawQTcTmUWsh8rbGXYD/lMwNLQ+9jQ9dMDWbbH9Hpoa9RER1BeL/38WzGrbpob2w== + dependencies: + "@smithy/types" "^2.3.4" + "@smithy/util-uri-escape" "^2.0.0" + tslib "^2.5.0" + "@smithy/querystring-builder@^2.0.9": version "2.0.9" resolved "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.0.9.tgz#97e3731b6e6fef533ab0b063b0007f6a545c0291" @@ -2954,6 +2990,13 @@ dependencies: tslib "^2.5.0" +"@smithy/types@^2.3.4": + version "2.3.4" + resolved "https://registry.yarnpkg.com/@smithy/types/-/types-2.3.4.tgz#3b9bc15000af0a0b1f4fda741f78c1580ba15e92" + integrity sha512-D7xlM9FOMFyFw7YnMXn9dK2KuN6+JhnrZwVt1fWaIu8hCk5CigysweeIT/H/nCo4YV+s8/oqUdLfexbkPZtvqw== + dependencies: + tslib "^2.5.0" + "@smithy/url-parser@^2.0.2": version "2.0.2" resolved "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.0.2.tgz#af50bd62298b209b1a16c80912a03460b7cb8994" @@ -3437,10 +3480,10 @@ dependencies: "@types/lodash" "*" -"@types/mime-types@^2.1.1": - version "2.1.1" - resolved "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz#d9ba43490fa3a3df958759adf69396c3532cf2c1" - integrity sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw== +"@types/mime-types@^2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@types/mime-types/-/mime-types-2.1.2.tgz#b4fe6996d2f32975b6603b26b4e4b3b6c92c9901" + integrity sha512-q9QGHMGCiBJCHEvd4ZLdasdqXv570agPsUW0CeIm/B8DzhxsYMerD0l3IlI+EQ1A2RWHY2mmM9x1YIuuWxisCg== "@types/mime@*": version "3.0.1" @@ -5039,15 +5082,6 @@ axios@^0.27.2: follow-redirects "^1.14.9" form-data "^4.0.0" -axios@^1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz#f02e4af823e2e46a9768cfc74691fdd0517ea267" - integrity sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ== - dependencies: - follow-redirects "^1.15.0" - form-data "^4.0.0" - proxy-from-env "^1.1.0" - axios@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/axios/-/axios-1.5.1.tgz#11fbaa11fc35f431193a9564109c88c1f27b585f"