重构对话框组件,将所有 DialogWrapper 替换为 VDialog,并更新缓存版本至 v1.1.0

This commit is contained in:
jxxghp
2025-08-23 18:54:00 +08:00
parent 6e50acf106
commit 472d1960d9
66 changed files with 163 additions and 637 deletions

View File

@@ -18,7 +18,6 @@ import { useRoute } from 'vue-router'
import { filterMenusByPermission } from '@/utils/permission'
import { onUnreadMessage } from '@/utils/badge'
import { usePullDownGesture } from '@/composables/usePullDownGesture'
import { useScrollLockWithWatch } from '@/composables/useScrollLock'
import { usePWA } from '@/composables/usePWA'
import OfflinePage from '@/layouts/components/OfflinePage.vue'
import { useGlobalOfflineStatus } from '@/composables/useOfflineStatus'
@@ -163,17 +162,6 @@ const handleServiceWorkerMessage = (event: MessageEvent) => {
}
}
// 使用滚动锁定 composable自动监听showPluginQuickAccess的变化
useScrollLockWithWatch(showPluginQuickAccess, {
preventTouchScroll: true,
preserveScrollPosition: true,
autoRestore: true,
// 允许快速访问面板内的滚动
allowScrollSelectors: ['.plugin-quick-access'],
// 允许快速访问面板内的可滚动容器
allowScrollContainerSelectors: ['.plugin-grid'],
})
// 检查是否可以使用下拉手势
const canUsePullGesture = () => {
// 检查是否在dashboard页面

View File

@@ -265,7 +265,7 @@ onMounted(() => {
</VCard>
</VMenu>
<!-- 名称测试弹窗 -->
<DialogWrapper
<VDialog
v-if="nameTestDialog"
v-model="nameTestDialog"
max-width="45rem"
@@ -285,9 +285,9 @@ onMounted(() => {
<NameTestView />
</VCardText>
</VCard>
</DialogWrapper>
</VDialog>
<!-- 网络测试弹窗 -->
<DialogWrapper
<VDialog
v-if="netTestDialog"
v-model="netTestDialog"
max-width="35rem"
@@ -307,9 +307,9 @@ onMounted(() => {
<NetTestView />
</VCardText>
</VCard>
</DialogWrapper>
</VDialog>
<!-- 实时日志弹窗 -->
<DialogWrapper
<VDialog
v-if="loggingDialog"
v-model="loggingDialog"
scrollable
@@ -335,9 +335,9 @@ onMounted(() => {
<LoggingView logfile="moviepilot.log" />
</VCardText>
</VCard>
</DialogWrapper>
</VDialog>
<!-- 过滤规则弹窗 -->
<DialogWrapper
<VDialog
v-if="ruleTestDialog"
v-model="ruleTestDialog"
max-width="35rem"
@@ -357,9 +357,9 @@ onMounted(() => {
<RuleTestView />
</VCardText>
</VCard>
</DialogWrapper>
</VDialog>
<!-- 系统健康检查弹窗 -->
<DialogWrapper
<VDialog
v-if="systemTestDialog"
v-model="systemTestDialog"
max-width="35rem"
@@ -379,9 +379,9 @@ onMounted(() => {
<ModuleTestView />
</VCardText>
</VCard>
</DialogWrapper>
</VDialog>
<!-- 消息中心弹窗 -->
<DialogWrapper
<VDialog
v-if="messageDialog"
v-model="messageDialog"
max-width="50rem"
@@ -424,5 +424,5 @@ onMounted(() => {
</div>
</VCardActions>
</VCard>
</DialogWrapper>
</VDialog>
</template>

View File

@@ -650,7 +650,7 @@ onUnmounted(() => {
<!-- 用户认证对话框 -->
<UserAuthDialog v-if="siteAuthDialog" v-model="siteAuthDialog" @done="siteAuthDone" @close="siteAuthDialog = false" />
<!-- 自定义 CSS -->
<DialogWrapper v-if="cssDialog" v-model="cssDialog" max-width="50rem" scrollable :fullscreen="!display.mdAndUp.value">
<VDialog v-if="cssDialog" v-model="cssDialog" max-width="50rem" scrollable :fullscreen="!display.mdAndUp.value">
<VCard>
<VCardItem>
<VCardTitle>
@@ -671,10 +671,10 @@ onUnmounted(() => {
</VBtn>
</VCardText>
</VCard>
</DialogWrapper>
</VDialog>
<!-- 透明度调整对话框 -->
<DialogWrapper v-if="showTransparencyDialog" v-model="showTransparencyDialog" max-width="30rem">
<VDialog v-if="showTransparencyDialog" v-model="showTransparencyDialog" max-width="30rem">
<VCard>
<VCardItem>
<VCardTitle>
@@ -763,7 +763,7 @@ onUnmounted(() => {
</VBtn>
</VCardText>
</VCard>
</DialogWrapper>
</VDialog>
</template>
<style lang="scss" scoped>