@touchvue/chat 1.0.0-beta.2 → 1.0.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/package.json.mjs +1 -1
- package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/HelloChat.vue2.mjs +3 -3
- package/es/packages/components/touchchat/component/AiRobot/HelloChat.vue2.mjs.map +1 -0
- package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/face.vue2.mjs +3 -1
- package/es/packages/components/touchchat/component/AiRobot/face.vue2.mjs.map +1 -0
- package/es/packages/components/touchchat/component/AiRobot/letter.vue2.mjs.map +1 -0
- package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/meterialPrepare.vue2.mjs +9 -6
- package/es/packages/components/touchchat/component/AiRobot/meterialPrepare.vue2.mjs.map +1 -0
- package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/start.vue2.mjs +1 -1
- package/es/packages/components/touchchat/component/AiRobot/start.vue2.mjs.map +1 -0
- package/es/packages/components/touchchat/component/CardView.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/component/HelloChat.vue2.mjs +2 -2
- package/es/packages/components/touchchat/component/HelloChat.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/img/aiAvatar.png.mjs +4 -0
- package/es/packages/components/touchchat/img/aiAvatar.png.mjs.map +1 -0
- package/es/packages/components/touchchat/img/icon.png.mjs.map +1 -0
- package/es/packages/components/touchchat/img/userAvatar.png.mjs +4 -0
- package/es/packages/components/touchchat/img/userAvatar.png.mjs.map +1 -0
- package/es/packages/components/touchchat/index.mjs +1 -1
- package/es/packages/components/touchchat/index.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/AiMessage.vue2.mjs +115 -199
- package/es/packages/components/touchchat/src/AiChat/AiMessage.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/ChatInput.vue2.mjs +43 -137
- package/es/packages/components/touchchat/src/AiChat/ChatInput.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/HistoryList.vue2.mjs +90 -127
- package/es/packages/components/touchchat/src/AiChat/HistoryList.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/HistorySidebar.vue2.mjs +17 -39
- package/es/packages/components/touchchat/src/AiChat/HistorySidebar.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/MessageActions.vue2.mjs +41 -181
- package/es/packages/components/touchchat/src/AiChat/MessageActions.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/{AiRobot → AiChat}/Scene.vue2.mjs +1 -1
- package/es/packages/components/touchchat/src/AiChat/Scene.vue2.mjs.map +1 -0
- package/es/packages/components/touchchat/src/AiChat/SiderBarView.vue.mjs +6 -0
- package/es/packages/components/touchchat/src/AiChat/SiderBarView.vue.mjs.map +1 -0
- package/es/packages/components/touchchat/src/AiChat/SiderBarView.vue2.mjs +25 -0
- package/es/packages/components/touchchat/src/AiChat/SiderBarView.vue2.mjs.map +1 -0
- package/es/packages/components/touchchat/src/AiChat/TouchChat.vue2.mjs +618 -390
- package/es/packages/components/touchchat/src/AiChat/TouchChat.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/TouchHistory.vue2.mjs +200 -89
- package/es/packages/components/touchchat/src/AiChat/TouchHistory.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/UserMessage.vue2.mjs +42 -37
- package/es/packages/components/touchchat/src/AiChat/UserMessage.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/index.vue2.mjs +54 -29
- package/es/packages/components/touchchat/src/index.vue2.mjs.map +1 -1
- package/lib/package.json.js +1 -1
- package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/HelloChat.vue2.js +3 -3
- package/lib/packages/components/touchchat/component/AiRobot/HelloChat.vue2.js.map +1 -0
- package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/face.vue2.js +3 -1
- package/lib/packages/components/touchchat/component/AiRobot/face.vue2.js.map +1 -0
- package/lib/packages/components/touchchat/component/AiRobot/letter.vue2.js.map +1 -0
- package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/meterialPrepare.vue2.js +8 -5
- package/lib/packages/components/touchchat/component/AiRobot/meterialPrepare.vue2.js.map +1 -0
- package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/start.vue2.js +1 -1
- package/lib/packages/components/touchchat/component/AiRobot/start.vue2.js.map +1 -0
- package/lib/packages/components/touchchat/component/CardView.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/component/HelloChat.vue2.js +2 -2
- package/lib/packages/components/touchchat/component/HelloChat.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/img/aiAvatar.png.js +8 -0
- package/lib/packages/components/touchchat/img/aiAvatar.png.js.map +1 -0
- package/lib/packages/components/touchchat/img/icon.png.js.map +1 -0
- package/lib/packages/components/touchchat/img/userAvatar.png.js +8 -0
- package/lib/packages/components/touchchat/img/userAvatar.png.js.map +1 -0
- package/lib/packages/components/touchchat/index.js +1 -1
- package/lib/packages/components/touchchat/index.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/AiMessage.vue2.js +107 -191
- package/lib/packages/components/touchchat/src/AiChat/AiMessage.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/ChatInput.vue2.js +43 -137
- package/lib/packages/components/touchchat/src/AiChat/ChatInput.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/HistoryList.vue2.js +89 -126
- package/lib/packages/components/touchchat/src/AiChat/HistoryList.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/HistorySidebar.vue2.js +16 -38
- package/lib/packages/components/touchchat/src/AiChat/HistorySidebar.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/MessageActions.vue2.js +41 -181
- package/lib/packages/components/touchchat/src/AiChat/MessageActions.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/{AiRobot → AiChat}/Scene.vue2.js +1 -1
- package/lib/packages/components/touchchat/src/AiChat/Scene.vue2.js.map +1 -0
- package/lib/packages/components/touchchat/src/AiChat/SiderBarView.vue.js +10 -0
- package/lib/packages/components/touchchat/src/AiChat/SiderBarView.vue.js.map +1 -0
- package/lib/packages/components/touchchat/src/AiChat/SiderBarView.vue2.js +29 -0
- package/lib/packages/components/touchchat/src/AiChat/SiderBarView.vue2.js.map +1 -0
- package/lib/packages/components/touchchat/src/AiChat/TouchChat.vue2.js +615 -387
- package/lib/packages/components/touchchat/src/AiChat/TouchChat.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/TouchHistory.vue2.js +199 -88
- package/lib/packages/components/touchchat/src/AiChat/TouchHistory.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/UserMessage.vue2.js +41 -36
- package/lib/packages/components/touchchat/src/AiChat/UserMessage.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/index.vue2.js +53 -28
- package/lib/packages/components/touchchat/src/index.vue2.js.map +1 -1
- package/package.json +81 -81
- package/theme/components/index.css +1447 -2004
- package/theme/img/aiArrow.png +0 -0
- package/theme/img/loading.png +0 -0
- package/theme/img/logo.png +0 -0
- package/theme/img/userArrow.png +0 -0
- package/theme/index.css +1448 -2005
- package/theme/skin/default.css +1448 -2005
- package/es/packages/components/touchchat/img/AI.png.mjs +0 -4
- package/es/packages/components/touchchat/img/AI.png.mjs.map +0 -1
- package/es/packages/components/touchchat/img/asir.png.mjs +0 -4
- package/es/packages/components/touchchat/img/asir.png.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/ChatPanel.vue.mjs +0 -6
- package/es/packages/components/touchchat/src/AiRobot/ChatPanel.vue.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/ChatPanel.vue2.mjs +0 -620
- package/es/packages/components/touchchat/src/AiRobot/ChatPanel.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/Content.vue.mjs +0 -6
- package/es/packages/components/touchchat/src/AiRobot/Content.vue.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/Content.vue2.mjs +0 -224
- package/es/packages/components/touchchat/src/AiRobot/Content.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/Header.vue.mjs +0 -6
- package/es/packages/components/touchchat/src/AiRobot/Header.vue.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/Header.vue2.mjs +0 -188
- package/es/packages/components/touchchat/src/AiRobot/Header.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/Input.vue.mjs +0 -6
- package/es/packages/components/touchchat/src/AiRobot/Input.vue.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/Input.vue2.mjs +0 -69
- package/es/packages/components/touchchat/src/AiRobot/Input.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/Scene.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/component/HelloChat.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/component/face.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/component/letter.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/component/meterialPrepare.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/component/start.vue2.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/img/Avatar-AI.png.mjs +0 -4
- package/es/packages/components/touchchat/src/AiRobot/img/Avatar-AI.png.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/img/icon.png.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/index.vue.mjs +0 -6
- package/es/packages/components/touchchat/src/AiRobot/index.vue.mjs.map +0 -1
- package/es/packages/components/touchchat/src/AiRobot/index.vue2.mjs +0 -67
- package/es/packages/components/touchchat/src/AiRobot/index.vue2.mjs.map +0 -1
- package/lib/packages/components/touchchat/img/AI.png.js +0 -8
- package/lib/packages/components/touchchat/img/AI.png.js.map +0 -1
- package/lib/packages/components/touchchat/img/asir.png.js +0 -8
- package/lib/packages/components/touchchat/img/asir.png.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/ChatPanel.vue.js +0 -10
- package/lib/packages/components/touchchat/src/AiRobot/ChatPanel.vue.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/ChatPanel.vue2.js +0 -624
- package/lib/packages/components/touchchat/src/AiRobot/ChatPanel.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/Content.vue.js +0 -10
- package/lib/packages/components/touchchat/src/AiRobot/Content.vue.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/Content.vue2.js +0 -228
- package/lib/packages/components/touchchat/src/AiRobot/Content.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/Header.vue.js +0 -10
- package/lib/packages/components/touchchat/src/AiRobot/Header.vue.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/Header.vue2.js +0 -192
- package/lib/packages/components/touchchat/src/AiRobot/Header.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/Input.vue.js +0 -10
- package/lib/packages/components/touchchat/src/AiRobot/Input.vue.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/Input.vue2.js +0 -73
- package/lib/packages/components/touchchat/src/AiRobot/Input.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/Scene.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/component/HelloChat.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/component/face.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/component/letter.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/component/meterialPrepare.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/component/start.vue2.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/img/Avatar-AI.png.js +0 -8
- package/lib/packages/components/touchchat/src/AiRobot/img/Avatar-AI.png.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/img/icon.png.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/index.vue.js +0 -10
- package/lib/packages/components/touchchat/src/AiRobot/index.vue.js.map +0 -1
- package/lib/packages/components/touchchat/src/AiRobot/index.vue2.js +0 -71
- package/lib/packages/components/touchchat/src/AiRobot/index.vue2.js.map +0 -1
- package/theme/img/default.png +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/HelloChat.vue.mjs +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/HelloChat.vue.mjs.map +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/face.vue.mjs +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/face.vue.mjs.map +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/letter.vue.mjs +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/letter.vue.mjs.map +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/letter.vue2.mjs +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/meterialPrepare.vue.mjs +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/meterialPrepare.vue.mjs.map +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/start.vue.mjs +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/start.vue.mjs.map +0 -0
- /package/es/packages/components/touchchat/{src/AiRobot/img → img}/icon.png.mjs +0 -0
- /package/es/packages/components/touchchat/src/{AiRobot → AiChat}/Scene.vue.mjs +0 -0
- /package/es/packages/components/touchchat/src/{AiRobot → AiChat}/Scene.vue.mjs.map +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/HelloChat.vue.js +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/HelloChat.vue.js.map +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/face.vue.js +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/face.vue.js.map +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/letter.vue.js +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/letter.vue.js.map +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/letter.vue2.js +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/meterialPrepare.vue.js +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/meterialPrepare.vue.js.map +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/start.vue.js +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/component → component/AiRobot}/start.vue.js.map +0 -0
- /package/lib/packages/components/touchchat/{src/AiRobot/img → img}/icon.png.js +0 -0
- /package/lib/packages/components/touchchat/src/{AiRobot → AiChat}/Scene.vue.js +0 -0
- /package/lib/packages/components/touchchat/src/{AiRobot → AiChat}/Scene.vue.js.map +0 -0
|
@@ -24,144 +24,50 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
24
24
|
const handleStop = () => emits("stop");
|
|
25
25
|
return (_ctx, _cache) => {
|
|
26
26
|
var _a;
|
|
27
|
-
return openBlock(), createElementBlock("div", { class: "
|
|
28
|
-
createElementVNode("div", { class: "input
|
|
29
|
-
createElementVNode("
|
|
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
|
-
}, null, 8, ["stroke"]),
|
|
70
|
-
createElementVNode("path", {
|
|
71
|
-
d: "M9.41454 9.41419L6.11098 12.7178C5.33199 13.4967 4.06733 13.4951 3.28628 12.714C2.50524 11.933 2.50356 10.6683 3.28255 9.88933L3.755 9.41687",
|
|
72
|
-
stroke: _ctx.enableDeepThinking ? "#0062D6" : "#1D2129",
|
|
73
|
-
"stroke-width": "1.2",
|
|
74
|
-
"stroke-linecap": "round"
|
|
75
|
-
}, null, 8, ["stroke"]),
|
|
76
|
-
createElementVNode("path", {
|
|
77
|
-
d: "M6.58594 6.58545L9.88313 3.28826C10.6656 2.50575 11.9331 2.50457 12.7142 3.28562C13.4952 4.06666 13.4941 5.33418 12.7116 6.11668L12.2584 6.56982",
|
|
78
|
-
stroke: _ctx.enableDeepThinking ? "#0062D6" : "#1D2129",
|
|
79
|
-
"stroke-width": "1.2",
|
|
80
|
-
"stroke-linecap": "round"
|
|
81
|
-
}, null, 8, ["stroke"])
|
|
82
|
-
])) : (openBlock(), createElementBlock("svg", {
|
|
83
|
-
key: 1,
|
|
84
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
85
|
-
width: "16",
|
|
86
|
-
height: "16",
|
|
87
|
-
viewBox: "0 0 16 16",
|
|
88
|
-
fill: "none"
|
|
89
|
-
}, [
|
|
90
|
-
createElementVNode("path", {
|
|
91
|
-
d: "M6.57131 9.39895L3.28628 6.11392C2.50523 5.33287 2.50524 4.06654 3.28628 3.28549C4.06733 2.50445 5.33366 2.50444 6.11471 3.28549L6.58746 3.75824",
|
|
92
|
-
stroke: "#C9CDD4",
|
|
93
|
-
"stroke-width": "1.2",
|
|
94
|
-
"stroke-linecap": "round"
|
|
95
|
-
}),
|
|
96
|
-
createElementVNode("path", {
|
|
97
|
-
d: "M9.41534 6.58612L12.7143 9.88513C13.4954 10.6662 13.4954 11.9325 12.7143 12.7136C11.9333 13.4946 10.667 13.4946 9.88592 12.7136L9.40744 12.2351",
|
|
98
|
-
stroke: "#C9CDD4",
|
|
99
|
-
"stroke-width": "1.2",
|
|
100
|
-
"stroke-linecap": "round"
|
|
101
|
-
}),
|
|
102
|
-
createElementVNode("path", {
|
|
103
|
-
d: "M9.41454 9.41419L6.11098 12.7178C5.33199 13.4967 4.06733 13.4951 3.28628 12.714C2.50524 11.933 2.50356 10.6683 3.28255 9.88933L3.755 9.41687",
|
|
104
|
-
stroke: "#C9CDD4",
|
|
105
|
-
"stroke-width": "1.2",
|
|
106
|
-
"stroke-linecap": "round"
|
|
107
|
-
}),
|
|
108
|
-
createElementVNode("path", {
|
|
109
|
-
d: "M6.58594 6.58545L9.88313 3.28826C10.6656 2.50575 11.9331 2.50457 12.7142 3.28562C13.4952 4.06666 13.4941 5.33418 12.7116 6.11668L12.2584 6.56982",
|
|
110
|
-
stroke: "#C9CDD4",
|
|
111
|
-
"stroke-width": "1.2",
|
|
112
|
-
"stroke-linecap": "round"
|
|
113
|
-
})
|
|
114
|
-
])),
|
|
115
|
-
createElementVNode("span", null, "\u6DF1\u5EA6\u601D\u8003")
|
|
116
|
-
], 10, ["disabled"])) : createCommentVNode("", true),
|
|
117
|
-
createElementVNode("div", { class: "input-buttons" }, [
|
|
118
|
-
!_ctx.isChating ? (openBlock(), createElementBlock("button", {
|
|
119
|
-
key: 0,
|
|
120
|
-
class: "send-button square-icon-btn",
|
|
121
|
-
disabled: !_ctx.inputValue.trim(),
|
|
122
|
-
onClick: handleSend
|
|
123
|
-
}, [
|
|
124
|
-
(openBlock(), createElementBlock("svg", {
|
|
125
|
-
width: "24",
|
|
126
|
-
height: "24",
|
|
127
|
-
viewBox: "0 0 24 24",
|
|
128
|
-
fill: "none",
|
|
129
|
-
stroke: "currentColor",
|
|
130
|
-
"stroke-width": "2"
|
|
131
|
-
}, [
|
|
132
|
-
createElementVNode("path", { d: "M12 5v14M5 12l7-7 7 7" })
|
|
133
|
-
]))
|
|
134
|
-
], 8, ["disabled"])) : (openBlock(), createElementBlock("button", {
|
|
135
|
-
key: 1,
|
|
136
|
-
class: "stop-button square-icon-btn",
|
|
137
|
-
onClick: handleStop
|
|
138
|
-
}, [
|
|
139
|
-
(openBlock(), createElementBlock("svg", {
|
|
140
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
141
|
-
width: "33",
|
|
142
|
-
height: "33",
|
|
143
|
-
viewBox: "0 0 33 33",
|
|
144
|
-
fill: "none"
|
|
145
|
-
}, [
|
|
146
|
-
createElementVNode("rect", {
|
|
147
|
-
x: "0.5",
|
|
148
|
-
y: "0.842773",
|
|
149
|
-
width: "32",
|
|
150
|
-
height: "32",
|
|
151
|
-
rx: "8",
|
|
152
|
-
fill: "#0077FA"
|
|
153
|
-
}),
|
|
154
|
-
createElementVNode("path", {
|
|
155
|
-
d: "M11.5 13.2713C11.5 12.4824 12.1396 11.8428 12.9286 11.8428H20.0714C20.8604 11.8428 21.5 12.4824 21.5 13.2713V20.4142C21.5 21.2032 20.8604 21.8428 20.0714 21.8428H12.9286C12.1396 21.8428 11.5 21.2032 11.5 20.4142V13.2713Z",
|
|
156
|
-
fill: "white"
|
|
157
|
-
})
|
|
158
|
-
]))
|
|
159
|
-
]))
|
|
160
|
-
])
|
|
161
|
-
], 2)
|
|
162
|
-
])
|
|
27
|
+
return openBlock(), createElementBlock("div", { class: "touchchat-edit" }, [
|
|
28
|
+
createElementVNode("div", { class: "touchchat-edit-input" }, [
|
|
29
|
+
createElementVNode("textarea", {
|
|
30
|
+
value: _ctx.inputValue,
|
|
31
|
+
placeholder: (_a = unref(placeholder)) != null ? _a : "\u8BF7\u8F93\u5165...",
|
|
32
|
+
onInput: handleInputChange,
|
|
33
|
+
onKeyup: withKeys(handleSend, ["enter"])
|
|
34
|
+
}, null, 40, ["value", "placeholder"])
|
|
35
|
+
]),
|
|
36
|
+
createElementVNode("div", {
|
|
37
|
+
class: normalizeClass(unref(isThinking) ? "touchchat-edit-submit is-thinkable" : "touchchat-edit-submit")
|
|
38
|
+
}, [
|
|
39
|
+
createElementVNode("div", { class: "touchchat-edit-submit-left" }, [
|
|
40
|
+
createElementVNode("button", {
|
|
41
|
+
class: normalizeClass(["touchchat-edit-attach", { "is-dis": _ctx.isChating }])
|
|
42
|
+
}, [
|
|
43
|
+
createElementVNode("div", { class: "touchchat-edit-attach-icon" })
|
|
44
|
+
], 2),
|
|
45
|
+
unref(isThinking) ? (openBlock(), createElementBlock("button", {
|
|
46
|
+
key: 0,
|
|
47
|
+
class: normalizeClass(["touchchat-edit-think", { "is-on": _ctx.enableDeepThinking, "is-dis": _ctx.isChating }]),
|
|
48
|
+
onClick: handleDeepThinkingClick
|
|
49
|
+
}, [
|
|
50
|
+
createElementVNode("div", { class: "touchchat-edit-think-icon" }),
|
|
51
|
+
createElementVNode("div", { class: "touchchat-edit-think-text" }, "\u6DF1\u5EA6\u601D\u8003")
|
|
52
|
+
], 2)) : createCommentVNode("", true)
|
|
53
|
+
]),
|
|
54
|
+
createElementVNode("div", { class: "touchchat-edit-submit-right" }, [
|
|
55
|
+
!_ctx.isChating ? (openBlock(), createElementBlock("button", {
|
|
56
|
+
key: 0,
|
|
57
|
+
class: "touchchat-edit-send",
|
|
58
|
+
disabled: !_ctx.inputValue.trim(),
|
|
59
|
+
onClick: handleSend
|
|
60
|
+
}, [
|
|
61
|
+
createElementVNode("div", { class: "touchchat-edit-send-icon" })
|
|
62
|
+
], 8, ["disabled"])) : (openBlock(), createElementBlock("button", {
|
|
63
|
+
key: 1,
|
|
64
|
+
class: "touchchat-edit-stop",
|
|
65
|
+
onClick: handleStop
|
|
66
|
+
}, [
|
|
67
|
+
createElementVNode("div", { class: "touchchat-edit-stop-icon" })
|
|
68
|
+
]))
|
|
163
69
|
])
|
|
164
|
-
])
|
|
70
|
+
], 2)
|
|
165
71
|
]);
|
|
166
72
|
};
|
|
167
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatInput.vue2.mjs","sources":["../../../../../../../packages/components/touchchat/src/AiChat/ChatInput.vue"],"sourcesContent":["<template>\n <div class=\"input-area-fixed\">\n <div class=\"input-area\">\n <div class=\"input-container\">\n <!-- 添加外层垂直布局容器 -->\n <div class=\"vertical-input-group\">\n <!-- 将v-model拆分为:value和@input -->\n <textarea\n :value=\"inputValue\"\n :placeholder=\"placeholder ?? '请输入...'\"\n class=\"rounded-input\"\n @input=\"handleInputChange\"\n @keyup.enter=\"handleSend\"\n ></textarea>\n <!-- 按钮与开关容器 -->\n <div :class=\"isThinking ? 'controls-container' : 'controls-container not-is-thinking'\">\n <!-- 深度思考开关 - 修改为按钮样式 -->\n <button\n v-if=\"isThinking\"\n class=\"deep-thinking-btn\"\n :class=\"{\n active: enableDeepThinking,\n disabled: isChating,\n }\"\n :disabled=\"isChating\"\n @click=\"handleDeepThinkingClick\"\n >\n <svg\n v-if=\"!isChating\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M6.57131 9.39895L3.28628 6.11392C2.50523 5.33287 2.50524 4.06654 3.28628 3.28549C4.06733 2.50445 5.33366 2.50444 6.11471 3.28549L6.58746 3.75824\"\n :stroke=\"enableDeepThinking ? '#0062D6' : '#1D2129'\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n <path\n d=\"M9.41534 6.58612L12.7143 9.88513C13.4954 10.6662 13.4954 11.9325 12.7143 12.7136C11.9333 13.4946 10.667 13.4946 9.88592 12.7136L9.40744 12.2351\"\n :stroke=\"enableDeepThinking ? '#0062D6' : '#1D2129'\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n <path\n d=\"M9.41454 9.41419L6.11098 12.7178C5.33199 13.4967 4.06733 13.4951 3.28628 12.714C2.50524 11.933 2.50356 10.6683 3.28255 9.88933L3.755 9.41687\"\n :stroke=\"enableDeepThinking ? '#0062D6' : '#1D2129'\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n <path\n d=\"M6.58594 6.58545L9.88313 3.28826C10.6656 2.50575 11.9331 2.50457 12.7142 3.28562C13.4952 4.06666 13.4941 5.33418 12.7116 6.11668L12.2584 6.56982\"\n :stroke=\"enableDeepThinking ? '#0062D6' : '#1D2129'\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n </svg>\n <svg\n v-else\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M6.57131 9.39895L3.28628 6.11392C2.50523 5.33287 2.50524 4.06654 3.28628 3.28549C4.06733 2.50445 5.33366 2.50444 6.11471 3.28549L6.58746 3.75824\"\n stroke=\"#C9CDD4\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n <path\n d=\"M9.41534 6.58612L12.7143 9.88513C13.4954 10.6662 13.4954 11.9325 12.7143 12.7136C11.9333 13.4946 10.667 13.4946 9.88592 12.7136L9.40744 12.2351\"\n stroke=\"#C9CDD4\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n <path\n d=\"M9.41454 9.41419L6.11098 12.7178C5.33199 13.4967 4.06733 13.4951 3.28628 12.714C2.50524 11.933 2.50356 10.6683 3.28255 9.88933L3.755 9.41687\"\n stroke=\"#C9CDD4\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n <path\n d=\"M6.58594 6.58545L9.88313 3.28826C10.6656 2.50575 11.9331 2.50457 12.7142 3.28562C13.4952 4.06666 13.4941 5.33418 12.7116 6.11668L12.2584 6.56982\"\n stroke=\"#C9CDD4\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n />\n </svg>\n <span>深度思考</span>\n </button>\n <!-- 按钮容器 -->\n <div class=\"input-buttons\">\n <!-- 发送按钮 -->\n <button\n v-if=\"!isChating\"\n class=\"send-button square-icon-btn\"\n :disabled=\"!inputValue.trim()\"\n @click=\"handleSend\"\n >\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n >\n <path d=\"M12 5v14M5 12l7-7 7 7\" />\n </svg>\n </button>\n <!-- 停止按钮 -->\n <button v-else class=\"stop-button square-icon-btn\" @click=\"handleStop\">\n <!-- 修正viewBox属性,移除$符号 -->\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"33\"\n height=\"33\"\n viewBox=\"0 0 33 33\"\n fill=\"none\"\n >\n <rect x=\"0.5\" y=\"0.842773\" width=\"32\" height=\"32\" rx=\"8\" fill=\"#0077FA\" />\n <path\n d=\"M11.5 13.2713C11.5 12.4824 12.1396 11.8428 12.9286 11.8428H20.0714C20.8604 11.8428 21.5 12.4824 21.5 13.2713V20.4142C21.5 21.2032 20.8604 21.8428 20.0714 21.8428H12.9286C12.1396 21.8428 11.5 21.2032 11.5 20.4142V13.2713Z\"\n fill=\"white\"\n />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { inject } from 'vue';\nconst placeholder = inject('placeholder', '请输入...');\nconst isThinking = inject('isThinking', false);\nconst props = defineProps<{\n inputValue: string;\n isChating: boolean;\n enableDeepThinking: boolean;\n}>();\n\nconst emits = defineEmits<{\n (e: 'send'): void;\n (e: 'stop'): void;\n (e: 'update:enableDeepThinking', value: boolean): void;\n (e: 'update:inputValue', value: string): void; // 添加inputValue更新事件\n}>();\n\n// 处理输入框变化\nconst handleInputChange = (e: Event) => {\n const value = (e.target as HTMLTextAreaElement).value;\n emits('update:inputValue', value);\n};\n\n// 处理深度思考按钮点击\nconst handleDeepThinkingClick = () => {\n emits('update:enableDeepThinking', !props.enableDeepThinking);\n};\n\nconst handleSend = () => emits('send');\nconst handleStop = () => emits('stop');\n</script>\n<!-- <style lang=\"less\" scoped>\n@import '../../style/ChatInput.less';\n</style> -->\n"],"names":["_createElementBlock","_createElementVNode","inputValue","_unref","enableDeepThinking","isChating"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChatInput.vue2.mjs","sources":["../../../../../../../packages/components/touchchat/src/AiChat/ChatInput.vue"],"sourcesContent":["<template>\n\t<div class=\"touchchat-edit\">\n\t\t<!-- 将v-model拆分为:value和@input -->\n\t\t<div class=\"touchchat-edit-input\">\n\t\t\t<textarea :value=\"inputValue\" :placeholder=\"placeholder ?? '请输入...'\" @input=\"handleInputChange\" @keyup.enter=\"handleSend\"></textarea>\n\t\t</div>\n\n\t\t<!-- 按钮与开关容器 -->\n\t\t<div :class=\"isThinking ? 'touchchat-edit-submit is-thinkable' : 'touchchat-edit-submit'\">\n\t\t\t<div class=\"touchchat-edit-submit-left\">\n\t\t\t\t<!-- 附件 -->\n\t\t\t\t<button class=\"touchchat-edit-attach\" :class=\"{ 'is-dis': isChating }\">\n\t\t\t\t\t<div class=\"touchchat-edit-attach-icon\"></div>\n\t\t\t\t</button>\n\n\t\t\t\t<!-- 深度思考开关 - 修改为按钮样式 -->\n\t\t\t\t<button v-if=\"isThinking\" class=\"touchchat-edit-think\" :class=\"{ 'is-on': enableDeepThinking, 'is-dis': isChating }\" @click=\"handleDeepThinkingClick\">\n\t\t\t\t\t<div class=\"touchchat-edit-think-icon\"></div>\n\t\t\t\t\t<div class=\"touchchat-edit-think-text\">深度思考</div>\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t\t<div class=\"touchchat-edit-submit-right\">\n\t\t\t\t<!-- 发送按钮 -->\n\t\t\t\t<button v-if=\"!isChating\" class=\"touchchat-edit-send\" :disabled=\"!inputValue.trim()\" @click=\"handleSend\">\n\t\t\t\t\t<div class=\"touchchat-edit-send-icon\"></div>\n\t\t\t\t</button>\n\n\t\t\t\t<!-- 停止按钮 -->\n\t\t\t\t<button v-else class=\"touchchat-edit-stop\" @click=\"handleStop\">\n\t\t\t\t\t<div class=\"touchchat-edit-stop-icon\"></div>\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { inject } from 'vue'\nconst placeholder = inject('placeholder', '请输入...')\nconst isThinking = inject('isThinking', false)\nconst props = defineProps<{\n\tinputValue: string\n\tisChating: boolean\n\tenableDeepThinking: boolean\n}>()\n\nconst emits = defineEmits<{\n\t(e: 'send'): void\n\t(e: 'stop'): void\n\t(e: 'update:enableDeepThinking', value: boolean): void\n\t(e: 'update:inputValue', value: string): void // 添加inputValue更新事件\n}>()\n\n// 处理输入框变化\nconst handleInputChange = (e: Event) => {\n\tconst value = (e.target as HTMLTextAreaElement).value\n\temits('update:inputValue', value)\n}\n\n// 处理深度思考按钮点击\nconst handleDeepThinkingClick = () => {\n\temits('update:enableDeepThinking', !props.enableDeepThinking)\n}\n\nconst handleSend = () => emits('send')\nconst handleStop = () => emits('stop')\n</script>\n"],"names":["_createElementBlock","_createElementVNode","inputValue","_unref","_normalizeClass","isChating","enableDeepThinking"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, inject, ref, reactive, computed, watch, openBlock, createElementBlock, normalizeClass, Fragment, renderList, createElementVNode, toDisplayString, withDirectives, withKeys, withModifiers, vModelText, createCommentVNode, nextTick } from 'vue';
|
|
1
|
+
import { defineComponent, inject, ref, reactive, computed, watch, openBlock, createElementBlock, normalizeClass, Fragment, renderList, createElementVNode, toDisplayString, withDirectives, withKeys, withModifiers, vModelText, createTextVNode, createCommentVNode, nextTick } from 'vue';
|
|
2
2
|
|
|
3
3
|
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
4
4
|
__name: "HistoryList",
|
|
@@ -10,7 +10,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
10
10
|
setup(__props, { emit: __emit }) {
|
|
11
11
|
const props = __props;
|
|
12
12
|
const isRobot = inject("scripts", []).length > 0;
|
|
13
|
-
console.log("isRobot === historyList", isRobot, inject("scripts", []));
|
|
14
13
|
const emit = __emit;
|
|
15
14
|
const actionMenus = ref({});
|
|
16
15
|
const tooltipContainerRefs = ref({});
|
|
@@ -26,6 +25,23 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
26
25
|
const state = reactive({
|
|
27
26
|
actionMenuVisible: {}
|
|
28
27
|
});
|
|
28
|
+
const handlePageChange = inject("handlePageChange", () => {
|
|
29
|
+
console.warn("\u672A\u63D0\u4F9BhandlePageChange\u51FD\u6570");
|
|
30
|
+
});
|
|
31
|
+
let scrollTimeout = null;
|
|
32
|
+
const handleScroll = (event) => {
|
|
33
|
+
if (scrollTimeout) {
|
|
34
|
+
clearTimeout(scrollTimeout);
|
|
35
|
+
}
|
|
36
|
+
scrollTimeout = setTimeout(() => {
|
|
37
|
+
const container = event.target;
|
|
38
|
+
const { scrollTop, scrollHeight, clientHeight } = container;
|
|
39
|
+
const isBottom = scrollHeight - scrollTop <= clientHeight + 10;
|
|
40
|
+
if (isBottom) {
|
|
41
|
+
handlePageChange();
|
|
42
|
+
}
|
|
43
|
+
}, 200);
|
|
44
|
+
};
|
|
29
45
|
const handleStartRename = (id) => {
|
|
30
46
|
const item = props.chatHistory.find((item2) => item2.id === id);
|
|
31
47
|
if (item) {
|
|
@@ -34,7 +50,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
34
50
|
state.actionMenuVisible[id] = false;
|
|
35
51
|
nextTick(() => {
|
|
36
52
|
var _a;
|
|
37
|
-
console.log("editInputRefs.value", editInputRefs.value[id]);
|
|
38
53
|
(_a = editInputRefs.value[id]) == null ? void 0 : _a.focus();
|
|
39
54
|
});
|
|
40
55
|
}
|
|
@@ -58,11 +73,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
58
73
|
const thirtyDaysAgo = new Date(today);
|
|
59
74
|
thirtyDaysAgo.setDate(thirtyDaysAgo.getDate() - 30);
|
|
60
75
|
const targetDate = new Date(date);
|
|
61
|
-
const targetDateNormalized = new Date(
|
|
62
|
-
targetDate.getFullYear(),
|
|
63
|
-
targetDate.getMonth(),
|
|
64
|
-
targetDate.getDate()
|
|
65
|
-
);
|
|
76
|
+
const targetDateNormalized = new Date(targetDate.getFullYear(), targetDate.getMonth(), targetDate.getDate());
|
|
66
77
|
if (targetDateNormalized >= today)
|
|
67
78
|
return "today";
|
|
68
79
|
if (targetDateNormalized >= yesterday)
|
|
@@ -93,9 +104,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
93
104
|
}
|
|
94
105
|
};
|
|
95
106
|
const groupedChatHistory = computed(() => {
|
|
96
|
-
const sortedChats = [...props.chatHistory].sort(
|
|
97
|
-
(a, b) => new Date(b.time).getTime() - new Date(a.time).getTime()
|
|
98
|
-
);
|
|
107
|
+
const sortedChats = [...props.chatHistory].sort((a, b) => new Date(b.time).getTime() - new Date(a.time).getTime());
|
|
99
108
|
const groups = {};
|
|
100
109
|
sortedChats.forEach((chat) => {
|
|
101
110
|
const key = getGroupKey(new Date(chat.time));
|
|
@@ -245,147 +254,101 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
245
254
|
}, 200);
|
|
246
255
|
};
|
|
247
256
|
return (_ctx, _cache) => {
|
|
248
|
-
return openBlock(), createElementBlock("
|
|
257
|
+
return openBlock(), createElementBlock("div", {
|
|
249
258
|
ref_key: "historyListRef",
|
|
250
259
|
ref: historyListRef,
|
|
251
|
-
class: normalizeClass(["history
|
|
260
|
+
class: normalizeClass(["touchchat-history", { "is-robot": isRobot }]),
|
|
261
|
+
onScroll: handleScroll
|
|
252
262
|
}, [
|
|
253
263
|
(openBlock(true), createElementBlock(Fragment, null, renderList(groupedChatHistory.value, (group) => {
|
|
254
|
-
return openBlock(), createElementBlock(
|
|
255
|
-
key: group.groupKey
|
|
264
|
+
return openBlock(), createElementBlock("div", {
|
|
265
|
+
key: group.groupKey,
|
|
266
|
+
class: "touchchat-history-group"
|
|
256
267
|
}, [
|
|
257
|
-
createElementVNode("
|
|
258
|
-
(
|
|
259
|
-
|
|
260
|
-
width: "16",
|
|
261
|
-
height: "17",
|
|
262
|
-
viewBox: "0 0 16 17",
|
|
263
|
-
fill: "none"
|
|
264
|
-
}, [
|
|
265
|
-
createElementVNode("path", {
|
|
266
|
-
"fill-rule": "evenodd",
|
|
267
|
-
"clip-rule": "evenodd",
|
|
268
|
-
d: "M1.28906 3.54885C1.28906 3.21748 1.55769 2.94885 1.88906 2.94885H14.1113C14.4427 2.94885 14.7113 3.21748 14.7113 3.54885V12.7155C14.7113 13.0469 14.4427 13.3155 14.1113 13.3155H9.77648L8.42444 14.6676C8.31192 14.7801 8.1593 14.8433 8.00017 14.8433C7.84104 14.8433 7.68843 14.7801 7.57591 14.6676L6.22387 13.3155H1.88906C1.55769 13.3155 1.28906 13.0469 1.28906 12.7155V3.54885ZM2.48906 4.14885V12.1155H6.4724C6.63153 12.1155 6.78414 12.1787 6.89666 12.2913L8.00017 13.3948L9.10369 12.2913C9.21621 12.1787 9.36882 12.1155 9.52795 12.1155H13.5113V4.14885H2.48906Z",
|
|
269
|
-
fill: "#1D2129"
|
|
270
|
-
}),
|
|
271
|
-
createElementVNode("path", {
|
|
272
|
-
"fill-rule": "evenodd",
|
|
273
|
-
"clip-rule": "evenodd",
|
|
274
|
-
d: "M7.09462 7.53219H8.90649V8.73219H7.09462V7.53219Z",
|
|
275
|
-
fill: "#1D2129"
|
|
276
|
-
}),
|
|
277
|
-
createElementVNode("path", {
|
|
278
|
-
"fill-rule": "evenodd",
|
|
279
|
-
"clip-rule": "evenodd",
|
|
280
|
-
d: "M10.1505 7.53219H11.9613V8.73219H10.1505V7.53219Z",
|
|
281
|
-
fill: "#1D2129"
|
|
282
|
-
}),
|
|
283
|
-
createElementVNode("path", {
|
|
284
|
-
"fill-rule": "evenodd",
|
|
285
|
-
"clip-rule": "evenodd",
|
|
286
|
-
d: "M4.03937 7.53219H5.85014V8.73219H4.03937V7.53219Z",
|
|
287
|
-
fill: "#1D2129"
|
|
288
|
-
})
|
|
289
|
-
])),
|
|
290
|
-
createElementVNode("div", { class: "history-item" }, [
|
|
291
|
-
createElementVNode("span", { class: "history-title" }, toDisplayString(group.groupName), 1)
|
|
292
|
-
])
|
|
268
|
+
createElementVNode("div", { class: "touchchat-history-title" }, [
|
|
269
|
+
createElementVNode("div", { class: "touchchat-history-title-icon" }),
|
|
270
|
+
createElementVNode("div", { class: "touchchat-history-title-text" }, toDisplayString(group.groupName), 1)
|
|
293
271
|
]),
|
|
294
|
-
(
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
272
|
+
createElementVNode("div", { class: "touchchat-history-content" }, [
|
|
273
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(group.items, (item) => {
|
|
274
|
+
return openBlock(), createElementBlock("div", {
|
|
275
|
+
key: item.id,
|
|
276
|
+
ref_for: true,
|
|
277
|
+
ref: (el) => setHistoryItemRef(item.id, el),
|
|
278
|
+
class: normalizeClass([item.id === _ctx.activeChat ? "is-on" : "", "touchchat-history-item"]),
|
|
279
|
+
onClick: ($event) => handleSelectChat(item.id)
|
|
280
|
+
}, [
|
|
303
281
|
createElementVNode("div", {
|
|
304
282
|
ref_for: true,
|
|
305
283
|
ref: (el) => setTooltipContainerRef(item.id, el),
|
|
306
|
-
class: "
|
|
284
|
+
class: "touchchat-history-item-text",
|
|
307
285
|
style: { "flex": "1" }
|
|
308
286
|
}, [
|
|
309
|
-
editingId.value === item.id ?
|
|
287
|
+
editingId.value === item.id ? (openBlock(), createElementBlock("div", {
|
|
310
288
|
key: 0,
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
"
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
289
|
+
class: "touchchat-history-input"
|
|
290
|
+
}, [
|
|
291
|
+
withDirectives(createElementVNode("input", {
|
|
292
|
+
ref_for: true,
|
|
293
|
+
ref: (el) => setEditInputRef(item.id, el),
|
|
294
|
+
"onUpdate:modelValue": ($event) => editTitle.value = $event,
|
|
295
|
+
onBlur: ($event) => handleRenameComplete(item.id),
|
|
296
|
+
onKeyup: withKeys(($event) => handleRenameComplete(item.id), ["enter"]),
|
|
297
|
+
onClick: withModifiers(() => {
|
|
298
|
+
}, ["stop"])
|
|
299
|
+
}, null, 40, ["onUpdate:modelValue", "onBlur", "onKeyup", "onClick"]), [
|
|
300
|
+
[vModelText, editTitle.value]
|
|
301
|
+
])
|
|
302
|
+
])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
303
|
+
createTextVNode(toDisplayString(item.title || "\u65B0\u5BF9\u8BDD") + " ", 1),
|
|
323
304
|
shouldShowTooltip(item.id, item.title) ? (openBlock(), createElementBlock("div", {
|
|
324
305
|
key: 0,
|
|
325
306
|
ref_for: true,
|
|
326
307
|
ref: "tooltipRef",
|
|
327
|
-
class: "
|
|
308
|
+
class: "touchchat-tooltip"
|
|
328
309
|
}, toDisplayString(item.title), 513)) : createCommentVNode("", true)
|
|
329
310
|
], 64))
|
|
330
|
-
], 512)
|
|
331
|
-
|
|
332
|
-
editingId.value !== item.id ? (openBlock(), createElementBlock("div", {
|
|
333
|
-
key: 0,
|
|
334
|
-
class: "item-actions"
|
|
335
|
-
}, [
|
|
336
|
-
createElementVNode("button", {
|
|
337
|
-
class: "more-btn",
|
|
338
|
-
onClick: withModifiers(($event) => handleToggleActionMenu(item.id), ["stop"])
|
|
339
|
-
}, "...", 8, ["onClick"]),
|
|
340
|
-
state.actionMenuVisible[item.id] ? (openBlock(), createElementBlock("div", {
|
|
311
|
+
], 512),
|
|
312
|
+
editingId.value !== item.id ? (openBlock(), createElementBlock("div", {
|
|
341
313
|
key: 0,
|
|
342
|
-
|
|
343
|
-
ref: (el) => actionMenus.value[item.id] = el,
|
|
344
|
-
class: "action-menu",
|
|
345
|
-
onMouseenter: preventMenuClose,
|
|
346
|
-
onMouseleave: ($event) => delayedCloseMenu(item.id)
|
|
314
|
+
class: "touchchat-history-fn"
|
|
347
315
|
}, [
|
|
348
|
-
createElementVNode("
|
|
349
|
-
class: "
|
|
350
|
-
onClick: withModifiers(($event) =>
|
|
316
|
+
createElementVNode("button", {
|
|
317
|
+
class: "touchchat-history-more",
|
|
318
|
+
onClick: withModifiers(($event) => handleToggleActionMenu(item.id), ["stop"])
|
|
351
319
|
}, [
|
|
352
|
-
(
|
|
353
|
-
width: "16",
|
|
354
|
-
height: "16",
|
|
355
|
-
viewBox: "0 0 24 24",
|
|
356
|
-
fill: "none",
|
|
357
|
-
stroke: "currentColor",
|
|
358
|
-
"stroke-width": "2"
|
|
359
|
-
}, [
|
|
360
|
-
createElementVNode("path", { d: "M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7" }),
|
|
361
|
-
createElementVNode("path", { d: "M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z" })
|
|
362
|
-
])),
|
|
363
|
-
createElementVNode("span", null, "\u91CD\u547D\u540D")
|
|
320
|
+
createElementVNode("div", { class: "touchchat-history-more-icon" })
|
|
364
321
|
], 8, ["onClick"]),
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
322
|
+
state.actionMenuVisible[item.id] ? (openBlock(), createElementBlock("div", {
|
|
323
|
+
key: 0,
|
|
324
|
+
ref_for: true,
|
|
325
|
+
ref: (el) => actionMenus.value[item.id] = el,
|
|
326
|
+
class: "touchchat-history-float",
|
|
327
|
+
onMouseenter: preventMenuClose,
|
|
328
|
+
onMouseleave: ($event) => delayedCloseMenu(item.id)
|
|
368
329
|
}, [
|
|
369
|
-
(
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
330
|
+
createElementVNode("div", {
|
|
331
|
+
class: "touchchat-history-rename",
|
|
332
|
+
onClick: withModifiers(($event) => handleStartRename(item.id), ["stop"])
|
|
333
|
+
}, [
|
|
334
|
+
createElementVNode("span", { class: "touchchat-history-rename-icon" }),
|
|
335
|
+
createElementVNode("span", { class: "touchchat-history-rename-text" }, "\u91CD\u547D\u540D")
|
|
336
|
+
], 8, ["onClick"]),
|
|
337
|
+
createElementVNode("div", {
|
|
338
|
+
class: "touchchat-history-remove",
|
|
339
|
+
onClick: withModifiers(($event) => handleMenuAction("delete", item.id), ["stop"])
|
|
376
340
|
}, [
|
|
377
|
-
createElementVNode("
|
|
378
|
-
createElementVNode("
|
|
379
|
-
])
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
], 64);
|
|
341
|
+
createElementVNode("span", { class: "touchchat-history-remove-icon" }),
|
|
342
|
+
createElementVNode("span", { class: "touchchat-history-remove-text" }, "\u5220\u9664")
|
|
343
|
+
], 8, ["onClick"])
|
|
344
|
+
], 40, ["onMouseleave"])) : createCommentVNode("", true)
|
|
345
|
+
])) : createCommentVNode("", true)
|
|
346
|
+
], 10, ["onClick"]);
|
|
347
|
+
}), 128))
|
|
348
|
+
])
|
|
349
|
+
]);
|
|
387
350
|
}), 128))
|
|
388
|
-
],
|
|
351
|
+
], 34);
|
|
389
352
|
};
|
|
390
353
|
}
|
|
391
354
|
});
|