yx-web-sdk 0.0.22 → 0.0.23

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.
Files changed (24) hide show
  1. package/dist/ait-person-popover/index.js +1 -1
  2. package/dist/chat-card/index.js +1 -1
  3. package/dist/chat-content/index.js +1 -1
  4. package/dist/chat-page/index.js +1 -1
  5. package/dist/chat-room/index.js +1 -1
  6. package/dist/common-avatar/index.js +1 -1
  7. package/dist/components/chat-content/index.vue.d.ts +2 -2
  8. package/dist/index/style4.css +1 -0
  9. package/dist/{index-CGhpFXlD.mjs → index-C4E0XZdw.mjs} +1 -1
  10. package/dist/{index-Dwglj7_M.mjs → index-CwFsDdl5.mjs} +1 -1
  11. package/dist/{index-BPnLB3av.mjs → index-DDCNub37.mjs} +1 -1
  12. package/dist/index-entry/index.js +4 -4
  13. package/dist/{index.vue_vue_type_script_setup_true_lang-CD6o8jT4.mjs → index.vue_vue_type_script_setup_true_lang-B4HvNhJp.mjs} +5 -4
  14. package/dist/{index.vue_vue_type_style_index_0_lang-iBkYSdDj.mjs → index.vue_vue_type_style_index_0_lang-BN-dkKAR.mjs} +29 -12
  15. package/dist/{index.vue_vue_type_style_index_0_lang-BJGCxPce.mjs → index.vue_vue_type_style_index_0_lang-CtXuRziq.mjs} +3 -3
  16. package/dist/{index.vue_vue_type_style_index_0_lang-CsNgkPt9.mjs → index.vue_vue_type_style_index_0_lang-DOnNj1Mm.mjs} +3 -2
  17. package/dist/{index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs → index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs} +1 -0
  18. package/dist/members-sidebar/index.js +1 -1
  19. package/dist/server-channel-sidebar/index.js +1 -1
  20. package/dist/stores/channel.d.ts +1 -0
  21. package/dist/style.css +1 -0
  22. package/dist/yx-web-sdk.es.js +32 -12
  23. package/dist/yx-web-sdk.umd.js +32 -12
  24. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { A as AitPersonPopover } from "../index-Dwglj7_M.mjs";
