/ src / renderer / components / common / CommandCard.vue
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>