mirror of
https://github.com/Kuingsmile/PicList.git
synced 2026-09-05 07:28:42 +08:00
✨ Feature(custom): write delete msg to log file
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios from 'axios'
|
||||
import path from 'path'
|
||||
|
||||
@@ -16,7 +17,10 @@ export default class AlistApi {
|
||||
const { fileName, config } = configMap
|
||||
try {
|
||||
const { version, url, uploadPath, token } = config
|
||||
if (String(version) === '2') return true
|
||||
if (String(version) === '2') {
|
||||
deleteLog(fileName, 'Alist', false, 'Alist version 2 is not supported, deletion is skipped')
|
||||
return true
|
||||
}
|
||||
const result = await axios.request({
|
||||
method: 'post',
|
||||
url: `${url}/api/fs/remove`,
|
||||
@@ -29,9 +33,14 @@ export default class AlistApi {
|
||||
names: [path.basename(fileName)]
|
||||
}
|
||||
})
|
||||
return result.data.code === 200
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (result.data.code === 200) {
|
||||
deleteLog(fileName, 'Alist')
|
||||
return true
|
||||
}
|
||||
deleteLog(fileName, 'Alist', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'Alist', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import OSS from 'ali-oss'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -18,9 +19,14 @@ export default class AliyunApi {
|
||||
const client = new OSS({ ...config, region: config.area })
|
||||
const key = AliyunApi.#getKey(fileName, config.path)
|
||||
const result = await client.delete(key)
|
||||
return result.res.status === 204
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (result.res.status === 204) {
|
||||
deleteLog(fileName, 'Aliyun')
|
||||
return true
|
||||
}
|
||||
deleteLog(fileName, 'Aliyun', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'Aliyun', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { getRawData } from '~/renderer/utils/common'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
import { removeFileFromS3InMain } from '~/main/utils/deleteFunc'
|
||||
|
||||
export default class AwsS3Api {
|
||||
@@ -10,8 +10,8 @@ export default class AwsS3Api {
|
||||
getRawData(configMap)
|
||||
)
|
||||
: await removeFileFromS3InMain(getRawData(configMap))
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(configMap.fileName, 'AWS S3', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { getRawData } from '~/renderer/utils/common'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
import { removeFileFromDogeInMain } from '~/main/utils/deleteFunc'
|
||||
|
||||
export default class AwsS3Api {
|
||||
@@ -10,8 +10,8 @@ export default class AwsS3Api {
|
||||
getRawData(configMap)
|
||||
)
|
||||
: await removeFileFromDogeInMain(getRawData(configMap))
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(configMap.fileName, 'DogeCloud', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import { Octokit } from '@octokit/rest'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -34,9 +35,14 @@ export default class GithubApi {
|
||||
sha: hash,
|
||||
branch
|
||||
})
|
||||
return status === 200
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (status === 200) {
|
||||
deleteLog(fileName, 'GitHub')
|
||||
return true
|
||||
}
|
||||
deleteLog(fileName, 'GitHub', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'GitHub', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { getRawData } from '~/renderer/utils/common'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
import { removeFileFromHuaweiInMain } from '~/main/utils/deleteFunc'
|
||||
|
||||
export default class HuaweicloudApi {
|
||||
@@ -10,8 +10,8 @@ export default class HuaweicloudApi {
|
||||
getRawData(configMap)
|
||||
)
|
||||
: await removeFileFromHuaweiInMain(getRawData(configMap))
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(configMap.fileName, 'HuaweiCloud', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -22,6 +23,7 @@ export default class ImgurApi {
|
||||
Authorization = `Client-ID ${clientId}`
|
||||
apiUrl = `${ImgurApi.#baseUrl}/image/${hash}`
|
||||
} else {
|
||||
deleteLog(hash, 'Imgur', false, 'No credentials found')
|
||||
return false
|
||||
}
|
||||
try {
|
||||
@@ -29,9 +31,14 @@ export default class ImgurApi {
|
||||
headers: { Authorization },
|
||||
timeout: 30000
|
||||
})
|
||||
return response.status === 200
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (response.status === 200) {
|
||||
deleteLog(hash, 'Imgur')
|
||||
return true
|
||||
}
|
||||
deleteLog(hash, 'Imgur', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(hash, 'Imgur', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import fs from 'fs-extra'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -8,15 +9,16 @@ export default class LocalApi {
|
||||
static async delete (configMap: IConfigMap): Promise<boolean> {
|
||||
const { hash } = configMap
|
||||
if (!hash) {
|
||||
console.error('Local.delete: invalid params')
|
||||
deleteLog(hash, 'Local', false, 'Local.delete: invalid params')
|
||||
return false
|
||||
}
|
||||
|
||||
try {
|
||||
await fs.remove(hash)
|
||||
deleteLog(hash, 'Local')
|
||||
return true
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(hash, 'Local', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
import https from 'https'
|
||||
|
||||
@@ -5,13 +6,13 @@ export default class LskyplistApi {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
const { hash, config } = configMap
|
||||
if (!hash || !config || !config.token) {
|
||||
console.error('LskyplistApi.delete: invalid params')
|
||||
deleteLog(hash, 'Lskyplist', false, 'LskyplistApi.delete: invalid params')
|
||||
return false
|
||||
}
|
||||
|
||||
const { host, token, version } = config
|
||||
if (version !== 'V2') {
|
||||
console.error('LskyplistApi.delete: invalid version')
|
||||
deleteLog(hash, 'Lskyplist', false, 'LskyplistApi.delete: invalid version')
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -30,9 +31,14 @@ export default class LskyplistApi {
|
||||
timeout: 30000,
|
||||
httpsAgent: requestAgent
|
||||
})
|
||||
return response.status === 200 && response.data.status === true
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (response.status === 200 && response.data.status === true) {
|
||||
deleteLog(hash, 'Lskyplist')
|
||||
return true
|
||||
}
|
||||
deleteLog(hash, 'Lskyplist', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(hash, 'Lskyplist', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
|
||||
export default class PiclistApi {
|
||||
@@ -5,7 +6,7 @@ export default class PiclistApi {
|
||||
const { config, fullResult } = configMap
|
||||
const { host, port } = config
|
||||
if (!host) {
|
||||
console.error('PiclistApi.delete: invalid params')
|
||||
deleteLog(fullResult, 'Piclist', false, 'PiclistApi.delete: invalid params')
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -18,9 +19,14 @@ export default class PiclistApi {
|
||||
list: [fullResult]
|
||||
}
|
||||
)
|
||||
return response.status === 200 && response.data?.success
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (response.status === 200 && response.data?.success) {
|
||||
deleteLog(fullResult, 'Piclist')
|
||||
return true
|
||||
}
|
||||
deleteLog(fullResult, 'Piclist', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fullResult, 'Piclist', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import Qiniu from 'qiniu'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -26,9 +27,14 @@ export default class QiniuApi {
|
||||
}
|
||||
})
|
||||
}) as any
|
||||
return res?.respInfo?.statusCode === 200
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (res?.respInfo?.statusCode === 200) {
|
||||
deleteLog(fileName, 'Qiniu')
|
||||
return true
|
||||
}
|
||||
deleteLog(fileName, 'Qiniu', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'Qiniu', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { getRawData } from '~/renderer/utils/common'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
|
||||
export default class SftpPlistApi {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
@@ -10,8 +10,8 @@ export default class SftpPlistApi {
|
||||
fileName
|
||||
)
|
||||
return deleteResult
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'SFTP', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -11,7 +12,7 @@ export default class SmmsApi {
|
||||
static async delete (configMap: IConfigMap): Promise<boolean> {
|
||||
const { hash, config } = configMap
|
||||
if (!hash || !config || !config.token) {
|
||||
console.error('SmmsApi.delete: invalid params')
|
||||
deleteLog(hash, 'Smms', false, 'SmmsApi.delete: invalid params')
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -29,9 +30,14 @@ export default class SmmsApi {
|
||||
},
|
||||
timeout: 30000
|
||||
})
|
||||
return response.status === 200
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (response.status === 200) {
|
||||
deleteLog(hash, 'Smms')
|
||||
return true
|
||||
}
|
||||
deleteLog(hash, 'Smms', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(hash, 'Smms', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import COS from 'cos-nodejs-sdk-v5'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -28,9 +29,14 @@ export default class TcyunApi {
|
||||
Region: area,
|
||||
Key: key
|
||||
})
|
||||
return result.statusCode === 204
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
if (result.statusCode === 204) {
|
||||
deleteLog(fileName, 'Tcyun')
|
||||
return true
|
||||
}
|
||||
deleteLog(fileName, 'Tcyun', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'Tcyun', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import Upyun from 'upyun'
|
||||
|
||||
interface IConfigMap {
|
||||
@@ -17,9 +18,15 @@ export default class UpyunApi {
|
||||
} else {
|
||||
key = `${path.replace(/^\/+|\/+$/, '')}/${fileName}`
|
||||
}
|
||||
return await client.deleteFile(key)
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
const result = await client.deleteFile(key)
|
||||
if (result) {
|
||||
deleteLog(fileName, 'Upyun')
|
||||
return true
|
||||
}
|
||||
deleteLog(fileName, 'Upyun', false)
|
||||
return false
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'Upyun', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import { AuthType, WebDAVClientOptions, createClient } from 'webdav'
|
||||
import { formatEndpoint } from '~/main/manage/utils/common'
|
||||
|
||||
@@ -29,9 +30,10 @@ export default class WebdavApi {
|
||||
}
|
||||
try {
|
||||
await ctx.deleteFile(key)
|
||||
deleteLog(fileName, 'WebDAV')
|
||||
return true
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
} catch (error: any) {
|
||||
deleteFailedLog(fileName, 'WebDAV', error)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user