30 lines
878 B
Vue
30 lines
878 B
Vue
<template>
|
|
<layout>
|
|
<div class="flex h-full w-full flex-col md:flex-row ">
|
|
<ChatHistory class="flex-none w-50" @new-chat="guide = true" @select-chat="handleSelectChat" />
|
|
<div class="flex-1 mr-2 overflow-hidden bg-white rounded-xl">
|
|
<ChatBox v-model:guide="guide" :conversationId="selectedConversationId" />
|
|
</div>
|
|
<TaskList />
|
|
</div>
|
|
</layout>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import TaskList from '@renderer/components/TaskList/index.vue'
|
|
import ChatHistory from './ChatHistory.vue'
|
|
import ChatBox from './ChatBox.vue'
|
|
import { ref } from 'vue'
|
|
/// 是否显示引导页
|
|
const guide = ref(true)
|
|
/// 选择的历史会话ID
|
|
const selectedConversationId = ref('')
|
|
|
|
/// 选择历史会话
|
|
const handleSelectChat = (conversationId: string) => {
|
|
guide.value = false;
|
|
selectedConversationId.value = conversationId;
|
|
};
|
|
|
|
</script>
|