mirror of
https://github.com/jxxghp/MoviePilot-Frontend.git
synced 2026-09-05 07:28:37 +08:00
refactor: 统一组件样式,优化圆角和阴影效果,提升视觉一致性
This commit is contained in:
@@ -24,7 +24,9 @@ const route = useRoute()
|
||||
const Draggable = defineAsyncComponent(() => import('vuedraggable').then(module => module.default))
|
||||
const PluginAppCard = defineAsyncComponent(() => import('@/components/cards/PluginAppCard.vue'))
|
||||
const PluginFolderCreateDialog = defineAsyncComponent(() => import('@/components/dialog/PluginFolderCreateDialog.vue'))
|
||||
const PluginMarketSettingDialog = defineAsyncComponent(() => import('@/components/dialog/PluginMarketSettingDialog.vue'))
|
||||
const PluginMarketSettingDialog = defineAsyncComponent(
|
||||
() => import('@/components/dialog/PluginMarketSettingDialog.vue'),
|
||||
)
|
||||
const ProgressDialog = defineAsyncComponent(() => import('@/components/dialog/ProgressDialog.vue'))
|
||||
const PluginSearchDialog = defineAsyncComponent(() => import('@/components/dialog/PluginSearchDialog.vue'))
|
||||
|
||||
@@ -1643,8 +1645,8 @@ function onDragStartPlugin(evt: any) {
|
||||
<div>
|
||||
<VPageContentTitle v-if="installedFilter" :title="t('plugin.filter', { name: installedFilter })" />
|
||||
<LoadingBanner v-if="!isRefreshed" class="mt-12" />
|
||||
<VAlert v-if="sortMode" color="warning" variant="tonal" class="mb-4">
|
||||
<div class="d-flex flex-wrap align-center justify-space-between gap-2">
|
||||
<VAlert v-if="sortMode" color="warning" variant="tonal" class="mb-4 py-0 app-surface-static">
|
||||
<div class="d-flex flex-wrap align-center justify-space-between gap-2 py-5">
|
||||
<span>{{ t('common.sortModeHint') }}</span>
|
||||
<VBtn variant="tonal" color="error" @click="sortMode = false">
|
||||
{{ t('common.exit') }}
|
||||
|
||||
@@ -204,7 +204,7 @@ onMounted(loadDownloadDirectories)
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="file-browser-view app-surface">
|
||||
<div class="file-browser-view app-surface-static">
|
||||
<FileBrowser
|
||||
v-if="operItem"
|
||||
:storages="storages"
|
||||
|
||||
@@ -18,7 +18,9 @@ import { useBackground } from '@/composables/useBackground'
|
||||
import { useGlobalSettingsStore } from '@/stores'
|
||||
import { openSharedDialog } from '@/composables/useSharedDialog'
|
||||
|
||||
const TransferHistoryDeleteDialog = defineAsyncComponent(() => import('@/components/dialog/TransferHistoryDeleteDialog.vue'))
|
||||
const TransferHistoryDeleteDialog = defineAsyncComponent(
|
||||
() => import('@/components/dialog/TransferHistoryDeleteDialog.vue'),
|
||||
)
|
||||
|
||||
// i18n
|
||||
const { t } = useI18n()
|
||||
@@ -33,8 +35,7 @@ const { appMode } = usePWA()
|
||||
const { useProgressSSE } = useBackground()
|
||||
|
||||
// 计算列表可用高度
|
||||
// componentOffset = VCardItem搜索栏(68) + VDivider(1) + 分页栏(40) + VCard边距(2) = 111
|
||||
const { availableHeight } = useAvailableHeight(125, 300)
|
||||
const { availableHeight } = useAvailableHeight(135, 300)
|
||||
|
||||
// 提示框
|
||||
const $toast = useToast()
|
||||
@@ -1209,7 +1210,6 @@ onUnmounted(() => {
|
||||
/>
|
||||
</div>
|
||||
</Teleport>
|
||||
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
@@ -410,8 +410,8 @@ useDynamicButton({
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<VAlert v-if="sortMode" color="warning" variant="tonal" class="mb-4">
|
||||
<div class="d-flex flex-wrap align-center justify-space-between gap-2">
|
||||
<VAlert v-if="sortMode" color="warning" variant="tonal" class="mb-4 py-0 app-surface-static">
|
||||
<div class="d-flex flex-wrap align-center justify-space-between gap-2 py-5">
|
||||
<span>{{ t('common.sortModeHint') }}</span>
|
||||
<VBtn variant="tonal" color="error" @click="sortMode = false">
|
||||
{{ t('common.exit') }}
|
||||
|
||||
@@ -31,7 +31,12 @@ let progressDialogController: ReturnType<typeof openSharedDialog> | null = null
|
||||
// 打开订阅日历共享进度弹窗。
|
||||
function openProgressDialog() {
|
||||
progressDialogController?.close()
|
||||
progressDialogController = openSharedDialog(ProgressDialog, { text: `${t('common.loading')} ...` }, {}, { closeOn: false })
|
||||
progressDialogController = openSharedDialog(
|
||||
ProgressDialog,
|
||||
{ text: `${t('common.loading')} ...` },
|
||||
{},
|
||||
{ closeOn: false },
|
||||
)
|
||||
}
|
||||
|
||||
// 关闭订阅日历共享进度弹窗。
|
||||
@@ -85,7 +90,10 @@ async function eventsHander(subscribe: Subscribe) {
|
||||
} else {
|
||||
// 调用API查询集信息
|
||||
const params = subscribe.episode_group ? { episode_group: subscribe.episode_group } : undefined
|
||||
const episodes: TmdbEpisode[] = await api.get(`tmdb/${subscribe.tmdbid}/${subscribe.season}`, params ? { params } : undefined)
|
||||
const episodes: TmdbEpisode[] = await api.get(
|
||||
`tmdb/${subscribe.tmdbid}/${subscribe.season}`,
|
||||
params ? { params } : undefined,
|
||||
)
|
||||
|
||||
interface EpisodeInfo {
|
||||
title: string
|
||||
@@ -160,8 +168,8 @@ onActivated(() => {
|
||||
<template>
|
||||
<FullCalendar :options="calendarOptions">
|
||||
<template #eventContent="arg">
|
||||
<div class="hidden md:block overflow-hidden">
|
||||
<VCard>
|
||||
<div class="hidden md:block">
|
||||
<VCard class="app-surface">
|
||||
<div class="d-flex justify-space-between flex-nowrap flex-row">
|
||||
<div class="ma-auto">
|
||||
<VImg
|
||||
@@ -434,12 +442,6 @@ onActivated(() => {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.v-application .fc .fc-popover {
|
||||
border-radius: 6px;
|
||||
box-shadow: 0 4px 14px -4px var(--v-shadow-key-umbra-opacity), 0 4px 8px -4px var(--v-shadow-key-penumbra-opacity),
|
||||
0 4px 8px -4px var(--v-shadow-key-ambient-opacity);
|
||||
}
|
||||
|
||||
.v-application .fc .fc-popover .fc-popover-header,
|
||||
.v-application .fc .fc-popover .fc-popover-body {
|
||||
padding: 0.5rem;
|
||||
|
||||
@@ -572,8 +572,8 @@ defineExpose({
|
||||
</VCard>
|
||||
</div>
|
||||
|
||||
<VAlert v-if="sortMode" color="warning" variant="tonal" class="mb-4 mx-2">
|
||||
<div class="d-flex flex-wrap align-center justify-space-between gap-2">
|
||||
<VAlert v-if="sortMode" color="warning" variant="tonal" class="mb-4 mx-2 py-0 app-surface-static">
|
||||
<div class="d-flex flex-wrap align-center justify-space-between gap-2 py-5">
|
||||
<span>{{ t('common.sortModeHint') }}</span>
|
||||
<VBtn variant="tonal" color="error" @click="sortMode = false">
|
||||
{{ t('common.exit') }}
|
||||
|
||||
Reference in New Issue
Block a user