CommandCard.vue
1 <script setup lang="ts"> 2 import { CommandEvent } from '@/renderer/utils' 3 import { useMessageStore } from '@/renderer/store/message' 4 import type { IpcCommandRequestCallback } from '@/types/ipc' 5 import type { ChatConversationMessage } from '@/renderer/types/message' 6 const messageStore = useMessageStore() 7 8 const handleProgress: IpcCommandRequestCallback = (_event, progress) => { 9 console.log('Command', progress) 10 const params = progress.request 11 const conversations = [ 12 { 13 content: params.prompt, 14 role: 'user' 15 } as ChatConversationMessage 16 ] 17 messageStore.initConversation(conversations) 18 messageStore.userMessage = params.input 19 } 20 21 CommandEvent.request(handleProgress) 22 </script> 23 24 <template> 25 <slot></slot> 26 </template>