11<template >
2- <el-collapse >
3- <el-collapse-item title =" Consistency" >
4- <template #title >
5- <div class =" flex" style =" flex-wrap : nowrap ; align-items : center " >
6- <el-avatar class =" avatar-gradient mr-8" style =" height : 20px ; width : 20px " shape =" square" >
7- <img :src =" toolCallsContent.icon || defaultIcon" /> </el-avatar
8- >{{ toolCallsContent.title || '工具执行' }}
9- </div >
10- </template >
11- <Content :content =" toolCallsContent" ></Content >
12- </el-collapse-item >
13- </el-collapse >
2+ <el-card shadow =" never" class =" layout-bg mt-8" style =" --el-card-padding : 8px 12px " >
3+ <div class =" flex-between cursor" @click =" showContent = !showContent" >
4+ <div class =" flex align-center" style =" line-height : 20px " >
5+ <el-avatar
6+ v-if =" toolCallsContent.icon"
7+ shape =" square"
8+ :size =" 24"
9+ style =" background : none "
10+ class =" mr-4"
11+ >
12+ <img :src =" toolCallsContent.icon" alt =" " />
13+ </el-avatar >
14+ <ToolIcon v-else :size =" 24" class =" mr-4" />
15+ <span class =" ml-4" >{{ toolCallsContent.title || '-' }}</span >
16+ </div >
17+ <div >
18+ <el-icon class =" arrow-icon" :class =" showContent ? 'rotate-180' : ''" >
19+ <ArrowDown />
20+ </el-icon >
21+ </div >
22+ </div >
23+ <el-collapse-transition >
24+ <div v-show =" showContent" >
25+ <Content :content =" toolCallsContent" ></Content >
26+ </div >
27+ </el-collapse-transition >
28+ </el-card >
1429</template >
1530<script lang="ts" setup>
1631import Content from ' ./content/index.vue'
@@ -26,5 +41,7 @@ const toolCallsContent = computed<ToolCalls>(() => {
2641 return { type: ' simple-tool-calls' , icon: ' ' , title: ' ' , content: {} }
2742 }
2843})
44+
45+ const showContent = ref <boolean >(false )
2946 </script >
3047<style lang="scss" scoped></style >
0 commit comments