Files
video-tool/app/pages/about.vue
2025-08-17 19:26:43 +08:00

271 lines
8.5 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<div class="space-y-6">
<!-- 应用信息 -->
<UCard>
<template #header>
<h2 class="text-lg font-semibold text-gray-900 dark:text-white">
应用信息
</h2>
</template>
<div class="space-y-4">
<div class="flex items-center space-x-4">
<div class="w-16 h-16 bg-blue-100 dark:bg-blue-900 rounded-lg flex items-center justify-center">
<UIcon name="i-heroicons-tv" class="w-8 h-8 text-blue-600 dark:text-blue-400" />
</div>
<div>
<h3 class="text-xl font-semibold text-gray-900 dark:text-white">
{{ appInfo.name }}
</h3>
<p class="text-gray-600 dark:text-gray-400">
版本 {{ appInfo.version }}
</p>
</div>
</div>
<div class="space-y-2">
<p class="text-gray-700 dark:text-gray-300">
{{ appInfo.description }}
</p>
<p class="text-sm text-gray-600 dark:text-gray-400">
构建时间: {{ appInfo.buildDate }}
</p>
<p class="text-sm text-gray-600 dark:text-gray-400">
作者: {{ appInfo.author }}
</p>
</div>
</div>
</UCard>
<!-- 技术栈 -->
<UCard>
<template #header>
<h2 class="text-lg font-semibold text-gray-900 dark:text-white">
技术栈
</h2>
</template>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
<div class="space-y-3">
<h4 class="font-medium text-gray-900 dark:text-white">
UI
</h4>
<div class="space-y-2">
<div class="flex items-center space-x-3">
<div class="w-6 h-6 bg-green-100 dark:bg-green-900 rounded flex items-center justify-center">
<div class="w-3 h-3 bg-green-500 rounded" />
</div>
<span class="text-sm">Nuxt 4 </span>
</div>
<div class="flex items-center space-x-3">
<div class="w-6 h-6 bg-cyan-100 dark:bg-cyan-900 rounded flex items-center justify-center">
<div class="w-3 h-3 bg-cyan-500 rounded" />
</div>
<span class="text-sm">Tailwind CSS - 原子化 CSS 框架</span>
</div>
</div>
</div>
<div class="space-y-3">
<h4 class="font-medium text-gray-900 dark:text-white">
应用
</h4>
<div class="space-y-2">
<div class="flex items-center space-x-3">
<div class="w-6 h-6 bg-orange-100 dark:bg-orange-900 rounded flex items-center justify-center">
<div class="w-3 h-3 bg-orange-500 rounded" />
</div>
<span class="text-sm">Tauri 2 - 跨平台桌面应用框架</span>
</div>
<div class="flex items-center space-x-3">
<div class="w-6 h-6 bg-red-100 dark:bg-red-900 rounded flex items-center justify-center">
<div class="w-3 h-3 bg-red-500 rounded" />
</div>
<span class="text-sm">Rust - 系统级编程语言</span>
</div>
<div class="flex items-center space-x-3">
<div class="w-6 h-6 bg-purple-100 dark:bg-purple-900 rounded flex items-center justify-center">
<div class="w-3 h-3 bg-purple-500 rounded" />
</div>
<span class="text-sm">WebSocket - 实时通信协议</span>
</div>
</div>
</div>
</div>
</UCard>
<!-- 功能特性 -->
<UCard>
<template #header>
<h2 class="text-lg font-semibold text-gray-900 dark:text-white">
功能特性
</h2>
</template>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
<div class="space-y-2">
<div class="flex items-center space-x-2">
<UIcon name="i-heroicons-check-circle" class="w-5 h-5 text-green-500" />
<span class="text-sm">远程视频播放控制</span>
</div>
<div class="flex items-center space-x-2">
<UIcon name="i-heroicons-check-circle" class="w-5 h-5 text-green-500" />
<span class="text-sm">实时播放进度同步</span>
</div>
<div class="flex items-center space-x-2">
<UIcon name="i-heroicons-check-circle" class="w-5 h-5 text-green-500" />
<span class="text-sm">音量调节控制</span>
</div>
<div class="flex items-center space-x-2">
<UIcon name="i-heroicons-check-circle" class="w-5 h-5 text-green-500" />
<span class="text-sm">播放列表管理</span>
</div>
</div>
<div class="space-y-2">
<div class="flex items-center space-x-2">
<UIcon name="i-heroicons-check-circle" class="w-5 h-5 text-green-500" />
<span class="text-sm">循环播放设置</span>
</div>
<div class="flex items-center space-x-2">
<UIcon name="i-heroicons-check-circle" class="w-5 h-5 text-green-500" />
<span class="text-sm">全屏控制</span>
</div>
<div class="flex items-center space-x-2">
<UIcon name="i-heroicons-check-circle" class="w-5 h-5 text-green-500" />
<span class="text-sm">自动重连功能</span>
</div>
</div>
</div>
</UCard>
<!-- 系统要求 -->
<UCard>
<template #header>
<h2 class="text-lg font-semibold text-gray-900 dark:text-white">
系统要求
</h2>
</template>
<div class="space-y-4">
<div>
<h4 class="font-medium text-gray-900 dark:text-white mb-2">
支持的平台
</h4>
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-5 gap-4">
<div class="flex items-center space-x-2 text-sm">
<UIcon name="i-heroicons-computer-desktop" class="w-5 h-5 text-gray-500" />
<span>Windows 10/11</span>
</div>
<div class="flex items-center space-x-2 text-sm">
<UIcon name="i-heroicons-computer-desktop" class="w-5 h-5 text-gray-500" />
<span>macOS 10.15+</span>
</div>
<div class="flex items-center space-x-2 text-sm">
<UIcon name="i-heroicons-computer-desktop" class="w-5 h-5 text-gray-500" />
<span>Linux (x64)</span>
</div>
<div class="flex items-center space-x-2 text-sm">
<UIcon name="i-heroicons-device-phone-mobile" class="w-5 h-5 text-gray-500" />
<span>Android 8.0+</span>
</div>
<div class="flex items-center space-x-2 text-sm">
<UIcon name="i-heroicons-device-phone-mobile" class="w-5 h-5 text-gray-500" />
<span>iOS 13.0+</span>
</div>
</div>
</div>
<div>
<h4 class="font-medium text-gray-900 dark:text-white mb-2">
网络要求
</h4>
<ul class="text-sm text-gray-600 dark:text-gray-400 space-y-1">
<li> 与视频播放器处于同一局域网</li>
<li> TCP/IP 网络连接</li>
<li> 端口访问权限 (默认 8080)</li>
</ul>
</div>
</div>
</UCard>
<!-- 开源许可 -->
<UCard>
<template #header>
<h2 class="text-lg font-semibold text-gray-900 dark:text-white">
开源许可
</h2>
</template>
<div class="space-y-3">
<p class="text-sm text-gray-600 dark:text-gray-400">
本软件基于 MIT 许可证开源您可以自由使用修改和分发
</p>
<div class="flex space-x-4">
<UButton variant="outline" size="sm">
<UIcon name="i-heroicons-code-bracket" class="w-4 h-4 mr-2" />
查看源码
</UButton>
<UButton variant="outline" size="sm">
<UIcon name="i-heroicons-document-text" class="w-4 h-4 mr-2" />
许可协议
</UButton>
</div>
</div>
</UCard>
<!-- 反馈和支持 -->
<UCard>
<template #header>
<h2 class="text-lg font-semibold text-gray-900 dark:text-white">
反馈和支持
</h2>
</template>
<div class="space-y-4">
<p class="text-sm text-gray-600 dark:text-gray-400">
遇到问题或有建议欢迎通过以下方式联系我们
</p>
<div class="flex flex-wrap gap-2">
<UButton variant="outline" size="sm">
<UIcon name="i-heroicons-bug-ant" class="w-4 h-4 mr-2" />
报告问题
</UButton>
<UButton variant="outline" size="sm">
<UIcon name="i-heroicons-light-bulb" class="w-4 h-4 mr-2" />
功能建议
</UButton>
<UButton variant="outline" size="sm">
<UIcon name="i-heroicons-question-mark-circle" class="w-4 h-4 mr-2" />
使用帮助
</UButton>
</div>
</div>
</UCard>
</div>
</template>
<script lang="ts" setup>
interface AppInfo {
name: string
version: string
description: string
author: string
buildDate: string
}
const { app } = useAppConfig();
// 应用信息
const appInfo = ref<AppInfo>({
name: app.name,
version: app.version,
description: app.description,
author: app.author,
buildDate: new Date().toLocaleDateString("zh-CN")
});
// 页面加载时获取构建信息
onMounted(async () => {
try {
// TODO: 调用 Tauri API 获取应用构建信息
console.log("获取应用信息");
} catch (error) {
console.error("获取应用信息失败:", error);
}
});
</script>