"use strict"; const common_vendor = require("../../../../common/vendor.js"); require("../../../adapter-vue.js"); const common_assets = require("../../../../common/assets.js"); const TUIKit_utils_env = require("../../../utils/env.js"); const TUIKit_components_TUIChat_utils_sendMessage = require("../utils/sendMessage.js"); const TUIKit_components_TUIChat_config = require("../config.js"); if (!Math) { (MessageInputAudio + MessageInputEditor + MessageInputAt + Icon + MessageQuote)(); } const MessageInputEditor = () => "./message-input-editor.js"; const MessageInputAt = () => "./message-input-at/index.js"; const MessageInputAudio = () => "./message-input-audio.js"; const MessageQuote = () => "./message-input-quote/index.js"; const Icon = () => "../../common/Icon.js"; const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({ __name: "index", props: { placeholder: { default: "this is placeholder" }, isMuted: { type: Boolean, default: true }, muteText: { default: "" }, enableInput: { type: Boolean, default: true }, enableAt: { type: Boolean, default: true }, enableTyping: { type: Boolean, default: true }, replyOrReference: { default: () => ({}) }, inputToolbarDisplayType: { default: "none" } }, emits: ["changeToolbarDisplayType"], setup(__props, { expose: __expose, emit: __emit }) { const emits = __emit; const props = __props; const editor = common_vendor.ref(); const messageInputAtRef = common_vendor.ref(); const currentConversation = common_vendor.ref(); const isGroup = common_vendor.ref(false); const displayType = common_vendor.ref("editor"); const featureConfig = TUIKit_components_TUIChat_config.ChatConfig.getFeatureConfig(); const isRenderVoice = common_vendor.ref(featureConfig.InputVoice); const isRenderEmojiPicker = common_vendor.ref(featureConfig.InputEmoji || featureConfig.InputStickers); const isRenderMore = common_vendor.ref(featureConfig.InputImage || featureConfig.InputVideo || featureConfig.InputEvaluation || featureConfig.InputQuickReplies); common_vendor.onMounted(() => { common_vendor.Jt.watch(common_vendor.o.CONV, { currentConversation: onCurrentConversationUpdated }); common_vendor.Jt.watch(common_vendor.o.CHAT, { quoteMessage: onQuoteMessageUpdated }); }); common_vendor.onUnmounted(() => { common_vendor.Jt.unwatch(common_vendor.o.CONV, { currentConversation: onCurrentConversationUpdated }); common_vendor.Jt.unwatch(common_vendor.o.CHAT, { quoteMessage: onQuoteMessageUpdated }); }); common_vendor.watch(() => props.inputToolbarDisplayType, (newVal) => { if (newVal !== "none") { changeDisplayType("editor"); } }); function changeDisplayType(display) { displayType.value = display; if (display === "audio") { emits("changeToolbarDisplayType", "none"); } } function changeToolbarDisplayType(displayType2) { emits("changeToolbarDisplayType", displayType2); } const onTyping = (inputContentEmpty, inputBlur) => { TUIKit_components_TUIChat_utils_sendMessage.sendTyping(inputContentEmpty, inputBlur); }; const onAt = (show) => { var _a; (_a = messageInputAtRef == null ? void 0 : messageInputAtRef.value) == null ? void 0 : _a.toggleAtList(show); }; const onFocus = () => { if (TUIKit_utils_env.isH5) { emits("changeToolbarDisplayType", "none"); } }; const insertEmoji = (emoji) => { var _a, _b; ((_a = editor == null ? void 0 : editor.value) == null ? void 0 : _a.addEmoji) && ((_b = editor == null ? void 0 : editor.value) == null ? void 0 : _b.addEmoji(emoji)); }; const insertAt = (atInfo) => { var _a, _b; ((_a = editor == null ? void 0 : editor.value) == null ? void 0 : _a.insertAt) && ((_b = editor == null ? void 0 : editor.value) == null ? void 0 : _b.insertAt(atInfo)); }; const onAtListOpen = () => { var _a, _b; ((_a = editor == null ? void 0 : editor.value) == null ? void 0 : _a.blur) && ((_b = editor == null ? void 0 : editor.value) == null ? void 0 : _b.blur()); }; const reEdit = (content) => { var _a, _b; (_a = editor == null ? void 0 : editor.value) == null ? void 0 : _a.resetEditor(); (_b = editor == null ? void 0 : editor.value) == null ? void 0 : _b.setEditorContent(content); }; function onCurrentConversationUpdated(conversation) { var _a; currentConversation.value = conversation; isGroup.value = ((_a = currentConversation.value) == null ? void 0 : _a.type) === common_vendor.qt.TYPES.CONV_GROUP; } function onQuoteMessageUpdated(options) { if ((options == null ? void 0 : options.message) && (options == null ? void 0 : options.type) === "quote") { changeDisplayType("editor"); } } __expose({ insertEmoji, reEdit }); return (_ctx, _cache) => { return common_vendor.e({ a: (common_vendor.unref(TUIKit_utils_env.isWeChat) || common_vendor.unref(TUIKit_utils_env.isApp)) && common_vendor.unref(isRenderVoice) }, (common_vendor.unref(TUIKit_utils_env.isWeChat) || common_vendor.unref(TUIKit_utils_env.isApp)) && common_vendor.unref(isRenderVoice) ? { b: common_vendor.unref(displayType) === "audio" ? 1 : "", c: common_vendor.o$1(changeDisplayType), d: common_vendor.p({ isEnableAudio: common_vendor.unref(displayType) === "audio" }) } : {}, { e: common_vendor.sr(editor, "ceb9e230-1", { "k": "editor" }), f: common_vendor.unref(displayType) === "editor", g: common_vendor.o$1(onTyping), h: common_vendor.o$1(onAt), i: common_vendor.o$1(onFocus), j: common_vendor.p({ placeholder: props.placeholder, isMuted: props.isMuted, muteText: props.muteText, enableInput: props.enableInput, enableAt: props.enableAt, enableTyping: props.enableTyping, isGroup: common_vendor.unref(isGroup) }), k: props.enableAt }, props.enableAt ? { l: common_vendor.sr(messageInputAtRef, "ceb9e230-2", { "k": "messageInputAtRef" }), m: common_vendor.o$1(insertAt), n: common_vendor.o$1(onAtListOpen) } : {}, { o: common_vendor.unref(isRenderEmojiPicker) }, common_vendor.unref(isRenderEmojiPicker) ? { p: common_vendor.o$1(($event) => changeToolbarDisplayType("emojiPicker")), q: common_vendor.p({ file: common_vendor.unref(common_assets.faceIcon), size: "23px", hotAreaSize: "3px" }) } : {}, { r: common_vendor.unref(isRenderMore) }, common_vendor.unref(isRenderMore) ? { s: common_vendor.o$1(($event) => changeToolbarDisplayType("tools")), t: common_vendor.p({ file: common_vendor.unref(common_assets.moreIcon), size: "23px", hotAreaSize: "3px" }) } : {}, { v: common_vendor.p({ displayType: common_vendor.unref(displayType) }), w: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "message-input-h5") }); }; } }); const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-ceb9e230"]]); wx.createComponent(Component); //# sourceMappingURL=../../../../../.sourcemap/mp-weixin/TUIKit/components/TUIChat/message-input/index.js.map