1
+ import { A as AitPersonPopover } from "../index-CwFsDdl5.mjs";
2
2
  export {
3
3
  AitPersonPopover,
4
4
  AitPersonPopover as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-CsNgkPt9.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-DOnNj1Mm.mjs";
2
2
  export {
3
3
  _sfc_main as ChatCard,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-iBkYSdDj.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-BN-dkKAR.mjs";
2
2
  export {
3
3
  _sfc_main as ChatContent,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-BJGCxPce.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-CtXuRziq.mjs";
2
2
  export {
3
3
  _sfc_main as ChatPage,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_script_setup_true_lang-CD6o8jT4.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_script_setup_true_lang-B4HvNhJp.mjs";
2
2
  export {
3
3
  _sfc_main as ChatRoom,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
2
2
  export {
3
3
  _sfc_main as CommonAvatar,
4
4
  _sfc_main as default
@@ -27,14 +27,14 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
27
27
  resendImg: (msg: QChatMessage) => any;
28
28
  resendFile: (msg: QChatMessage) => any;
29
29
  sendText: (text: string, option?: SendMsgOption | undefined) => any;
30
- sendImg: (file: File) => any;
30
+ sendImg: (file: File, option?: SendMsgOption | undefined) => any;
31
31
  sendFile: (file: File) => any;
32
32
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
33
33
  onResendText?: ((msg: QChatMessage) => any) | undefined;
34
34
  onResendImg?: ((msg: QChatMessage) => any) | undefined;
35
35
  onResendFile?: ((msg: QChatMessage) => any) | undefined;
36
36
  onSendText?: ((text: string, option?: SendMsgOption | undefined) => any) | undefined;
37
- onSendImg?: ((file: File) => any) | undefined;
37
+ onSendImg?: ((file: File, option?: SendMsgOption | undefined) => any) | undefined;
38
38
  onSendFile?: ((file: File) => any) | undefined;
39
39
  }>, {
40
40
  topic: string;
@@ -120,6 +120,7 @@
120
120
  background-color: rgba(0, 0, 0, 0.5);
121
121
  z-index: 1;
122
122
  display: none;
123
+ border-radius: 8px;
123
124
  }
124
125
  .yx-chatroomWrapper .chatroomInputAttachmentWrapperImg .chatroomInputAttachmentDeleteBtn {
125
126
  position: absolute;
@@ -1,6 +1,6 @@
1
1
  import { createVNode, defineComponent, ref, computed, watch, onUnmounted, openBlock, createElementBlock, normalizeClass, createElementVNode, unref, Fragment, renderList, withCtx, toDisplayString, createBlock, createCommentVNode, normalizeStyle, withModifiers, createTextVNode } from "vue";
2
2
  import { Form, Tooltip, Badge, Modal, Input, Button, message } from "ant-design-vue";
3
- import { c as useImSdkStore, a as useServerStore, u as useChannelStore, b as useUserStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
3
+ import { c as useImSdkStore, a as useServerStore, u as useChannelStore, b as useUserStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
4
4
  import { I as IconFont } from "./index-L_drmZir.mjs";
5
5
  import { I as Icon } from "./AntdIcon-DdvEPKFJ.mjs";
6
6
  import { C as CloseOutlined } from "./CloseOutlined-BEcmJaCc.mjs";
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, watch, onBeforeUnmount, computed, openBlock, createBlock, Teleport, withDirectives, createElementVNode, normalizeStyle, createElementBlock, withModifiers, normalizeClass, toDisplayString, createCommentVNode, Fragment, renderList, createVNode, vShow } from "vue";
2
2
  import { autoUpdate, computePosition, offset, flip, shift } from "@floating-ui/dom";
3
- import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
3
+ import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
4
4
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
5
5
  const _hoisted_1 = { class: "ait-person-popover-content" };
6
6
  const _hoisted_2 = ["onMousedown"];
@@ -1,6 +1,6 @@
1
1
  import { createVNode, defineComponent, ref, computed, openBlock, createElementBlock, normalizeClass, createElementVNode, createTextVNode, toDisplayString, createCommentVNode, unref, withCtx, createBlock, Fragment, renderList } from "vue";
2
2
  import { Tooltip, Spin } from "ant-design-vue";
3
- import { u as useChannelStore, a as useServerStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
3
+ import { u as useChannelStore, a as useServerStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
4
4
  import { I as IconFont } from "./index-L_drmZir.mjs";
5
5
  import { I as Icon } from "./AntdIcon-DdvEPKFJ.mjs";
6
6
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
@@ -1,10 +1,10 @@
1
1
  import { defineComponent, computed, ref, onMounted, onUnmounted, openBlock, createElementBlock, createVNode, unref, withCtx, createTextVNode, createElementVNode, Fragment, createBlock, createCommentVNode } from "vue";
2
2
  import { useRouter } from "vue-router";
3
3
  import { Spin, Result, Button, Empty, message } from "ant-design-vue";
4
- import { s as setGlobalRequest, c as useImSdkStore, a as useServerStore, u as useChannelStore, b as useUserStore, d as useGlobalStore } from "../index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
5
- import { _ as _sfc_main$1 } from "../index.vue_vue_type_style_index_0_lang-BJGCxPce.mjs";
6
- import { S as ServerChannelSidebar } from "../index-CGhpFXlD.mjs";
7
- import { M as MembersSidebar } from "../index-BPnLB3av.mjs";
4
+ import { s as setGlobalRequest, c as useImSdkStore, a as useServerStore, u as useChannelStore, b as useUserStore, d as useGlobalStore } from "../index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
5
+ import { _ as _sfc_main$1 } from "../index.vue_vue_type_style_index_0_lang-CtXuRziq.mjs";
6
+ import { S as ServerChannelSidebar } from "../index-C4E0XZdw.mjs";
7
+ import { M as MembersSidebar } from "../index-DDCNub37.mjs";
8
8
  import { _ as _export_sfc } from "../_plugin-vue_export-helper-1tPrXgE0.mjs";
9
9
  const _imports_0 = "data:image/png;base64,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";
10
10
  const _hoisted_1 = { class: "qchat-container" };
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, computed, watch, openBlock, createBlock, createElementBlock } from "vue";
2
- import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-iBkYSdDj.mjs";
3
- import { u as useChannelStore, a as useServerStore, b as useUserStore } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
2
+ import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BN-dkKAR.mjs";
3
+ import { u as useChannelStore, a as useServerStore, b as useUserStore } from "./index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
4
4
  const _hoisted_1 = { key: 1 };
5
5
  const HISTORY_LIMIT = 100;
6
6
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -67,6 +67,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
67
67
  imgUploading.value = true;
68
68
  channelStore.sendImageMsg({
69
69
  file,
70
+ ext: option == null ? void 0 : option.ext,
70
71
  onUploadStart: () => {
71
72
  imgUploading.value = true;
72
73
  },
@@ -112,8 +113,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
112
113
  const handleSendText = (text, option) => {
113
114
  checkSendAuth("textMsg", text, option);
114
115
  };
115
- const handleSendImg = (file) => {
116
- checkSendAuth("SendImg", file);
116
+ const handleSendImg = (file, option) => {
117
+ checkSendAuth("SendImg", file, option);
117
118
  };
118
119
  const handleSendFile = (file) => {
119
120
  checkSendAuth("SendFile", file);
@@ -1,10 +1,10 @@
1
1
  import { createVNode, ref, computed, watch, nextTick, defineComponent, openBlock, createElementBlock, createElementVNode, normalizeStyle, unref, normalizeClass, createBlock, createCommentVNode, Fragment, renderList, toDisplayString, withCtx } from "vue";
2
2
  import { useRouter } from "vue-router";
3
3
  import { Input, Image, Popover, Button, Upload, message } from "ant-design-vue";
4
- import { A as AitPersonPopover } from "./index-Dwglj7_M.mjs";
5
- import { L as LoadingOutlined, _ as _sfc_main$2, a as _sfc_main$3 } from "./index.vue_vue_type_style_index_0_lang-CsNgkPt9.mjs";
4
+ import { A as AitPersonPopover } from "./index-CwFsDdl5.mjs";
5
+ import { L as LoadingOutlined, _ as _sfc_main$2, a as _sfc_main$3 } from "./index.vue_vue_type_style_index_0_lang-DOnNj1Mm.mjs";
6
6
  import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BxXBf_VA.mjs";
7
- import { a as useServerStore, g as getServerMembersByAccids, u as useChannelStore, e as getImageMsgDisplaySize, f as filterStr, i as isLt } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
7
+ import { a as useServerStore, g as getServerMembersByAccids, u as useChannelStore, e as getImageMsgDisplaySize, f as filterStr, i as isLt } from "./index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
8
8
  import { useEventListener, useDebounceFn } from "@vueuse/core";
9
9
  import { C as CloseOutlined } from "./CloseOutlined-BEcmJaCc.mjs";
10
10
  import { I as Icon } from "./AntdIcon-DdvEPKFJ.mjs";
@@ -499,6 +499,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
499
499
  setup(__props, { emit: __emit }) {
500
500
  const router = useRouter();
501
501
  const channelStore = useChannelStore();
502
+ const IMG_EXT = ["png", "jpg", "jpeg"];
502
503
  const Textarea = Input.TextArea;
503
504
  const props = __props;
504
505
  const emit = __emit;
@@ -706,21 +707,36 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
706
707
  }
707
708
  };
708
709
  const handleSendText = () => {
710
+ var _a;
709
711
  const text = filterStr(curText.value.trim());
710
712
  if (text) {
711
- emit("sendText", text, {
712
- ext: {
713
- quoteMsg: quoteMsg.value
714
- },
713
+ if (attachment.value) {
714
+ delete attachment.value.__file;
715
+ }
716
+ const sendOption = {
715
717
  mentionAccids: mentionAccids.value,
716
718
  attach: attachment.value
717
719
  // 传递附件
718
- });
720
+ };
721
+ if (quoteMsg.value) {
722
+ sendOption.ext = { quoteMsg: quoteMsg.value };
723
+ }
724
+ emit("sendText", text, sendOption);
719
725
  curText.value = "";
720
726
  quoteMsg.value = void 0;
721
727
  attachment.value = void 0;
722
728
  scrollToBottomAfterSend();
723
729
  }
730
+ if (attachment.value && IMG_EXT.includes(attachment.value.ext) && ((_a = attachment.value) == null ? void 0 : _a.__file)) {
731
+ let sendOption;
732
+ if (quoteMsg.value) {
733
+ sendOption = { ext: { quoteMsg: quoteMsg.value } };
734
+ }
735
+ emit("sendImg", attachment.value.__file, sendOption);
736
+ quoteMsg.value = void 0;
737
+ attachment.value = void 0;
738
+ scrollToBottomAfterSend();
739
+ }
724
740
  };
725
741
  const scrollHandler = async (e) => {
726
742
  var _a;
@@ -779,7 +795,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
779
795
  };
780
796
  const uploadImgHandler = async (file) => {
781
797
  if (!isLt(file.size, MAX_IMG_SIZE)) {
782
- message.error(`图片大小最大支持${MAX_IMG_SIZE}M`);
798
+ message.error(`图片大小最大支持${MAX_IMG_SIZE}MB`);
783
799
  return false;
784
800
  }
785
801
  attachmentUploading.value = true;
@@ -793,6 +809,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
793
809
  attachmentUploading.value = false;
794
810
  }
795
811
  });
812
+ uploadResult.__file = file;
796
813
  attachment.value = uploadResult;
797
814
  } catch (error) {
798
815
  console.error("上传图片失败:", error);
@@ -1038,7 +1055,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1038
1055
  ])) : createCommentVNode("", true)
1039
1056
  ])) : createCommentVNode("", true),
1040
1057
  attachment.value ? (openBlock(), createElementBlock("div", _hoisted_14, [
1041
- ["jpg", "jpeg", "png", "gif"].includes(attachment.value.ext || "") && attachment.value.url ? (openBlock(), createElementBlock("div", _hoisted_15, [
1058
+ IMG_EXT.includes(attachment.value.ext || "") && attachment.value.url ? (openBlock(), createElementBlock("div", _hoisted_15, [
1042
1059
  createElementVNode("div", _hoisted_16, [
1043
1060
  createVNode(unref(DeleteOutlined), {
1044
1061
  class: "chatroomInputAttachmentDeleteBtn",
@@ -1113,7 +1130,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1113
1130
  createVNode(unref(Upload), {
1114
1131
  "before-upload": uploadImgHandler,
1115
1132
  "show-upload-list": false,
1116
- accept: ".jpg,.png,.jpeg",
1133
+ accept: IMG_EXT.map((ext) => `.${ext}`).join(","),
1117
1134
  disabled: __props.sendDisabled || attachmentUploading.value,
1118
1135
  class: "chatroomInputUpload"
1119
1136
  }, {
@@ -1148,7 +1165,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1148
1165
  }, 8, ["loading", "disabled"])
1149
1166
  ]),
1150
1167
  _: 1
1151
- }, 8, ["disabled"]),
1168
+ }, 8, ["accept", "disabled"]),
1152
1169
  _cache[6] || (_cache[6] = createElementVNode("span", { class: "lineSeparator" }, null, -1)),
1153
1170
  createVNode(unref(Button), {
1154
1171
  class: "chatroomButtonArrowUp",
@@ -1,10 +1,10 @@
1
1
  import { defineComponent, ref, h, watch, computed, openBlock, createElementBlock, createElementVNode, toDisplayString, createCommentVNode, createVNode } from "vue";
2
2
  import { List, Typography } from "ant-design-vue";
3
- import { _ as _sfc_main$1 } from "./index.vue_vue_type_script_setup_true_lang-CD6o8jT4.mjs";
4
- import { a as useServerStore, u as useChannelStore } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
3
+ import { _ as _sfc_main$1 } from "./index.vue_vue_type_script_setup_true_lang-B4HvNhJp.mjs";
4
+ import { a as useServerStore, u as useChannelStore } from "./index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
5
5
  import "./index-L_drmZir.mjs";
6
6
  import { useLocalStorage } from "@vueuse/core";
7
- import { L as LoadingOutlined } from "./index.vue_vue_type_style_index_0_lang-CsNgkPt9.mjs";
7
+ import { L as LoadingOutlined } from "./index.vue_vue_type_style_index_0_lang-DOnNj1Mm.mjs";
8
8
  const _hoisted_1 = { class: "yx-chat-page-container" };
9
9
  const _hoisted_2 = { class: "header-wrap" };
10
10
  const _hoisted_3 = { class: "left" };
@@ -1,7 +1,7 @@
1
1
  import { createVNode, defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, unref, ref, onBeforeUnmount, computed, watch, nextTick, normalizeClass, Fragment, withModifiers, createBlock, withCtx, createCommentVNode, withDirectives, normalizeStyle, vShow } from "vue";
2
2
  import { useClipboard, useEventListener } from "@vueuse/core";
3
3
  import { Image, Button, message } from "ant-design-vue";
4
- import { h as getMByteSize, a as useServerStore, p as parseFileSize, m as matchExt, e as getImageMsgDisplaySize, _ as _sfc_main$2 } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
4
+ import { h as getMByteSize, a as useServerStore, p as parseFileSize, m as matchExt, e as getImageMsgDisplaySize, _ as _sfc_main$2 } from "./index.vue_vue_type_style_index_0_lang-Dx16RQv1.mjs";
5
5
  import { F as FileIconFont } from "./index-L_drmZir.mjs";
6
6
  import dayjs from "dayjs";
7
7
  import { I as Icon } from "./AntdIcon-DdvEPKFJ.mjs";
@@ -197,6 +197,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
197
197
  emits: ["resendText", "resendImg", "resendFile", "quote", "contextMenuSwitch", "quoteMsgClick", "revokeMessage"],
198
198
  setup(__props, { emit: __emit }) {
199
199
  const serverStore = useServerStore();
200
+ const IMG_EXT = ["png", "jpg", "jpeg"];
200
201
  const props = __props;
201
202
  const nowTime = ref(Date.now());
202
203
  let timer = null;
@@ -490,7 +491,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
490
491
  }, [..._cache[1] || (_cache[1] = [
491
492
  createElementVNode("div", { class: "textMsg" }, toDisplayString("暂不支持该消息"), -1)
492
493
  ])], 2)),
493
- __props.msg.type === "text" && ["jpg", "jpeg", "png", "gif"].includes(((_j = (_i = __props.msg) == null ? void 0 : _i.attach) == null ? void 0 : _j.ext) || "") ? (openBlock(), createElementBlock("div", _hoisted_14, [
494
+ __props.msg.type === "text" && IMG_EXT.includes(((_j = (_i = __props.msg) == null ? void 0 : _i.attach) == null ? void 0 : _j.ext) || "") ? (openBlock(), createElementBlock("div", _hoisted_14, [
494
495
  ((_l = (_k = __props.msg) == null ? void 0 : _k.attach) == null ? void 0 : _l.size) && ((_n = (_m = __props.msg) == null ? void 0 : _m.attach) == null ? void 0 : _n.size) < MAX_IMG_PREVIEW_SIZE ? (openBlock(), createBlock(unref(Image), {
495
496
  key: 0,
496
497
  class: "imgMsg",
@@ -36829,6 +36829,7 @@ const useChannelStore = defineStore("channel", {
36829
36829
  channelId: this.currentChannel.channelId,
36830
36830
  type: "image",
36831
36831
  file: options.file,
36832
+ ext: (options == null ? void 0 : options.ext) ? JSON.stringify(options == null ? void 0 : options.ext) : void 0,
36832
36833
  onUploadStart: options.onUploadStart,
36833
36834
  onUploadDone: options.onUploadDone,
36834
36835
  onSendBefore: (msg2) => {
@@ -1,4 +1,4 @@
1
- import { M as MembersSidebar } from "../index-BPnLB3av.mjs";
1
+ import { M as MembersSidebar } from "../index-DDCNub37.mjs";
2
2
  export {
3
3
  MembersSidebar,
4
4
  MembersSidebar as default
@@ -1,4 +1,4 @@
1
- import { S as ServerChannelSidebar } from "../index-CGhpFXlD.mjs";
1
+ import { S as ServerChannelSidebar } from "../index-C4E0XZdw.mjs";
2
2
  export {
3
3
  ServerChannelSidebar,
4
4
  ServerChannelSidebar as default
@@ -134,6 +134,7 @@ export declare const useChannelStore: import("pinia").StoreDefinition<"channel",
134
134
  }): Promise<void>;
135
135
  sendImageMsg(options: {
136
136
  file: IUploadFileOptions["file"];
137
+ ext?: SendMsgOption["ext"];
137
138
  onUploadStart: IUploadFileOptions["onUploadStart"];
138
139
  onUploadDone: IUploadFileOptions["onUploadDone"];
139
140
  }): Promise<void>;
package/dist/style.css CHANGED
@@ -470,6 +470,7 @@
470
470
  background-color: rgba(0, 0, 0, 0.5);
471
471
  z-index: 1;
472
472
  display: none;
473
+ border-radius: 8px;
473
474
  }
474
475
  .yx-chatroomWrapper .chatroomInputAttachmentWrapperImg .chatroomInputAttachmentDeleteBtn {
475
476
  position: absolute;
@@ -38436,6 +38436,7 @@ const useChannelStore = defineStore("channel", {
38436
38436
  channelId: this.currentChannel.channelId,
38437
38437
  type: "image",
38438
38438
  file: options.file,
38439
+ ext: (options == null ? void 0 : options.ext) ? JSON.stringify(options == null ? void 0 : options.ext) : void 0,
38439
38440
  onUploadStart: options.onUploadStart,
38440
38441
  onUploadDone: options.onUploadDone,
38441
38442
  onSendBefore: (msg2) => {
@@ -38880,6 +38881,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
38880
38881
  emits: ["resendText", "resendImg", "resendFile", "quote", "contextMenuSwitch", "quoteMsgClick", "revokeMessage"],
38881
38882
  setup(__props, { emit: __emit }) {
38882
38883
  const serverStore = useServerStore();
38884
+ const IMG_EXT = ["png", "jpg", "jpeg"];
38883
38885
  const props = __props;
38884
38886
  const nowTime = ref(Date.now());
38885
38887
  let timer = null;
@@ -39176,7 +39178,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
39176
39178
  }, [..._cache[1] || (_cache[1] = [
39177
39179
  createElementVNode("div", { class: "textMsg" }, toDisplayString("暂不支持该消息"), -1)
39178
39180
  ])], 2)),
39179
- __props.msg.type === "text" && ["jpg", "jpeg", "png", "gif"].includes(((_j = (_i = __props.msg) == null ? void 0 : _i.attach) == null ? void 0 : _j.ext) || "") ? (openBlock(), createElementBlock("div", _hoisted_14$3, [
39181
+ __props.msg.type === "text" && IMG_EXT.includes(((_j = (_i = __props.msg) == null ? void 0 : _i.attach) == null ? void 0 : _j.ext) || "") ? (openBlock(), createElementBlock("div", _hoisted_14$3, [
39180
39182
  ((_l = (_k = __props.msg) == null ? void 0 : _k.attach) == null ? void 0 : _l.size) && ((_n = (_m = __props.msg) == null ? void 0 : _m.attach) == null ? void 0 : _n.size) < MAX_IMG_PREVIEW_SIZE ? (openBlock(), createBlock(unref(Image), {
39181
39183
  key: 0,
39182
39184
  class: "imgMsg",
@@ -39974,6 +39976,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
39974
39976
  setup(__props, { emit: __emit }) {
39975
39977
  const router = useRouter();
39976
39978
  const channelStore = useChannelStore();
39979
+ const IMG_EXT = ["png", "jpg", "jpeg"];
39977
39980
  const Textarea = Input.TextArea;
39978
39981
  const props = __props;
39979
39982
  const emit = __emit;
@@ -40181,21 +40184,36 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
40181
40184
  }
40182
40185
  };
40183
40186
  const handleSendText = () => {
40187
+ var _a;
40184
40188
  const text = filterStr(curText.value.trim());
40185
40189
  if (text) {
40186
- emit("sendText", text, {
40187
- ext: {
40188
- quoteMsg: quoteMsg.value
40189
- },
40190
+ if (attachment.value) {
40191
+ delete attachment.value.__file;
40192
+ }
40193
+ const sendOption = {
40190
40194
  mentionAccids: mentionAccids.value,
40191
40195
  attach: attachment.value
40192
40196
  // 传递附件
40193
- });
40197
+ };
40198
+ if (quoteMsg.value) {
40199
+ sendOption.ext = { quoteMsg: quoteMsg.value };
40200
+ }
40201
+ emit("sendText", text, sendOption);
40194
40202
  curText.value = "";
40195
40203
  quoteMsg.value = void 0;
40196
40204
  attachment.value = void 0;
40197
40205
  scrollToBottomAfterSend();
40198
40206
  }
40207
+ if (attachment.value && IMG_EXT.includes(attachment.value.ext) && ((_a = attachment.value) == null ? void 0 : _a.__file)) {
40208
+ let sendOption;
40209
+ if (quoteMsg.value) {
40210
+ sendOption = { ext: { quoteMsg: quoteMsg.value } };
40211
+ }
40212
+ emit("sendImg", attachment.value.__file, sendOption);
40213
+ quoteMsg.value = void 0;
40214
+ attachment.value = void 0;
40215
+ scrollToBottomAfterSend();
40216
+ }
40199
40217
  };
40200
40218
  const scrollHandler = async (e) => {
40201
40219
  var _a;
@@ -40254,7 +40272,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
40254
40272
  };
40255
40273
  const uploadImgHandler = async (file) => {
40256
40274
  if (!isLt(file.size, MAX_IMG_SIZE)) {
40257
- message.error(`图片大小最大支持${MAX_IMG_SIZE}M`);
40275
+ message.error(`图片大小最大支持${MAX_IMG_SIZE}MB`);
40258
40276
  return false;
40259
40277
  }
40260
40278
  attachmentUploading.value = true;
@@ -40268,6 +40286,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
40268
40286
  attachmentUploading.value = false;
40269
40287
  }
40270
40288
  });
40289
+ uploadResult.__file = file;
40271
40290
  attachment.value = uploadResult;
40272
40291
  } catch (error) {
40273
40292
  console.error("上传图片失败:", error);
@@ -40513,7 +40532,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
40513
40532
  ])) : createCommentVNode("", true)
40514
40533
  ])) : createCommentVNode("", true),
40515
40534
  attachment.value ? (openBlock(), createElementBlock("div", _hoisted_14$2, [
40516
- ["jpg", "jpeg", "png", "gif"].includes(attachment.value.ext || "") && attachment.value.url ? (openBlock(), createElementBlock("div", _hoisted_15$2, [
40535
+ IMG_EXT.includes(attachment.value.ext || "") && attachment.value.url ? (openBlock(), createElementBlock("div", _hoisted_15$2, [
40517
40536
  createElementVNode("div", _hoisted_16$1, [
40518
40537
  createVNode(unref(DeleteOutlined), {
40519
40538
  class: "chatroomInputAttachmentDeleteBtn",
@@ -40588,7 +40607,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
40588
40607
  createVNode(unref(Upload), {
40589
40608
  "before-upload": uploadImgHandler,
40590
40609
  "show-upload-list": false,
40591
- accept: ".jpg,.png,.jpeg",
40610
+ accept: IMG_EXT.map((ext) => `.${ext}`).join(","),
40592
40611
  disabled: __props.sendDisabled || attachmentUploading.value,
40593
40612
  class: "chatroomInputUpload"
40594
40613
  }, {
@@ -40623,7 +40642,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
40623
40642
  }, 8, ["loading", "disabled"])
40624
40643
  ]),
40625
40644
  _: 1
40626
- }, 8, ["disabled"]),
40645
+ }, 8, ["accept", "disabled"]),
40627
40646
  _cache[6] || (_cache[6] = createElementVNode("span", { class: "lineSeparator" }, null, -1)),
40628
40647
  createVNode(unref(Button), {
40629
40648
  class: "chatroomButtonArrowUp",
@@ -40736,6 +40755,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
40736
40755
  imgUploading.value = true;
40737
40756
  channelStore.sendImageMsg({
40738
40757
  file,
40758
+ ext: option == null ? void 0 : option.ext,
40739
40759
  onUploadStart: () => {
40740
40760
  imgUploading.value = true;
40741
40761
  },
@@ -40781,8 +40801,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
40781
40801
  const handleSendText = (text, option) => {
40782
40802
  checkSendAuth("textMsg", text, option);
40783
40803
  };
40784
- const handleSendImg = (file) => {
40785
- checkSendAuth("SendImg", file);
40804
+ const handleSendImg = (file, option) => {
40805
+ checkSendAuth("SendImg", file, option);
40786
40806
  };
40787
40807
  const handleSendFile = (file) => {
40788
40808
  checkSendAuth("SendFile", file);
@@ -38433,6 +38433,7 @@
38433
38433
  channelId: this.currentChannel.channelId,
38434
38434
  type: "image",
38435
38435
  file: options.file,
38436
+ ext: (options == null ? void 0 : options.ext) ? JSON.stringify(options == null ? void 0 : options.ext) : void 0,
38436
38437
  onUploadStart: options.onUploadStart,
38437
38438
  onUploadDone: options.onUploadDone,
38438
38439
  onSendBefore: (msg2) => {
@@ -38877,6 +38878,7 @@
38877
38878
  emits: ["resendText", "resendImg", "resendFile", "quote", "contextMenuSwitch", "quoteMsgClick", "revokeMessage"],
38878
38879
  setup(__props, { emit: __emit }) {
38879
38880
  const serverStore = useServerStore();
38881
+ const IMG_EXT = ["png", "jpg", "jpeg"];
38880
38882
  const props = __props;
38881
38883
  const nowTime = vue.ref(Date.now());
38882
38884
  let timer = null;
@@ -39173,7 +39175,7 @@
39173
39175
  }, [..._cache[1] || (_cache[1] = [
39174
39176
  vue.createElementVNode("div", { class: "textMsg" }, vue.toDisplayString("暂不支持该消息"), -1)
39175
39177
  ])], 2)),
39176
- __props.msg.type === "text" && ["jpg", "jpeg", "png", "gif"].includes(((_j = (_i = __props.msg) == null ? void 0 : _i.attach) == null ? void 0 : _j.ext) || "") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14$3, [
39178
+ __props.msg.type === "text" && IMG_EXT.includes(((_j = (_i = __props.msg) == null ? void 0 : _i.attach) == null ? void 0 : _j.ext) || "") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14$3, [
39177
39179
  ((_l = (_k = __props.msg) == null ? void 0 : _k.attach) == null ? void 0 : _l.size) && ((_n = (_m = __props.msg) == null ? void 0 : _m.attach) == null ? void 0 : _n.size) < MAX_IMG_PREVIEW_SIZE ? (vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Image), {
39178
39180
  key: 0,
39179
39181
  class: "imgMsg",
@@ -39971,6 +39973,7 @@
39971
39973
  setup(__props, { emit: __emit }) {
39972
39974
  const router = vueRouter.useRouter();
39973
39975
  const channelStore = useChannelStore();
39976
+ const IMG_EXT = ["png", "jpg", "jpeg"];
39974
39977
  const Textarea = antDesignVue.Input.TextArea;
39975
39978
  const props = __props;
39976
39979
  const emit = __emit;
@@ -40178,21 +40181,36 @@
40178
40181
  }
40179
40182
  };
40180
40183
  const handleSendText = () => {
40184
+ var _a;
40181
40185
  const text = filterStr(curText.value.trim());
40182
40186
  if (text) {
40183
- emit("sendText", text, {
40184
- ext: {
40185
- quoteMsg: quoteMsg.value
40186
- },
40187
+ if (attachment.value) {
40188
+ delete attachment.value.__file;
40189
+ }
40190
+ const sendOption = {
40187
40191
  mentionAccids: mentionAccids.value,
40188
40192
  attach: attachment.value
40189
40193
  // 传递附件
40190
- });
40194
+ };
40195
+ if (quoteMsg.value) {
40196
+ sendOption.ext = { quoteMsg: quoteMsg.value };
40197
+ }
40198
+ emit("sendText", text, sendOption);
40191
40199
  curText.value = "";
40192
40200
  quoteMsg.value = void 0;
40193
40201
  attachment.value = void 0;
40194
40202
  scrollToBottomAfterSend();
40195
40203
  }
40204
+ if (attachment.value && IMG_EXT.includes(attachment.value.ext) && ((_a = attachment.value) == null ? void 0 : _a.__file)) {
40205
+ let sendOption;
40206
+ if (quoteMsg.value) {
40207
+ sendOption = { ext: { quoteMsg: quoteMsg.value } };
40208
+ }
40209
+ emit("sendImg", attachment.value.__file, sendOption);
40210
+ quoteMsg.value = void 0;
40211
+ attachment.value = void 0;
40212
+ scrollToBottomAfterSend();
40213
+ }
40196
40214
  };
40197
40215
  const scrollHandler = async (e) => {
40198
40216
  var _a;
@@ -40251,7 +40269,7 @@
40251
40269
  };
40252
40270
  const uploadImgHandler = async (file) => {
40253
40271
  if (!isLt(file.size, MAX_IMG_SIZE)) {
40254
- antDesignVue.message.error(`图片大小最大支持${MAX_IMG_SIZE}M`);
40272
+ antDesignVue.message.error(`图片大小最大支持${MAX_IMG_SIZE}MB`);
40255
40273
  return false;
40256
40274
  }
40257
40275
  attachmentUploading.value = true;
@@ -40265,6 +40283,7 @@
40265
40283
  attachmentUploading.value = false;
40266
40284
  }
40267
40285
  });
40286
+ uploadResult.__file = file;
40268
40287
  attachment.value = uploadResult;
40269
40288
  } catch (error) {
40270
40289
  console.error("上传图片失败:", error);
@@ -40510,7 +40529,7 @@
40510
40529
  ])) : vue.createCommentVNode("", true)
40511
40530
  ])) : vue.createCommentVNode("", true),
40512
40531
  attachment.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14$2, [
40513
- ["jpg", "jpeg", "png", "gif"].includes(attachment.value.ext || "") && attachment.value.url ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$2, [
40532
+ IMG_EXT.includes(attachment.value.ext || "") && attachment.value.url ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$2, [
40514
40533
  vue.createElementVNode("div", _hoisted_16$1, [
40515
40534
  vue.createVNode(vue.unref(DeleteOutlined), {
40516
40535
  class: "chatroomInputAttachmentDeleteBtn",
@@ -40585,7 +40604,7 @@
40585
40604
  vue.createVNode(vue.unref(antDesignVue.Upload), {
40586
40605
  "before-upload": uploadImgHandler,
40587
40606
  "show-upload-list": false,
40588
- accept: ".jpg,.png,.jpeg",
40607
+ accept: IMG_EXT.map((ext) => `.${ext}`).join(","),
40589
40608
  disabled: __props.sendDisabled || attachmentUploading.value,
40590
40609
  class: "chatroomInputUpload"
40591
40610
  }, {
@@ -40620,7 +40639,7 @@
40620
40639
  }, 8, ["loading", "disabled"])
40621
40640
  ]),
40622
40641
  _: 1
40623
- }, 8, ["disabled"]),
40642
+ }, 8, ["accept", "disabled"]),
40624
40643
  _cache[6] || (_cache[6] = vue.createElementVNode("span", { class: "lineSeparator" }, null, -1)),
40625
40644
  vue.createVNode(vue.unref(antDesignVue.Button), {
40626
40645
  class: "chatroomButtonArrowUp",
@@ -40733,6 +40752,7 @@
40733
40752
  imgUploading.value = true;
40734
40753
  channelStore.sendImageMsg({
40735
40754
  file,
40755
+ ext: option == null ? void 0 : option.ext,
40736
40756
  onUploadStart: () => {
40737
40757
  imgUploading.value = true;
40738
40758
  },
@@ -40778,8 +40798,8 @@
40778
40798
  const handleSendText = (text, option) => {
40779
40799
  checkSendAuth("textMsg", text, option);
40780
40800
  };
40781
- const handleSendImg = (file) => {
40782
- checkSendAuth("SendImg", file);
40801
+ const handleSendImg = (file, option) => {
40802
+ checkSendAuth("SendImg", file, option);
40783
40803
  };
40784
40804
  const handleSendFile = (file) => {
40785
40805
  checkSendAuth("SendFile", file);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yx-web-sdk",
3
- "version": "0.0.22",
3
+ "version": "0.0.23",
4
4
  "private": false,
5
5
  "main": "dist/yx-web-sdk.umd.js",
6
6
  "module": "dist/yx-web-sdk.es.js",