mirror of
https://github.com/Kuingsmile/PicList.git
synced 2025-02-08 13:28:13 -05:00
Merge branch 'dev' into release
This commit is contained in:
commit
6f06c8b7df
17
CHANGELOG.md
17
CHANGELOG.md
@ -1,3 +1,20 @@
|
|||||||
|
## :tada: 2.8.2 (2024-04-11)
|
||||||
|
|
||||||
|
|
||||||
|
### :bug: Bug Fixes
|
||||||
|
|
||||||
|
* **custom:** exclude gif from format convert ([715f662](https://github.com/Kuingsmile/piclist/commit/715f662))
|
||||||
|
* **custom:** fix rename window bug ([45fae30](https://github.com/Kuingsmile/piclist/commit/45fae30)), closes [#186](https://github.com/Kuingsmile/piclist/issues/186) [#117](https://github.com/Kuingsmile/piclist/issues/117)
|
||||||
|
* **custom:** fix rename window position bug ([1798220](https://github.com/Kuingsmile/piclist/commit/1798220))
|
||||||
|
* **custom:** fix watermark bug ([a6e3542](https://github.com/Kuingsmile/piclist/commit/a6e3542)), closes [#188](https://github.com/Kuingsmile/piclist/issues/188)
|
||||||
|
|
||||||
|
|
||||||
|
### :pencil: Documentation
|
||||||
|
|
||||||
|
* **custom:** prepare for 2.8.2 ([ef9d34c](https://github.com/Kuingsmile/piclist/commit/ef9d34c))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## :tada: 2.8.1 (2024-04-09)
|
## :tada: 2.8.1 (2024-04-09)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,22 +1,9 @@
|
|||||||
✨ Features
|
✨ Features
|
||||||
|
|
||||||
- 图床功能优化
|
- 现在不再对gif图片进行格式转换
|
||||||
- 优化了github等图床路径设置为`/`时的处理
|
|
||||||
- 现在会自动对上传路径开始和结尾的`/`进行处理,大部分图床不再强制要求路径以`/`结尾
|
|
||||||
- 优化了对自定义网站的处理,现在会自动去除最后多余的`/`
|
|
||||||
- 上传服务器
|
|
||||||
- 现在来自本机的上传请求不再进行鉴权
|
|
||||||
- 现在浏览器访问36677端口会显示API文档(支持`/`和`/upload`路径)
|
|
||||||
- 现在`heartbeat`接口支持`GET`请求
|
|
||||||
- 新增内置web服务支持,默认在37777端口开启一个简易web服务器,类似`EasyWebSvr`
|
|
||||||
- 现在不再对`svg`图片进行水印处理
|
|
||||||
- 现在内置高级重命名中`{md5}`使用文件内容而非文件名字符串计算
|
|
||||||
- 现在相册URL修改功能的正则匹配增加了`u`修饰符
|
|
||||||
- 现在设置界面的弹出窗口支持拖拽调整位置
|
|
||||||
- 现在图片处理过程会记录错误日志
|
|
||||||
|
|
||||||
🐛 Bug Fixes
|
🐛 Bug Fixes
|
||||||
|
|
||||||
- 修复了设置了服务器鉴权密钥后,Typora上传失败的问题
|
- 修复了重新保存配置后图片水印功能失效的问题
|
||||||
- 修复了未设置水印文字时,图片水印功能无法生效的bug
|
- 修复了同时打开主界面和mini窗口时,重命名窗口定位错误的问题
|
||||||
- 修复了server端口被占用时,端口探测功能没有正常发挥作用的问题
|
- 修复了特殊情况下软件界面异常退出并导致后台CPU占用过高的问题
|
||||||
|
@ -1,22 +1,9 @@
|
|||||||
✨ Features
|
✨ Features
|
||||||
|
|
||||||
- Picture bed function optimization
|
- Now no longer convert gif images
|
||||||
- Optimized the processing of the path set to `/` for github and other picture beds
|
|
||||||
- Now it will automatically process the `/` at the beginning and end of the upload path, and most picture beds no longer require the path to end with `/`
|
|
||||||
- Optimized the processing of custom websites, now it will automatically remove the extra `/` at the end
|
|
||||||
- Upload server
|
|
||||||
- Now the upload requests from the local machine no longer require authentication
|
|
||||||
- Now browsing port 36677 will display the API document (support `/` and `/upload` paths)
|
|
||||||
- Now the `heartbeat` interface supports `GET` requests
|
|
||||||
- Added built-in web service support, a simple web server is opened by default on port 37777, similar to `EasyWebSvr`
|
|
||||||
- Now no longer watermark `svg` images
|
|
||||||
- Now the `{md5}` in the advanced rename uses the file content instead of the file name string for calculation
|
|
||||||
- The regular expression matching of the album URL modification function now adds the `u` modifier
|
|
||||||
- Now the pop-up window in the settings interface supports dragging to adjust the position
|
|
||||||
- Now the image processing process will record error logs
|
|
||||||
|
|
||||||
🐛 Bug Fixes
|
🐛 Bug Fixes
|
||||||
|
|
||||||
- Fix the problem of Typora upload failure after setting the server authentication key
|
- Fix the problem that the image watermark function is invalid after re-saving the configuration
|
||||||
- Fixed the bug that the image watermark function does not take effect when the watermark text is not set
|
- Fix the problem that the rename window is positioned incorrectly when the main interface and mini window are opened at the same time
|
||||||
- Fixed the problem that the port detection function does not work properly when the server port is occupied
|
- Fix the problem that the software interface exits abnormally under special circumstances and causes high CPU usage in the background
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "piclist",
|
"name": "piclist",
|
||||||
"version": "2.8.1",
|
"version": "2.8.2",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "Kuingsmile",
|
"name": "Kuingsmile",
|
||||||
"email": "pkukuing@gmail.com"
|
"email": "pkukuing@gmail.com"
|
||||||
@ -68,7 +68,7 @@
|
|||||||
"multer": "^1.4.5-lts.1",
|
"multer": "^1.4.5-lts.1",
|
||||||
"node-ssh-no-cpu-features": "^1.0.1",
|
"node-ssh-no-cpu-features": "^1.0.1",
|
||||||
"nodejs-file-downloader": "^4.12.1",
|
"nodejs-file-downloader": "^4.12.1",
|
||||||
"piclist": "^1.8.3",
|
"piclist": "^1.8.4",
|
||||||
"pinia": "^2.1.7",
|
"pinia": "^2.1.7",
|
||||||
"pinia-plugin-persistedstate": "^3.2.0",
|
"pinia-plugin-persistedstate": "^3.2.0",
|
||||||
"proxy-agent": "^5.0.0",
|
"proxy-agent": "^5.0.0",
|
||||||
|
@ -106,9 +106,13 @@ class Uploader {
|
|||||||
const window = windowManager.create(IWindowList.RENAME_WINDOW)!
|
const window = windowManager.create(IWindowList.RENAME_WINDOW)!
|
||||||
logger.info('create rename window')
|
logger.info('create rename window')
|
||||||
ipcMain.on(GET_RENAME_FILE_NAME, (evt) => {
|
ipcMain.on(GET_RENAME_FILE_NAME, (evt) => {
|
||||||
if (evt.sender.id === window.webContents.id) {
|
try {
|
||||||
logger.info('rename window ready, wait for rename...')
|
if (evt.sender.id === window.webContents.id) {
|
||||||
window.webContents.send(RENAME_FILE_NAME, fileName, item.fileName, window.webContents.id)
|
logger.info('rename window ready, wait for rename...')
|
||||||
|
window.webContents.send(RENAME_FILE_NAME, fileName, item.fileName, window.webContents.id)
|
||||||
|
}
|
||||||
|
} catch (e: any) {
|
||||||
|
logger.error(e)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
name = await waitForRename(window, window.webContents.id)
|
name = await waitForRename(window, window.webContents.id)
|
||||||
|
@ -236,7 +236,7 @@ windowList.set(IWindowList.RENAME_WINDOW, {
|
|||||||
options: () => renameWindowOptions,
|
options: () => renameWindowOptions,
|
||||||
async callback (window, windowManager) {
|
async callback (window, windowManager) {
|
||||||
window.loadURL(handleWindowParams(RENAME_WINDOW_URL))
|
window.loadURL(handleWindowParams(RENAME_WINDOW_URL))
|
||||||
const currentWindow = windowManager.getAvailableWindow()
|
const currentWindow = windowManager.getAvailableWindow(true)
|
||||||
if (currentWindow && currentWindow.isVisible()) {
|
if (currentWindow && currentWindow.isVisible()) {
|
||||||
// bounds: { x: 821, y: 75, width: 800, height: 450 }
|
// bounds: { x: 821, y: 75, width: 800, height: 450 }
|
||||||
const bounds = currentWindow.getBounds()
|
const bounds = currentWindow.getBounds()
|
||||||
@ -259,7 +259,7 @@ windowList.set(IWindowList.TOOLBOX_WINDOW, {
|
|||||||
options: () => toolboxWindowOptions,
|
options: () => toolboxWindowOptions,
|
||||||
async callback (window, windowManager) {
|
async callback (window, windowManager) {
|
||||||
window.loadURL(TOOLBOX_WINDOW_URL)
|
window.loadURL(TOOLBOX_WINDOW_URL)
|
||||||
const currentWindow = windowManager.getAvailableWindow()
|
const currentWindow = windowManager.getAvailableWindow(true)
|
||||||
if (currentWindow && currentWindow.isVisible()) {
|
if (currentWindow && currentWindow.isVisible()) {
|
||||||
const bounds = currentWindow.getBounds()
|
const bounds = currentWindow.getBounds()
|
||||||
const positionX = bounds.x + bounds.width / 2 - 400
|
const positionX = bounds.x + bounds.width / 2 - 400
|
||||||
|
@ -58,9 +58,9 @@ class WindowManager implements IWindowManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
getAvailableWindow () {
|
getAvailableWindow (isSkipMiniWindow = false) {
|
||||||
const miniWindow = this.windowMap.get(IWindowList.MINI_WINDOW)
|
const miniWindow = this.windowMap.get(IWindowList.MINI_WINDOW)
|
||||||
if (miniWindow && miniWindow.isVisible()) {
|
if (miniWindow && miniWindow.isVisible() && !isSkipMiniWindow) {
|
||||||
return miniWindow
|
return miniWindow
|
||||||
} else {
|
} else {
|
||||||
const settingWindow = this.windowMap.get(IWindowList.SETTING_WINDOW)
|
const settingWindow = this.windowMap.get(IWindowList.SETTING_WINDOW)
|
||||||
|
2
src/universal/types/electron.d.ts
vendored
2
src/universal/types/electron.d.ts
vendored
@ -15,7 +15,7 @@ declare interface IWindowManager {
|
|||||||
has: (name: IWindowList) => boolean
|
has: (name: IWindowList) => boolean
|
||||||
// delete: (name: IWindowList) => void
|
// delete: (name: IWindowList) => void
|
||||||
deleteById: (id: number) => void
|
deleteById: (id: number) => void
|
||||||
getAvailableWindow: () => BrowserWindow
|
getAvailableWindow: (isSkipMiniWindow?: boolean) => BrowserWindow
|
||||||
}
|
}
|
||||||
|
|
||||||
type IpcRendererListener = (event: import('electron').IpcRendererEvent, ...args: any[]) => void
|
type IpcRendererListener = (event: import('electron').IpcRendererEvent, ...args: any[]) => void
|
||||||
|
@ -94,7 +94,7 @@ export interface IConfigStruct {
|
|||||||
uploader: IUploaderConfig
|
uploader: IUploaderConfig
|
||||||
buildIn: {
|
buildIn: {
|
||||||
compress: IBuildInCompressOptions
|
compress: IBuildInCompressOptions
|
||||||
waterMark: IBuildInWaterMarkOptions
|
watermark: IBuildInWaterMarkOptions
|
||||||
rename: {
|
rename: {
|
||||||
enable: boolean
|
enable: boolean
|
||||||
format: string
|
format: string
|
||||||
@ -249,7 +249,7 @@ export const configPaths: IConfigPaths = {
|
|||||||
uploader: 'uploader',
|
uploader: 'uploader',
|
||||||
buildIn: {
|
buildIn: {
|
||||||
compress: 'buildIn.compress',
|
compress: 'buildIn.compress',
|
||||||
watermark: 'buildIn.waterMark',
|
watermark: 'buildIn.watermark',
|
||||||
rename: 'buildIn.rename'
|
rename: 'buildIn.rename'
|
||||||
},
|
},
|
||||||
debug: 'debug',
|
debug: 'debug',
|
||||||
|
@ -12397,10 +12397,10 @@ performance-now@^2.1.0:
|
|||||||
resolved "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
resolved "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
||||||
integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==
|
integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==
|
||||||
|
|
||||||
piclist@^1.8.3:
|
piclist@^1.8.4:
|
||||||
version "1.8.3"
|
version "1.8.4"
|
||||||
resolved "https://registry.yarnpkg.com/piclist/-/piclist-1.8.3.tgz#611cab63cdd65f3549a7c11cdfe809357f81b474"
|
resolved "https://registry.yarnpkg.com/piclist/-/piclist-1.8.4.tgz#a76b1e433c8c5cf9acd5786536883a73db6bd5ae"
|
||||||
integrity sha512-Gi7J/trUrGDy6ARL8N76eToFWvOxWRLPUl7c6Bf4xJBVGVt6nG7TMIjPh9qzlpT2y2Z9qTmjQ+UOQBsSN5qONg==
|
integrity sha512-1GKJJzdV+YrdVWr5OEPh6ePqmSBeVdLv3GEqsXkLMrc4H6/odRb66aKhE4oFREZmtzJks/pPawTzldKmScc9Gg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@aws-sdk/client-s3" "3.421.0"
|
"@aws-sdk/client-s3" "3.421.0"
|
||||||
"@aws-sdk/lib-storage" "3.421.0"
|
"@aws-sdk/lib-storage" "3.421.0"
|
||||||
|
Loading…
Reference in New Issue
Block a user