mirror of
https://github.com/Kuingsmile/PicList.git
synced 2025-01-23 06:38:13 -05:00
🔨 Refactor(custom): refactor drop down item in bucket page
This commit is contained in:
parent
0c241bc82c
commit
afffea7623
@ -758,13 +758,18 @@ MANAGE_BUCKET_DELETE_BTN: Delete
|
|||||||
MANAGE_BUCKET_SORT_TITLE: Sort
|
MANAGE_BUCKET_SORT_TITLE: Sort
|
||||||
MANAGE_BUCKET_SORT_NAME: Name
|
MANAGE_BUCKET_SORT_NAME: Name
|
||||||
MANAGE_BUCKET_SORT_SIZE: Size
|
MANAGE_BUCKET_SORT_SIZE: Size
|
||||||
MANAGE_BUCKET_SORT_TYPE: Type
|
MANAGE_BUCKET_SORT_EXT: Type
|
||||||
MANAGE_BUCKET_SORT_TIME: Time
|
MANAGE_BUCKET_SORT_TIME: Time
|
||||||
MANAGE_BUCKET_SORT_SELECTED: Selected status
|
MANAGE_BUCKET_SORT_CHECK: Selected status
|
||||||
MANAGE_BUCKET_INIT: Init
|
MANAGE_BUCKET_SORT_INIT: Init
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: Please enter URL(s), support multiple URLs separated by line breaks
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: Please enter URL(s), support multiple URLs separated by line breaks
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: Confirm
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: Confirm
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: Cancel
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: Cancel
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN: Markdown
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN_WITH_LINK: Markdown-link
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_URL: Url
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_HTML: Html
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_BBCODE: BBCode
|
||||||
MANAGE_BUCKET_URL_FORMAT_CUSTOM: Custom
|
MANAGE_BUCKET_URL_FORMAT_CUSTOM: Custom
|
||||||
MANAGE_BUCKET_URL_FORMAT_PRESIGN: Presigned link
|
MANAGE_BUCKET_URL_FORMAT_PRESIGN: Presigned link
|
||||||
MANAGE_BUCKET_FILE_INFO_TITLE: File information
|
MANAGE_BUCKET_FILE_INFO_TITLE: File information
|
||||||
|
@ -763,13 +763,18 @@ MANAGE_BUCKET_DELETE_BTN: 删除
|
|||||||
MANAGE_BUCKET_SORT_TITLE: 排序
|
MANAGE_BUCKET_SORT_TITLE: 排序
|
||||||
MANAGE_BUCKET_SORT_NAME: 文件名
|
MANAGE_BUCKET_SORT_NAME: 文件名
|
||||||
MANAGE_BUCKET_SORT_SIZE: 大小
|
MANAGE_BUCKET_SORT_SIZE: 大小
|
||||||
MANAGE_BUCKET_SORT_TYPE: 类型
|
MANAGE_BUCKET_SORT_EXT: 类型
|
||||||
MANAGE_BUCKET_SORT_TIME: 时间
|
MANAGE_BUCKET_SORT_TIME: 时间
|
||||||
MANAGE_BUCKET_SORT_SELECTED: 选中状态
|
MANAGE_BUCKET_SORT_CHECK: 选中状态
|
||||||
MANAGE_BUCKET_INIT: 初始化
|
MANAGE_BUCKET_SORT_INIT: 初始化
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: 请输入URL,支持多个URL,以换行分隔
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: 请输入URL,支持多个URL,以换行分隔
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: 确定
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: 确定
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: 取消
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: 取消
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN: Markdown
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN_WITH_LINK: Markdown-link
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_URL: Url
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_HTML: Html
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_BBCODE: BBCode
|
||||||
MANAGE_BUCKET_URL_FORMAT_CUSTOM: 自定义
|
MANAGE_BUCKET_URL_FORMAT_CUSTOM: 自定义
|
||||||
MANAGE_BUCKET_URL_FORMAT_PRESIGN: 预签名链接
|
MANAGE_BUCKET_URL_FORMAT_PRESIGN: 预签名链接
|
||||||
MANAGE_BUCKET_FILE_INFO_TITLE: 文件信息
|
MANAGE_BUCKET_FILE_INFO_TITLE: 文件信息
|
||||||
|
@ -758,13 +758,18 @@ MANAGE_BUCKET_DELETE_BTN: 刪除
|
|||||||
MANAGE_BUCKET_SORT_TITLE: 排序
|
MANAGE_BUCKET_SORT_TITLE: 排序
|
||||||
MANAGE_BUCKET_SORT_NAME: 檔案名稱
|
MANAGE_BUCKET_SORT_NAME: 檔案名稱
|
||||||
MANAGE_BUCKET_SORT_SIZE: 大小
|
MANAGE_BUCKET_SORT_SIZE: 大小
|
||||||
MANAGE_BUCKET_SORT_TYPE: 類型
|
MANAGE_BUCKET_SORT_EXT: 類型
|
||||||
MANAGE_BUCKET_SORT_TIME: 時間
|
MANAGE_BUCKET_SORT_TIME: 時間
|
||||||
MANAGE_BUCKET_SORT_SELECTED: 選取狀態
|
MANAGE_BUCKET_SORT_CHECK: 選取狀態
|
||||||
MANAGE_BUCKET_INIT: 初始化
|
MANAGE_BUCKET_SORT_INIT: 初始化
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: 請輸入 URL,支援多個 URL,以換行分隔
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: 請輸入 URL,支援多個 URL,以換行分隔
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: 確定
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: 確定
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: 取消
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: 取消
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN: Markdown
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN_WITH_LINK: Markdown-link
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_URL: Url
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_HTML: Html
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_BBCODE: BBCode
|
||||||
MANAGE_BUCKET_URL_FORMAT_CUSTOM: 自訂
|
MANAGE_BUCKET_URL_FORMAT_CUSTOM: 自訂
|
||||||
MANAGE_BUCKET_URL_FORMAT_PRESIGN: 預簽名連結
|
MANAGE_BUCKET_URL_FORMAT_PRESIGN: 預簽名連結
|
||||||
MANAGE_BUCKET_FILE_INFO_TITLE: 檔案資訊
|
MANAGE_BUCKET_FILE_INFO_TITLE: 檔案資訊
|
||||||
|
@ -400,23 +400,12 @@
|
|||||||
{{ $T('MANAGE_BUCKET_SORT_TITLE') }}
|
{{ $T('MANAGE_BUCKET_SORT_TITLE') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-item @click="sortFile('name')">
|
<el-dropdown-item
|
||||||
{{ $T('MANAGE_BUCKET_SORT_NAME') }}
|
v-for="item in sortTypeList"
|
||||||
</el-dropdown-item>
|
:key="item"
|
||||||
<el-dropdown-item @click="sortFile('size')">
|
@click="sortFile(item as any)"
|
||||||
{{ $T('MANAGE_BUCKET_SORT_SIZE') }}
|
>
|
||||||
</el-dropdown-item>
|
{{ $T(`MANAGE_BUCKET_SORT_${item.toUpperCase()}` as any) }}
|
||||||
<el-dropdown-item @click="sortFile('ext')">
|
|
||||||
{{ $T('MANAGE_BUCKET_SORT_TYPE') }}
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item @click="sortFile('time')">
|
|
||||||
{{ $T('MANAGE_BUCKET_SORT_TIME') }}
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item @click="sortFile('check')">
|
|
||||||
{{ $T('MANAGE_BUCKET_SORT_SELECTED') }}
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item @click="sortFile('init')">
|
|
||||||
{{ $T('MANAGE_BUCKET_INIT') }}
|
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
</template>
|
</template>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
@ -634,46 +623,11 @@ https://www.baidu.com/img/bd_logo1.png"
|
|||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
@click="async () => {
|
v-for="format in linkFormatList"
|
||||||
copyToClipboard(await formatLink(item.url, item.fileName, 'url'))
|
:key="format"
|
||||||
}"
|
@click="copyLink(item, format)"
|
||||||
>
|
>
|
||||||
Url
|
{{ $T(`MANAGE_BUCKET_URL_FORMAT_${format.toUpperCase().replace(/-/g, '_')}` as any) }}
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item
|
|
||||||
@click="async () => {
|
|
||||||
copyToClipboard(await formatLink(item.url, item.fileName, 'markdown'))
|
|
||||||
}"
|
|
||||||
>
|
|
||||||
Markdown
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item
|
|
||||||
@click="async () => {
|
|
||||||
copyToClipboard(await formatLink(item.url, item.fileName, 'markdown-with-link'))
|
|
||||||
}"
|
|
||||||
>
|
|
||||||
Markdown-link
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item
|
|
||||||
@click="async () => {
|
|
||||||
copyToClipboard(await formatLink(item.url, item.fileName, 'html'))
|
|
||||||
}"
|
|
||||||
>
|
|
||||||
Html
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item
|
|
||||||
@click="async () => {
|
|
||||||
copyToClipboard(await formatLink(item.url, item.fileName, 'bbcode'))
|
|
||||||
}"
|
|
||||||
>
|
|
||||||
BBCode
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item
|
|
||||||
@click="async () => {
|
|
||||||
copyToClipboard(await formatLink(item.url, item.fileName, 'custom', manageStore.config.settings.customPasteFormat))
|
|
||||||
}"
|
|
||||||
>
|
|
||||||
{{ $T('MANAGE_BUCKET_URL_FORMAT_CUSTOM') }}
|
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
v-if="isShowPresignedUrl"
|
v-if="isShowPresignedUrl"
|
||||||
@ -1571,8 +1525,10 @@ const linkFormatArray = [
|
|||||||
{ key: 'BBCode', value: 'bbcode' },
|
{ key: 'BBCode', value: 'bbcode' },
|
||||||
{ key: 'Custom', value: 'custom' }
|
{ key: 'Custom', value: 'custom' }
|
||||||
]
|
]
|
||||||
|
const linkFormatList = ['url', 'markdown', 'markdown-with-link', 'html', 'bbcode', 'custom']
|
||||||
|
|
||||||
type sortTypeList = 'name' | 'size' | 'time' | 'ext' | 'check' | 'init'
|
type ISortTypeList = 'name' | 'size' | 'time' | 'ext' | 'check' | 'init'
|
||||||
|
const sortTypeList = ['name', 'size', 'time', 'ext', 'check', 'init']
|
||||||
|
|
||||||
// 路由相关
|
// 路由相关
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
@ -2230,7 +2186,7 @@ async function resetParam (force: boolean = false) {
|
|||||||
const cachedData = await searchExistFileList()
|
const cachedData = await searchExistFileList()
|
||||||
if (cachedData.length > 0) {
|
if (cachedData.length > 0) {
|
||||||
currentPageFilesInfo.push(...cachedData[0].value.fullList)
|
currentPageFilesInfo.push(...cachedData[0].value.fullList)
|
||||||
const sortType = localStorage.getItem('sortType') as sortTypeList || 'init'
|
const sortType = localStorage.getItem('sortType') as ISortTypeList || 'init'
|
||||||
sortFile(sortType)
|
sortFile(sortType)
|
||||||
isShowLoadingPage.value = false
|
isShowLoadingPage.value = false
|
||||||
return
|
return
|
||||||
@ -2240,7 +2196,7 @@ async function resetParam (force: boolean = false) {
|
|||||||
const res = await getBucketFileList() as IStringKeyMap
|
const res = await getBucketFileList() as IStringKeyMap
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
currentPageFilesInfo.push(...res.fullList)
|
currentPageFilesInfo.push(...res.fullList)
|
||||||
const sortType = localStorage.getItem('sortType') as sortTypeList || 'init'
|
const sortType = localStorage.getItem('sortType') as ISortTypeList || 'init'
|
||||||
sortFile(sortType)
|
sortFile(sortType)
|
||||||
if (res.isTruncated && paging.value) {
|
if (res.isTruncated && paging.value) {
|
||||||
pagingMarkerStack.push(pagingMarker.value)
|
pagingMarkerStack.push(pagingMarker.value)
|
||||||
@ -2311,7 +2267,7 @@ const changePage = async (cur: number | undefined, prev: number | undefined) =>
|
|||||||
}
|
}
|
||||||
const isForwardNavigation = cur > prev
|
const isForwardNavigation = cur > prev
|
||||||
const newPageNumber = isForwardNavigation ? prev + 1 : prev - 1
|
const newPageNumber = isForwardNavigation ? prev + 1 : prev - 1
|
||||||
const sortType = localStorage.getItem('sortType') as sortTypeList || 'init'
|
const sortType = localStorage.getItem('sortType') as ISortTypeList || 'init'
|
||||||
|
|
||||||
isShowLoadingPage.value = true
|
isShowLoadingPage.value = true
|
||||||
currentPageNumber.value = newPageNumber
|
currentPageNumber.value = newPageNumber
|
||||||
@ -2771,6 +2727,10 @@ function handleBatchCopyInfo () {
|
|||||||
ElMessage.success(`${$T('MANAGE_BUCKET_BATCH_COPY_INFO_MSG_A')} ${selectedItems.value.length} ${$T('MANAGE_BUCKET_BATCH_COPY_INFO_MSG_B')}`)
|
ElMessage.success(`${$T('MANAGE_BUCKET_BATCH_COPY_INFO_MSG_A')} ${selectedItems.value.length} ${$T('MANAGE_BUCKET_BATCH_COPY_INFO_MSG_B')}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function copyLink (item: any, type: string) {
|
||||||
|
copyToClipboard(await formatLink(item.url, item.fileName, type, manageStore.config.settings.customPasteFormat))
|
||||||
|
}
|
||||||
|
|
||||||
async function handleBatchCopyLink (type: string) {
|
async function handleBatchCopyLink (type: string) {
|
||||||
if (!selectedItems.value.length) {
|
if (!selectedItems.value.length) {
|
||||||
ElMessage.warning($T('MANAGE_BUCKET_BATCH_COPY_URL_ERROR_MSG'))
|
ElMessage.warning($T('MANAGE_BUCKET_BATCH_COPY_URL_ERROR_MSG'))
|
||||||
@ -2844,7 +2804,7 @@ async function getBucketFileListBackStage () {
|
|||||||
fileTransferInterval = setInterval(() => {
|
fileTransferInterval = setInterval(() => {
|
||||||
const currentFileList = fileTransferStore.getFileTransferList()
|
const currentFileList = fileTransferStore.getFileTransferList()
|
||||||
currentPageFilesInfo.splice(0, currentPageFilesInfo.length, ...currentFileList)
|
currentPageFilesInfo.splice(0, currentPageFilesInfo.length, ...currentFileList)
|
||||||
const sortType = localStorage.getItem('sortType') as sortTypeList || 'init'
|
const sortType = localStorage.getItem('sortType') as ISortTypeList || 'init'
|
||||||
sortFile(sortType)
|
sortFile(sortType)
|
||||||
const table = fileCacheDbInstance.table(currentPicBedName.value)
|
const table = fileCacheDbInstance.table(currentPicBedName.value)
|
||||||
table.put({
|
table.put({
|
||||||
|
@ -145,13 +145,13 @@
|
|||||||
{{ $T('MANAGE_BUCKET_SORT_NAME') }}
|
{{ $T('MANAGE_BUCKET_SORT_NAME') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item @click="sortFile('ext')">
|
<el-dropdown-item @click="sortFile('ext')">
|
||||||
{{ $T('MANAGE_BUCKET_SORT_TYPE') }}
|
{{ $T('MANAGE_BUCKET_SORT_EXT') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item @click="sortFile('time')">
|
<el-dropdown-item @click="sortFile('time')">
|
||||||
{{ $T('MANAGE_BUCKET_SORT_TIME') }}
|
{{ $T('MANAGE_BUCKET_SORT_TIME') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item @click="sortFile('check')">
|
<el-dropdown-item @click="sortFile('check')">
|
||||||
{{ $T('MANAGE_BUCKET_SORT_SELECTED') }}
|
{{ $T('MANAGE_BUCKET_SORT_CHECK') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
</template>
|
</template>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
|
11
src/universal/types/i18n.d.ts
vendored
11
src/universal/types/i18n.d.ts
vendored
@ -716,13 +716,18 @@ interface ILocales {
|
|||||||
MANAGE_BUCKET_SORT_TITLE: string
|
MANAGE_BUCKET_SORT_TITLE: string
|
||||||
MANAGE_BUCKET_SORT_NAME: string
|
MANAGE_BUCKET_SORT_NAME: string
|
||||||
MANAGE_BUCKET_SORT_SIZE: string
|
MANAGE_BUCKET_SORT_SIZE: string
|
||||||
MANAGE_BUCKET_SORT_TYPE: string
|
MANAGE_BUCKET_SORT_EXT: string
|
||||||
MANAGE_BUCKET_SORT_TIME: string
|
MANAGE_BUCKET_SORT_TIME: string
|
||||||
MANAGE_BUCKET_SORT_SELECTED: string
|
MANAGE_BUCKET_SORT_CHECK: string
|
||||||
MANAGE_BUCKET_INIT: string
|
MANAGE_BUCKET_SORT_INIT: string
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: string
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_TITLE: string
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: string
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CONFIRM: string
|
||||||
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: string
|
MANAGE_BUCKET_URL_UPLOAD_DIALOG_CANCEL: string
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN: string
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_MARKDOWN_WITH_LINK: string
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_URL: string
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_HTML: string
|
||||||
|
MANAGE_BUCKET_URL_FORMAT_BBCODE: string
|
||||||
MANAGE_BUCKET_URL_FORMAT_CUSTOM: string
|
MANAGE_BUCKET_URL_FORMAT_CUSTOM: string
|
||||||
MANAGE_BUCKET_URL_FORMAT_PRESIGN: string
|
MANAGE_BUCKET_URL_FORMAT_PRESIGN: string
|
||||||
MANAGE_BUCKET_FILE_INFO_TITLE: string
|
MANAGE_BUCKET_FILE_INFO_TITLE: string
|
||||||
|
Loading…
Reference in New Issue
Block a user