@touchvue/chat 1.0.0-beta.11 → 1.0.0-beta.13

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.
@@ -1,5 +1,5 @@
1
1
  var name = "@touchvue/chat";
2
- var version = "1.0.0-beta.11";
2
+ var version = "1.0.0-beta.13";
3
3
  var description = "TouchVue UI Component Library";
4
4
  var main = "lib/index.js";
5
5
  var module = "es/index.mjs";
@@ -1,5 +1,4 @@
1
1
  import { defineComponent, ref, computed, watch, openBlock, createElementBlock, createElementVNode, createCommentVNode, toDisplayString } from 'vue';
2
- import _imports_0 from '../img/link.png.mjs';
3
2
 
4
3
  var _sfc_main = /* @__PURE__ */ defineComponent({
5
4
  __name: "ImageFile",
@@ -25,12 +24,13 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
25
24
  }
26
25
  });
27
26
  return (_ctx, _cache) => {
27
+ var _a;
28
28
  return openBlock(), createElementBlock("div", { class: "image-file" }, [
29
29
  createElementVNode("div", { class: "image-file-content" }, [
30
30
  createElementVNode("img", {
31
- src: _imports_0,
31
+ src: (_a = _ctx.item.base64) != null ? _a : "../img/link.png",
32
32
  alt: "\u56FE\u7247"
33
- }),
33
+ }, null, 8, ["src"]),
34
34
  !(showLoading.value || showError.value) && _ctx.hasColse ? (openBlock(), createElementBlock("div", {
35
35
  key: 0,
36
36
  class: "image-file-colse",
@@ -1 +1 @@
1
- {"version":3,"file":"ImageFile.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/ImageFile.vue"],"sourcesContent":["<template>\n\t<div class=\"image-file\">\n\t\t<div class=\"image-file-content\">\n\t\t\t<img src=\"../img/link.png\" alt=\"图片\" />\n\t\t\t<div v-if=\"!(showLoading || showError) && hasColse\" class=\"image-file-colse\" @click=\"emits('colse', item.id)\">\n\t\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\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\t</svg>\n\t\t\t</div>\n\t\t\t<div v-if=\"showLoading\" class=\"img-file-loading\">\n\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"25\" viewBox=\"0 0 24 25\" fill=\"none\">\n\t\t\t\t\t<g clip-path=\"url(#paint0_angular_2715_440_clip_path)\" data-figma-skip-parse=\"true\">\n\t\t\t\t\t\t<g transform=\"matrix(0.0100142 0.00182077 -0.00182077 0.0100142 12 12.8423)\">\n\t\t\t\t\t\t\t<foreignObject x=\"-1427.97\" y=\"-1427.97\" width=\"2855.94\" height=\"2855.94\">\n\t\t\t\t\t\t\t\t<div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"background: conic-gradient(from 90deg, rgba(255, 255, 255, 1) 0deg, rgba(255, 255, 255, 0) 84.375deg, rgba(255, 255, 255, 1) 360deg); height: 100%; width: 100%; opacity: 1\"></div>\n\t\t\t\t\t\t\t</foreignObject>\n\t\t\t\t\t\t</g>\n\t\t\t\t\t</g>\n\t\t\t\t\t<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 5.54499C7.96981 5.54499 4.7027 8.8121 4.7027 12.8423C4.7027 16.8725 7.96981 20.1396 12 20.1396C12.7463 20.1396 13.3514 20.7446 13.3514 21.4909C13.3514 22.2373 12.7463 22.8423 12 22.8423C6.47715 22.8423 2 18.3651 2 12.8423C2 7.31944 6.47715 2.84229 12 2.84229C17.5228 2.84229 22 7.31944 22 12.8423C22 13.5886 21.395 14.1936 20.6486 14.1936C19.9023 14.1936 19.2973 13.5886 19.2973 12.8423C19.2973 8.8121 16.0302 5.54499 12 5.54499Z\" data-figma-gradient-fill='{\"type\":\"GRADIENT_ANGULAR\",\"stops\":[{\"color\":{\"r\":1.0,\"g\":1.0,\"b\":1.0,\"a\":0.0},\"position\":0.2343750},{\"color\":{\"r\":1.0,\"g\":1.0,\"b\":1.0,\"a\":1.0},\"position\":1.0}],\"stopsVar\":[],\"transform\":{\"m00\":20.028446197509766,\"m01\":-3.6415407657623291,\"m02\":3.8065481185913086,\"m10\":3.6415374279022217,\"m11\":20.028463363647461,\"m12\":1.0072842836380005},\"opacity\":1.0,\"blendMode\":\"NORMAL\",\"visible\":true}' />\n\t\t\t\t\t<defs>\n\t\t\t\t\t\t<clipPath id=\"paint0_angular_2715_440_clip_path\">\n\t\t\t\t\t\t\t<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 5.54499C7.96981 5.54499 4.7027 8.8121 4.7027 12.8423C4.7027 16.8725 7.96981 20.1396 12 20.1396C12.7463 20.1396 13.3514 20.7446 13.3514 21.4909C13.3514 22.2373 12.7463 22.8423 12 22.8423C6.47715 22.8423 2 18.3651 2 12.8423C2 7.31944 6.47715 2.84229 12 2.84229C17.5228 2.84229 22 7.31944 22 12.8423C22 13.5886 21.395 14.1936 20.6486 14.1936C19.9023 14.1936 19.2973 13.5886 19.2973 12.8423C19.2973 8.8121 16.0302 5.54499 12 5.54499Z\" />\n\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t</defs>\n\t\t\t\t</svg>\n\t\t\t\t<p class=\"img-file-title\">{{ progress }}%</p>\n\t\t\t</div>\n\t\t\t<div v-if=\"showError\" class=\"img-file-loading\">\n\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"13\" viewBox=\"0 0 14 13\" fill=\"none\">\n\t\t\t\t\t<path d=\"M10.8891 10.7314C9.89379 11.7267 8.51879 12.3423 7 12.3423C3.96244 12.3423 1.5 9.87984 1.5 6.84229C1.5 3.80473 3.96244 1.34229 7 1.34229C8.51879 1.34229 9.89379 1.95789 10.8891 2.9532C11.3957 3.45982 12.5 4.7034 12.5 4.7034\" stroke=\"#F93920\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n\t\t\t\t\t<path d=\"M12.5 1.95374V4.70374H9.75\" stroke=\"#F93920\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n\t\t\t\t</svg>\n\t\t\t\t<p class=\"img-file-error\">错误</p>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n<script setup lang=\"ts\">\nimport { ref, watch, defineProps, computed, defineEmits } from 'vue'\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\thasColse: boolean\n}>()\nconst emits = defineEmits(['colse'])\nconst showLoading = ref(false)\nconst showError = ref(false)\nconst progress = computed(() => {\n\treturn props.item.uploadProgress ?? 0\n})\n\nwatch(progress, newVal => {\n\tif (newVal === 100 || newVal === 0) {\n\t\tshowLoading.value = false\n\t} else {\n\t\tshowLoading.value = true\n\t}\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode","hasColse","item","_toDisplayString"],"mappings":";;;;;;;;;;;AAuCA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAcd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AACd,IAAM,MAAA,WAAA,GAAc,IAAI,KAAK,CAAA,CAAA;AAC7B,IAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;;AAC/B,MAAO,OAAA,CAAA,EAAA,GAAA,KAAA,CAAM,IAAK,CAAA,cAAA,KAAX,IAA6B,GAAA,EAAA,GAAA,CAAA,CAAA;AAAA,KACpC,CAAA,CAAA;AAED,IAAA,KAAA,CAAM,UAAU,CAAU,MAAA,KAAA;AACzB,MAAI,IAAA,MAAA,KAAW,GAAO,IAAA,MAAA,KAAW,CAAG,EAAA;AACnC,QAAA,WAAA,CAAY,KAAQ,GAAA,KAAA,CAAA;AAAA,OACd,MAAA;AACN,QAAA,WAAA,CAAY,KAAQ,GAAA,IAAA,CAAA;AAAA,OACrB;AAAA,KACA,CAAA,CAAA;;wBAjEA,EAAAA,kBAAA,CAkCM,OAAA,EAlCD,KAAA,EAAM,cAAY,EAAA;AAAA,QACtBC,kBAgCM,CAAA,KAAA,EAAA,EAhCD,KAAA,EAAM,sBAAoB,EAAA;AAAA,UAC9BA,mBAAsC,KAAA,EAAA;AAAA,YAAjC,GAAA,EAAA,UAAA;AAAA,YAAsB,GAAI,EAAA,cAAA;AAAA;YAClB,WAAW,CAAA,KAAA,IAAI,SAAS,CAAA,KAAA,CAAA,IAAKC,KAAQ,uBAAlD,EAAAF,kBAAA,CAIM,KAAA,EAAA;AAAA;YAJ8C,KAAM,EAAA,kBAAA;AAAA,YAAoB,SAAO,CAAA,MAAA,KAAA,MAAeG,OAAAA,EAAAA,IAAAA,CAAAA,KAAK,EAAE,CAAA;AAAA;wBAC1G,EAAAH,kBAAA,CAEM,KAAA,EAAA;AAAA,cAFD,KAAM,EAAA,4BAAA;AAAA,cAA6B,KAAM,EAAA,GAAA;AAAA,cAAI,MAAO,EAAA,GAAA;AAAA,cAAI,OAAQ,EAAA,SAAA;AAAA,cAAU,IAAK,EAAA,MAAA;AAAA;cACnFC,mBAAmP,MAAA,EAAA;AAAA,gBAA7O,CAAE,EAAA,2NAAA;AAAA,gBAA4N,IAAK,EAAA,OAAA;AAAA;;;UAGhO,WAAW,CAAA,KAAA,iBAAtBD,mBAiBM,KAAA,EAAA;AAAA;YAjBkB,KAAM,EAAA,kBAAA;AAAA;wBAC7B,EAAAA,kBAAA,CAcM,KAAA,EAAA;AAAA,cAdD,KAAM,EAAA,4BAAA;AAAA,cAA6B,KAAM,EAAA,IAAA;AAAA,cAAK,MAAO,EAAA,IAAA;AAAA,cAAK,OAAQ,EAAA,WAAA;AAAA,cAAY,IAAK,EAAA,MAAA;AAAA;cACvFC,mBAMI,GAAA,EAAA;AAAA,gBAND,WAAU,EAAA,yCAAA;AAAA,gBAA0C,uBAAsB,EAAA,MAAA;AAAA;gBAC5EA,kBAII,CAAA,GAAA,EAAA,EAJD,SAAA,EAAU,iEAA+D,EAAA;AAAA,8BAC3E,EAAAD,kBAAA,CAEgB,eAAA,EAAA;AAAA,oBAFD,CAAE,EAAA,UAAA;AAAA,oBAAW,CAAE,EAAA,UAAA;AAAA,oBAAW,KAAM,EAAA,SAAA;AAAA,oBAAU,MAAO,EAAA,SAAA;AAAA;oBAC/DC,mBAAoO,KAAA,EAAA;AAAA,sBAA/N,KAAM,EAAA,8BAAA;AAAA,sBAA+B,KAAA,EAAA,EAAmL,YAAA,EAAA,0HAAA,EAAA,UAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,GAAA,EAAA;AAAA;;;;cAIhOA,mBAAw4B,MAAA,EAAA;AAAA,gBAAl4B,WAAU,EAAA,SAAA;AAAA,gBAAU,WAAU,EAAA,SAAA;AAAA,gBAAU,CAAE,EAAA,mbAAA;AAAA,gBAAob,0BAAyB,EAAA,wYAAA;AAAA;cAC7fA,kBAAA,CAIO,QAAA,IAAA,EAAA;AAAA,gBAHNA,kBAEW,CAAA,UAAA,EAAA,EAFD,EAAA,EAAG,qCAAmC,EAAA;AAAA,kBAC/CA,mBAAse,MAAA,EAAA;AAAA,oBAAhe,WAAU,EAAA,SAAA;AAAA,oBAAU,WAAU,EAAA,SAAA;AAAA,oBAAU,CAAE,EAAA,mbAAA;AAAA;;;;YAInDA,kBAAA;AAAA,cAA6C,GAAA;AAAA,gBAA1C,OAAM,gBAAoB,EAAA;AAAA,cAAAG,eAAA,CAAA,QAAA,CAAA,KAAQ,CAAG,GAAA,GAAA;AAAA,cAAC,CAAA;AAAA;AAAA,aAAA;AAAA;UAE/B,SAAS,CAAA,KAAA,iBAApBJ,mBAMM,KAAA,EAAA;AAAA;YANgB,KAAM,EAAA,kBAAA;AAAA;wBAC3B,EAAAA,kBAAA,CAGM,KAAA,EAAA;AAAA,cAHD,KAAM,EAAA,4BAAA;AAAA,cAA6B,KAAM,EAAA,IAAA;AAAA,cAAK,MAAO,EAAA,IAAA;AAAA,cAAK,OAAQ,EAAA,WAAA;AAAA,cAAY,IAAK,EAAA,MAAA;AAAA;cACvFC,mBAA+T,MAAA,EAAA;AAAA,gBAAzT,CAAE,EAAA,iOAAA;AAAA,gBAAkO,MAAO,EAAA,SAAA;AAAA,gBAAU,cAAa,EAAA,KAAA;AAAA,gBAAM,gBAAe,EAAA,OAAA;AAAA,gBAAQ,iBAAgB,EAAA,OAAA;AAAA;cACrTA,mBAA0H,MAAA,EAAA;AAAA,gBAApH,CAAE,EAAA,4BAAA;AAAA,gBAA6B,MAAO,EAAA,SAAA;AAAA,gBAAU,cAAa,EAAA,KAAA;AAAA,gBAAM,gBAAe,EAAA,OAAA;AAAA,gBAAQ,iBAAgB,EAAA,OAAA;AAAA;;YAEjHA,mBAAgC,GAA7B,EAAA,EAAA,KAAM,EAAA,gBAAA,IAAiB,cAAE,CAAA;AAAA;;;;;;;;;"}
1
+ {"version":3,"file":"ImageFile.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/ImageFile.vue"],"sourcesContent":["<template>\n\t<div class=\"image-file\">\n\t\t<div class=\"image-file-content\">\n\t\t\t<img :src=\"item.base64 ?? '../img/link.png'\" alt=\"图片\" />\n\t\t\t<div v-if=\"!(showLoading || showError) && hasColse\" class=\"image-file-colse\" @click=\"emits('colse', item.id)\">\n\t\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\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\t</svg>\n\t\t\t</div>\n\t\t\t<div v-if=\"showLoading\" class=\"img-file-loading\">\n\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"25\" viewBox=\"0 0 24 25\" fill=\"none\">\n\t\t\t\t\t<g clip-path=\"url(#paint0_angular_2715_440_clip_path)\" data-figma-skip-parse=\"true\">\n\t\t\t\t\t\t<g transform=\"matrix(0.0100142 0.00182077 -0.00182077 0.0100142 12 12.8423)\">\n\t\t\t\t\t\t\t<foreignObject x=\"-1427.97\" y=\"-1427.97\" width=\"2855.94\" height=\"2855.94\">\n\t\t\t\t\t\t\t\t<div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"background: conic-gradient(from 90deg, rgba(255, 255, 255, 1) 0deg, rgba(255, 255, 255, 0) 84.375deg, rgba(255, 255, 255, 1) 360deg); height: 100%; width: 100%; opacity: 1\"></div>\n\t\t\t\t\t\t\t</foreignObject>\n\t\t\t\t\t\t</g>\n\t\t\t\t\t</g>\n\t\t\t\t\t<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 5.54499C7.96981 5.54499 4.7027 8.8121 4.7027 12.8423C4.7027 16.8725 7.96981 20.1396 12 20.1396C12.7463 20.1396 13.3514 20.7446 13.3514 21.4909C13.3514 22.2373 12.7463 22.8423 12 22.8423C6.47715 22.8423 2 18.3651 2 12.8423C2 7.31944 6.47715 2.84229 12 2.84229C17.5228 2.84229 22 7.31944 22 12.8423C22 13.5886 21.395 14.1936 20.6486 14.1936C19.9023 14.1936 19.2973 13.5886 19.2973 12.8423C19.2973 8.8121 16.0302 5.54499 12 5.54499Z\" data-figma-gradient-fill='{\"type\":\"GRADIENT_ANGULAR\",\"stops\":[{\"color\":{\"r\":1.0,\"g\":1.0,\"b\":1.0,\"a\":0.0},\"position\":0.2343750},{\"color\":{\"r\":1.0,\"g\":1.0,\"b\":1.0,\"a\":1.0},\"position\":1.0}],\"stopsVar\":[],\"transform\":{\"m00\":20.028446197509766,\"m01\":-3.6415407657623291,\"m02\":3.8065481185913086,\"m10\":3.6415374279022217,\"m11\":20.028463363647461,\"m12\":1.0072842836380005},\"opacity\":1.0,\"blendMode\":\"NORMAL\",\"visible\":true}' />\n\t\t\t\t\t<defs>\n\t\t\t\t\t\t<clipPath id=\"paint0_angular_2715_440_clip_path\">\n\t\t\t\t\t\t\t<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 5.54499C7.96981 5.54499 4.7027 8.8121 4.7027 12.8423C4.7027 16.8725 7.96981 20.1396 12 20.1396C12.7463 20.1396 13.3514 20.7446 13.3514 21.4909C13.3514 22.2373 12.7463 22.8423 12 22.8423C6.47715 22.8423 2 18.3651 2 12.8423C2 7.31944 6.47715 2.84229 12 2.84229C17.5228 2.84229 22 7.31944 22 12.8423C22 13.5886 21.395 14.1936 20.6486 14.1936C19.9023 14.1936 19.2973 13.5886 19.2973 12.8423C19.2973 8.8121 16.0302 5.54499 12 5.54499Z\" />\n\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t</defs>\n\t\t\t\t</svg>\n\t\t\t\t<p class=\"img-file-title\">{{ progress }}%</p>\n\t\t\t</div>\n\t\t\t<div v-if=\"showError\" class=\"img-file-loading\">\n\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"13\" viewBox=\"0 0 14 13\" fill=\"none\">\n\t\t\t\t\t<path d=\"M10.8891 10.7314C9.89379 11.7267 8.51879 12.3423 7 12.3423C3.96244 12.3423 1.5 9.87984 1.5 6.84229C1.5 3.80473 3.96244 1.34229 7 1.34229C8.51879 1.34229 9.89379 1.95789 10.8891 2.9532C11.3957 3.45982 12.5 4.7034 12.5 4.7034\" stroke=\"#F93920\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n\t\t\t\t\t<path d=\"M12.5 1.95374V4.70374H9.75\" stroke=\"#F93920\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n\t\t\t\t</svg>\n\t\t\t\t<p class=\"img-file-error\">错误</p>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n<script setup lang=\"ts\">\nimport { ref, watch, defineProps, computed, defineEmits } from 'vue'\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\tbase64?: string\n\t}\n\thasColse: boolean\n}>()\nconst emits = defineEmits(['colse'])\nconst showLoading = ref(false)\nconst showError = ref(false)\nconst progress = computed(() => {\n\treturn props.item.uploadProgress ?? 0\n})\n\nwatch(progress, newVal => {\n\tif (newVal === 100 || newVal === 0) {\n\t\tshowLoading.value = false\n\t} else {\n\t\tshowLoading.value = true\n\t}\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode","item","hasColse","_toDisplayString"],"mappings":"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"}
@@ -17,18 +17,42 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
17
17
  if (input.files && input.files.length > 0) {
18
18
  for (let i = 0; i < input.files.length; i++) {
19
19
  const file = input.files[i];
20
- fileInfos.value.push({
21
- file,
22
- isUploading: false,
23
- uploadProgress: 0,
24
- uploadSuccess: false,
25
- uploadError: false,
26
- fileSize: "",
27
- fileType: file.type,
28
- id: file.lastModified.toString(),
29
- name: file.name
30
- });
31
- uploadFile(fileInfos.value.length - 1);
20
+ if (file.type.startsWith("image/")) {
21
+ const reader = new FileReader();
22
+ reader.onload = (e) => {
23
+ var _a;
24
+ const base64 = (_a = e.target) == null ? void 0 : _a.result;
25
+ fileInfos.value.push({
26
+ file,
27
+ isUploading: false,
28
+ uploadProgress: 0,
29
+ uploadSuccess: false,
30
+ uploadError: false,
31
+ fileSize: "",
32
+ fileType: file.type,
33
+ id: file.lastModified.toString(),
34
+ name: file.name,
35
+ base64
36
+ // 存储 Base64 数据
37
+ });
38
+ uploadFile(fileInfos.value.length - 1);
39
+ };
40
+ reader.readAsDataURL(file);
41
+ } else {
42
+ fileInfos.value.push({
43
+ file,
44
+ isUploading: false,
45
+ uploadProgress: 0,
46
+ uploadSuccess: false,
47
+ uploadError: false,
48
+ fileSize: "",
49
+ fileType: file.type,
50
+ id: file.lastModified.toString(),
51
+ name: file.name,
52
+ base64: null
53
+ });
54
+ uploadFile(fileInfos.value.length - 1);
55
+ }
32
56
  }
33
57
  }
34
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"UploadView.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/UploadView.vue"],"sourcesContent":["<template>\n\t<div class=\"upload-view\">\n\t\t<!-- <button class=\"upload-button\" @click=\"triggerFileInput\">点击选择文件</button> -->\n\t\t<div @click=\"triggerFileInput\">\n\t\t\t<slot></slot>\n\t\t</div>\n\t\t<input ref=\"fileInput\" type=\"file\" class=\"file-input\" style=\"display: none\" multiple @change=\"handleFileChange\" />\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue'\ninterface FileInfo {\n\tfile: File\n\tisUploading: boolean\n\tuploadProgress: number\n\tuploadSuccess: boolean\n\tuploadError: boolean\n\tfileSize: string\n\tfileType: string\n\tid: string\n\tname: string\n}\n\nconst emit = defineEmits<{\n\t// (e: 'progressFn', value: number): void\n\t(e: 'file', value: any): void\n}>()\n\nconst fileInput = ref<HTMLInputElement | null>(null)\nconst fileInfos = ref<FileInfo[]>([])\n\n// 触发文件选择框\nconst triggerFileInput = () => {\n\tif (fileInput.value) {\n\t\tfileInput.value.click()\n\t}\n}\n\n// 处理文件选择\nconst handleFileChange = (event: Event) => {\n\tconst input = event.target as HTMLInputElement\n\tif (input.files && input.files.length > 0) {\n\t\tfor (let i = 0; i < input.files.length; i++) {\n\t\t\tconst file = input.files[i]\n\t\t\t// console.log('file === upload-view === 57', file)\n\t\t\tfileInfos.value.push({\n\t\t\t\tfile,\n\t\t\t\tisUploading: false,\n\t\t\t\tuploadProgress: 0,\n\t\t\t\tuploadSuccess: false,\n\t\t\t\tuploadError: false,\n\t\t\t\tfileSize: '',\n\t\t\t\tfileType: file.type,\n\t\t\t\tid: file.lastModified.toString(),\n\t\t\t\tname: file.name\n\t\t\t})\n\t\t\t// emit('file', fileInfos.value)\n\t\t\tuploadFile(fileInfos.value.length - 1)\n\t\t}\n\t}\n}\n\n// 模拟文件上传\nconst uploadFile = (index: number) => {\n\tconst fileInfo = fileInfos.value[index]\n\tif (!fileInfo) return\n\n\tfileInfo.isUploading = true\n\tfileInfo.uploadSuccess = false\n\tfileInfo.uploadError = false\n\tfileInfo.uploadProgress = 0\n\tfileInfo.fileSize = formatFileSize(fileInfo.file.size)\n\tfileInfo.fileType = fileInfo.file.type\n\tfileInfo.id = fileInfo.file.lastModified.toString()\n\tfileInfo.name = fileInfo.file.name\n\n\tconst interval = setInterval(() => {\n\t\tfileInfo.uploadProgress += 10\n\t\t// emit('progressFn', fileInfo.uploadProgress)\n\t\temit('file', fileInfos.value)\n\t\tif (fileInfo.uploadProgress >= 100) {\n\t\t\tclearInterval(interval)\n\t\t\tfileInfo.isUploading = false\n\t\t\tfileInfo.uploadSuccess = true\n\t\t}\n\t}, 100)\n\n\t// 模拟上传失败的情况,可根据需求修改\n\t// setTimeout(() => {\n\t// clearInterval(interval);\n\t// fileInfo.isUploading = false;\n\t// fileInfo.uploadError = true;\n\t// }, 2000);\n}\n\n// 格式化文件大小\nconst formatFileSize = (bytes: number) => {\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\nconst resetFile = () => {\n\tfileInfos.value = []\n\tif (fileInput.value) {\n\t\tfileInput.value.value = ''\n\t}\n}\ndefineExpose({\n\tresetFile\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_createElementVNode","_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"UploadView.vue2.mjs","sources":["../../../../../../packages/components/touchchat/component/UploadView.vue"],"sourcesContent":["<template>\n\t<div class=\"upload-view\">\n\t\t<!-- <button class=\"upload-button\" @click=\"triggerFileInput\">点击选择文件</button> -->\n\t\t<div @click=\"triggerFileInput\">\n\t\t\t<slot></slot>\n\t\t</div>\n\t\t<input ref=\"fileInput\" type=\"file\" class=\"file-input\" style=\"display: none\" multiple @change=\"handleFileChange\" />\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue'\ninterface FileInfo {\n\tfile: File\n\tisUploading: boolean\n\tuploadProgress: number\n\tuploadSuccess: boolean\n\tuploadError: boolean\n\tfileSize: string\n\tfileType: string\n\tid: string\n\tname: string\n\tbase64: string | null\n}\n\nconst emit = defineEmits<{\n\t// (e: 'progressFn', value: number): void\n\t(e: 'file', value: any): void\n}>()\n\nconst fileInput = ref<HTMLInputElement | null>(null)\nconst fileInfos = ref<FileInfo[]>([])\n\n// 触发文件选择框\nconst triggerFileInput = () => {\n\tif (fileInput.value) {\n\t\tfileInput.value.click()\n\t}\n}\n\n// 处理文件选择\nconst handleFileChange = (event: Event) => {\n\tconst input = event.target as HTMLInputElement\n\tif (input.files && input.files.length > 0) {\n\t\tfor (let i = 0; i < input.files.length; i++) {\n\t\t\tconst file = input.files[i]\n\t\t\tif (file.type.startsWith('image/')) {\n\t\t\t\tconst reader = new FileReader()\n\t\t\t\treader.onload = e => {\n\t\t\t\t\tconst base64 = e.target?.result as string\n\t\t\t\t\tfileInfos.value.push({\n\t\t\t\t\t\tfile,\n\t\t\t\t\t\tisUploading: false,\n\t\t\t\t\t\tuploadProgress: 0,\n\t\t\t\t\t\tuploadSuccess: false,\n\t\t\t\t\t\tuploadError: false,\n\t\t\t\t\t\tfileSize: '',\n\t\t\t\t\t\tfileType: file.type,\n\t\t\t\t\t\tid: file.lastModified.toString(),\n\t\t\t\t\t\tname: file.name,\n\t\t\t\t\t\tbase64 // 存储 Base64 数据\n\t\t\t\t\t})\n\t\t\t\t\tuploadFile(fileInfos.value.length - 1)\n\t\t\t\t}\n\t\t\t\treader.readAsDataURL(file)\n\t\t\t} else {\n\t\t\t\tfileInfos.value.push({\n\t\t\t\t\tfile,\n\t\t\t\t\tisUploading: false,\n\t\t\t\t\tuploadProgress: 0,\n\t\t\t\t\tuploadSuccess: false,\n\t\t\t\t\tuploadError: false,\n\t\t\t\t\tfileSize: '',\n\t\t\t\t\tfileType: file.type,\n\t\t\t\t\tid: file.lastModified.toString(),\n\t\t\t\t\tname: file.name,\n\t\t\t\t\tbase64: null\n\t\t\t\t})\n\t\t\t\tuploadFile(fileInfos.value.length - 1)\n\t\t\t}\n\t\t}\n\t}\n}\n\n// 模拟文件上传\nconst uploadFile = (index: number) => {\n\tconst fileInfo = fileInfos.value[index]\n\tif (!fileInfo) return\n\n\tfileInfo.isUploading = true\n\tfileInfo.uploadSuccess = false\n\tfileInfo.uploadError = false\n\tfileInfo.uploadProgress = 0\n\tfileInfo.fileSize = formatFileSize(fileInfo.file.size)\n\tfileInfo.fileType = fileInfo.file.type\n\tfileInfo.id = fileInfo.file.lastModified.toString()\n\tfileInfo.name = fileInfo.file.name\n\n\tconst interval = setInterval(() => {\n\t\tfileInfo.uploadProgress += 10\n\t\t// emit('progressFn', fileInfo.uploadProgress)\n\t\temit('file', fileInfos.value)\n\t\tif (fileInfo.uploadProgress >= 100) {\n\t\t\tclearInterval(interval)\n\t\t\tfileInfo.isUploading = false\n\t\t\tfileInfo.uploadSuccess = true\n\t\t}\n\t}, 100)\n\n\t// 模拟上传失败的情况,可根据需求修改\n\t// setTimeout(() => {\n\t// clearInterval(interval);\n\t// fileInfo.isUploading = false;\n\t// fileInfo.uploadError = true;\n\t// }, 2000);\n}\n\n// 格式化文件大小\nconst formatFileSize = (bytes: number) => {\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\nconst resetFile = () => {\n\tfileInfos.value = []\n\tif (fileInput.value) {\n\t\tfileInput.value.value = ''\n\t}\n}\ndefineExpose({\n\tresetFile\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_createElementVNode","_renderSlot"],"mappings":"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"}
@@ -122,7 +122,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
122
122
  const aiMessage = item.intro;
123
123
  messageUtils.updateMessage(0, {
124
124
  content: "",
125
- isChating: true
125
+ isChating: false
126
126
  });
127
127
  simulateStreamOutput(0, aiMessage);
128
128
  };
@@ -247,7 +247,15 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
247
247
  break;
248
248
  }
249
249
  if (nextItem.user === "ai") {
250
- responses.push(nextItem);
250
+ if (nextItem.data && nextItem.type) {
251
+ responses.push({
252
+ ...nextItem,
253
+ // 标记需要先流式输出文字,再调用组件
254
+ needSequenceProcessing: true
255
+ });
256
+ } else {
257
+ responses.push(nextItem);
258
+ }
251
259
  }
252
260
  }
253
261
  const nextIndex = matchContent.findIndex((contentItem, index) => index > matchedScriptContentIndex && contentItem.user === "i");
@@ -769,8 +777,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
769
777
  user: "ai",
770
778
  type: "text",
771
779
  content: content2 || "",
780
+ componentName: response.needSequenceProcessing ? "" : response.type || "",
772
781
  // componentName: response.type || '',
773
- componentName: "",
774
782
  isShowLike: true,
775
783
  isShowCopy: true,
776
784
  needSequenceType: response.type || "",