@touchvue/chat 1.0.0-beta.19 → 1.0.0-beta.20
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/component/AiRobot/letter.vue2.mjs +4 -2
- package/es/packages/components/touchchat/component/AiRobot/letter.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/component/PDFFile.vue2.mjs +15 -13
- package/es/packages/components/touchchat/component/PDFFile.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/component/VoiceView.vue2.mjs +2 -1
- package/es/packages/components/touchchat/component/VoiceView.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/img/file/docx.png.mjs +4 -0
- package/es/packages/components/touchchat/img/file/docx.png.mjs.map +1 -0
- package/es/packages/components/touchchat/img/file/gif.png.mjs +4 -0
- package/es/packages/components/touchchat/img/file/gif.png.mjs.map +1 -0
- package/es/packages/components/touchchat/img/file/mp4.png.mjs +4 -0
- package/es/packages/components/touchchat/img/file/mp4.png.mjs.map +1 -0
- package/es/packages/components/touchchat/img/file/ppt.png.mjs +4 -0
- package/es/packages/components/touchchat/img/file/ppt.png.mjs.map +1 -0
- package/es/packages/components/touchchat/img/file/pptx.png.mjs +4 -0
- package/es/packages/components/touchchat/img/file/pptx.png.mjs.map +1 -0
- package/es/packages/components/touchchat/img/file/xlsx.png.mjs +4 -0
- package/es/packages/components/touchchat/img/file/xlsx.png.mjs.map +1 -0
- package/es/packages/components/touchchat/src/AiChat/ChatInput.vue2.mjs +36 -7
- package/es/packages/components/touchchat/src/AiChat/ChatInput.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/TouchChat.vue2.mjs +30 -15
- package/es/packages/components/touchchat/src/AiChat/TouchChat.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/TouchHistory.vue2.mjs +5 -2
- package/es/packages/components/touchchat/src/AiChat/TouchHistory.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/AiChat/UserMessage.vue2.mjs +21 -13
- package/es/packages/components/touchchat/src/AiChat/UserMessage.vue2.mjs.map +1 -1
- package/es/packages/components/touchchat/src/index.vue2.mjs +6 -2
- package/es/packages/components/touchchat/src/index.vue2.mjs.map +1 -1
- package/lib/package.json.js +1 -1
- package/lib/packages/components/touchchat/component/AiRobot/letter.vue2.js +4 -2
- package/lib/packages/components/touchchat/component/AiRobot/letter.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/component/PDFFile.vue2.js +15 -13
- package/lib/packages/components/touchchat/component/PDFFile.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/component/VoiceView.vue2.js +2 -1
- package/lib/packages/components/touchchat/component/VoiceView.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/img/file/docx.png.js +8 -0
- package/lib/packages/components/touchchat/img/file/docx.png.js.map +1 -0
- package/lib/packages/components/touchchat/img/file/gif.png.js +8 -0
- package/lib/packages/components/touchchat/img/file/gif.png.js.map +1 -0
- package/lib/packages/components/touchchat/img/file/mp4.png.js +8 -0
- package/lib/packages/components/touchchat/img/file/mp4.png.js.map +1 -0
- package/lib/packages/components/touchchat/img/file/ppt.png.js +8 -0
- package/lib/packages/components/touchchat/img/file/ppt.png.js.map +1 -0
- package/lib/packages/components/touchchat/img/file/pptx.png.js +8 -0
- package/lib/packages/components/touchchat/img/file/pptx.png.js.map +1 -0
- package/lib/packages/components/touchchat/img/file/xlsx.png.js +8 -0
- package/lib/packages/components/touchchat/img/file/xlsx.png.js.map +1 -0
- package/lib/packages/components/touchchat/src/AiChat/ChatInput.vue2.js +36 -7
- package/lib/packages/components/touchchat/src/AiChat/ChatInput.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/TouchChat.vue2.js +30 -15
- package/lib/packages/components/touchchat/src/AiChat/TouchChat.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/TouchHistory.vue2.js +5 -2
- package/lib/packages/components/touchchat/src/AiChat/TouchHistory.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/AiChat/UserMessage.vue2.js +20 -12
- package/lib/packages/components/touchchat/src/AiChat/UserMessage.vue2.js.map +1 -1
- package/lib/packages/components/touchchat/src/index.vue2.js +6 -2
- package/lib/packages/components/touchchat/src/index.vue2.js.map +1 -1
- package/package.json +1 -1
- package/theme/components/index.css +3 -0
- package/theme/index.css +3 -0
- package/theme/skin/default.css +3 -0
package/es/package.json.mjs
CHANGED
|
@@ -4,7 +4,8 @@ const __default__ = defineComponent({ name: "Touchletter" });
|
|
|
4
4
|
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
5
5
|
...__default__,
|
|
6
6
|
props: {
|
|
7
|
-
data: {}
|
|
7
|
+
data: {},
|
|
8
|
+
speed: {}
|
|
8
9
|
},
|
|
9
10
|
emits: ["complete"],
|
|
10
11
|
setup(__props, { emit: __emit }) {
|
|
@@ -15,6 +16,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
15
16
|
const isSwitchingHistory = inject("isSwitchingHistory", ref(false));
|
|
16
17
|
let typingInterval = null;
|
|
17
18
|
const startStreaming = () => {
|
|
19
|
+
var _a;
|
|
18
20
|
if (typingInterval)
|
|
19
21
|
return;
|
|
20
22
|
if (isSwitchingHistory.value) {
|
|
@@ -37,7 +39,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
37
39
|
showCursor.value = false;
|
|
38
40
|
emit("complete");
|
|
39
41
|
}
|
|
40
|
-
}, 50);
|
|
42
|
+
}, (_a = props.speed) != null ? _a : 50);
|
|
41
43
|
};
|
|
42
44
|
onMounted(() => {
|
|
43
45
|
startStreaming();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"letter.vue2.mjs","sources":["../../../../../../../packages/components/touchchat/component/AiRobot/letter.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({ name: 'Touchletter' });\n</script>\n<template>\n\t<div class=\"letter-container\">\n\t\t<div class=\"data-content\">\n\t\t\t{{ displayedText }}\n\t\t\t<span v-if=\"showCursor\" class=\"cursor\">|</span>\n\t\t</div>\n\t</div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, onMounted, defineProps, defineEmits, inject, Ref } from 'vue'\n\n\n\n// 定义props和emits\nconst props = defineProps<{\n\tdata: string\n}>()\n\nconst emit = defineEmits<{\n\t(e: 'complete'): void\n}>()\n\n// 状态管理\nconst displayedText = ref('')\nconst showCursor = ref(false)\n// 正确注入Ref<boolean>类型\nconst isSwitchingHistory = inject<Ref<boolean>>('isSwitchingHistory', ref(false))\nlet typingInterval: number | null = null\n\n// 文字流实现\nconst startStreaming = () => {\n\tif (typingInterval) return\n\n\t// 访问.value以获取布尔值\n\tif (isSwitchingHistory.value) {\n\t\tdisplayedText.value = props.data\n\t\tshowCursor.value = false\n\t\temit('complete')\n\t\treturn\n\t}\n\n\t// 新增消息的文字流逻辑\n\tshowCursor.value = true\n\tdisplayedText.value = ''\n\tlet currentIndex = 0\n\tconst fullText = props.data\n\n\ttypingInterval = window.setInterval(() => {\n\t\tif (currentIndex < fullText.length) {\n\t\t\tdisplayedText.value += fullText[currentIndex]\n\t\t\tcurrentIndex++\n\t\t} else {\n\t\t\twindow.clearInterval(typingInterval!)\n\t\t\ttypingInterval = null\n\t\t\tshowCursor.value = false\n\t\t\temit('complete')\n\t\t}\n\t}, 50)\n}\n\n// 组件挂载时开始显示\nonMounted(() => {\n\tstartStreaming()\n})\n</script>\n\n<!-- <style lang=\"less\" scoped>\n@import '../style/Letter.less';\n</style> -->\n"],"names":["DO_defineComponent","_createElementBlock","_createElementVNode","_createTextVNode","_toDisplayString"],"mappings":";;AAEA,MAAA,WAA6B,GAAAA,eAAA,CAAmB,EAAE,IAAA,EAAM,eAAe,CAAA,CAAA
|
|
1
|
+
{"version":3,"file":"letter.vue2.mjs","sources":["../../../../../../../packages/components/touchchat/component/AiRobot/letter.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({ name: 'Touchletter' });\n</script>\n<template>\n\t<div class=\"letter-container\">\n\t\t<div class=\"data-content\">\n\t\t\t{{ displayedText }}\n\t\t\t<span v-if=\"showCursor\" class=\"cursor\">|</span>\n\t\t</div>\n\t</div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, onMounted, defineProps, defineEmits, inject, Ref } from 'vue'\n\n\n\n// 定义props和emits\nconst props = defineProps<{\n\tdata: string\n\tspeed?: number\n}>()\n\nconst emit = defineEmits<{\n\t(e: 'complete'): void\n}>()\n\n// 状态管理\nconst displayedText = ref('')\nconst showCursor = ref(false)\n// 正确注入Ref<boolean>类型\nconst isSwitchingHistory = inject<Ref<boolean>>('isSwitchingHistory', ref(false))\nlet typingInterval: number | null = null\n\n// 文字流实现\nconst startStreaming = () => {\n\tif (typingInterval) return\n\n\t// 访问.value以获取布尔值\n\tif (isSwitchingHistory.value) {\n\t\tdisplayedText.value = props.data\n\t\tshowCursor.value = false\n\t\temit('complete')\n\t\treturn\n\t}\n\n\t// 新增消息的文字流逻辑\n\tshowCursor.value = true\n\tdisplayedText.value = ''\n\tlet currentIndex = 0\n\tconst fullText = props.data\n\n\ttypingInterval = window.setInterval(() => {\n\t\tif (currentIndex < fullText.length) {\n\t\t\tdisplayedText.value += fullText[currentIndex]\n\t\t\tcurrentIndex++\n\t\t} else {\n\t\t\twindow.clearInterval(typingInterval!)\n\t\t\ttypingInterval = null\n\t\t\tshowCursor.value = false\n\t\t\temit('complete')\n\t\t}\n\t}, props.speed ?? 50)\n}\n\n// 组件挂载时开始显示\nonMounted(() => {\n\tstartStreaming()\n})\n</script>\n\n<!-- <style lang=\"less\" scoped>\n@import '../style/Letter.less';\n</style> -->\n"],"names":["DO_defineComponent","_createElementBlock","_createElementVNode","_createTextVNode","_toDisplayString"],"mappings":";;AAEA,MAAA,WAA6B,GAAAA,eAAA,CAAmB,EAAE,IAAA,EAAM,eAAe,CAAA,CAAA;;;;;;;;;AAiBvE,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAKd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAKb,IAAM,MAAA,aAAA,GAAgB,IAAI,EAAE,CAAA,CAAA;AAC5B,IAAM,MAAA,UAAA,GAAa,IAAI,KAAK,CAAA,CAAA;AAE5B,IAAA,MAAM,kBAAqB,GAAA,MAAA,CAAqB,oBAAsB,EAAA,GAAA,CAAI,KAAK,CAAC,CAAA,CAAA;AAChF,IAAA,IAAI,cAAgC,GAAA,IAAA,CAAA;AAGpC,IAAA,MAAM,iBAAiB,MAAM;;AAC5B,MAAI,IAAA,cAAA;AAAgB,QAAA,OAAA;AAGpB,MAAA,IAAI,mBAAmB,KAAO,EAAA;AAC7B,QAAA,aAAA,CAAc,QAAQ,KAAM,CAAA,IAAA,CAAA;AAC5B,QAAA,UAAA,CAAW,KAAQ,GAAA,KAAA,CAAA;AACnB,QAAA,IAAA,CAAK,UAAU,CAAA,CAAA;AACf,QAAA,OAAA;AAAA,OACD;AAGA,MAAA,UAAA,CAAW,KAAQ,GAAA,IAAA,CAAA;AACnB,MAAA,aAAA,CAAc,KAAQ,GAAA,EAAA,CAAA;AACtB,MAAA,IAAI,YAAe,GAAA,CAAA,CAAA;AACnB,MAAA,MAAM,WAAW,KAAM,CAAA,IAAA,CAAA;AAEvB,MAAiB,cAAA,GAAA,MAAA,CAAO,YAAY,MAAM;AACzC,QAAI,IAAA,YAAA,GAAe,SAAS,MAAQ,EAAA;AACnC,UAAc,aAAA,CAAA,KAAA,IAAS,SAAS,YAAY,CAAA,CAAA;AAC5C,UAAA,YAAA,EAAA,CAAA;AAAA,SACM,MAAA;AACN,UAAA,MAAA,CAAO,cAAc,cAAe,CAAA,CAAA;AACpC,UAAiB,cAAA,GAAA,IAAA,CAAA;AACjB,UAAA,UAAA,CAAW,KAAQ,GAAA,KAAA,CAAA;AACnB,UAAA,IAAA,CAAK,UAAU,CAAA,CAAA;AAAA,SAChB;AAAA,OACE,EAAA,CAAA,EAAA,GAAA,KAAA,CAAM,KAAN,KAAA,IAAA,GAAA,EAAA,GAAe,EAAE,CAAA,CAAA;AAAA,KACrB,CAAA;AAGA,IAAA,SAAA,CAAU,MAAM;AACf,MAAe,cAAA,EAAA,CAAA;AAAA,KACf,CAAA,CAAA;;wBAhEA,EAAAC,kBAAA,CAKM,OAAA,EALD,KAAA,EAAM,oBAAkB,EAAA;AAAA,QAC5BC,kBAGM,CAAA,KAAA,EAAA,EAHD,KAAA,EAAM,gBAAc,EAAA;AAAA,UACrBC,eAAA;AAAA,YAAAC,eAAA,CAAA,aAAA,CAAA,KAAa,CAAG,GAAA,GAAA;AAAA,YACnB,CAAA;AAAA;AAAA,WAAA;AAAA,UAAY,UAAU,CAAA,KAAA,iBAAtBH,mBAA+C,MAAA,EAAA;AAAA;YAAvB,KAAM,EAAA,QAAA;AAAA,WAAS,EAAA,GAAC;;;;;;;;;"}
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, inject, onMounted, onUnmounted, openBlock, createElementBlock, Fragment, createCommentVNode, createElementVNode, normalizeClass, toDisplayString, normalizeStyle, withDirectives, vShow, nextTick } from 'vue';
|
|
2
2
|
import _imports_0 from '../img/svg/reset.svg.mjs';
|
|
3
3
|
import DOC from '../img/file/doc.png.mjs';
|
|
4
|
+
import DOCX from '../img/file/docx.png.mjs';
|
|
4
5
|
import HTML from '../img/file/html.png.mjs';
|
|
5
6
|
import JPG from '../img/file/jpg.png.mjs';
|
|
6
7
|
import MP3 from '../img/file/mp3.png.mjs';
|
|
8
|
+
import MP4 from '../img/file/mp4.png.mjs';
|
|
7
9
|
import MUSIC from '../img/file/music.png.mjs';
|
|
8
10
|
import PDF from '../img/file/pdf.png.mjs';
|
|
9
11
|
import PNG from '../img/file/png.png.mjs';
|
|
10
12
|
import XLS from '../img/file/xls.png.mjs';
|
|
11
13
|
import TXT from '../img/file/txt.png.mjs';
|
|
14
|
+
import GIF from '../img/file/gif.png.mjs';
|
|
15
|
+
import PPT from '../img/file/ppt.png.mjs';
|
|
16
|
+
import PPTX from '../img/file/pptx.png.mjs';
|
|
17
|
+
import XLSX from '../img/file/xlsx.png.mjs';
|
|
12
18
|
|
|
13
19
|
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
14
20
|
__name: "PDFFile",
|
|
@@ -21,14 +27,20 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
21
27
|
setup(__props, { emit: __emit }) {
|
|
22
28
|
const imgTypeInfo = {
|
|
23
29
|
doc: DOC,
|
|
30
|
+
docx: DOCX,
|
|
24
31
|
html: HTML,
|
|
25
32
|
jpg: JPG,
|
|
26
33
|
mp3: MP3,
|
|
34
|
+
mp4: MP4,
|
|
27
35
|
music: MUSIC,
|
|
28
36
|
pdf: PDF,
|
|
29
37
|
png: PNG,
|
|
30
38
|
xls: XLS,
|
|
31
39
|
txt: TXT,
|
|
40
|
+
gif: GIF,
|
|
41
|
+
ppt: PPT,
|
|
42
|
+
pptx: PPTX,
|
|
43
|
+
xlsx: XLSX,
|
|
32
44
|
"": ""
|
|
33
45
|
};
|
|
34
46
|
const props = __props;
|
|
@@ -134,19 +146,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
134
146
|
1
|
|
135
147
|
/* TEXT */
|
|
136
148
|
)) : createCommentVNode("v-if", true),
|
|
137
|
-
showTooltip
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
key: 3,
|
|
141
|
-
ref_key: "tooltipElement",
|
|
142
|
-
ref: tooltipElement,
|
|
143
|
-
class: "pdf-file-tooltip",
|
|
144
|
-
style: normalizeStyle({ top: tooltipTop.value + "px" })
|
|
145
|
-
},
|
|
146
|
-
toDisplayString(_ctx.item.name),
|
|
147
|
-
5
|
|
148
|
-
/* TEXT, STYLE */
|
|
149
|
-
)) : createCommentVNode("v-if", true)
|
|
149
|
+
createCommentVNode(` <p v-if="showTooltip" ref="tooltipElement" class="pdf-file-tooltip" :style="{ top: tooltipTop + 'px' }">
|
|
150
|
+
{{ item.name }}
|
|
151
|
+
</p> `)
|
|
150
152
|
],
|
|
151
153
|
512
|
|
152
154
|
/* NEED_PATCH */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PDFFile.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/PDFFile.vue"],"sourcesContent":["<template>\n\t<!-- -->\n\t<div class=\"pdf-file\" :class=\"item.uploadError ? 'pdf-error' : 'pdf-success'\">\n\t\t<!-- <span>{{imgType}}</span> -->\n\t\t<img class=\"pdf-file-img\" :src=\"imgTypeInfo[imgType]\" :alt=\"imgType\" />\n\t\t<div ref=\"centerContainer\" class=\"pdf-file-center\">\n\t\t\t<p ref=\"titleElement\" class=\"pdf-file-title\" @mouseenter=\"handleMouseEnter\" @mouseleave=\"showTooltip = false\">\n\t\t\t\t{{ item.name }}\n\t\t\t</p>\n\t\t\t<p v-if=\"item.uploadError\" class=\"pdf-file-info\">错误</p>\n\t\t\t<p v-if=\"progress !== 100 && !item.uploadError\" class=\"pdf-file-info\">{{ progress }}%</p>\n\t\t\t<p v-if=\"progress === 100 && !item.uploadError\" class=\"pdf-file-info\">{{ item.fileSize }}</p>\n\t\t\t<p v-if=\"showTooltip\" ref=\"tooltipElement\" class=\"pdf-file-tooltip\" :style=\"{ top: tooltipTop + 'px' }\">\n\t\t\t\t{{ item.name }}\n\t\t\t</p
|
|
1
|
+
{"version":3,"file":"PDFFile.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/PDFFile.vue"],"sourcesContent":["<template>\n\t<!-- -->\n\t<div class=\"pdf-file\" :class=\"item.uploadError ? 'pdf-error' : 'pdf-success'\">\n\t\t<!-- <span>{{imgType}}</span> -->\n\t\t<img class=\"pdf-file-img\" :src=\"imgTypeInfo[imgType]\" :alt=\"imgType\" />\n\t\t<div ref=\"centerContainer\" class=\"pdf-file-center\">\n\t\t\t<p ref=\"titleElement\" class=\"pdf-file-title\" @mouseenter=\"handleMouseEnter\" @mouseleave=\"showTooltip = false\">\n\t\t\t\t{{ item.name }}\n\t\t\t</p>\n\t\t\t<p v-if=\"item.uploadError\" class=\"pdf-file-info\">错误</p>\n\t\t\t<p v-if=\"progress !== 100 && !item.uploadError\" class=\"pdf-file-info\">{{ progress }}%</p>\n\t\t\t<p v-if=\"progress === 100 && !item.uploadError\" class=\"pdf-file-info\">{{ item.fileSize }}</p>\n\t\t\t<!-- <p v-if=\"showTooltip\" ref=\"tooltipElement\" class=\"pdf-file-tooltip\" :style=\"{ top: tooltipTop + 'px' }\">\n\t\t\t\t{{ item.name }}\n\t\t\t</p> -->\n\t\t</div>\n\t\t<img class=\"pdf-file-reset\" src=\"../img/svg/reset.svg\" alt=\"reset\" @click=\"handleReset\" />\n\t\t<div v-if=\"progress !== 100\" :style=\"{ width: (progress * 2) / 3 + '%' }\" class=\"pdf-file-progress\"></div>\n\t\t<div v-show=\"hasColse\" class=\"pdf-file-colse\" @click=\"emits('colse', item.id)\">\n\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"5\" height=\"6\" viewBox=\"0 0 5 6\" fill=\"none\">\n\t\t\t\t<path d=\"M4.42492 5.31718L4.97489 4.76721L3.05002 2.84233L4.97493 0.917422L4.42496 0.36745L2.50005 2.29236L0.575118 0.367432L0.0251465 0.917403L1.95008 2.84233L0.0251875 4.76722L0.575159 5.3172L2.50005 3.39231L4.42492 5.31718Z\" fill=\"white\" />\n\t\t\t</svg>\n\t\t</div>\n\t</div>\n</template>\n<script setup lang=\"ts\">\nimport { ref, nextTick, onMounted, onUnmounted, defineProps, computed, defineEmits, inject } from 'vue'\nimport DOC from '../img/file/doc.png'\nimport DOCX from '../img/file/docx.png'\nimport HTML from '../img/file/html.png'\nimport JPG from '../img/file/jpg.png'\nimport MP3 from '../img/file/mp3.png'\nimport MP4 from '../img/file/mp4.png'\nimport MUSIC from '../img/file/music.png'\nimport PDF from '../img/file/pdf.png'\nimport PNG from '../img/file/png.png'\nimport XLS from '../img/file/xls.png'\nimport TXT from '../img/file/txt.png'\nimport GIF from '../img/file/gif.png'\nimport PPT from '../img/file/ppt.png'\nimport PPTX from '../img/file/pptx.png'\nimport XLSX from '../img/file/xlsx.png'\n\ntype ImgType = 'doc' | 'docx' | 'html' | 'jpg' | 'mp3' | 'mp4' | 'music' | 'pdf' | 'png' | 'xls' | 'txt' | 'gif' | 'ppt' | 'pptx' | 'xlsx' | ''\nconst imgTypeInfo: Record<ImgType, string> = {\n\tdoc: DOC,\n\tdocx: DOCX,\n\thtml: HTML,\n\tjpg: JPG,\n\tmp3: MP3,\n\tmp4: MP4,\n\tmusic: MUSIC,\n\tpdf: PDF,\n\tpng: PNG,\n\txls: XLS,\n\ttxt: TXT,\n\tgif: GIF,\n\tppt: PPT,\n\tpptx: PPTX,\n\txlsx: XLSX,\n\t'': ''\n}\nconst props = defineProps<{\n\titem: {\n\t\tfile?: File\n\t\tisUploading: boolean\n\t\tuploadProgress: number\n\t\tuploadSuccess: boolean\n\t\tuploadError: boolean\n\t\tfileSize: string\n\t\tfileType: string\n\t\tname: string\n\t\tid: string\n\t}\n\tindex: number\n\thasColse: boolean\n}>()\n\nconst emits = defineEmits(['colse'])\n\nconst showTooltip = ref(false)\nconst titleElement = ref<HTMLElement | null>(null)\nconst tooltipElement = ref<HTMLElement | null>(null)\nconst centerContainer = ref<HTMLElement | null>(null)\nconst tooltipTop = ref(0)\nconst progress = computed(() => {\n\treturn props.item.uploadProgress ?? 0\n})\n\nconst imgType = computed<ImgType>(() => {\n\tconst arr = props.item.name.split('.')\n\tconst type = arr[arr.length - 1].toLowerCase() as ImgType // 转换为小写并断言类型\n\t// 检查是否是有效类型,不是则返回空字符串\n\treturn (Object.keys(imgTypeInfo) as ImgType[]).includes(type) ? type : ''\n})\n\nconst updateTooltipPosition = () => {\n\tif (titleElement.value && tooltipElement.value && centerContainer.value) {\n\t\tconst titleRect = titleElement.value.getBoundingClientRect()\n\t\tconst containerRect = centerContainer.value.getBoundingClientRect()\n\t\t// 计算相对于容器的 top 值\n\t\tconst relativeTop = titleRect.top - containerRect.top\n\t\ttooltipTop.value = relativeTop - tooltipElement.value.offsetHeight - 6\n\t}\n}\n\nconst handleMouseEnter = async () => {\n\tshowTooltip.value = true\n\t// 等待 DOM 更新完成后再调用更新位置的方法\n\tawait nextTick()\n\tupdateTooltipPosition()\n}\n\nconst handleResize = () => {\n\tif (showTooltip.value) {\n\t\tupdateTooltipPosition()\n\t}\n}\n\nconst uploadFile = inject<(index: number, type?: string) => void>('uploadFile', () => {\n\tconsole.warn('未提供bottom函数')\n})\n\nconst handleReset = () => {\n\tuploadFile(props.index, 'PDF')\n}\nonMounted(() => {\n\twindow.addEventListener('resize', handleResize)\n})\nonUnmounted(() => {\n\twindow.removeEventListener('resize', handleResize)\n})\n</script>\n"],"names":["_createCommentVNode","_createElementVNode","_normalizeClass","item","_createElementBlock","_toDisplayString","hasColse"],"mappings":"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"}
|
|
@@ -32,7 +32,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
32
32
|
fileSize: formatFileSize(audioFile.size),
|
|
33
33
|
fileType: audioFile.type,
|
|
34
34
|
name: audioFile.name,
|
|
35
|
-
id: crypto.randomUUID().replace(/-/gi,
|
|
35
|
+
// id: crypto.randomUUID().replace(/-/gi, ''),
|
|
36
|
+
id: Math.random().toString(36).slice(2).padEnd(10, "0").slice(0, 10),
|
|
36
37
|
base64: null
|
|
37
38
|
};
|
|
38
39
|
emit("upFileList", [fileItem]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceView.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/VoiceView.vue"],"sourcesContent":["<template>\n\t<div>\n\t\t<button class=\"touchchat-edit-attach\" @click=\"toggleRecording()\">\n\t\t\t<svg v-if=\"!isRecording\" xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"21\" viewBox=\"0 0 21 21\" fill=\"none\">\n\t\t\t\t<path d=\"M13.4166 5.4257C13.4166 3.81487 12.1108 2.50903 10.5 2.50903C8.88915 2.50903 7.58331 3.81487 7.58331 5.4257V10.8424C7.58331 12.4532 8.88915 13.759 10.5 13.759C12.1108 13.759 13.4166 12.4532 13.4166 10.8424V5.4257Z\" stroke=\"#1D2129\" stroke-width=\"1.2\" stroke-linejoin=\"round\" />\n\t\t\t\t<path d=\"M4.25 10.4255C4.25 13.8773 7.04821 16.6755 10.5 16.6755C13.9518 16.6755 16.75 13.8773 16.75 10.4255\" stroke=\"#1D2129\" stroke-width=\"1.2\" stroke-linecap=\"square\" stroke-linejoin=\"round\" />\n\t\t\t\t<path d=\"M10.5 16.6755V19.1755\" stroke=\"#1D2129\" stroke-width=\"1.2\" stroke-linecap=\"square\" stroke-linejoin=\"round\" />\n\t\t\t</svg>\n\t\t\t<svg v-else xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n\t\t\t\t<path class=\"touchchat-voice-bar-1\" d=\"M10 2.57617V17.4247\" stroke=\"#0077FA\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-2\" d=\"M14.167 5.90869V14.0905\" stroke=\"#0077FA\" stroke-opacity=\"0.8\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-3\" d=\"M1.66699 8.40869V11.5905\" stroke=\"#0077FA\" stroke-opacity=\"0.5\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-4\" d=\"M18.333 8.40869V11.5905\" stroke=\"#0077FA\" stroke-opacity=\"0.5\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-5\" d=\"M5.83301 5.90869V14.0905\" stroke=\"#0077FA\" stroke-opacity=\"0.8\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t</svg>\n\t\t\t<div class=\"touchchat-edit-attach-tip touchchat-edit-voice-tip\">\n\t\t\t\t<p>{{ isRecording ? '停止语音输入' : '语音输入' }}</p>\n\t\t\t</div>\n\t\t</button>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, defineEmits } from 'vue'\nimport { showToast } from '../utils/tools'\n\nconst emit = defineEmits(['upFileList'])\n\n// 定义文件项接口\ninterface FileItem {\n\tfile: File\n\tisUploading: boolean\n\tuploadProgress: number\n\tuploadSuccess: boolean\n\tuploadError: boolean\n\tfileSize: string\n\tfileType: string\n\tname: string\n\tid: string\n\tbase64: string | null\n}\n\n// 初始化响应式数据\nconst fileList = ref<FileItem[]>([])\nconst isRecording = ref(false)\nconst isMediaStreamError = ref(false)\nconst mediaStreamErrorMsg = ref('')\nlet mediaRecorder: MediaRecorder | null = null\nlet chunks: Blob[] = []\n\n// 格式化文件大小\nconst formatFileSize = (bytes: number): string => {\n\tif (bytes === 0) return '0 Bytes'\n\tconst k = 1024\n\tconst sizes = ['Bytes', 'KB', 'MB', 'GB']\n\tconst i = Math.floor(Math.log(bytes) / Math.log(k))\n\treturn parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i]\n}\n\n// 处理录制结束逻辑\nconst handleRecordingStop = () => {\n\tconst blob = new Blob(chunks, { type: 'audio/mpeg' })\n\tconst audioFile = new File([blob], `recording_${Date.now()}.mp3`, { type: 'audio/mpeg' })\n\tconst fileItem: FileItem = {\n\t\tfile: audioFile,\n\t\tisUploading: false,\n\t\tuploadProgress: 0,\n\t\tuploadSuccess: false,\n\t\tuploadError: false,\n\t\tfileSize: formatFileSize(audioFile.size),\n\t\tfileType: audioFile.type,\n\t\tname: audioFile.name,\n\t\tid: crypto.randomUUID().replace(/-/gi, ''),\n\t\tbase64: null\n\t}\n\temit('upFileList', [fileItem])\n\t// 停止并释放媒体流\n\tif (mediaRecorder && mediaRecorder.stream) {\n\t\tmediaRecorder.stream.getTracks().forEach(track => track.stop())\n\t}\n\tmediaRecorder = null\n\tchunks = []\n}\n\n// 初始化 MediaRecorder\nconst initMediaRecorder = async () => {\n\ttry {\n\t\tconst stream = await navigator.mediaDevices.getUserMedia({ audio: true })\n\t\tmediaRecorder = new MediaRecorder(stream)\n\t\tchunks = []\n\n\t\tmediaRecorder.ondataavailable = event => {\n\t\t\tif (event.data.size > 0) {\n\t\t\t\tchunks.push(event.data)\n\t\t\t}\n\t\t}\n\n\t\tmediaRecorder.onstop = handleRecordingStop\n\t\treturn true\n\t} catch (error) {\n\t\tisMediaStreamError.value = true\n\t\tmediaStreamErrorMsg.value = error instanceof Error ? error.message : '获取麦克风权限失败'\n\t\tconsole.error('获取麦克风权限失败:', error)\n\t\tshowToast('获取麦克风权限失败', 'error')\n\t\treturn false\n\t}\n}\n\n// 切换录制状态\nconst toggleRecording = async (flag?: boolean) => {\n\tconst colseVoice = () => {\n\t\tmediaRecorder?.stop()\n\t\tisRecording.value = false\n\t}\n\tif (flag) {\n\t\tcolseVoice()\n\t\treturn\n\t}\n\tif (!isRecording.value) {\n\t\tconst initSuccess = await initMediaRecorder()\n\t\tif (initSuccess) {\n\t\t\tmediaRecorder?.start()\n\t\t\tisRecording.value = true\n\t\t\tisMediaStreamError.value = false\n\t\t\tmediaStreamErrorMsg.value = ''\n\t\t}\n\t} else {\n\t\tcolseVoice()\n\t}\n}\n\nconst resetFile = () => {\n\tfileList.value = []\n}\ndefineExpose({\n\tresetFile,\n\ttoggleRecording\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VoiceView.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/VoiceView.vue"],"sourcesContent":["<template>\n\t<div>\n\t\t<button class=\"touchchat-edit-attach\" @click=\"toggleRecording()\">\n\t\t\t<svg v-if=\"!isRecording\" xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"21\" viewBox=\"0 0 21 21\" fill=\"none\">\n\t\t\t\t<path d=\"M13.4166 5.4257C13.4166 3.81487 12.1108 2.50903 10.5 2.50903C8.88915 2.50903 7.58331 3.81487 7.58331 5.4257V10.8424C7.58331 12.4532 8.88915 13.759 10.5 13.759C12.1108 13.759 13.4166 12.4532 13.4166 10.8424V5.4257Z\" stroke=\"#1D2129\" stroke-width=\"1.2\" stroke-linejoin=\"round\" />\n\t\t\t\t<path d=\"M4.25 10.4255C4.25 13.8773 7.04821 16.6755 10.5 16.6755C13.9518 16.6755 16.75 13.8773 16.75 10.4255\" stroke=\"#1D2129\" stroke-width=\"1.2\" stroke-linecap=\"square\" stroke-linejoin=\"round\" />\n\t\t\t\t<path d=\"M10.5 16.6755V19.1755\" stroke=\"#1D2129\" stroke-width=\"1.2\" stroke-linecap=\"square\" stroke-linejoin=\"round\" />\n\t\t\t</svg>\n\t\t\t<svg v-else xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n\t\t\t\t<path class=\"touchchat-voice-bar-1\" d=\"M10 2.57617V17.4247\" stroke=\"#0077FA\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-2\" d=\"M14.167 5.90869V14.0905\" stroke=\"#0077FA\" stroke-opacity=\"0.8\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-3\" d=\"M1.66699 8.40869V11.5905\" stroke=\"#0077FA\" stroke-opacity=\"0.5\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-4\" d=\"M18.333 8.40869V11.5905\" stroke=\"#0077FA\" stroke-opacity=\"0.5\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t\t<path class=\"touchchat-voice-bar-5\" d=\"M5.83301 5.90869V14.0905\" stroke=\"#0077FA\" stroke-opacity=\"0.8\" stroke-width=\"1.2\" stroke-linecap=\"square\" />\n\t\t\t</svg>\n\t\t\t<div class=\"touchchat-edit-attach-tip touchchat-edit-voice-tip\">\n\t\t\t\t<p>{{ isRecording ? '停止语音输入' : '语音输入' }}</p>\n\t\t\t</div>\n\t\t</button>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, defineEmits } from 'vue'\nimport { showToast } from '../utils/tools'\n\nconst emit = defineEmits(['upFileList'])\n\n// 定义文件项接口\ninterface FileItem {\n\tfile: File\n\tisUploading: boolean\n\tuploadProgress: number\n\tuploadSuccess: boolean\n\tuploadError: boolean\n\tfileSize: string\n\tfileType: string\n\tname: string\n\tid: string\n\tbase64: string | null\n}\n\n// 初始化响应式数据\nconst fileList = ref<FileItem[]>([])\nconst isRecording = ref(false)\nconst isMediaStreamError = ref(false)\nconst mediaStreamErrorMsg = ref('')\nlet mediaRecorder: MediaRecorder | null = null\nlet chunks: Blob[] = []\n\n// 格式化文件大小\nconst formatFileSize = (bytes: number): string => {\n\tif (bytes === 0) return '0 Bytes'\n\tconst k = 1024\n\tconst sizes = ['Bytes', 'KB', 'MB', 'GB']\n\tconst i = Math.floor(Math.log(bytes) / Math.log(k))\n\treturn parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i]\n}\n\n// 处理录制结束逻辑\nconst handleRecordingStop = () => {\n\tconst blob = new Blob(chunks, { type: 'audio/mpeg' })\n\tconst audioFile = new File([blob], `recording_${Date.now()}.mp3`, { type: 'audio/mpeg' })\n\tconst fileItem: FileItem = {\n\t\tfile: audioFile,\n\t\tisUploading: false,\n\t\tuploadProgress: 0,\n\t\tuploadSuccess: false,\n\t\tuploadError: false,\n\t\tfileSize: formatFileSize(audioFile.size),\n\t\tfileType: audioFile.type,\n\t\tname: audioFile.name,\n\t\t// id: crypto.randomUUID().replace(/-/gi, ''),\n\t\tid: Math.random().toString(36).slice(2).padEnd(10, '0').slice(0, 10),\n\t\tbase64: null\n\t}\n\temit('upFileList', [fileItem])\n\t// 停止并释放媒体流\n\tif (mediaRecorder && mediaRecorder.stream) {\n\t\tmediaRecorder.stream.getTracks().forEach(track => track.stop())\n\t}\n\tmediaRecorder = null\n\tchunks = []\n}\n\n// 初始化 MediaRecorder\nconst initMediaRecorder = async () => {\n\ttry {\n\t\tconst stream = await navigator.mediaDevices.getUserMedia({ audio: true })\n\t\tmediaRecorder = new MediaRecorder(stream)\n\t\tchunks = []\n\n\t\tmediaRecorder.ondataavailable = event => {\n\t\t\tif (event.data.size > 0) {\n\t\t\t\tchunks.push(event.data)\n\t\t\t}\n\t\t}\n\n\t\tmediaRecorder.onstop = handleRecordingStop\n\t\treturn true\n\t} catch (error) {\n\t\tisMediaStreamError.value = true\n\t\tmediaStreamErrorMsg.value = error instanceof Error ? error.message : '获取麦克风权限失败'\n\t\tconsole.error('获取麦克风权限失败:', error)\n\t\tshowToast('获取麦克风权限失败', 'error')\n\t\treturn false\n\t}\n}\n\n// 切换录制状态\nconst toggleRecording = async (flag?: boolean) => {\n\tconst colseVoice = () => {\n\t\tmediaRecorder?.stop()\n\t\tisRecording.value = false\n\t}\n\tif (flag) {\n\t\tcolseVoice()\n\t\treturn\n\t}\n\tif (!isRecording.value) {\n\t\tconst initSuccess = await initMediaRecorder()\n\t\tif (initSuccess) {\n\t\t\tmediaRecorder?.start()\n\t\t\tisRecording.value = true\n\t\t\tisMediaStreamError.value = false\n\t\t\tmediaStreamErrorMsg.value = ''\n\t\t}\n\t} else {\n\t\tcolseVoice()\n\t}\n}\n\nconst resetFile = () => {\n\tfileList.value = []\n}\ndefineExpose({\n\tresetFile,\n\ttoggleRecording\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode"],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var DOCX = "data:image/png;base64,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";
|
|
2
|
+
|
|
3
|
+
export { DOCX as default };
|
|
4
|
+
//# sourceMappingURL=docx.png.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docx.png.mjs","sources":["../../../../../../../packages/components/touchchat/img/file/docx.png"],"sourcesContent":["export default \"data:image/png;base64,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\""],"names":[],"mappings":"AAAA,WAAe;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var GIF = "data:image/png;base64,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";
|
|
2
|
+
|
|
3
|
+
export { GIF as default };
|
|
4
|
+
//# sourceMappingURL=gif.png.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gif.png.mjs","sources":["../../../../../../../packages/components/touchchat/img/file/gif.png"],"sourcesContent":["export default \"data:image/png;base64,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\""],"names":[],"mappings":"AAAA,UAAe;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var MP4 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAALISURBVHgB7Zk9aBRBFMf/tzliiBEJJ+YisYkfjRoQIqiFTcQiCFZRSKXXWSiilUG4CyhXiRIbO21NkU5tTHWggsHEaHVRmwQ/AjEqURM4dtyZvZDbu915czuTuw3sD6a5md19/3n7PuYWiImJ2dIkqAUsk89idS3nM6NyOezVNe/TmHf+7cTT3DHMjiIkSXIFN/7XCsJi//xNLcm9QR/CirAQDbiILEJAC6DfElOEEkELYGgkdYuIyitUSV0ioiiAoyyi6TGQ3tsTNKUkgq4Dwzmmk0ZLdBoNxOpKoWUiL7Uxqq+Qi4L3oy1AIQMqCGhsHq0XBQGNq2RhoHuhej1wpBcY6Af69gO7O8UD2NyCM+bBCjNimERBgKIHujqBaxccAftq73CgRwwMngC+LaF05S7wdQkmMBMDvXuAseu+xteQTiH56JYryMCz9bMQ3/n8ZWB7m/o1He1oeXAD6E4RC2nv6wexn/GLP0DCRYxchC56Hjh+WARqDS+mgJsPSSGJowfF0EFTwKHgufefgEwe9p3HInADDRg8GXwPM5VYEkg8eAns569E1rHHJ33npR4wU4kl26AgQOCkTHtsHKWhEdjPXnrn0lQgy2l4K5Ho3gWT6BWyxWX/IK5mRzusoQFYmbO1cx/nJRfSm6cgQMKsE6in+6VLrPNlw5206YddXIAOegImp4IF8J5o+AwsqjoXpqGDngCeKvmoNvLcKWE8iZNe7cI76KAfxPefAH/+eX9TaStW/rpNnSb6rcT3ZbfqVouQsW68gY7UTBr9/AW4ek+pB2LTRZQu3QbmVIKXLsXmzgPcE07rIPoj3mLwIlcudIzv9ExRFDEuQJ3NTqN+vP7gjjI6f6uoEPFDvZHzQDMxciKL9r8SEfeAkVeomTFgIgu1to5iZyK7cTOfL3Wenar8+MdgbUsGrAmiYl1HW+iPfzExMVuE/ztlycdffXsOAAAAAElFTkSuQmCC";
|
|
2
|
+
|
|
3
|
+
export { MP4 as default };
|
|
4
|
+
//# sourceMappingURL=mp4.png.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mp4.png.mjs","sources":["../../../../../../../packages/components/touchchat/img/file/mp4.png"],"sourcesContent":["export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAALISURBVHgB7Zk9aBRBFMf/tzliiBEJJ+YisYkfjRoQIqiFTcQiCFZRSKXXWSiilUG4CyhXiRIbO21NkU5tTHWggsHEaHVRmwQ/AjEqURM4dtyZvZDbu915czuTuw3sD6a5md19/3n7PuYWiImJ2dIkqAUsk89idS3nM6NyOezVNe/TmHf+7cTT3DHMjiIkSXIFN/7XCsJi//xNLcm9QR/CirAQDbiILEJAC6DfElOEEkELYGgkdYuIyitUSV0ioiiAoyyi6TGQ3tsTNKUkgq4Dwzmmk0ZLdBoNxOpKoWUiL7Uxqq+Qi4L3oy1AIQMqCGhsHq0XBQGNq2RhoHuhej1wpBcY6Af69gO7O8UD2NyCM+bBCjNimERBgKIHujqBaxccAftq73CgRwwMngC+LaF05S7wdQkmMBMDvXuAseu+xteQTiH56JYryMCz9bMQ3/n8ZWB7m/o1He1oeXAD6E4RC2nv6wexn/GLP0DCRYxchC56Hjh+WARqDS+mgJsPSSGJowfF0EFTwKHgufefgEwe9p3HInADDRg8GXwPM5VYEkg8eAns569E1rHHJ33npR4wU4kl26AgQOCkTHtsHKWhEdjPXnrn0lQgy2l4K5Ho3gWT6BWyxWX/IK5mRzusoQFYmbO1cx/nJRfSm6cgQMKsE6in+6VLrPNlw5206YddXIAOegImp4IF8J5o+AwsqjoXpqGDngCeKvmoNvLcKWE8iZNe7cI76KAfxPefAH/+eX9TaStW/rpNnSb6rcT3ZbfqVouQsW68gY7UTBr9/AW4ek+pB2LTRZQu3QbmVIKXLsXmzgPcE07rIPoj3mLwIlcudIzv9ExRFDEuQJ3NTqN+vP7gjjI6f6uoEPFDvZHzQDMxciKL9r8SEfeAkVeomTFgIgu1to5iZyK7cTOfL3Wenar8+MdgbUsGrAmiYl1HW+iPfzExMVuE/ztlycdffXsOAAAAAElFTkSuQmCC\""],"names":[],"mappings":"AAAA,UAAe;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var PPT = "data:image/png;base64,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";
|
|
2
|
+
|
|
3
|
+
export { PPT as default };
|
|
4
|
+
//# sourceMappingURL=ppt.png.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ppt.png.mjs","sources":["../../../../../../../packages/components/touchchat/img/file/ppt.png"],"sourcesContent":["export default \"data:image/png;base64,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\""],"names":[],"mappings":"AAAA,UAAe;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var PPTX = "data:image/png;base64,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";
|
|
2
|
+
|
|
3
|
+
export { PPTX as default };
|
|
4
|
+
//# sourceMappingURL=pptx.png.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pptx.png.mjs","sources":["../../../../../../../packages/components/touchchat/img/file/pptx.png"],"sourcesContent":["export default \"data:image/png;base64,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\""],"names":[],"mappings":"AAAA,WAAe;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var XLSX = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAABACAYAAABC6cT1AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAkfSURBVHgB7VtvbFvVFf/d9+zU+YPqDFL+FeK029jSiLSFrWhI2OnYtEEZKWOQb/nD2L5MJHzbhoRraSmftiRi0j5sXWJNrEGAlJRu2gdInEqDBqYugabSNmgdYF3bweTQNI2T+N2de56fYzt//J7rKGnrn/Ts98499885595zzr3PBooooogiirh2IOAQvuEO7zy0xtW5DLo0GzR7kDBiZxu6B1BAuOAQs4b8+2x8xpdNVxqUsAeLV0qJhGGYNKGesXgPk0ndG3MJoPPRPjw32IoCwZHFtw53BC7Nxofj8TgKASX4fGIhN+O8gYXTF9Vou/HzI8+iAHA896S0a9c1gEQHXvheEAVAfotuPWHgQCGEdyy4Y2+4FiiA8M6nOjYIlPAHH+lAnnA+1TeM5AQpunBwfzPygHPBN8RcT4NM9OUjfB4W30gmT0ImutHZuNNJlTwsvg4md2sQZavmWl5a9MNOhHecua2XxfU7yiGn54HEiv17S0tLh6eBStiAc8HF+i1yUeFetbykoswLm7i6vfoV4Or36nni2rK4A/9TtLhtbGSLO3C8eezONrDkDqZ6XuFMLhgZ+3LhSuqPYmwGXdcoqTIy+MQKVpEG1VO8qromIOhS30w3ZEb/Ql+e7sTijgQ/98lZv7FAJ2CGsaRMCWTnkMK1qQTuck9KAUZ8HjK+sGxdoZHiHPQ1NUsJTm+TD639UeSAfRUdeqyF2HtRAOhuF0rKSxG/OAMjkUCBEYPm3pVLeAdrXBTkyEchMb+A2anptRBawQs5n3Ofbk/w3scD9OlLJ4kVLuSgWcieqtm8WKUtky5WLCM/kXObam+NG4bPapo/yak8v/sJ+Cq2YHDyHQx+9C6X+cqr8Pw9T/J928iL7KdavtQA/207EP5XBJH/TCxZXDx8UoL/llo0f7mBKbH4NLc7cm6Cn82yvZi8eAGhEy/T+YOqY6C9bh/qb6zBYHSU+N8ln5CKOTlzdnsWT+hj1q1lp5GPTqKFBtp1X6vpYWnwwV1PkKABgLy+8vCC6IGbd7DwvrKbIJaxMikVwZ0/wNBDIeZr/qIf7Tse5ufm7QFud/z8aWrnqwiSsv1bapnmK6vCr/a0EL0WY1SuRpbWehQFEfxHr4xZjfHLAKkEfx+Rj99HdUUVDdAPn4e+72pAdIqs8vZhskpSS5ZXXm47SaRqmiVBmiVT8Rnsf+0X2N3bjqf+3IPBD8mKH4wyW4zKno0c4nvFKyiyKCUo7x6eeBPRzy8gaypFkAP2w5khWqHJYTV8FWOlWyD0Vj+Gn+xE9/1PIfLvk8ymBjI58ymwSctMKOTS1EfZSC0Ptd5HSIkDNL1VjB77fBJ9H0YgSzQ+hIAuMXBmFBFStv+OOjRvC6D5K3tNJR/vhyjX000YJa8eQg7Y9+pPvxohpUb4XpjJSOT8BMIn38DmkjI0bttjDmS0n5Wiko+kvEjVyWpS0LSYujzNlnuABGq5+0HU374dKCV7ePRUYqQSIVGi80xS6P32M6ys0FuHTQWreG81aoiwnTjuLGU10GMJI6mmIIsceLs/lYz0nDhCpwEaW818/2X6Xvbgy+U2xDP23ygvmUpPBXoffAYnvv9LyB+/ht8HfgIvKZRXjPpwkdbPncIfT0W4qlJy+B9DTLek0EgBZKADsAFnguuyfnHMJBAJGPDdnQpN/jvrmMbWVi/8TBUtpqlLhJc88L2vPIfWo10Y+OdxjF84zSXKcbbXPszLhYWnNr3lFbh/ay2XV5ZWoLryFqZb4Izytxx6Cyh4b6OPptGBdFKluxzBPU0sWDR2Ho3b70Pgtjr28nKZnDCbpsKSVBbzuBD+YAT7Xz+I3eEONLz0M1amcpacjysl0nNH/T74Nt+M2OwleDeVo+uBNqJn6VOXthIt+4IbeqpBHj8NpL3uIVTfUIW+8TcQOvYSDzZ4D3lbAzwgZkurJLIsbiUe1V/YQuualkg5rW06TY0ZM6zM2Oy0qUTFQ+Er+LUmrtfwh5+y8I01eyjG78h2ogEzvV4d9rw6WxstaY1zHA3e22Q6GXI6KqQ07/yW6XUploeVV05rovmuvfBvrcvYQbUd+zXqK2swtC/Eyclg9B1u/NHqr3P52IUzPE1UPqDCl0LP3wYxHosi9NfD6PrmD5k+8qcgS5K2L+yijz5cseCGqzFjQkkzc1NChyeGMDn7GQR5YRVahu/sRNc32jg0TSUupZxbQAmdqm6u+7Y3X6RkR9Kuaho7b6rhy0KEEqTQ6Ms8Jeq9PrRw+DqP7rGjkOT1e947ivZ7H0HgdqVoPyl6JBVJoDK3HLs0u3E8lQJaKeuxj09i5Mx7Zhrq0bjTCKWYjw10YjM5Hi+t/1j8EvpODSFCfEt7Nh3g+GdnsO13T8N/ax2t3y1cpGbPyNkJSI/GkcPrLkPrX7q5vWj8U44c0AzsP/ICKcuHmLy8tP2FBR9WyeAE7ODQ47TbkV1WBamysHmDpyDUYYNbmHtkOkgQc4YZ6lyaGc7U4QIfXFgdCjO51M3khNsjqwvFYyR/+6EspxTjTu4Pkv1xjq76UnVVQriQMMeiIolqSxOL81Jz16xmcXuC9zZ6ybnRgoPXSllTpx/qRERLNkUFavDCatn6MYs0w9qSLrW0MKfqSrOYw1/S8zHJsJgW6clImVw2ZoRY3N6JCNpebcAqsOfVWwdiFMpCVvfcgdKybiYP5hiSIUw347uKr+pZWZ+f1czgSyxeAhk8bGWum6Qnu+dnLZNu1UOyrzR9Rmm6teYSSYddvH7qeGnT7ik6DvpO9gGC7nLxqUr2MZHIcQamyoVLN/myd26KrutLd3TEq5UkXVP6+R7R3XSsZUhtl52U1dGZ2423Vo1NX57F3NzcChylcILsXz3J5PIRmr0VmI0bKLP733d/E7XD6/yUdQ2Rr8CLDazpufoGxpq+QrLf9jrgen2T4mCl5CH4Fa7DDYLr9t3Z1fHjnzXAtfFzrzzgSHCXei+1gUFZpe3xOU1goh6PJ0pd+FblsjYR6d9ApnsQZubmMlzL13UIddBYUlIStsvveMGqv2ZQwhqgjNmboL2hnjZpEsm/X+ipexN61sRKr5fdRjafVd/iy/62+Eh90U8auiMooogiiijiOsT/Af7/otBHOnUTAAAAAElFTkSuQmCC";
|
|
2
|
+
|
|
3
|
+
export { XLSX as default };
|
|
4
|
+
//# sourceMappingURL=xlsx.png.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xlsx.png.mjs","sources":["../../../../../../../packages/components/touchchat/img/file/xlsx.png"],"sourcesContent":["export default \"data:image/png;base64,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\""],"names":[],"mappings":"AAAA,WAAe;;;;"}
|
|
@@ -67,7 +67,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
67
67
|
const selectVal = ref("");
|
|
68
68
|
const selectInfo = ref();
|
|
69
69
|
const voiceRef = ref();
|
|
70
|
-
const scripts = inject("scripts", []);
|
|
71
70
|
const emits = __emit;
|
|
72
71
|
watch(
|
|
73
72
|
() => selectVal.value,
|
|
@@ -81,6 +80,20 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
81
80
|
},
|
|
82
81
|
{ deep: true }
|
|
83
82
|
);
|
|
83
|
+
watch(
|
|
84
|
+
() => props.enableDeepThinking,
|
|
85
|
+
() => {
|
|
86
|
+
updateSelectInfo();
|
|
87
|
+
},
|
|
88
|
+
{ deep: true }
|
|
89
|
+
);
|
|
90
|
+
watch(
|
|
91
|
+
() => props.inputValue,
|
|
92
|
+
() => {
|
|
93
|
+
updateSelectInfo();
|
|
94
|
+
},
|
|
95
|
+
{ deep: true }
|
|
96
|
+
);
|
|
84
97
|
const finallyModules = computed(() => {
|
|
85
98
|
if (!modules.length) {
|
|
86
99
|
return optionalModules.value;
|
|
@@ -91,7 +104,11 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
91
104
|
if (matchedModule) {
|
|
92
105
|
const updatedModule = { ...matchedModule };
|
|
93
106
|
const body = updatedModule.config.body();
|
|
94
|
-
body.messages[0].content
|
|
107
|
+
if (body.messages && body.messages.length > 0 && body.messages[0].content) {
|
|
108
|
+
body.messages[0].content = props.inputValue;
|
|
109
|
+
} else {
|
|
110
|
+
body.messages = [{ role: "user", content: props.inputValue }];
|
|
111
|
+
}
|
|
95
112
|
if (thinkAble) {
|
|
96
113
|
body.model = props.enableDeepThinking ? "deepseek-reasoner" : "deepseek-v3";
|
|
97
114
|
}
|
|
@@ -101,7 +118,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
101
118
|
return [];
|
|
102
119
|
} else {
|
|
103
120
|
const body = module.config.body();
|
|
104
|
-
body.messages[0].content
|
|
121
|
+
if (body.messages && body.messages.length > 0 && body.messages[0].content) {
|
|
122
|
+
body.messages[0].content = props.inputValue;
|
|
123
|
+
}
|
|
105
124
|
if (thinkAble) {
|
|
106
125
|
body.model = props.enableDeepThinking ? "deepseek-reasoner" : "deepseek-v3";
|
|
107
126
|
}
|
|
@@ -110,6 +129,20 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
110
129
|
}
|
|
111
130
|
});
|
|
112
131
|
});
|
|
132
|
+
const updateSelectInfo = () => {
|
|
133
|
+
if (finallyModules.value.length > 0 && selectInfo.value) {
|
|
134
|
+
const body = selectInfo.value.config.body();
|
|
135
|
+
if (thinkAble && body.model) {
|
|
136
|
+
body.model = props.enableDeepThinking ? "deepseek-reasoner" : "deepseek-v3";
|
|
137
|
+
}
|
|
138
|
+
if (body.messages && body.messages.length > 0 && body.messages[0].content) {
|
|
139
|
+
body.messages[0].content = props.inputValue;
|
|
140
|
+
} else {
|
|
141
|
+
body.messages = [{ role: "user", content: props.inputValue }];
|
|
142
|
+
}
|
|
143
|
+
selectInfo.value.config.body = () => body;
|
|
144
|
+
}
|
|
145
|
+
};
|
|
113
146
|
const upFileList = (list) => {
|
|
114
147
|
fileList.value.push(...list);
|
|
115
148
|
nextTick(() => {
|
|
@@ -212,10 +245,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
212
245
|
}
|
|
213
246
|
};
|
|
214
247
|
const handleSend = () => {
|
|
215
|
-
if (!scripts.length && fileList.value.length > 0) {
|
|
216
|
-
showToast("\u6682\u4E0D\u652F\u6301\u6587\u4EF6\u53D1\u9001");
|
|
217
|
-
return;
|
|
218
|
-
}
|
|
219
248
|
let uploadError = false;
|
|
220
249
|
if (fileList.value.length > 0) {
|
|
221
250
|
fileList.value.forEach((item) => {
|
|
@@ -1 +1 @@
|
|
|
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<!-- :file-progress=\"fileProgress\" -->\n\t\t<FileContent :file-list=\"fileList\" :has-colse=\"true\" type=\"ChatInput\" @colse=\"handleColse\" />\n\t\t<div class=\"touchchat-edit-input\">\n\t\t\t<textarea :value=\"inputValue\" :placeholder=\"placeholder ?? '请输入...'\" @paste=\"handlePaste\" @input=\"handleInputChange\" @keyup.enter=\"handleSend\"> </textarea>\n\t\t</div>\n\n\t\t<!-- 按钮与开关容器 -->\n\t\t<div :class=\"thinkAble ? 'touchchat-edit-submit is-thinkable' : 'touchchat-edit-submit'\">\n\t\t\t<div class=\"touchchat-edit-submit-left\">\n\t\t\t\t<!-- 附件 @click=\"showMarkLaryer = true\" @progress-fn=\"progressFn\" -->\n\t\t\t\t<upload-view v-if=\"uploadAble\" ref=\"uploadViewRef\" :file-list=\"fileList\" @upload-file=\"uploadFile\">\n\t\t\t\t\t<button v-if=\"uploadAble\" class=\"touchchat-edit-attach\" :class=\"{ 'is-dis': isChating }\">\n\t\t\t\t\t\t<div class=\"touchchat-edit-attach-icon\"></div>\n\t\t\t\t\t\t<div class=\"touchchat-edit-attach-tip\">\n\t\t\t\t\t\t\t<p>文件数量:最多10个</p>\n\t\t\t\t\t\t\t<p>文件类型:pdf,txt,csv,docx,xlsx,xls,pptx,ppt,md,mobi,epub,png,jpeg,jpg</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</button>\n\t\t\t\t</upload-view>\n\n\t\t\t\t<ModuleSelect v-if=\"finallyModules.length > 1\" v-model=\"selectVal\" :modules=\"finallyModules\" />\n\n\t\t\t\t<!-- 深度思考开关 - 修改为按钮样式 -->\n\t\t\t\t<button v-if=\"thinkAble\" 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<screenshot v-if=\"screenAble\" @up-file-list=\"upFileList\"></screenshot>\n\t\t\t\t<!-- 实时语音 -->\n\t\t\t\t<realtime-voice v-if=\"realtimeVoiceAble\" @start-realtime-voice=\"startRealtimeVoice\" @transcription=\"transcription\"></realtime-voice>\n\t\t\t\t<!-- 语音 -->\n\t\t\t\t<voice v-if=\"voiceAble\" ref=\"voiceRef\" @up-file-list=\"upFileList\"></voice>\n\t\t\t\t<!-- 发送按钮 -->\n\t\t\t\t<button v-if=\"!isChating\" class=\"touchchat-edit-send\" :disabled=\"!inputValue.trim() && !fileList.length\" @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\t<MarkLayer :show-mark-laryer=\"showMarkLaryer\" @colse-mark-layer=\"showMarkLaryer = false\" />\n\t</div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, inject, provide, nextTick, computed, watch, onMounted } from 'vue'\nimport MarkLayer from '../../component/MarkLayer.vue'\nimport FileContent from '../../component/FileContent.vue'\nimport UploadView from '../../component/UploadView.vue'\nimport Screenshot from '../../component/Screenshot.vue'\nimport Voice from '../../component/VoiceView.vue'\nimport RealtimeVoice from '../../component/RealtimeVoice.vue'\nimport ModuleSelect from '../../component/ModuleSelect.vue'\nimport { showToast } from '../../utils/tools'\n\ninterface FileItem {\n\tfile: File\n\tisUploading: boolean\n\tuploadProgress: number\n\tuploadSuccess: boolean\n\tuploadError: boolean\n\tfileSize: string\n\tfileType: string\n\tname: string\n\tid: string\n\tbase64: string | null\n}\n\n// 定义 body 返回值的类型\ninterface BodyConfig {\n\tmodel: string\n\tmessages: Array<{\n\t\trole: string\n\t\tcontent: string\n\t}>\n\tstream: boolean\n}\n\n// 定义 respoKey 返回值的类型\ninterface RespoKeyConfig {\n\tcategory: string\n\tcontentCategory: string\n\tcontent: string\n\tall: string\n\tallCategory: string\n}\n\ninterface ModuleItem {\n\tname: string\n\tconfig: {\n\t\taction: string\n\t\theaders: () => object\n\t\tbody: () => BodyConfig // 修改为具体类型\n\t\trespoKey: () => RespoKeyConfig // 修改为具体类型\n\t}\n}\n\nconst props = defineProps<{\n\tinputValue: string\n\tisChating: boolean\n\tenableDeepThinking: boolean\n}>()\n\nconst placeholder = inject('placeholder', '请输入...')\nconst layout = inject<string>('layout', 'side, think, upload, chain, screen,realtime')\nconst modules = inject<(string | ModuleItem)[]>('modules', [])\nprovide('uploadFile', (index: number, type?: string) => {\n\tif (uploadViewRef.value) {\n\t\tuploadViewRef.value.uploadFile(index, type)\n\t}\n})\nconst thinkAble = layout.includes('think')\nconst uploadAble = layout.includes('upload')\nconst screenAble = layout.includes('screen')\nconst voiceAble = layout.includes('voice')\nconst realtimeVoiceAble = layout.includes('realtime')\nconst showMarkLaryer = ref<boolean>(false)\nconst fileList = ref<FileItem[]>([])\n// const fileData = ref<FileItem[]>([])\nconst optionalModules = ref<ModuleItem[]>([\n\t{\n\t\tname: 'deepseek-v3',\n\t\tconfig: {\n\t\t\taction: 'https://api.apiyi.com/v1/chat/completions',\n\t\t\theaders: () => ({\n\t\t\t\t'Content-Type': 'application/json',\n\t\t\t\tAuthorization: 'Bearer sk-fe9MtODvds8wpzz05f3417Fe3e9641C1926e6fC588425dEd'\n\t\t\t}),\n\t\t\tbody: () => ({\n\t\t\t\tmodel: 'deepseek-v3',\n\t\t\t\tmessages: [\n\t\t\t\t\t{\n\t\t\t\t\t\trole: 'user',\n\t\t\t\t\t\tcontent: props.inputValue // 使用传入的用户内容参数\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tstream: true\n\t\t\t}),\n\t\t\trespoKey: () => ({\n\t\t\t\tcategory: 'category',\n\t\t\t\tcontentCategory: 'task_stream_content',\n\t\t\t\tcontent: 'content',\n\t\t\t\tall: 'message',\n\t\t\t\tallCategory: 'answer'\n\t\t\t})\n\t\t}\n\t}\n])\nconst uploadViewRef = ref<InstanceType<typeof UploadView>>()\nconst selectVal = ref('')\nconst selectInfo = ref<ModuleItem>()\nconst voiceRef = ref<InstanceType<typeof Voice>>()\nconst scripts = inject<any[]>('scripts', [])\n\nconst emits = defineEmits<{\n\t(e: 'send', list: FileItem[]): void\n\t(e: 'stop'): void\n\t(e: 'update:enableDeepThinking', value: boolean): void\n\t(e: 'update:inputValue', value: string): void // 添加inputValue更新事件\n\t(e: 'moduleInfo', info: ModuleItem): void\n}>()\n\nwatch(\n\t() => selectVal.value,\n\t() => {\n\t\tif (finallyModules.value.length > 0) {\n\t\t\tselectInfo.value = finallyModules.value.find((item: any) => item.name === selectVal.value)\n\t\t\tif (selectInfo.value) {\n\t\t\t\temits('moduleInfo', selectInfo.value)\n\t\t\t}\n\t\t}\n\t},\n\t{ deep: true }\n)\n\nconst finallyModules = computed(() => {\n\tif (!modules.length) {\n\t\treturn optionalModules.value\n\t}\n\treturn modules.flatMap((module: any) => {\n\t\tif (typeof module === 'string') {\n\t\t\t// 若 module 是字符串,在 optionalModules 中查找 name 匹配的项\n\t\t\tconst matchedModule = optionalModules.value.find((optModule: any) => optModule.name === module)\n\t\t\tif (matchedModule) {\n\t\t\t\t// 对匹配到的模块也更新 content 值\n\t\t\t\tconst updatedModule = { ...matchedModule }\n\t\t\t\tconst body = updatedModule.config.body()\n\t\t\t\tbody.messages[0].content = props.inputValue\n\t\t\t\tif (thinkAble) {\n\t\t\t\t\tbody.model = props.enableDeepThinking ? 'deepseek-reasoner' : 'deepseek-v3'\n\t\t\t\t}\n\t\t\t\tupdatedModule.config.body = () => body\n\t\t\t\treturn [updatedModule]\n\t\t\t}\n\t\t\treturn []\n\t\t} else {\n\t\t\tconst body = module.config.body()\n\t\t\tbody.messages[0].content = props.inputValue\n\t\t\tif (thinkAble) {\n\t\t\t\tbody.model = props.enableDeepThinking ? 'deepseek-reasoner' : 'deepseek-v3'\n\t\t\t}\n\t\t\t// 重新定义 body 方法,返回更新后的 body\n\t\t\tmodule.config.body = () => body\n\t\t\treturn [module]\n\t\t}\n\t})\n})\n\nconst upFileList = (list: FileItem[]) => {\n\tfileList.value.push(...list)\n\tnextTick(() => {\n\t\tif (uploadViewRef.value) {\n\t\t\t// 只对最新复制的图片进行加载\n\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t}\n\t})\n}\n\nconst handlePaste = (event: any, type?: string) => {\n\t// event.preventDefault();\n\tif (event.clipboardData) {\n\t\tconst clipboardData = event.clipboardData || window.Clipboard\n\t\tconst items = clipboardData.items\n\n\t\tlet isImage = false\n\t\tfor (let i = 0; i < items.length; i++) {\n\t\t\tif (items[i].type.indexOf('image/') !== -1) {\n\t\t\t\tisImage = true\n\t\t\t\t// 获取图片文件\n\t\t\t\tconst blob = items[i].getAsFile()\n\t\t\t\tif (blob) {\n\t\t\t\t\tconst reader = new FileReader()\n\t\t\t\t\treader.onload = e => {\n\t\t\t\t\t\tconst base64 = e.target?.result as string\n\t\t\t\t\t\t// 生成图片属性对象\n\t\t\t\t\t\tconst imageInfo = {\n\t\t\t\t\t\t\tfile: blob,\n\t\t\t\t\t\t\tisUploading: false,\n\t\t\t\t\t\t\tuploadProgress: 0,\n\t\t\t\t\t\t\tuploadSuccess: false,\n\t\t\t\t\t\t\tuploadError: false,\n\t\t\t\t\t\t\tfileSize: `${(blob.size / 1024).toFixed(2)} KB`,\n\t\t\t\t\t\t\tfileType: blob.type,\n\t\t\t\t\t\t\tname: `pasted_image_${Date.now()}`,\n\t\t\t\t\t\t\tid: Date.now().toString(),\n\t\t\t\t\t\t\tbase64\n\t\t\t\t\t\t}\n\t\t\t\t\t\tfileList.value.push(imageInfo)\n\t\t\t\t\t\tnextTick(() => {\n\t\t\t\t\t\t\tif (uploadViewRef.value) {\n\t\t\t\t\t\t\t\t// 只对最新复制的图片进行加载\n\t\t\t\t\t\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\treader.readAsDataURL(blob)\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\n\t\tif (isImage) {\n\t\t\tconsole.log('检测到粘贴的是图片')\n\t\t} else {\n\t\t\tconsole.log('粘贴的不是图片')\n\t\t}\n\t} else {\n\t\tif (type === 'copy') {\n\t\t\tfileList.value = event\n\t\t\tnextTick(() => {\n\t\t\t\tif (uploadViewRef.value) {\n\t\t\t\t\t// 只对最新复制的图片进行加载\n\t\t\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn\n\t\t}\n\t\tfileList.value.push(...event)\n\t\tnextTick(() => {\n\t\t\tif (uploadViewRef.value) {\n\t\t\t\t// 只对最新复制的图片进行加载\n\t\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t\t}\n\t\t})\n\t}\n}\n\nconst openMarkLayer = () => {\n\tshowMarkLaryer.value = true\n}\n\nconst colseMarkLayer = () => {\n\tshowMarkLaryer.value = false\n}\n\nconst handleColse = (id: string) => {\n\tconst index = fileList.value.findIndex((item: any) => item.id === id)\n\tif (index !== -1) {\n\t\tfileList.value.splice(index, 1)\n\t}\n}\n\nconst startRealtimeVoice = () => {\n\tif (voiceRef.value) {\n\t\tvoiceRef.value.toggleRecording(true)\n\t}\n}\n\nconst transcription = (text: string) => {\n\temits('update:inputValue', text)\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\t// enableDeepThinking.value ? 'deepseek-reasoner' : 'deepseek-v3'\n\temits('update:enableDeepThinking', !props.enableDeepThinking)\n}\n\nconst uploadFile = (file: FileItem[]) => {\n\tif (file.length > 0) {\n\t\tfileList.value = file\n\t}\n}\n\nconst handleSend = () => {\n\tif (!scripts.length && fileList.value.length > 0) {\n\t\tshowToast('暂不支持文件发送')\n\t\treturn\n\t}\n\tlet uploadError = false\n\tif (fileList.value.length > 0) {\n\t\tfileList.value.forEach((item: any) => {\n\t\t\tif (item.uploadError) {\n\t\t\t\tuploadError = true\n\t\t\t}\n\t\t})\n\t}\n\tif (uploadError) {\n\t\tshowToast('上传失败,请重试')\n\t\treturn\n\t}\n\tif (fileList.value.length > 10) {\n\t\tshowToast('文件数量不能超过10个')\n\t\treturn\n\t}\n\temits('send', fileList.value)\n\tnextTick(() => {\n\t\tfileList.value = []\n\t\tif (uploadViewRef.value) {\n\t\t\tuploadViewRef.value.resetFile()\n\t\t}\n\t\tif (voiceRef.value) {\n\t\t\tvoiceRef.value.resetFile()\n\t\t}\n\t})\n}\n\nconst itemUploadFile = (index: number, type: string) => {\n\tif (uploadViewRef.value) {\n\t\tuploadViewRef.value.uploadFile(index, type)\n\t}\n}\nconst handleStop = () => emits('stop')\nonMounted(() => {\n\tif (finallyModules.value.length > 0) {\n\t\tselectVal.value = finallyModules.value[0].name\n\t\tselectInfo.value = finallyModules.value[0]\n\t\tif (selectInfo.value) {\n\t\t\temits('moduleInfo', selectInfo.value)\n\t\t}\n\t}\n})\ndefineExpose({\n\thandlePaste,\n\topenMarkLayer,\n\tcolseMarkLayer,\n\titemUploadFile\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_createVNode","_createElementVNode","inputValue","_unref","_createBlock","_normalizeClass","isChating","enableDeepThinking","_Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;AAyGA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAMd,IAAM,MAAA,WAAA,GAAc,MAAO,CAAA,aAAA,EAAe,uBAAQ,CAAA,CAAA;AAClD,IAAM,MAAA,MAAA,GAAS,MAAe,CAAA,QAAA,EAAU,6CAA6C,CAAA,CAAA;AACrF,IAAA,MAAM,OAAU,GAAA,MAAA,CAAgC,SAAW,EAAA,EAAE,CAAA,CAAA;AAC7D,IAAQ,OAAA,CAAA,YAAA,EAAc,CAAC,KAAA,EAAe,IAAkB,KAAA;AACvD,MAAA,IAAI,cAAc,KAAO,EAAA;AACxB,QAAc,aAAA,CAAA,KAAA,CAAM,UAAW,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AAAA,OAC3C;AAAA,KACA,CAAA,CAAA;AACD,IAAM,MAAA,SAAA,GAAY,MAAO,CAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AACzC,IAAM,MAAA,UAAA,GAAa,MAAO,CAAA,QAAA,CAAS,QAAQ,CAAA,CAAA;AAC3C,IAAM,MAAA,UAAA,GAAa,MAAO,CAAA,QAAA,CAAS,QAAQ,CAAA,CAAA;AAC3C,IAAM,MAAA,SAAA,GAAY,MAAO,CAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AACzC,IAAM,MAAA,iBAAA,GAAoB,MAAO,CAAA,QAAA,CAAS,UAAU,CAAA,CAAA;AACpD,IAAM,MAAA,cAAA,GAAiB,IAAa,KAAK,CAAA,CAAA;AACzC,IAAM,MAAA,QAAA,GAAW,GAAgB,CAAA,EAAE,CAAA,CAAA;AAEnC,IAAA,MAAM,kBAAkB,GAAkB,CAAA;AAAA,MACzC;AAAA,QACC,IAAM,EAAA,aAAA;AAAA,QACN,MAAQ,EAAA;AAAA,UACP,MAAQ,EAAA,2CAAA;AAAA,UACR,SAAS,OAAO;AAAA,YACf,cAAgB,EAAA,kBAAA;AAAA,YAChB,aAAe,EAAA,4DAAA;AAAA,WAChB,CAAA;AAAA,UACA,MAAM,OAAO;AAAA,YACZ,KAAO,EAAA,aAAA;AAAA,YACP,QAAU,EAAA;AAAA,cACT;AAAA,gBACC,IAAM,EAAA,MAAA;AAAA,gBACN,SAAS,KAAM,CAAA,UAAA;AAAA;AAAA,eAChB;AAAA,aACD;AAAA,YACA,MAAQ,EAAA,IAAA;AAAA,WACT,CAAA;AAAA,UACA,UAAU,OAAO;AAAA,YAChB,QAAU,EAAA,UAAA;AAAA,YACV,eAAiB,EAAA,qBAAA;AAAA,YACjB,OAAS,EAAA,SAAA;AAAA,YACT,GAAK,EAAA,SAAA;AAAA,YACL,WAAa,EAAA,QAAA;AAAA,WACd,CAAA;AAAA,SACD;AAAA,OACD;AAAA,KACA,CAAA,CAAA;AACD,IAAA,MAAM,gBAAgB,GAAqC,EAAA,CAAA;AAC3D,IAAM,MAAA,SAAA,GAAY,IAAI,EAAE,CAAA,CAAA;AACxB,IAAA,MAAM,aAAa,GAAgB,EAAA,CAAA;AACnC,IAAA,MAAM,WAAW,GAAgC,EAAA,CAAA;AACjD,IAAA,MAAM,OAAU,GAAA,MAAA,CAAc,SAAW,EAAA,EAAE,CAAA,CAAA;AAE3C,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAQd,IAAA,KAAA;AAAA,MACC,MAAM,SAAU,CAAA,KAAA;AAAA,MAChB,MAAM;AACL,QAAI,IAAA,cAAA,CAAe,KAAM,CAAA,MAAA,GAAS,CAAG,EAAA;AACpC,UAAW,UAAA,CAAA,KAAA,GAAQ,eAAe,KAAM,CAAA,IAAA,CAAK,CAAC,IAAc,KAAA,IAAA,CAAK,IAAS,KAAA,SAAA,CAAU,KAAK,CAAA,CAAA;AACzF,UAAA,IAAI,WAAW,KAAO,EAAA;AACrB,YAAM,KAAA,CAAA,YAAA,EAAc,WAAW,KAAK,CAAA,CAAA;AAAA,WACrC;AAAA,SACD;AAAA,OACD;AAAA,MACA,EAAE,MAAM,IAAK,EAAA;AAAA,KACd,CAAA;AAEA,IAAM,MAAA,cAAA,GAAiB,SAAS,MAAM;AACrC,MAAI,IAAA,CAAC,QAAQ,MAAQ,EAAA;AACpB,QAAA,OAAO,eAAgB,CAAA,KAAA,CAAA;AAAA,OACxB;AACA,MAAO,OAAA,OAAA,CAAQ,OAAQ,CAAA,CAAC,MAAgB,KAAA;AACvC,QAAI,IAAA,OAAO,WAAW,QAAU,EAAA;AAE/B,UAAM,MAAA,aAAA,GAAgB,gBAAgB,KAAM,CAAA,IAAA,CAAK,CAAC,SAAmB,KAAA,SAAA,CAAU,SAAS,MAAM,CAAA,CAAA;AAC9F,UAAA,IAAI,aAAe,EAAA;AAElB,YAAM,MAAA,aAAA,GAAgB,EAAE,GAAG,aAAc,EAAA,CAAA;AACzC,YAAM,MAAA,IAAA,GAAO,aAAc,CAAA,MAAA,CAAO,IAAK,EAAA,CAAA;AACvC,YAAA,IAAA,CAAK,QAAS,CAAA,CAAC,CAAE,CAAA,OAAA,GAAU,KAAM,CAAA,UAAA,CAAA;AACjC,YAAA,IAAI,SAAW,EAAA;AACd,cAAK,IAAA,CAAA,KAAA,GAAQ,KAAM,CAAA,kBAAA,GAAqB,mBAAsB,GAAA,aAAA,CAAA;AAAA,aAC/D;AACA,YAAc,aAAA,CAAA,MAAA,CAAO,OAAO,MAAM,IAAA,CAAA;AAClC,YAAA,OAAO,CAAC,aAAa,CAAA,CAAA;AAAA,WACtB;AACA,UAAA,OAAO,EAAC,CAAA;AAAA,SACF,MAAA;AACN,UAAM,MAAA,IAAA,GAAO,MAAO,CAAA,MAAA,CAAO,IAAK,EAAA,CAAA;AAChC,UAAA,IAAA,CAAK,QAAS,CAAA,CAAC,CAAE,CAAA,OAAA,GAAU,KAAM,CAAA,UAAA,CAAA;AACjC,UAAA,IAAI,SAAW,EAAA;AACd,YAAK,IAAA,CAAA,KAAA,GAAQ,KAAM,CAAA,kBAAA,GAAqB,mBAAsB,GAAA,aAAA,CAAA;AAAA,WAC/D;AAEA,UAAO,MAAA,CAAA,MAAA,CAAO,OAAO,MAAM,IAAA,CAAA;AAC3B,UAAA,OAAO,CAAC,MAAM,CAAA,CAAA;AAAA,SACf;AAAA,OACA,CAAA,CAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,UAAA,GAAa,CAAC,IAAqB,KAAA;AACxC,MAAS,QAAA,CAAA,KAAA,CAAM,IAAK,CAAA,GAAG,IAAI,CAAA,CAAA;AAC3B,MAAA,QAAA,CAAS,MAAM;AACd,QAAA,IAAI,cAAc,KAAO,EAAA;AAExB,UAAA,aAAA,CAAc,KAAM,CAAA,UAAA,CAAW,QAAS,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA,CAAA;AAAA,SACzD;AAAA,OACA,CAAA,CAAA;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,WAAA,GAAc,CAAC,KAAA,EAAY,IAAkB,KAAA;AAElD,MAAA,IAAI,MAAM,aAAe,EAAA;AACxB,QAAM,MAAA,aAAA,GAAgB,KAAM,CAAA,aAAA,IAAiB,MAAO,CAAA,SAAA,CAAA;AACpD,QAAA,MAAM,QAAQ,aAAc,CAAA,KAAA,CAAA;AAE5B,QAAA,IAAI,OAAU,GAAA,KAAA,CAAA;AACd,QAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,KAAA,CAAM,QAAQ,CAAK,EAAA,EAAA;AACtC,UAAA,IAAI,MAAM,CAAC,CAAA,CAAE,KAAK,OAAQ,CAAA,QAAQ,MAAM,CAAI,CAAA,EAAA;AAC3C,YAAU,OAAA,GAAA,IAAA,CAAA;AAEV,YAAA,MAAM,IAAO,GAAA,KAAA,CAAM,CAAC,CAAA,CAAE,SAAU,EAAA,CAAA;AAChC,YAAA,IAAI,IAAM,EAAA;AACT,cAAM,MAAA,MAAA,GAAS,IAAI,UAAW,EAAA,CAAA;AAC9B,cAAA,MAAA,CAAO,SAAS,CAAK,CAAA,KAAA;;AACpB,gBAAM,MAAA,MAAA,GAAA,CAAS,EAAE,GAAA,CAAA,CAAA,MAAA,KAAF,IAAU,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA,CAAA;AAEzB,gBAAA,MAAM,SAAY,GAAA;AAAA,kBACjB,IAAM,EAAA,IAAA;AAAA,kBACN,WAAa,EAAA,KAAA;AAAA,kBACb,cAAgB,EAAA,CAAA;AAAA,kBAChB,aAAe,EAAA,KAAA;AAAA,kBACf,WAAa,EAAA,KAAA;AAAA,kBACb,UAAU,CAAI,EAAA,CAAA,IAAA,CAAK,IAAO,GAAA,IAAA,EAAM,QAAQ,CAAC,CAAA,CAAA,GAAA,CAAA;AAAA,kBACzC,UAAU,IAAK,CAAA,IAAA;AAAA,kBACf,IAAA,EAAM,CAAgB,aAAA,EAAA,IAAA,CAAK,GAAI,EAAA,CAAA,CAAA;AAAA,kBAC/B,EAAI,EAAA,IAAA,CAAK,GAAI,EAAA,CAAE,QAAS,EAAA;AAAA,kBACxB,MAAA;AAAA,iBACD,CAAA;AACA,gBAAS,QAAA,CAAA,KAAA,CAAM,KAAK,SAAS,CAAA,CAAA;AAC7B,gBAAA,QAAA,CAAS,MAAM;AACd,kBAAA,IAAI,cAAc,KAAO,EAAA;AAExB,oBAAA,aAAA,CAAc,KAAM,CAAA,UAAA,CAAW,QAAS,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA,CAAA;AAAA,mBACzD;AAAA,iBACA,CAAA,CAAA;AAAA,eACF,CAAA;AACA,cAAA,MAAA,CAAO,cAAc,IAAI,CAAA,CAAA;AAAA,aAC1B;AACA,YAAA,MAAA;AAAA,WACD;AAAA,SACD;AAEA,QAAA,IAAI,OAAS,EAAA;AACZ,UAAA,OAAA,CAAQ,IAAI,wDAAW,CAAA,CAAA;AAAA,SACjB,MAAA;AACN,UAAA,OAAA,CAAQ,IAAI,4CAAS,CAAA,CAAA;AAAA,SACtB;AAAA,OACM,MAAA;AACN,QAAA,IAAI,SAAS,MAAQ,EAAA;AACpB,UAAA,QAAA,CAAS,KAAQ,GAAA,KAAA,CAAA;AACjB,UAAA,QAAA,CAAS,MAAM;AACd,YAAA,IAAI,cAAc,KAAO,EAAA;AAExB,cAAA,aAAA,CAAc,KAAM,CAAA,UAAA,CAAW,QAAS,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA,CAAA;AAAA,aACzD;AAAA,WACA,CAAA,CAAA;AACD,UAAA,OAAA;AAAA,SACD;AACA,QAAS,QAAA,CAAA,KAAA,CAAM,IAAK,CAAA,GAAG,KAAK,CAAA,CAAA;AAC5B,QAAA,QAAA,CAAS,MAAM;AACd,UAAA,IAAI,cAAc,KAAO,EAAA;AAExB,YAAA,aAAA,CAAc,KAAM,CAAA,UAAA,CAAW,QAAS,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA,CAAA;AAAA,WACzD;AAAA,SACA,CAAA,CAAA;AAAA,OACF;AAAA,KACD,CAAA;AAEA,IAAA,MAAM,gBAAgB,MAAM;AAC3B,MAAA,cAAA,CAAe,KAAQ,GAAA,IAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAA,MAAM,iBAAiB,MAAM;AAC5B,MAAA,cAAA,CAAe,KAAQ,GAAA,KAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAM,MAAA,WAAA,GAAc,CAAC,EAAe,KAAA;AACnC,MAAM,MAAA,KAAA,GAAQ,SAAS,KAAM,CAAA,SAAA,CAAU,CAAC,IAAc,KAAA,IAAA,CAAK,OAAO,EAAE,CAAA,CAAA;AACpE,MAAA,IAAI,UAAU,CAAI,CAAA,EAAA;AACjB,QAAS,QAAA,CAAA,KAAA,CAAM,MAAO,CAAA,KAAA,EAAO,CAAC,CAAA,CAAA;AAAA,OAC/B;AAAA,KACD,CAAA;AAEA,IAAA,MAAM,qBAAqB,MAAM;AAChC,MAAA,IAAI,SAAS,KAAO,EAAA;AACnB,QAAS,QAAA,CAAA,KAAA,CAAM,gBAAgB,IAAI,CAAA,CAAA;AAAA,OACpC;AAAA,KACD,CAAA;AAEA,IAAM,MAAA,aAAA,GAAgB,CAAC,IAAiB,KAAA;AACvC,MAAA,KAAA,CAAM,qBAAqB,IAAI,CAAA,CAAA;AAAA,KAChC,CAAA;AAGA,IAAM,MAAA,iBAAA,GAAoB,CAAC,CAAa,KAAA;AACvC,MAAM,MAAA,KAAA,GAAS,EAAE,MAA+B,CAAA,KAAA,CAAA;AAChD,MAAA,KAAA,CAAM,qBAAqB,KAAK,CAAA,CAAA;AAAA,KACjC,CAAA;AAGA,IAAA,MAAM,0BAA0B,MAAM;AAErC,MAAM,KAAA,CAAA,2BAAA,EAA6B,CAAC,KAAA,CAAM,kBAAkB,CAAA,CAAA;AAAA,KAC7D,CAAA;AAEA,IAAM,MAAA,UAAA,GAAa,CAAC,IAAqB,KAAA;AACxC,MAAI,IAAA,IAAA,CAAK,SAAS,CAAG,EAAA;AACpB,QAAA,QAAA,CAAS,KAAQ,GAAA,IAAA,CAAA;AAAA,OAClB;AAAA,KACD,CAAA;AAEA,IAAA,MAAM,aAAa,MAAM;AACxB,MAAA,IAAI,CAAC,OAAQ,CAAA,MAAA,IAAU,QAAS,CAAA,KAAA,CAAM,SAAS,CAAG,EAAA;AACjD,QAAA,SAAA,CAAU,kDAAU,CAAA,CAAA;AACpB,QAAA,OAAA;AAAA,OACD;AACA,MAAA,IAAI,WAAc,GAAA,KAAA,CAAA;AAClB,MAAI,IAAA,QAAA,CAAS,KAAM,CAAA,MAAA,GAAS,CAAG,EAAA;AAC9B,QAAS,QAAA,CAAA,KAAA,CAAM,OAAQ,CAAA,CAAC,IAAc,KAAA;AACrC,UAAA,IAAI,KAAK,WAAa,EAAA;AACrB,YAAc,WAAA,GAAA,IAAA,CAAA;AAAA,WACf;AAAA,SACA,CAAA,CAAA;AAAA,OACF;AACA,MAAA,IAAI,WAAa,EAAA;AAChB,QAAA,SAAA,CAAU,kDAAU,CAAA,CAAA;AACpB,QAAA,OAAA;AAAA,OACD;AACA,MAAI,IAAA,QAAA,CAAS,KAAM,CAAA,MAAA,GAAS,EAAI,EAAA;AAC/B,QAAA,SAAA,CAAU,0DAAa,CAAA,CAAA;AACvB,QAAA,OAAA;AAAA,OACD;AACA,MAAM,KAAA,CAAA,MAAA,EAAQ,SAAS,KAAK,CAAA,CAAA;AAC5B,MAAA,QAAA,CAAS,MAAM;AACd,QAAA,QAAA,CAAS,QAAQ,EAAC,CAAA;AAClB,QAAA,IAAI,cAAc,KAAO,EAAA;AACxB,UAAA,aAAA,CAAc,MAAM,SAAU,EAAA,CAAA;AAAA,SAC/B;AACA,QAAA,IAAI,SAAS,KAAO,EAAA;AACnB,UAAA,QAAA,CAAS,MAAM,SAAU,EAAA,CAAA;AAAA,SAC1B;AAAA,OACA,CAAA,CAAA;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,cAAA,GAAiB,CAAC,KAAA,EAAe,IAAiB,KAAA;AACvD,MAAA,IAAI,cAAc,KAAO,EAAA;AACxB,QAAc,aAAA,CAAA,KAAA,CAAM,UAAW,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AAAA,OAC3C;AAAA,KACD,CAAA;AACA,IAAM,MAAA,UAAA,GAAa,MAAM,KAAA,CAAM,MAAM,CAAA,CAAA;AACrC,IAAA,SAAA,CAAU,MAAM;AACf,MAAI,IAAA,cAAA,CAAe,KAAM,CAAA,MAAA,GAAS,CAAG,EAAA;AACpC,QAAA,SAAA,CAAU,KAAQ,GAAA,cAAA,CAAe,KAAM,CAAA,CAAC,CAAE,CAAA,IAAA,CAAA;AAC1C,QAAW,UAAA,CAAA,KAAA,GAAQ,cAAe,CAAA,KAAA,CAAM,CAAC,CAAA,CAAA;AACzC,QAAA,IAAI,WAAW,KAAO,EAAA;AACrB,UAAM,KAAA,CAAA,YAAA,EAAc,WAAW,KAAK,CAAA,CAAA;AAAA,SACrC;AAAA,OACD;AAAA,KACA,CAAA,CAAA;AACD,IAAa,QAAA,CAAA;AAAA,MACZ,WAAA;AAAA,MACA,aAAA;AAAA,MACA,cAAA;AAAA,MACA,cAAA;AAAA,KACA,CAAA,CAAA;;;wBAtYA,EAAAA,kBAAA,CAgDM,OAAA,EAhDD,KAAA,EAAM,kBAAgB,EAAA;AAAA,QAC1BC,mBAAuC,kCAAA,CAAA;AAAA,QACvCC,YAA6F,WAAA,EAAA;AAAA,UAA/E,aAAW,QAAQ,CAAA,KAAA;AAAA,UAAG,WAAW,EAAA,IAAA;AAAA,UAAM,IAAK,EAAA,WAAA;AAAA,UAAa,OAAO,EAAA,WAAA;AAAA;QAC9EC,kBAEM,CAAA,KAAA,EAAA,EAFD,KAAA,EAAM,wBAAsB,EAAA;AAAA,UAChCA,mBAA2J,UAAA,EAAA;AAAA,YAAhJ,OAAOC,IAAU,CAAA,UAAA;AAAA,YAAG,WAAa,EAAA,CAAA,EAAA,GAAAC,KAAA,CAAW,WAAA,CAAA,KAAX,IAAW,GAAA,EAAA,GAAA,uBAAA;AAAA,YAAe,OAAO,EAAA,WAAA;AAAA,YAAc,OAAO,EAAA,iBAAA;AAAA,YAAoB,kBAAa,UAAU,EAAA,CAAA,OAAA,CAAA,CAAA;AAAA,aAAE,GAAC,EAAA,EAAA,EAAA,CAAA,OAAA,EAAA,aAAA,CAAA,CAAA;AAAA;QAGjJJ,mBAAgB,8CAAA,CAAA;AAAA,QAChBE,kBAAA;AAAA,UAsCM,KAAA;AAAA,UAAA;AAAA,YAtCA,qBAAO,CAAAE,KAAA,CAAS,SAAA,CAAA,GAAA,uCAAA,uBAAA,CAAA;AAAA;;YACrBF,kBAmBM,CAAA,KAAA,EAAA,EAnBD,KAAA,EAAM,8BAA4B,EAAA;AAAA,cACtCF,mBAAsE,2EAAA,CAAA;AAAA,cACnDI,MAAU,UAAA,CAAA,iBAA7BC,YAQc,UAAA,EAAA;AAAA;uBARqB,EAAA,eAAA;AAAA,gBAAJ,GAAI,EAAA,aAAA;AAAA,gBAAiB,aAAW,QAAQ,CAAA,KAAA;AAAA,gBAAG,YAAa,EAAA,UAAA;AAAA;iCACtF,MAMS;AAAA,kBANKD,KAAU,CAAA,UAAA,gBAAxB,EAAAL,kBAAA;AAAA,oBAMS,QAAA;AAAA,oBAAA;AAAA;sBANiB,KAAA,EAAKO,eAAA,CAAC,uBAAA,EAAuB,EAAA,QAAqBC,EAAAA,IAAAA,CAAS,SAAA,EAAA,CAAA,CAAA;AAAA;;sBACpFL,kBAA8C,CAAA,KAAA,EAAA,EAAzC,KAAA,EAAM,8BAA4B,CAAA;AAAA,sBACvCA,kBAGM,CAAA,KAAA,EAAA,EAHD,KAAA,EAAM,6BAA2B,EAAA;AAAA,wBACrCA,kBAAA,CAAiB,WAAd,oDAAU,CAAA;AAAA,wBACbA,kBAAA,CAAwE,WAArE,6JAAiE,CAAA;AAAA;;;;;;;;;cAKnD,eAAA,KAAe,CAAA,MAAA,GAAM,kBAAzCG,YAA+F,YAAA,EAAA;AAAA;4BAAvC,SAAS,CAAA,KAAA;AAAA,8CAAT,KAAA,SAAA,CAAS,KAAA,GAAA,MAAA;AAAA,gBAAG,SAAS,cAAc,CAAA,KAAA;AAAA;cAE3FL,mBAAyB,qFAAA,CAAA;AAAA,cACXI,KAAS,CAAA,SAAA,gBAAvB,EAAAL,kBAAA;AAAA,gBAGS,QAAA;AAAA,gBAAA;AAAA;kBAHgB,KAAM,EAAAO,cAAA,CAAA,CAAA,sBAAA,EAA0CE,EAAAA,OAAAA,EAAAA,IAAAA,CAAAA,kBAAAA,UAA8BD,EAAAA,IAAAA,CAAS,SAAA,EAAA,CAAA,CAAA;AAAA,kBAAK,OAAO,EAAA,uBAAA;AAAA;;kBAC3HL,kBAA6C,CAAA,KAAA,EAAA,EAAxC,KAAA,EAAM,6BAA2B,CAAA;AAAA,kBACtCA,mBAAiD,KAA5C,EAAA,EAAA,KAAM,EAAA,2BAAA,IAA4B,0BAAI,CAAA;AAAA;;;;;YAG7CA,kBAgBM,CAAA,KAAA,EAAA,EAhBD,KAAA,EAAM,+BAA6B,EAAA;AAAA,cACvCF,mBAAW,gBAAA,CAAA;AAAA,cACOI,MAAU,UAAA,CAAA,iBAA5BC,YAAsE,UAAA,EAAA;AAAA;gBAAvC,YAAc,EAAA,UAAA;AAAA;cAC7CL,mBAAa,4BAAA,CAAA;AAAA,cACSI,MAAiB,iBAAA,CAAA,iBAAvCC,YAAoI,aAAA,EAAA;AAAA;gBAA1F,oBAAsB,EAAA,kBAAA;AAAA,gBAAqB,eAAe,EAAA,aAAA;AAAA;cACpGL,mBAAW,gBAAA,CAAA;AAAA,cACEI,KAAS,CAAA,SAAA,gBAAtB,EAAAC,WAAA;AAAA,gBAA0E,KAAA;AAAA,gBAAA;AAAA;yBAA9C,EAAA,UAAA;AAAA,kBAAJ,GAAI,EAAA,QAAA;AAAA,kBAAY,YAAc,EAAA,UAAA;AAAA;;;;;cACtDL,mBAAa,4BAAA,CAAA;AAAA,eACEO,IAAS,CAAA,SAAA,iBAAxBR,mBAES,QAAA,EAAA;AAAA;gBAFiB,KAAM,EAAA,qBAAA;AAAA,gBAAuB,QAAA,GAAWI,IAAU,CAAA,UAAA,CAAC,MAAW,IAAA,CAAA,SAAA,KAAS,CAAA,MAAA;AAAA,gBAAS,OAAO,EAAA,UAAA;AAAA;gBAChHD,kBAA4C,CAAA,KAAA,EAAA,EAAvC,KAAA,EAAM,4BAA0B,CAAA;AAAA,iDAItC,EAAAH,kBAAA;AAAA,gBAESU,QAAA;AAAA,gBAAA,EAAA,KAAA,CAAA,EAAA;AAAA,gBAAA;AAAA,kBAHTT,mBAAa,4BAAA,CAAA;AAAA,kBACbE,mBAES,QAAA,EAAA;AAAA,oBAFM,KAAM,EAAA,qBAAA;AAAA,oBAAuB,OAAO,EAAA,UAAA;AAAA;oBAClDA,kBAA4C,CAAA,KAAA,EAAA,EAAvC,KAAA,EAAM,4BAA0B,CAAA;AAAA;;;;;;;;;;QAIxCD,YAA2F,SAAA,EAAA;AAAA,UAA/E,oBAAkB,cAAc,CAAA,KAAA;AAAA,UAAG,yBAAkB,KAAA,cAAA,CAAc,KAAA,GAAA,KAAA;AAAA;;;;;;;;"}
|
|
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<!-- :file-progress=\"fileProgress\" -->\n\t\t<FileContent :file-list=\"fileList\" :has-colse=\"true\" type=\"ChatInput\" @colse=\"handleColse\" />\n\t\t<div class=\"touchchat-edit-input\">\n\t\t\t<textarea :value=\"inputValue\" :placeholder=\"placeholder ?? '请输入...'\" @paste=\"handlePaste\" @input=\"handleInputChange\" @keyup.enter=\"handleSend\"> </textarea>\n\t\t</div>\n\n\t\t<!-- 按钮与开关容器 -->\n\t\t<div :class=\"thinkAble ? 'touchchat-edit-submit is-thinkable' : 'touchchat-edit-submit'\">\n\t\t\t<div class=\"touchchat-edit-submit-left\">\n\t\t\t\t<!-- 附件 @click=\"showMarkLaryer = true\" @progress-fn=\"progressFn\" -->\n\t\t\t\t<upload-view v-if=\"uploadAble\" ref=\"uploadViewRef\" :file-list=\"fileList\" @upload-file=\"uploadFile\">\n\t\t\t\t\t<button v-if=\"uploadAble\" class=\"touchchat-edit-attach\" :class=\"{ 'is-dis': isChating }\">\n\t\t\t\t\t\t<div class=\"touchchat-edit-attach-icon\"></div>\n\t\t\t\t\t\t<div class=\"touchchat-edit-attach-tip\">\n\t\t\t\t\t\t\t<p>文件数量:最多10个</p>\n\t\t\t\t\t\t\t<p>文件类型:pdf,txt,csv,docx,xlsx,xls,pptx,ppt,md,mobi,epub,png,jpeg,jpg</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</button>\n\t\t\t\t</upload-view>\n\n\t\t\t\t<ModuleSelect v-if=\"finallyModules.length > 1\" v-model=\"selectVal\" :modules=\"finallyModules\" />\n\n\t\t\t\t<!-- 深度思考开关 - 修改为按钮样式 -->\n\t\t\t\t<button v-if=\"thinkAble\" 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<screenshot v-if=\"screenAble\" @up-file-list=\"upFileList\"></screenshot>\n\t\t\t\t<!-- 实时语音 -->\n\t\t\t\t<realtime-voice v-if=\"realtimeVoiceAble\" @start-realtime-voice=\"startRealtimeVoice\" @transcription=\"transcription\"></realtime-voice>\n\t\t\t\t<!-- 语音 -->\n\t\t\t\t<voice v-if=\"voiceAble\" ref=\"voiceRef\" @up-file-list=\"upFileList\"></voice>\n\t\t\t\t<!-- 发送按钮 -->\n\t\t\t\t<button v-if=\"!isChating\" class=\"touchchat-edit-send\" :disabled=\"!inputValue.trim() && !fileList.length\" @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\t<MarkLayer :show-mark-laryer=\"showMarkLaryer\" @colse-mark-layer=\"showMarkLaryer = false\" />\n\t</div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, inject, provide, nextTick, computed, watch, onMounted } from 'vue'\nimport MarkLayer from '../../component/MarkLayer.vue'\nimport FileContent from '../../component/FileContent.vue'\nimport UploadView from '../../component/UploadView.vue'\nimport Screenshot from '../../component/Screenshot.vue'\nimport Voice from '../../component/VoiceView.vue'\nimport RealtimeVoice from '../../component/RealtimeVoice.vue'\nimport ModuleSelect from '../../component/ModuleSelect.vue'\nimport { showToast } from '../../utils/tools'\n\ninterface FileItem {\n\tfile: File\n\tisUploading: boolean\n\tuploadProgress: number\n\tuploadSuccess: boolean\n\tuploadError: boolean\n\tfileSize: string\n\tfileType: string\n\tname: string\n\tid: string\n\tbase64: string | null\n}\n\n// 定义 body 返回值的类型\ninterface BodyConfig {\n\tmodel: string\n\tmessages: Array<{\n\t\trole: string\n\t\tcontent: string\n\t}>\n\tstream: boolean\n}\n\n// 定义 respoKey 返回值的类型\ninterface RespoKeyConfig {\n\tcategory: string\n\tcontentCategory: string\n\tcontent: string\n\tall: string\n\tallCategory: string\n}\n\ninterface ModuleItem {\n\tname: string\n\tconfig: {\n\t\taction: string\n\t\theaders: () => object\n\t\tbody: () => BodyConfig // 修改为具体类型\n\t\trespoKey: () => RespoKeyConfig // 修改为具体类型\n\t}\n}\n\nconst props = defineProps<{\n\tinputValue: string\n\tisChating: boolean\n\tenableDeepThinking: boolean\n}>()\n\nconst placeholder = inject('placeholder', '请输入...')\nconst layout = inject<string>('layout', 'side, think, upload, chain, screen,realtime')\nconst modules = inject<(string | ModuleItem)[]>('modules', [])\nprovide('uploadFile', (index: number, type?: string) => {\n\tif (uploadViewRef.value) {\n\t\tuploadViewRef.value.uploadFile(index, type)\n\t}\n})\nconst thinkAble = layout.includes('think')\nconst uploadAble = layout.includes('upload')\nconst screenAble = layout.includes('screen')\nconst voiceAble = layout.includes('voice')\nconst realtimeVoiceAble = layout.includes('realtime')\nconst showMarkLaryer = ref<boolean>(false)\nconst fileList = ref<FileItem[]>([])\n// const fileData = ref<FileItem[]>([])\nconst optionalModules = ref<ModuleItem[]>([\n\t{\n\t\tname: 'deepseek-v3',\n\t\tconfig: {\n\t\t\taction: 'https://api.apiyi.com/v1/chat/completions',\n\t\t\theaders: () => ({\n\t\t\t\t'Content-Type': 'application/json',\n\t\t\t\tAuthorization: 'Bearer sk-fe9MtODvds8wpzz05f3417Fe3e9641C1926e6fC588425dEd'\n\t\t\t}),\n\t\t\tbody: () => ({\n\t\t\t\tmodel: 'deepseek-v3',\n\t\t\t\tmessages: [\n\t\t\t\t\t{\n\t\t\t\t\t\trole: 'user',\n\t\t\t\t\t\tcontent: props.inputValue // 使用传入的用户内容参数\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tstream: true\n\t\t\t}),\n\t\t\trespoKey: () => ({\n\t\t\t\tcategory: 'category',\n\t\t\t\tcontentCategory: 'task_stream_content',\n\t\t\t\tcontent: 'content',\n\t\t\t\tall: 'message',\n\t\t\t\tallCategory: 'answer'\n\t\t\t})\n\t\t}\n\t}\n])\nconst uploadViewRef = ref<InstanceType<typeof UploadView>>()\nconst selectVal = ref('')\nconst selectInfo = ref<ModuleItem>()\nconst voiceRef = ref<InstanceType<typeof Voice>>()\n// const scripts = inject<any[]>('scripts', [])\n\nconst emits = defineEmits<{\n\t(e: 'send', list: FileItem[]): void\n\t(e: 'stop'): void\n\t(e: 'update:enableDeepThinking', value: boolean): void\n\t(e: 'update:inputValue', value: string): void // 添加inputValue更新事件\n\t(e: 'moduleInfo', info: ModuleItem): void\n}>()\n\nwatch(\n\t() => selectVal.value,\n\t() => {\n\t\tif (finallyModules.value.length > 0) {\n\t\t\tselectInfo.value = finallyModules.value.find((item: any) => item.name === selectVal.value)\n\t\t\tif (selectInfo.value) {\n\t\t\t\temits('moduleInfo', selectInfo.value)\n\t\t\t}\n\t\t}\n\t},\n\t{ deep: true }\n)\n\nwatch(\n\t() => props.enableDeepThinking,\n\t() => {\n\t\tupdateSelectInfo()\n\t},\n\t{ deep: true }\n)\n\nwatch(\n\t() => props.inputValue,\n\t() => {\n\t\tupdateSelectInfo()\n\t},\n\t{ deep: true }\n)\n\nconst finallyModules = computed(() => {\n\tif (!modules.length) {\n\t\treturn optionalModules.value\n\t}\n\treturn modules.flatMap((module: any) => {\n\t\tif (typeof module === 'string') {\n\t\t\t// 若 module 是字符串,在 optionalModules 中查找 name 匹配的项\n\t\t\tconst matchedModule = optionalModules.value.find((optModule: any) => optModule.name === module)\n\t\t\tif (matchedModule) {\n\t\t\t\t// 对匹配到的模块也更新 content 值\n\t\t\t\tconst updatedModule = { ...matchedModule }\n\t\t\t\tconst body = updatedModule.config.body()\n\t\t\t\tif (body.messages && body.messages.length > 0 && body.messages[0].content) {\n\t\t\t\t\tbody.messages[0].content = props.inputValue\n\t\t\t\t} else {\n\t\t\t\t\tbody.messages = [{ role: 'user', content: props.inputValue }]\n\t\t\t\t}\n\t\t\t\t// console.log(body,'ChatInput.vue === 196',props.inputValue)\n\t\t\t\t// body.messages[0].content = props.inputValue\n\t\t\t\tif (thinkAble) {\n\t\t\t\t\tbody.model = props.enableDeepThinking ? 'deepseek-reasoner' : 'deepseek-v3'\n\t\t\t\t}\n\t\t\t\tupdatedModule.config.body = () => body\n\t\t\t\treturn [updatedModule]\n\t\t\t}\n\t\t\treturn []\n\t\t} else {\n\t\t\tconst body = module.config.body()\n\t\t\tif (body.messages && body.messages.length > 0 && body.messages[0].content) {\n\t\t\t\tbody.messages[0].content = props.inputValue\n\t\t\t}\n\t\t\t// body.messages[0].content = props.inputValue\n\t\t\tif (thinkAble) {\n\t\t\t\tbody.model = props.enableDeepThinking ? 'deepseek-reasoner' : 'deepseek-v3'\n\t\t\t}\n\t\t\t// 重新定义 body 方法,返回更新后的 body\n\t\t\tmodule.config.body = () => body\n\t\t\treturn [module]\n\t\t}\n\t})\n})\n\nconst updateSelectInfo = () => {\n\tif (finallyModules.value.length > 0 && selectInfo.value) {\n\t\tconst body = selectInfo.value.config.body()\n\t\tif (thinkAble && body.model) {\n\t\t\tbody.model = props.enableDeepThinking ? 'deepseek-reasoner' : 'deepseek-v3'\n\t\t}\n\t\tif (body.messages && body.messages.length > 0 && body.messages[0].content) {\n\t\t\tbody.messages[0].content = props.inputValue\n\t\t} else {\n\t\t\tbody.messages = [{ role: 'user', content: props.inputValue }]\n\t\t}\n\t\tselectInfo.value.config.body = () => body\n\t}\n}\n\nconst upFileList = (list: FileItem[]) => {\n\tfileList.value.push(...list)\n\tnextTick(() => {\n\t\tif (uploadViewRef.value) {\n\t\t\t// 只对最新复制的图片进行加载\n\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t}\n\t})\n}\n\nconst handlePaste = (event: any, type?: string) => {\n\t// event.preventDefault();\n\tif (event.clipboardData) {\n\t\tconst clipboardData = event.clipboardData || window.Clipboard\n\t\tconst items = clipboardData.items\n\n\t\tlet isImage = false\n\t\tfor (let i = 0; i < items.length; i++) {\n\t\t\tif (items[i].type.indexOf('image/') !== -1) {\n\t\t\t\tisImage = true\n\t\t\t\t// 获取图片文件\n\t\t\t\tconst blob = items[i].getAsFile()\n\t\t\t\tif (blob) {\n\t\t\t\t\tconst reader = new FileReader()\n\t\t\t\t\treader.onload = e => {\n\t\t\t\t\t\tconst base64 = e.target?.result as string\n\t\t\t\t\t\t// 生成图片属性对象\n\t\t\t\t\t\tconst imageInfo = {\n\t\t\t\t\t\t\tfile: blob,\n\t\t\t\t\t\t\tisUploading: false,\n\t\t\t\t\t\t\tuploadProgress: 0,\n\t\t\t\t\t\t\tuploadSuccess: false,\n\t\t\t\t\t\t\tuploadError: false,\n\t\t\t\t\t\t\tfileSize: `${(blob.size / 1024).toFixed(2)} KB`,\n\t\t\t\t\t\t\tfileType: blob.type,\n\t\t\t\t\t\t\tname: `pasted_image_${Date.now()}`,\n\t\t\t\t\t\t\tid: Date.now().toString(),\n\t\t\t\t\t\t\tbase64\n\t\t\t\t\t\t}\n\t\t\t\t\t\tfileList.value.push(imageInfo)\n\t\t\t\t\t\tnextTick(() => {\n\t\t\t\t\t\t\tif (uploadViewRef.value) {\n\t\t\t\t\t\t\t\t// 只对最新复制的图片进行加载\n\t\t\t\t\t\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\treader.readAsDataURL(blob)\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\n\t\tif (isImage) {\n\t\t\tconsole.log('检测到粘贴的是图片')\n\t\t} else {\n\t\t\tconsole.log('粘贴的不是图片')\n\t\t}\n\t} else {\n\t\tif (type === 'copy') {\n\t\t\tfileList.value = event\n\t\t\tnextTick(() => {\n\t\t\t\tif (uploadViewRef.value) {\n\t\t\t\t\t// 只对最新复制的图片进行加载\n\t\t\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn\n\t\t}\n\t\tfileList.value.push(...event)\n\t\tnextTick(() => {\n\t\t\tif (uploadViewRef.value) {\n\t\t\t\t// 只对最新复制的图片进行加载\n\t\t\t\tuploadViewRef.value.uploadFile(fileList.value.length - 1)\n\t\t\t}\n\t\t})\n\t}\n}\n\nconst openMarkLayer = () => {\n\tshowMarkLaryer.value = true\n}\n\nconst colseMarkLayer = () => {\n\tshowMarkLaryer.value = false\n}\n\nconst handleColse = (id: string) => {\n\tconst index = fileList.value.findIndex((item: any) => item.id === id)\n\tif (index !== -1) {\n\t\tfileList.value.splice(index, 1)\n\t}\n}\n\nconst startRealtimeVoice = () => {\n\tif (voiceRef.value) {\n\t\tvoiceRef.value.toggleRecording(true)\n\t}\n}\n\nconst transcription = (text: string) => {\n\temits('update:inputValue', text)\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\t// enableDeepThinking.value ? 'deepseek-reasoner' : 'deepseek-v3'\n\temits('update:enableDeepThinking', !props.enableDeepThinking)\n}\n\nconst uploadFile = (file: FileItem[]) => {\n\tif (file.length > 0) {\n\t\tfileList.value = file\n\t}\n}\n\nconst handleSend = () => {\n\t// if (!scripts.length && fileList.value.length > 0) {\n\t// \tshowToast('暂不支持文件发送')\n\t// \treturn\n\t// }\n\tlet uploadError = false\n\tif (fileList.value.length > 0) {\n\t\tfileList.value.forEach((item: any) => {\n\t\t\tif (item.uploadError) {\n\t\t\t\tuploadError = true\n\t\t\t}\n\t\t})\n\t}\n\tif (uploadError) {\n\t\tshowToast('上传失败,请重试')\n\t\treturn\n\t}\n\tif (fileList.value.length > 10) {\n\t\tshowToast('文件数量不能超过10个')\n\t\treturn\n\t}\n\temits('send', fileList.value)\n\tnextTick(() => {\n\t\tfileList.value = []\n\t\tif (uploadViewRef.value) {\n\t\t\tuploadViewRef.value.resetFile()\n\t\t}\n\t\tif (voiceRef.value) {\n\t\t\tvoiceRef.value.resetFile()\n\t\t}\n\t})\n}\n\nconst itemUploadFile = (index: number, type: string) => {\n\tif (uploadViewRef.value) {\n\t\tuploadViewRef.value.uploadFile(index, type)\n\t}\n}\nconst handleStop = () => emits('stop')\nonMounted(() => {\n\tif (finallyModules.value.length > 0) {\n\t\tselectVal.value = finallyModules.value[0].name\n\t\tselectInfo.value = finallyModules.value[0]\n\t\tif (selectInfo.value) {\n\t\t\temits('moduleInfo', selectInfo.value)\n\t\t}\n\t}\n})\ndefineExpose({\n\thandlePaste,\n\topenMarkLayer,\n\tcolseMarkLayer,\n\titemUploadFile\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_createVNode","_createElementVNode","inputValue","_unref","_createBlock","_normalizeClass","isChating","enableDeepThinking","_Fragment"],"mappings":"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"}
|