mirror of
https://github.com/Kuingsmile/PicList.git
synced 2025-03-13 08:28:13 -04:00
Merge branch 'dev' into release
This commit is contained in:
commit
af6777e545
20
CHANGELOG.md
20
CHANGELOG.md
@ -1,3 +1,23 @@
|
||||
## :tada: 2.7.3 (2024-01-30)
|
||||
|
||||
|
||||
### :sparkles: Features
|
||||
|
||||
* **custom:** support picbed name click to config page ([48cfaab](https://github.com/Kuingsmile/piclist/commit/48cfaab))
|
||||
|
||||
|
||||
### :bug: Bug Fixes
|
||||
|
||||
* **custom:** fix format convert bug ([ea82600](https://github.com/Kuingsmile/piclist/commit/ea82600))
|
||||
|
||||
|
||||
### :pencil: Documentation
|
||||
|
||||
* **custom:** add wechat group ([d87a014](https://github.com/Kuingsmile/piclist/commit/d87a014))
|
||||
* **custom:** update changelog ([3c9f13a](https://github.com/Kuingsmile/piclist/commit/3c9f13a))
|
||||
|
||||
|
||||
|
||||
## :tada: 2.7.2 (2024-01-23)
|
||||
|
||||
|
||||
|
@ -229,6 +229,12 @@ If you need to build it yourself, you can start building with `yarn run build`.
|
||||
- [PicHoro](https://github.com/Kuingsmile/PicHoro): A mobile APP that works with PicList
|
||||
- [VS-PicList](https://github.com/Kuingsmile/vs-PicList/): A VScode plugin that works with PicList
|
||||
|
||||
## Communication group
|
||||
|
||||
If you have any questions, you can join the WeChat group for communication.
|
||||
|
||||

|
||||
|
||||
## License
|
||||
|
||||
This project is open source under the MIT license. Welcome everyone to use and contribute code. Thank you for the open source spirit of the original author Molunerfinn.
|
||||
|
@ -219,6 +219,12 @@ brew uninstall piclist
|
||||
- [PicHoro](https://github.com/Kuingsmile/PicHoro): 与 PicList 搭配使用的手机端 APP
|
||||
- [VS-PicList](https://github.com/Kuingsmile/vs-PicList/): 与 PicList 搭配使用的VScode插件
|
||||
|
||||
## 交流群
|
||||
|
||||
如果有任何问题,可以加入微信群进行交流。
|
||||
|
||||

|
||||
|
||||
## License
|
||||
|
||||
本项目基于MIT协议开源,欢迎大家使用和贡献代码,感谢原作者Molunerfinn的开源精神。
|
||||
|
@ -1,12 +1,8 @@
|
||||
✨ Features
|
||||
|
||||
- 新增内置S3 API兼容平台支持
|
||||
- 现在又拍云图床支持自定义接口地址
|
||||
- 七牛云新建存储桶新增`亚太-河内`支持
|
||||
- 现在配置页点击图床名会跳转至手册说明页
|
||||
|
||||
🐛 Bug Fixes
|
||||
|
||||
- 修复了修改s3图床相册链接后,拷贝图片链接没有对应修改的问题
|
||||
- 修复了修改s3图床相册连接后,云端删除失效的问题
|
||||
- 修复了设置精细转换格式时的序列化错误
|
||||
- 修复了设置精细转换格式时,配置没有起作用的问题
|
||||
- 修复了界面翻译错误
|
||||
|
@ -1,17 +1,8 @@
|
||||
✨ Features
|
||||
|
||||
- Add support for built-in S3 API compatible platform
|
||||
- Upyun now supports custom interface addresses
|
||||
- Qiniu Cloud new bucket supports `Asia-Pacific-Hanoi`
|
||||
- Now clicking the image bed name on the configuration page will jump to the manual explanation page
|
||||
|
||||
🐛 Bug Fixes
|
||||
|
||||
- 修复了修改s3图床相册链接后,拷贝图片链接没有对应修改的问题
|
||||
- 修复了修改s3图床相册连接后,云端删除失效的问题
|
||||
- 修复了设置精细转换格式时的序列化错误
|
||||
- 修复了界面翻译错误
|
||||
|
||||
- Fix the problem that the copied image link is not modified after modifying the s3 album link
|
||||
- Fixed the problem that the cloud deletion is invalid after modifying the s3 album connection
|
||||
- Fixed serialization error when setting fine conversion format
|
||||
- Fixed the problem that the configuration did not take effect when setting the fine conversion format
|
||||
- Fixed interface translation error
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "piclist",
|
||||
"version": "2.7.2",
|
||||
"version": "2.7.3",
|
||||
"author": {
|
||||
"name": "Kuingsmile",
|
||||
"email": "pkukuing@gmail.com"
|
||||
@ -68,7 +68,7 @@
|
||||
"multer": "^1.4.5-lts.1",
|
||||
"node-ssh-no-cpu-features": "^1.0.1",
|
||||
"nodejs-file-downloader": "^4.12.1",
|
||||
"piclist": "^1.7.7",
|
||||
"piclist": "^1.7.9",
|
||||
"pinia": "^2.1.7",
|
||||
"pinia-plugin-persistedstate": "^3.2.0",
|
||||
"proxy-agent": "^5.0.0",
|
||||
|
@ -1477,7 +1477,7 @@
|
||||
:label="$T('UPLOAD_PAGE_IMAGE_PROCESS_CONVERTFORMAT_SPECIFIC')"
|
||||
>
|
||||
<el-input
|
||||
v-model="compressForm.formatConvertObj"
|
||||
v-model="formatConvertObj"
|
||||
placeholder="{"jpg": "png", "png": "jpg"}"
|
||||
type="textarea"
|
||||
:autosize="{ minRows: 2, maxRows: 4}"
|
||||
@ -1692,6 +1692,8 @@ const waterMarkForm = reactive<any>({
|
||||
watermarkPosition: 'southeast'
|
||||
})
|
||||
|
||||
const formatConvertObj = ref('{}')
|
||||
|
||||
const compressForm = reactive<any>({
|
||||
quality: 100,
|
||||
isConvert: false,
|
||||
@ -1706,8 +1708,7 @@ const compressForm = reactive<any>({
|
||||
rotateDegree: 0,
|
||||
isRemoveExif: false,
|
||||
isFlip: false,
|
||||
isFlop: false,
|
||||
formatConvertObj: '{}'
|
||||
isFlop: false
|
||||
})
|
||||
|
||||
function closeDialog () {
|
||||
@ -1715,17 +1716,18 @@ function closeDialog () {
|
||||
}
|
||||
|
||||
function handleSaveConfig () {
|
||||
let formatConvertObj = {}
|
||||
let iformatConvertObj = {}
|
||||
try {
|
||||
formatConvertObj = JSON.parse(compressForm.formatConvertObj)
|
||||
iformatConvertObj = JSON.parse(formatConvertObj.value)
|
||||
} catch (error) {
|
||||
}
|
||||
const formatConvertObjEntries = Object.entries(formatConvertObj)
|
||||
const formatConvertObjEntries = Object.entries(iformatConvertObj)
|
||||
const formatConvertObjEntriesFilter = formatConvertObjEntries.filter((item: any) => {
|
||||
return imageExtList.includes(item[0]) && availableFormat.includes(item[1])
|
||||
})
|
||||
const formatConvertObjFilter = Object.fromEntries(formatConvertObjEntriesFilter)
|
||||
compressForm.formatConvertObj = JSON.stringify(formatConvertObjFilter)
|
||||
formatConvertObj.value = JSON.stringify(formatConvertObjFilter)
|
||||
compressForm.formatConvertObj = formatConvertObjFilter
|
||||
saveConfig('buildIn.compress', toRaw(compressForm))
|
||||
saveConfig('buildIn.watermark', toRaw(waterMarkForm))
|
||||
closeDialog()
|
||||
@ -1750,9 +1752,13 @@ async function initForm () {
|
||||
compressForm.isFlip = compress.isFlip ?? false
|
||||
compressForm.isFlop = compress.isFlop ?? false
|
||||
try {
|
||||
compressForm.formatConvertObj = JSON.stringify(compress.formatConvertObj ?? {})
|
||||
if (typeof compress.formatConvertObj === 'object') {
|
||||
formatConvertObj.value = JSON.stringify(compress.formatConvertObj)
|
||||
} else {
|
||||
formatConvertObj.value = compress.formatConvertObj ?? '{}'
|
||||
}
|
||||
} catch (error) {
|
||||
compressForm.formatConvertObj = '{}'
|
||||
formatConvertObj.value = '{}'
|
||||
}
|
||||
}
|
||||
if (watermark) {
|
||||
|
@ -308,7 +308,7 @@
|
||||
:label="$T('UPLOAD_PAGE_IMAGE_PROCESS_CONVERTFORMAT_SPECIFIC')"
|
||||
>
|
||||
<el-input
|
||||
v-model="compressForm.formatConvertObj"
|
||||
v-model="formatConvertObj"
|
||||
placeholder="{"jpg": "png", "png": "jpg"}"
|
||||
type="textarea"
|
||||
:autosize="{ minRows: 2, maxRows: 4}"
|
||||
@ -516,26 +516,28 @@ const compressForm = reactive<any>({
|
||||
rotateDegree: 0,
|
||||
isRemoveExif: false,
|
||||
isFlip: false,
|
||||
isFlop: false,
|
||||
formatConvertObj: '{}'
|
||||
isFlop: false
|
||||
})
|
||||
|
||||
const formatConvertObj = ref('{}')
|
||||
|
||||
function closeDialog () {
|
||||
imageProcessDialogVisible.value = false
|
||||
}
|
||||
|
||||
function handleSaveConfig () {
|
||||
let formatConvertObj = {}
|
||||
let iformatConvertObj = {}
|
||||
try {
|
||||
formatConvertObj = JSON.parse(compressForm.formatConvertObj)
|
||||
iformatConvertObj = JSON.parse(formatConvertObj.value)
|
||||
} catch (error) {
|
||||
}
|
||||
const formatConvertObjEntries = Object.entries(formatConvertObj)
|
||||
const formatConvertObjEntries = Object.entries(iformatConvertObj)
|
||||
const formatConvertObjEntriesFilter = formatConvertObjEntries.filter((item: any) => {
|
||||
return imageExtList.includes(item[0]) && availableFormat.includes(item[1])
|
||||
})
|
||||
const formatConvertObjFilter = Object.fromEntries(formatConvertObjEntriesFilter)
|
||||
compressForm.formatConvertObj = JSON.stringify(formatConvertObjFilter)
|
||||
formatConvertObj.value = JSON.stringify(formatConvertObjFilter)
|
||||
compressForm.formatConvertObj = formatConvertObjFilter
|
||||
saveConfig('buildIn.compress', toRaw(compressForm))
|
||||
saveConfig('buildIn.watermark', toRaw(waterMarkForm))
|
||||
closeDialog()
|
||||
@ -560,9 +562,13 @@ async function initData () {
|
||||
compressForm.isFlip = compress.isFlip ?? false
|
||||
compressForm.isFlop = compress.isFlop ?? false
|
||||
try {
|
||||
compressForm.formatConvertObj = JSON.stringify(compress.formatConvertObj ?? {})
|
||||
if (typeof compress.formatConvertObj === 'object') {
|
||||
formatConvertObj.value = JSON.stringify(compress.formatConvertObj)
|
||||
} else {
|
||||
formatConvertObj.value = compress.formatConvertObj ?? '{}'
|
||||
}
|
||||
} catch (error) {
|
||||
compressForm.formatConvertObj = '{}'
|
||||
formatConvertObj.value = '{}'
|
||||
}
|
||||
}
|
||||
if (watermark) {
|
||||
|
@ -16,9 +16,7 @@
|
||||
@click="handleNameClick"
|
||||
>
|
||||
{{ picBedName }} {{ $T('SETTINGS') }}</span>
|
||||
<el-icon
|
||||
v-if="linkToLogInList.includes(picBedName)"
|
||||
>
|
||||
<el-icon>
|
||||
<Link />
|
||||
</el-icon>
|
||||
<el-button
|
||||
@ -201,34 +199,29 @@ const handleReset = async () => {
|
||||
$router.back()
|
||||
}
|
||||
|
||||
const linkToLogInList = ['GitHub', '腾讯云COS', '阿里云OSS', 'SM.MS', '七牛云', 'Imgur', '又拍云', 'githubPlus']
|
||||
|
||||
function handleNameClick () {
|
||||
switch ($route.params.type) {
|
||||
case 'github':
|
||||
case 'githubPlus':
|
||||
sendToMain(OPEN_URL, 'https://github.com')
|
||||
break
|
||||
case 'tcyun':
|
||||
sendToMain(OPEN_URL, 'https://cloud.tencent.com/login')
|
||||
break
|
||||
case 'aliyun':
|
||||
sendToMain(OPEN_URL, 'https://account.aliyun.com/login/login.htm')
|
||||
break
|
||||
case 'smms':
|
||||
sendToMain(OPEN_URL, 'https://smms.app')
|
||||
break
|
||||
case 'qiniu':
|
||||
sendToMain(OPEN_URL, 'https://portal.qiniu.com')
|
||||
break
|
||||
case 'imgur':
|
||||
sendToMain(OPEN_URL, 'https://imgur.com')
|
||||
break
|
||||
case 'upyun':
|
||||
sendToMain(OPEN_URL, 'https://console.upyun.com')
|
||||
break
|
||||
default:
|
||||
break
|
||||
const typeUrlMap: IStringKeyMap = {
|
||||
github: 'https://piclist.cn/configure.html#github%E5%9B%BE%E5%BA%8A',
|
||||
githubPlus: 'https://piclist.cn/configure.html#github%E5%9B%BE%E5%BA%8A',
|
||||
tcyun: 'https://piclist.cn/configure.html#%E8%85%BE%E8%AE%AF%E4%BA%91cos',
|
||||
aliyun: 'https://piclist.cn/configure.html#%E9%98%BF%E9%87%8C%E4%BA%91oss',
|
||||
smms: 'https://piclist.cn/configure.html#sm-ms',
|
||||
qiniu: 'https://piclist.cn/configure.html#%E4%B8%83%E7%89%9B%E4%BA%91',
|
||||
imgur: 'https://piclist.cn/configure.html#imgur',
|
||||
upyun: 'https://piclist.cn/configure.html#%E5%8F%88%E6%8B%8D%E4%BA%91',
|
||||
'aws-s3-plist': 'https://piclist.cn/configure.html#%E5%86%85%E7%BD%AEaws-s3',
|
||||
'aws-s3': 'https://piclist.cn/configure.html#%E5%86%85%E7%BD%AEaws-s3',
|
||||
local: 'https://piclist.cn/configure.html#%E6%9C%AC%E5%9C%B0%E5%9B%BE%E5%BA%8A',
|
||||
lskyplist: 'https://piclist.cn/configure.html#%E5%85%B0%E7%A9%BA%E5%9B%BE%E5%BA%8A',
|
||||
sftpplist: 'https://piclist.cn/configure.html#%E5%86%85%E7%BD%AEsftp',
|
||||
telegraphplist: 'https://piclist.cn/configure.html#telegra-ph',
|
||||
webdavplist: 'https://piclist.cn/configure.html#webdav',
|
||||
piclist: 'https://piclist.cn/configure.html#piclist',
|
||||
lankong: 'https://github.com/hellodk34/picgo-plugin-lankong'
|
||||
}
|
||||
const url = typeUrlMap[$route.params.type as string]
|
||||
if (url) {
|
||||
sendToMain(OPEN_URL, url)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -12392,10 +12392,10 @@ performance-now@^2.1.0:
|
||||
resolved "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
||||
integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==
|
||||
|
||||
piclist@^1.7.7:
|
||||
version "1.7.7"
|
||||
resolved "https://registry.yarnpkg.com/piclist/-/piclist-1.7.7.tgz#fa4bcd08e623859a678dd20160e512b83650bf87"
|
||||
integrity sha512-GBusAPlEAcGMkp91tCZ4hX3oHVevQMJxagmFPWaIwj1G6FY/twKtnO/BiGoLcz1DwiZpxglWx5zPWw4IM7beLg==
|
||||
piclist@^1.7.9:
|
||||
version "1.7.9"
|
||||
resolved "https://registry.yarnpkg.com/piclist/-/piclist-1.7.9.tgz#1677f63c0596d0b23fd082ce4a3f10c6b4f7244a"
|
||||
integrity sha512-+H32vNqfe3bCNhkreEJXzWT4fUOyPntNxCPjeo5btxAhbaVEfP8GwXA1XfX8NrJb3ml6sQzIk26FrQ2bzK+Bwg==
|
||||
dependencies:
|
||||
"@aws-sdk/client-s3" "3.421.0"
|
||||
"@aws-sdk/lib-storage" "3.421.0"
|
||||
|
Loading…
Reference in New Issue
Block a user