main
vue 41 lines 1.14 KB
Raw
1 <template>
2 <div class="text-secondary flex flex-col items-center justify-center text-center">
3 <Icon name="carbon:chat-bot" :size="40" class="text-tertiary mb-3" />
4 <p class="text-lg font-semibold">Welcome to Talon AI</p>
5 <p class="text-tertiary mt-1 max-w-md text-sm">
6 Your AI-powered security analyst. Ask questions about alerts, threats, or your environment and Talon will
7 investigate and respond.
8 </p>
9 <div class="mt-6 flex flex-col gap-2">
10 <n-button
11 v-for="example of exampleMessages"
12 :key="example"
13 size="large"
14 secondary
15 @click="useExample(example)"
16 >
17 {{ example }}
18 </n-button>
19 </div>
20 </div>
21 </template>
22
23 <script setup lang="ts">
24 import { NButton } from "naive-ui"
25 import Icon from "@/components/common/Icon.vue"
26
27 const emit = defineEmits<{
28 (e: "example", value: string): void
29 }>()
30
31 const exampleMessages = [
32 "Summarize the most critical alerts from today",
33 "What MITRE ATT&CK techniques have been seen this week?",
34 "Explain what a brute force attack looks like in our logs",
35 "What should I investigate first as a SOC analyst?"
36 ]
37
38 function useExample(example: string) {
39 emit("example", example)
40 }
41 </script>