Files
ai-shiliu/frontend/src/components/AppTopBar.vue
T
figmar 81115dc23d 初始提交:识流 AI 助手项目
微信自动回复机器人,基于截图+OCR识别消息,支持关键词规则和 AI(OpenAI/DeepSeek/Dify)自动回复。
技术栈:PySide6 + Flask + Vue3 + RapidOCR + SQLite

注:OCR大模型文件(.onnx / .pdiparams)不纳入版本控制,需单独下载。

🤖 Generated with [Qoder][https://qoder.com]
2026-05-30 15:09:40 +08:00

56 lines
1.5 KiB
Vue

<script setup>
import RuntimeBadge from './RuntimeBadge.vue'
defineProps({
runtimeText: {
type: String,
default: '',
},
runtimeTagType: {
type: String,
default: 'default',
},
onStartMove: {
type: Function,
required: true,
},
onMinimize: {
type: Function,
required: true,
},
onMaximizeOrRestore: {
type: Function,
required: true,
},
onClose: {
type: Function,
required: true,
},
onOpenDevtools: {
type: Function,
required: true,
},
onRestartApp: {
type: Function,
required: true,
},
})
</script>
<template>
<div class="inner drag-region" data-tauri-drag-region @mousedown="onStartMove" @dblclick="onMaximizeOrRestore">
<div class="flex items-center gap-3" data-tauri-drag-region>
<div class="w-8 h-8 rounded-lg bg-cyan-100 text-cyan-700 flex items-center justify-center font-bold"></div>
<div class="text-[16px] font-semibold text-slate-800">识流 AI 助手</div>
<RuntimeBadge :type="runtimeTagType" :text="runtimeText" />
</div>
<div class="window-actions" @mousedown.stop>
<button class="win-btn" type="button" @click.stop="onOpenDevtools"></button>
<button class="win-btn" type="button" @click.stop="onRestartApp"></button>
<button class="win-btn" type="button" @click.stop="onMinimize"></button>
<button class="win-btn" type="button" @click.stop="onMaximizeOrRestore"></button>
<button class="win-btn close" type="button" @click.stop="onClose"></button>
</div>
</div>
</template>