gerson
2024-08-11 b2b8e5ed16f139597b10452df0c467b6e7cde500
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<view class="flex flex-col h-full bg-white">
  <view class="flex flex-col flex-auto px-13 pt-5">
    <view class="justify-between flex flex-0 ">
      <text class="font45 ywicon icon-liebiao " bindtap="chatRoomListClick"></text>
      <text class="font45 ywicon icon-jia " bind:tap="newChatRoomClick"></text>
    </view>
    <scroll-view class="flex-auto flex flex-col overflow-y-auto" scroll-y="true" scroll-into-view="{{toViewId}}">
      <view class="h-full flex flex-col">
        <block wx:if="{{activeChatRoom&& activeChatRoom.isInitial}}">
          <view class="ml-10 ">
            <view class="robot-tip mt-10 p-20"><text class="font24 "><text style="font-style: italic; line-height: 50rpx;font-size: 28rpx;font-weight: 550;">欢迎来到AI世界,
                </text>你可以和他对话得到想要的答案
                试试点击下方问题
              </text>
            </view>
          </view>
          <view class="mx-10 mt-50 font-24">
            <view class="bg-gray-200 rounded-lg  p-20 {{index===0 ? 'mt-0':'mt-20'}}" wx:for="{{displaySampleList}}" style="width: fit-content;" bind:tap="sampleClick" data-item="{{item}}">
              <view class="over-ellisis-2 " style="width: fit-content;font-size: 24rpx;">
                {{item.sample_title}}
              </view>
            </view>
            <!-- <view class="w-300  ml-auto mr-auto mt-30 text-white font28 py-18" style="text-align: center;background: linear-gradient(to right,#37d0e0,#5988e0);border-radius: 300rpx">
              <text class="ywicon icon-maikefeng"></text>
              开启语音对话吧~
            </view> -->
          </view>
        </block>
        <block wx:else>
          <view class="flex {{item.role===RoleEnum.user ? 'user':'assistant'}} {{index===0 ? 'mt-0':'mt-30'}}" wx:for="{{chatHistory}}" wx:key="index" id="chat-item-{{index}}">
            <view class="chat-bubble">
              <chat-loading wx:if="{{isTalking && index===chatHistory.length-1}}" data="{{processText}}"></chat-loading>
 
              <block wx:else>
                <block wx:if="{{ item.content.errCode === ErrorCode.Message}}">
                  <normal-text data="{{item.content.errMsg}}" color="#ef4444"></normal-text>
                </block>
                <block wx:else>
                  <normal-text wx:if="{{item.content.type===AnswerType.Text}}" data="{{item.content.values}}"></normal-text>
                  <knowledge wx:elif="{{item.content.type===AnswerType.Knowledge}}" data="{{item.content.values}}"></knowledge>
                  <summary-wrapper wx:elif="{{item.content.type===AnswerType.Summary}}" data="{{item.content.values}}" originData="{{item.content.origin}}"></summary-wrapper>
                </block>
              </block>
            </view>
            <image src="{{roleImageMap[item.role]}}" class="size-55 flex-0"></image>
          </view>
 
        </block>
 
      </view>
 
    </scroll-view>
  </view>
  <view class="flex-0 flex-items-center py-20" style="background-color: #f4f6f8;">
    <!-- <text class="font46 ywicon icon-fenxiang flex-0 mx-15"></text> -->
    <text class="font46  flex-0 mx-15"></text>
    <van-field icon="cross" bind:click-icon="onClickClear"  custom-class="py-3 flex-items-center van-field" input-class="ml-10" type="textarea" autosize placeholder="在这里输入你的问题" class="flex-auto" model:value="{{sendText}}" bind:change="onSendTextChange" size="large"></van-field>
    <!-- <text class="font45 ywicon {{!sendText? 'icon-dianhua1':'icon-fasongxiaoxi'}} flex-0 mx-15" bind:tap="inputRighBtnClick"></text> -->
    <text class="font45 ywicon {{!sendText? 'icon-fasongxiaoxi':'icon-fasongxiaoxi'}} flex-0 mx-15" bind:tap="inputRighBtnClick"></text>
  </view>
  <fui-drawer model:show="{{drawerIsShow}}" direction="left">
    <view class="w-450 flex flex-col relative h-full" >
      <text class="ywicon icon-guanbi absolute right-10 top-10" bindtap="drawerCloseClick"></text>
      <view class="p-15 flex flex-col justify-between" style="background-color: #e8f0fd;">
        <view class="flex-items-center">
          <text class="ywicon icon-morentouxiang bg-gray-300 rounded-full font60 text-gray-500 mr-20"></text>
          <text class="font25 font-bold">{{userName}}</text>
        </view>
        <view class="flex-items-center justify-between mt-20">
          <van-button class="" color="#000000" custom-style="font-size:20rpx;height:50rpx" round size="small" icon="plus" bind:tap="newChatRoomClick">新建聊天室</van-button>
        </view>
      </view>
      <view class="flex-auto px-15 pt-15 flex flex-col">
        <view class="flex-0 flex justify-between font19">
          <text class="text-gray-400 ">历史记录</text>
          <!-- <text class="text-blue-400">一键清空所有</text> -->
        </view>
        <scroll-view class="flex-auto font25 overflow-y-auto my-20" scroll-y="{{true}}">
          <view class="flex-items-center justify-between {{index===0 ? 'mt-0':'mt-24'}}" wx:for="{{chatRoomList}}" wx:key="id" data-item="{{item}}" bindtap="chatRoomClick">
            <view class="flex-auto flex-items-center" style="color:{{activeChatRoom.id===item.id ?'#35cfab':''}}">
              <text class="ywicon icon-xiaoxi1 mr-6"></text>
              <text style="text-overflow: ellipsis;white-space: nowrap;overflow: hidden;">"{{item.title}}</text>
              <text>"</text>
            </view>
            <text class="ywicon icon-shanchu ml-30" data-item="{{item}}" catchtap="delChatRoomClick"></text>
          </view>
        </scroll-view>
      </view>
    </view>
  </fui-drawer>
</view>