优化页面

This commit is contained in:
pengxiaolong
2025-06-20 21:55:09 +08:00
parent 2afc95d531
commit acc81963e9
405 changed files with 1362 additions and 1284 deletions

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/chat-header/index.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/chat-header/index.vue?type=component"],"sourcesContent":["<template>\n <div class=\"Navigation\">\n <div class=\"Navigationcontent\">\n <image\n @click=\"Returnfunc\"\n style=\"width: 46rpx;height: 46rpx;;\"\n src=\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/Return.png\"\n mode=\"scaleToFill\"\n class=\"Navigation-return\"\n />\n <div class=\"Navigation-name\">\n {{ Title }}\n </div>\n <div></div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { onMounted, onUnmounted, ref } from \"../../../adapter-vue\";\nimport {\n TUIStore,\n StoreName,\n IConversationModel,\n TUITranslateService,\n} from \"@tencentcloud/chat-uikit-engine\";\nimport { TUIGlobal } from \"@tencentcloud/universal-api\";\nimport { onLoad, onNavigationBarButtonTap } from \"@dcloudio/uni-app\";\n\nconst emits = defineEmits([\"openGroupManagement\"]);\nconst props = defineProps([\"isGroup\"]);\n\nconst currentConversation = ref<IConversationModel>();\nconst typingStatus = ref(false);\nconst Title = ref(\"Global\"); // 初始化为默认标题\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction Returnfunc() {\n uni.navigateBack({\n delta: 1,\n });\n}\n\nconst setChatHeaderContent = (content: string | undefined) => {\n Title.value = content || \"Global\"; // 确保默认值存在\n};\n\nonMounted(() => {\n TUIStore.watch(StoreName.CONV, {\n currentConversation: onCurrentConversationUpdated,\n });\n TUIStore.watch(StoreName.CHAT, {\n typingStatus: onTypingStatusUpdated,\n });\n});\n\nonUnmounted(() => {\n TUIStore.unwatch(StoreName.CONV, {\n currentConversation: onCurrentConversationUpdated,\n });\n TUIStore.unwatch(StoreName.CHAT, {\n typingStatus: onTypingStatusUpdated,\n });\n});\n\nonLoad(() => {\n setChatHeaderContent(currentConversation.value?.getShowName());\n});\n\nfunction onCurrentConversationUpdated(conversation: IConversationModel) {\n currentConversation.value = conversation;\n if (!typingStatus.value) {\n setChatHeaderContent(currentConversation?.value?.getShowName());\n }\n}\n\nfunction onTypingStatusUpdated(status: boolean) {\n typingStatus.value = status;\n if (typingStatus.value) {\n setChatHeaderContent(TUITranslateService.t(\"TUIChat.对方正在输入...\"));\n } else {\n setChatHeaderContent(currentConversation.value?.getShowName());\n }\n}\n</script>\n<style>\n.Navigation-name {\n font-size: 36rpx;\n color: #000000;\n font-weight: bold;\n}\n.Navigation {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 999;\n width: 100%;\n height: 240rpx;\n background-image: url(\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/Navigationimg.png\");\n background-position: 100% 100%;\n background-repeat: no-repeat;\n}\n.Navigationcontent{\n width: 80%;\n height: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 60rpx;\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/chat-header/index.vue'\nwx.createComponent(Component)"],"names":["ref","uni","onMounted","TUIStore","StoreName","onUnmounted","onLoad","TUITranslateService","Component"],"mappings":";;;;;;;;AAgCA,UAAM,sBAAsBA,cAAAA;AACtB,UAAA,eAAeA,kBAAI,KAAK;AACxB,UAAA,QAAQA,kBAAI,QAAQ;AAyB1B,aAAS,aAAa;AACpBC,oBAAAA,MAAI,aAAa;AAAA,QACf,OAAO;AAAA,MAAA,CACR;AAAA,IACH;AAEM,UAAA,uBAAuB,CAAC,YAAgC;AAC5D,YAAM,QAAQ,WAAW;AAAA,IAAA;AAG3BC,kBAAAA,UAAU,MAAM;AACLC,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,qBAAqB;AAAA,MAAA,CACtB;AACQD,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,cAAc;AAAA,MAAA,CACf;AAAA,IAAA,CACF;AAEDC,kBAAAA,YAAY,MAAM;AACPF,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,qBAAqB;AAAA,MAAA,CACtB;AACQD,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,cAAc;AAAA,MAAA,CACf;AAAA,IAAA,CACF;AAEDE,kBAAAA,OAAO,MAAM;;AACU,4BAAA,yBAAoB,UAApB,mBAA2B,aAAa;AAAA,IAAA,CAC9D;AAED,aAAS,6BAA6B,cAAkC;;AACtE,0BAAoB,QAAQ;AACxB,UAAA,CAAC,aAAa,OAAO;AACF,8BAAA,gEAAqB,UAArB,mBAA4B,aAAa;AAAA,MAChE;AAAA,IACF;AAEA,aAAS,sBAAsB,QAAiB;;AAC9C,mBAAa,QAAQ;AACrB,UAAI,aAAa,OAAO;AACD,6BAAAC,cAAA,GAAoB,EAAE,mBAAmB,CAAC;AAAA,MAAA,OAC1D;AACgB,8BAAA,yBAAoB,UAApB,mBAA2B,aAAa;AAAA,MAC/D;AAAA,IACF;;;;;;;;;ACxGA,GAAG,gBAAgBC,SAAS;"}
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/chat-header/index.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L2NoYXQtaGVhZGVyL2luZGV4LnZ1ZQ"],"sourcesContent":["<template>\r\n <div class=\"Navigation\">\r\n <div class=\"Navigationcontent\">\r\n <image\r\n @click=\"Returnfunc\"\r\n style=\"width: 46rpx;height: 46rpx;;\"\r\n src=\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/Return.png\"\r\n mode=\"scaleToFill\"\r\n class=\"Navigation-return\"\r\n />\r\n <div class=\"Navigation-name\">\r\n {{ Title }}\r\n </div>\r\n <div></div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onMounted, onUnmounted, ref } from \"../../../adapter-vue\";\r\nimport {\r\n TUIStore,\r\n StoreName,\r\n IConversationModel,\r\n TUITranslateService,\r\n} from \"@tencentcloud/chat-uikit-engine\";\r\nimport { TUIGlobal } from \"@tencentcloud/universal-api\";\r\nimport { onLoad, onNavigationBarButtonTap } from \"@dcloudio/uni-app\";\r\n\r\nconst emits = defineEmits([\"openGroupManagement\"]);\r\nconst props = defineProps([\"isGroup\"]);\r\n\r\nconst currentConversation = ref<IConversationModel>();\r\nconst typingStatus = ref(false);\r\nconst Title = ref(\"Global\"); // 初始化为默认标题\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nfunction Returnfunc() {\r\n uni.navigateBack({\r\n delta: 1,\r\n });\r\n}\r\n\r\nconst setChatHeaderContent = (content: string | undefined) => {\r\n Title.value = content || \"Global\"; // 确保默认值存在\r\n};\r\n\r\nonMounted(() => {\r\n TUIStore.watch(StoreName.CONV, {\r\n currentConversation: onCurrentConversationUpdated,\r\n });\r\n TUIStore.watch(StoreName.CHAT, {\r\n typingStatus: onTypingStatusUpdated,\r\n });\r\n});\r\n\r\nonUnmounted(() => {\r\n TUIStore.unwatch(StoreName.CONV, {\r\n currentConversation: onCurrentConversationUpdated,\r\n });\r\n TUIStore.unwatch(StoreName.CHAT, {\r\n typingStatus: onTypingStatusUpdated,\r\n });\r\n});\r\n\r\nonLoad(() => {\r\n setChatHeaderContent(currentConversation.value?.getShowName());\r\n});\r\n\r\nfunction onCurrentConversationUpdated(conversation: IConversationModel) {\r\n currentConversation.value = conversation;\r\n if (!typingStatus.value) {\r\n setChatHeaderContent(currentConversation?.value?.getShowName());\r\n }\r\n}\r\n\r\nfunction onTypingStatusUpdated(status: boolean) {\r\n typingStatus.value = status;\r\n if (typingStatus.value) {\r\n setChatHeaderContent(TUITranslateService.t(\"TUIChat.对方正在输入...\"));\r\n } else {\r\n setChatHeaderContent(currentConversation.value?.getShowName());\r\n }\r\n}\r\n</script>\r\n<style>\r\n.Navigation-name {\r\n font-size: 36rpx;\r\n color: #000000;\r\n font-weight: bold;\r\n}\r\n.Navigation {\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n z-index: 999;\r\n width: 100%;\r\n height: 240rpx;\r\n background-image: url(\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/Navigationimg.png\");\r\n background-position: 100% 100%;\r\n background-repeat: no-repeat;\r\n}\r\n.Navigationcontent{\r\n width: 80%;\r\n height: 100%;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 60rpx;\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/chat-header/index.vue'\nwx.createComponent(Component)"],"names":["ref","uni","onMounted","TUIStore","StoreName","onUnmounted","onLoad","TUITranslateService","Component"],"mappings":";;;;;;;;AAgCA,UAAM,sBAAsBA,cAAAA;AACtB,UAAA,eAAeA,kBAAI,KAAK;AACxB,UAAA,QAAQA,kBAAI,QAAQ;AAyB1B,aAAS,aAAa;AACpBC,oBAAAA,MAAI,aAAa;AAAA,QACf,OAAO;AAAA,MAAA,CACR;AAAA,IACH;AAEM,UAAA,uBAAuB,CAAC,YAAgC;AAC5D,YAAM,QAAQ,WAAW;AAAA,IAAA;AAG3BC,kBAAAA,UAAU,MAAM;AACLC,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,qBAAqB;AAAA,MAAA,CACtB;AACQD,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,cAAc;AAAA,MAAA,CACf;AAAA,IAAA,CACF;AAEDC,kBAAAA,YAAY,MAAM;AACPF,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,qBAAqB;AAAA,MAAA,CACtB;AACQD,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,cAAc;AAAA,MAAA,CACf;AAAA,IAAA,CACF;AAEDE,kBAAAA,OAAO,MAAM;;AACU,4BAAA,yBAAoB,UAApB,mBAA2B,aAAa;AAAA,IAAA,CAC9D;AAED,aAAS,6BAA6B,cAAkC;;AACtE,0BAAoB,QAAQ;AACxB,UAAA,CAAC,aAAa,OAAO;AACF,8BAAA,gEAAqB,UAArB,mBAA4B,aAAa;AAAA,MAChE;AAAA,IACF;AAEA,aAAS,sBAAsB,QAAiB;;AAC9C,mBAAa,QAAQ;AACrB,UAAI,aAAa,OAAO;AACD,6BAAAC,cAAA,GAAoB,EAAE,mBAAmB,CAAC;AAAA,MAAA,OAC1D;AACgB,8BAAA,yBAAoB,UAApB,mBAA2B,aAAa;AAAA,MAC/D;AAAA,IACF;;;;;;;;;ACxGA,GAAG,gBAAgBC,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"config.js","sources":["TUIKit/components/TUIChat/config.ts"],"sourcesContent":["class TUIChatConfig {\n static instance: TUIChatConfig;\n private chatType: string;\n private features: Record<string, any>;\n private theme: string;\n constructor() {\n this.chatType = '';\n this.features = {\n DownloadFile: true,\n CopyMessage: true,\n DeleteMessage: true,\n RevokeMessage: true,\n QuoteMessage: true,\n ForwardMessage: true,\n TranslateMessage: true,\n VoiceToText: true,\n MultiSelection: true,\n EmojiReaction: true,\n InputEmoji: true,\n InputStickers: true,\n InputImage: true,\n InputVoice: true,\n InputVideo: true,\n InputFile: true,\n InputEvaluation: true,\n InputQuickReplies: true,\n InputCustomMessage:true,\n InputMention: true,\n MessageSearch: true,\n ReadStatus: true,\n };\n this.theme = 'light';\n }\n\n static getInstance(): TUIChatConfig {\n if (!TUIChatConfig.instance) {\n TUIChatConfig.instance = new TUIChatConfig();\n }\n return TUIChatConfig.instance;\n }\n\n setChatType(chatType: string) {\n this.chatType = chatType;\n }\n\n getChatType() {\n return this.chatType;\n }\n\n hideTUIChatFeatures(features: string[]) {\n if (!features) {\n return;\n }\n features.forEach((feature: string) => {\n if (this.features[feature]) {\n this.features[feature] = false;\n }\n });\n }\n\n getFeatureConfig(key?: string) {\n if (key) {\n return this.features[key];\n }\n return this.features;\n }\n\n setTheme(theme: string) {\n this.theme = theme;\n }\n\n getTheme() {\n return this.theme;\n }\n}\n\nconst ChatConfig = TUIChatConfig.getInstance();\nconst hideTUIChatFeatures = ChatConfig.hideTUIChatFeatures.bind(ChatConfig);\n\nexport {\n hideTUIChatFeatures,\n};\n\nexport default ChatConfig;\n"],"names":[],"mappings":";AAAA,MAAM,cAAc;AAAA,EAKlB,cAAc;AACZ,SAAK,WAAW;AAChB,SAAK,WAAW;AAAA,MACd,cAAc;AAAA,MACd,aAAa;AAAA,MACb,eAAe;AAAA,MACf,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,eAAe;AAAA,MACf,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,MACnB,oBAAmB;AAAA,MACnB,cAAc;AAAA,MACd,eAAe;AAAA,MACf,YAAY;AAAA,IAAA;AAEd,SAAK,QAAQ;AAAA,EACf;AAAA,EAEA,OAAO,cAA6B;AAC9B,QAAA,CAAC,cAAc,UAAU;AACb,oBAAA,WAAW,IAAI;IAC/B;AACA,WAAO,cAAc;AAAA,EACvB;AAAA,EAEA,YAAY,UAAkB;AAC5B,SAAK,WAAW;AAAA,EAClB;AAAA,EAEA,cAAc;AACZ,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,oBAAoB,UAAoB;AACtC,QAAI,CAAC,UAAU;AACb;AAAA,IACF;AACS,aAAA,QAAQ,CAAC,YAAoB;AAChC,UAAA,KAAK,SAAS,OAAO,GAAG;AACrB,aAAA,SAAS,OAAO,IAAI;AAAA,MAC3B;AAAA,IAAA,CACD;AAAA,EACH;AAAA,EAEA,iBAAiB,KAAc;AAC7B,QAAI,KAAK;AACA,aAAA,KAAK,SAAS,GAAG;AAAA,IAC1B;AACA,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,SAAS,OAAe;AACtB,SAAK,QAAQ;AAAA,EACf;AAAA,EAEA,WAAW;AACT,WAAO,KAAK;AAAA,EACd;AACF;AAEM,MAAA,aAAa,cAAc,YAAY;AACjB,WAAW,oBAAoB,KAAK,UAAU;;"}
{"version":3,"file":"config.js","sources":["TUIKit/components/TUIChat/config.ts"],"sourcesContent":["class TUIChatConfig {\r\n static instance: TUIChatConfig;\r\n private chatType: string;\r\n private features: Record<string, any>;\r\n private theme: string;\r\n constructor() {\r\n this.chatType = '';\r\n this.features = {\r\n DownloadFile: true,\r\n CopyMessage: true,\r\n DeleteMessage: true,\r\n RevokeMessage: true,\r\n QuoteMessage: true,\r\n ForwardMessage: true,\r\n TranslateMessage: true,\r\n VoiceToText: true,\r\n MultiSelection: true,\r\n EmojiReaction: true,\r\n InputEmoji: true,\r\n InputStickers: true,\r\n InputImage: true,\r\n InputVoice: true,\r\n InputVideo: true,\r\n InputFile: true,\r\n InputEvaluation: true,\r\n InputQuickReplies: true,\r\n InputCustomMessage:true,\r\n InputMention: true,\r\n MessageSearch: true,\r\n ReadStatus: true,\r\n };\r\n this.theme = 'light';\r\n }\r\n\r\n static getInstance(): TUIChatConfig {\r\n if (!TUIChatConfig.instance) {\r\n TUIChatConfig.instance = new TUIChatConfig();\r\n }\r\n return TUIChatConfig.instance;\r\n }\r\n\r\n setChatType(chatType: string) {\r\n this.chatType = chatType;\r\n }\r\n\r\n getChatType() {\r\n return this.chatType;\r\n }\r\n\r\n hideTUIChatFeatures(features: string[]) {\r\n if (!features) {\r\n return;\r\n }\r\n features.forEach((feature: string) => {\r\n if (this.features[feature]) {\r\n this.features[feature] = false;\r\n }\r\n });\r\n }\r\n\r\n getFeatureConfig(key?: string) {\r\n if (key) {\r\n return this.features[key];\r\n }\r\n return this.features;\r\n }\r\n\r\n setTheme(theme: string) {\r\n this.theme = theme;\r\n }\r\n\r\n getTheme() {\r\n return this.theme;\r\n }\r\n}\r\n\r\nconst ChatConfig = TUIChatConfig.getInstance();\r\nconst hideTUIChatFeatures = ChatConfig.hideTUIChatFeatures.bind(ChatConfig);\r\n\r\nexport {\r\n hideTUIChatFeatures,\r\n};\r\n\r\nexport default ChatConfig;\r\n"],"names":[],"mappings":";AAAA,MAAM,cAAc;AAAA,EAKlB,cAAc;AACZ,SAAK,WAAW;AAChB,SAAK,WAAW;AAAA,MACd,cAAc;AAAA,MACd,aAAa;AAAA,MACb,eAAe;AAAA,MACf,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,eAAe;AAAA,MACf,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,MACnB,oBAAmB;AAAA,MACnB,cAAc;AAAA,MACd,eAAe;AAAA,MACf,YAAY;AAAA,IAAA;AAEd,SAAK,QAAQ;AAAA,EACf;AAAA,EAEA,OAAO,cAA6B;AAC9B,QAAA,CAAC,cAAc,UAAU;AACb,oBAAA,WAAW,IAAI;IAC/B;AACA,WAAO,cAAc;AAAA,EACvB;AAAA,EAEA,YAAY,UAAkB;AAC5B,SAAK,WAAW;AAAA,EAClB;AAAA,EAEA,cAAc;AACZ,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,oBAAoB,UAAoB;AACtC,QAAI,CAAC,UAAU;AACb;AAAA,IACF;AACS,aAAA,QAAQ,CAAC,YAAoB;AAChC,UAAA,KAAK,SAAS,OAAO,GAAG;AACrB,aAAA,SAAS,OAAO,IAAI;AAAA,MAC3B;AAAA,IAAA,CACD;AAAA,EACH;AAAA,EAEA,iBAAiB,KAAc;AAC7B,QAAI,KAAK;AACA,aAAA,KAAK,SAAS,GAAG;AAAA,IAC1B;AACA,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,SAAS,OAAe;AACtB,SAAK,QAAQ;AAAA,EACf;AAAA,EAEA,WAAW;AACT,WAAO,KAAK;AAAA,EACd;AACF;AAEM,MAAA,aAAa,cAAc,YAAY;AACjB,WAAW,oBAAoB,KAAK,UAAU;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"custom-emoji.js","sources":["TUIKit/components/TUIChat/emoji-config/custom-emoji.ts"],"sourcesContent":["import { IEmojiGroupList } from '../../../interface';\n\n/**\n* Custom big emoji\n*/\nexport const CUSTOM_BIG_EMOJI_URL: string = '';\n\nexport const CUSTOM_BIG_EMOJI_GROUP_LIST: IEmojiGroupList = [];\n\n/**\n* Custom basic emoji\n*/\nexport const CUSTOM_BASIC_EMOJI_URL: string = '';\n\nexport const CUSTOM_BASIC_EMOJI_URL_MAPPING: Record<string, string> = {};\n"],"names":[],"mappings":";AAKO,MAAM,uBAA+B;AAErC,MAAM,8BAA+C,CAAA;;;"}
{"version":3,"file":"custom-emoji.js","sources":["TUIKit/components/TUIChat/emoji-config/custom-emoji.ts"],"sourcesContent":["import { IEmojiGroupList } from '../../../interface';\r\n\r\n/**\r\n* Custom big emoji\r\n*/\r\nexport const CUSTOM_BIG_EMOJI_URL: string = '';\r\n\r\nexport const CUSTOM_BIG_EMOJI_GROUP_LIST: IEmojiGroupList = [];\r\n\r\n/**\r\n* Custom basic emoji\r\n*/\r\nexport const CUSTOM_BASIC_EMOJI_URL: string = '';\r\n\r\nexport const CUSTOM_BASIC_EMOJI_URL_MAPPING: Record<string, string> = {};\r\n"],"names":[],"mappings":";AAKO,MAAM,uBAA+B;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"default-emoji.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
{"version":3,"file":"default-emoji.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"en.js","sources":["TUIKit/components/TUIChat/emoji-config/locales/en.ts"],"sourcesContent":["const Emoji = {\n '[TUIEmoji_Smile]': '[Smile]',\n '[TUIEmoji_Expect]': '[Expect]',\n '[TUIEmoji_Blink]': '[Blink]',\n '[TUIEmoji_Guffaw]': '[Guffaw]',\n '[TUIEmoji_KindSmile]': '[KindSmile]',\n '[TUIEmoji_Haha]': '[Haha]',\n '[TUIEmoji_Cheerful]': '[Cheerful]',\n '[TUIEmoji_Speechless]': '[Speechless]',\n '[TUIEmoji_Amazed]': '[Amazed]',\n '[TUIEmoji_Sorrow]': '[Sorrow]',\n '[TUIEmoji_Complacent]': '[Complacent]',\n '[TUIEmoji_Silly]': '[Silly]',\n '[TUIEmoji_Lustful]': '[Lustful]',\n '[TUIEmoji_Giggle]': '[Giggle]',\n '[TUIEmoji_Kiss]': '[Kiss]',\n '[TUIEmoji_Wail]': '[Wail]',\n '[TUIEmoji_TearsLaugh]': '[TearsLaugh]',\n '[TUIEmoji_Trapped]': '[Trapped]',\n '[TUIEmoji_Mask]': '[Mask]',\n '[TUIEmoji_Fear]': '[Fear]',\n '[TUIEmoji_BareTeeth]': '[BareTeeth]',\n '[TUIEmoji_FlareUp]': '[FlareUp]',\n '[TUIEmoji_Yawn]': '[Yawn]',\n '[TUIEmoji_Tact]': '[Tact]',\n '[TUIEmoji_Stareyes]': '[StarEyes]',\n '[TUIEmoji_ShutUp]': '[ShutUp]',\n '[TUIEmoji_Sigh]': '[Sigh]',\n '[TUIEmoji_Hehe]': '[Hehe]',\n '[TUIEmoji_Silent]': '[Silent]',\n '[TUIEmoji_Surprised]': '[Surprised]',\n '[TUIEmoji_Askance]': '[Askance]]',\n '[TUIEmoji_Ok]': '[OK]',\n '[TUIEmoji_Shit]': '[Shit]',\n '[TUIEmoji_Monster]': '[Monster]',\n '[TUIEmoji_Daemon]': '[Daemon]',\n '[TUIEmoji_Rage]': '[Rage]',\n '[TUIEmoji_Fool]': '[Fool]',\n '[TUIEmoji_Pig]': '[Pig]',\n '[TUIEmoji_Cow]': '[Cow]',\n '[TUIEmoji_Ai]': '[AI]',\n '[TUIEmoji_Skull]': '[Skull]',\n '[TUIEmoji_Bombs]': '[Bombs]',\n '[TUIEmoji_Coffee]': '[Coffee]',\n '[TUIEmoji_Cake]': '[Cake]',\n '[TUIEmoji_Beer]': '[Beer]',\n '[TUIEmoji_Flower]': '[Flower]',\n '[TUIEmoji_Watermelon]': '[Watermelon]',\n '[TUIEmoji_Rich]': '[Rich]',\n '[TUIEmoji_Heart]': '[Heart]',\n '[TUIEmoji_Moon]': '[Moon]',\n '[TUIEmoji_Sun]': '[Sun]',\n '[TUIEmoji_Star]': '[Star]',\n '[TUIEmoji_RedPacket]': '[RedPacket]',\n '[TUIEmoji_Celebrate]': '[Celebrate]',\n '[TUIEmoji_Bless]': '[Bless]',\n '[TUIEmoji_Fortune]': '[Fortune]',\n '[TUIEmoji_Convinced]': '[Convinced]',\n '[TUIEmoji_Prohibit]': '[Prohibit]',\n '[TUIEmoji_666]': '[666]',\n '[TUIEmoji_857]': '[857]',\n '[TUIEmoji_Knife]': '[Knife]',\n '[TUIEmoji_Like]': '[Like]',\n};\n\nexport default Emoji;\n"],"names":[],"mappings":";AAAA,MAAM,QAAQ;AAAA,EACZ,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,yBAAyB;AAAA,EACzB,qBAAqB;AAAA,EACrB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,yBAAyB;AAAA,EACzB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,mBAAmB;AAAA,EACnB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,wBAAwB;AAAA,EACxB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,wBAAwB;AAAA,EACxB,uBAAuB;AAAA,EACvB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,mBAAmB;AACrB;;"}
{"version":3,"file":"en.js","sources":["TUIKit/components/TUIChat/emoji-config/locales/en.ts"],"sourcesContent":["const Emoji = {\r\n '[TUIEmoji_Smile]': '[Smile]',\r\n '[TUIEmoji_Expect]': '[Expect]',\r\n '[TUIEmoji_Blink]': '[Blink]',\r\n '[TUIEmoji_Guffaw]': '[Guffaw]',\r\n '[TUIEmoji_KindSmile]': '[KindSmile]',\r\n '[TUIEmoji_Haha]': '[Haha]',\r\n '[TUIEmoji_Cheerful]': '[Cheerful]',\r\n '[TUIEmoji_Speechless]': '[Speechless]',\r\n '[TUIEmoji_Amazed]': '[Amazed]',\r\n '[TUIEmoji_Sorrow]': '[Sorrow]',\r\n '[TUIEmoji_Complacent]': '[Complacent]',\r\n '[TUIEmoji_Silly]': '[Silly]',\r\n '[TUIEmoji_Lustful]': '[Lustful]',\r\n '[TUIEmoji_Giggle]': '[Giggle]',\r\n '[TUIEmoji_Kiss]': '[Kiss]',\r\n '[TUIEmoji_Wail]': '[Wail]',\r\n '[TUIEmoji_TearsLaugh]': '[TearsLaugh]',\r\n '[TUIEmoji_Trapped]': '[Trapped]',\r\n '[TUIEmoji_Mask]': '[Mask]',\r\n '[TUIEmoji_Fear]': '[Fear]',\r\n '[TUIEmoji_BareTeeth]': '[BareTeeth]',\r\n '[TUIEmoji_FlareUp]': '[FlareUp]',\r\n '[TUIEmoji_Yawn]': '[Yawn]',\r\n '[TUIEmoji_Tact]': '[Tact]',\r\n '[TUIEmoji_Stareyes]': '[StarEyes]',\r\n '[TUIEmoji_ShutUp]': '[ShutUp]',\r\n '[TUIEmoji_Sigh]': '[Sigh]',\r\n '[TUIEmoji_Hehe]': '[Hehe]',\r\n '[TUIEmoji_Silent]': '[Silent]',\r\n '[TUIEmoji_Surprised]': '[Surprised]',\r\n '[TUIEmoji_Askance]': '[Askance]]',\r\n '[TUIEmoji_Ok]': '[OK]',\r\n '[TUIEmoji_Shit]': '[Shit]',\r\n '[TUIEmoji_Monster]': '[Monster]',\r\n '[TUIEmoji_Daemon]': '[Daemon]',\r\n '[TUIEmoji_Rage]': '[Rage]',\r\n '[TUIEmoji_Fool]': '[Fool]',\r\n '[TUIEmoji_Pig]': '[Pig]',\r\n '[TUIEmoji_Cow]': '[Cow]',\r\n '[TUIEmoji_Ai]': '[AI]',\r\n '[TUIEmoji_Skull]': '[Skull]',\r\n '[TUIEmoji_Bombs]': '[Bombs]',\r\n '[TUIEmoji_Coffee]': '[Coffee]',\r\n '[TUIEmoji_Cake]': '[Cake]',\r\n '[TUIEmoji_Beer]': '[Beer]',\r\n '[TUIEmoji_Flower]': '[Flower]',\r\n '[TUIEmoji_Watermelon]': '[Watermelon]',\r\n '[TUIEmoji_Rich]': '[Rich]',\r\n '[TUIEmoji_Heart]': '[Heart]',\r\n '[TUIEmoji_Moon]': '[Moon]',\r\n '[TUIEmoji_Sun]': '[Sun]',\r\n '[TUIEmoji_Star]': '[Star]',\r\n '[TUIEmoji_RedPacket]': '[RedPacket]',\r\n '[TUIEmoji_Celebrate]': '[Celebrate]',\r\n '[TUIEmoji_Bless]': '[Bless]',\r\n '[TUIEmoji_Fortune]': '[Fortune]',\r\n '[TUIEmoji_Convinced]': '[Convinced]',\r\n '[TUIEmoji_Prohibit]': '[Prohibit]',\r\n '[TUIEmoji_666]': '[666]',\r\n '[TUIEmoji_857]': '[857]',\r\n '[TUIEmoji_Knife]': '[Knife]',\r\n '[TUIEmoji_Like]': '[Like]',\r\n};\r\n\r\nexport default Emoji;\r\n"],"names":[],"mappings":";AAAA,MAAM,QAAQ;AAAA,EACZ,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,yBAAyB;AAAA,EACzB,qBAAqB;AAAA,EACrB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,yBAAyB;AAAA,EACzB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,mBAAmB;AAAA,EACnB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,wBAAwB;AAAA,EACxB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,wBAAwB;AAAA,EACxB,uBAAuB;AAAA,EACvB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,mBAAmB;AACrB;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"zh_cn.js","sources":["TUIKit/components/TUIChat/emoji-config/locales/zh_cn.ts"],"sourcesContent":["const Emoji: Record<string, string> = {\n '[TUIEmoji_Smile]': '[微笑]',\n '[TUIEmoji_Expect]': '[期待]',\n '[TUIEmoji_Blink]': '[眨眼]',\n '[TUIEmoji_Guffaw]': '[大笑]',\n '[TUIEmoji_KindSmile]': '[姨母笑]',\n '[TUIEmoji_Haha]': '[哈哈哈]',\n '[TUIEmoji_Cheerful]': '[愉快]',\n '[TUIEmoji_Speechless]': '[无语]',\n '[TUIEmoji_Amazed]': '[惊讶]',\n '[TUIEmoji_Sorrow]': '[悲伤]',\n '[TUIEmoji_Complacent]': '[得意]',\n '[TUIEmoji_Silly]': '[傻了]',\n '[TUIEmoji_Lustful]': '[色]',\n '[TUIEmoji_Giggle]': '[憨笑]',\n '[TUIEmoji_Kiss]': '[亲亲]',\n '[TUIEmoji_Wail]': '[大哭]',\n '[TUIEmoji_TearsLaugh]': '[哭笑]',\n '[TUIEmoji_Trapped]': '[困]',\n '[TUIEmoji_Mask]': '[口罩]',\n '[TUIEmoji_Fear]': '[恐惧]',\n '[TUIEmoji_BareTeeth]': '[龇牙]',\n '[TUIEmoji_FlareUp]': '[发怒]',\n '[TUIEmoji_Yawn]': '[打哈欠]',\n '[TUIEmoji_Tact]': '[机智]',\n '[TUIEmoji_Stareyes]': '[星星眼]',\n '[TUIEmoji_ShutUp]': '[闭嘴]',\n '[TUIEmoji_Sigh]': '[叹气]',\n '[TUIEmoji_Hehe]': '[呵呵]',\n '[TUIEmoji_Silent]': '[收声]',\n '[TUIEmoji_Surprised]': '[惊喜]',\n '[TUIEmoji_Askance]': '[白眼]',\n '[TUIEmoji_Ok]': '[OK]',\n '[TUIEmoji_Shit]': '[便便]',\n '[TUIEmoji_Monster]': '[怪兽]',\n '[TUIEmoji_Daemon]': '[恶魔]',\n '[TUIEmoji_Rage]': '[恶魔怒]',\n '[TUIEmoji_Fool]': '[衰]',\n '[TUIEmoji_Pig]': '[猪]',\n '[TUIEmoji_Cow]': '[牛]',\n '[TUIEmoji_Ai]': '[AI]',\n '[TUIEmoji_Skull]': '[骷髅]',\n '[TUIEmoji_Bombs]': '[炸弹]',\n '[TUIEmoji_Coffee]': '[咖啡]',\n '[TUIEmoji_Cake]': '[蛋糕]',\n '[TUIEmoji_Beer]': '[啤酒]',\n '[TUIEmoji_Flower]': '[花]',\n '[TUIEmoji_Watermelon]': '[瓜]',\n '[TUIEmoji_Rich]': '[壕]',\n '[TUIEmoji_Heart]': '[爱心]',\n '[TUIEmoji_Moon]': '[月亮]',\n '[TUIEmoji_Sun]': '[太阳]',\n '[TUIEmoji_Star]': '[星星]',\n '[TUIEmoji_RedPacket]': '[红包]',\n '[TUIEmoji_Celebrate]': '[庆祝]',\n '[TUIEmoji_Bless]': '[福]',\n '[TUIEmoji_Fortune]': '[发]',\n '[TUIEmoji_Convinced]': '[服]',\n '[TUIEmoji_Prohibit]': '[禁]',\n '[TUIEmoji_666]': '[666]',\n '[TUIEmoji_857]': '[857]',\n '[TUIEmoji_Knife]': '[刀]',\n '[TUIEmoji_Like]': '[赞]',\n};\n\nexport default Emoji;\n"],"names":[],"mappings":";AAAA,MAAM,QAAgC;AAAA,EACpC,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,yBAAyB;AAAA,EACzB,qBAAqB;AAAA,EACrB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,yBAAyB;AAAA,EACzB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,mBAAmB;AAAA,EACnB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,wBAAwB;AAAA,EACxB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,wBAAwB;AAAA,EACxB,uBAAuB;AAAA,EACvB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,mBAAmB;AACrB;;"}
{"version":3,"file":"zh_cn.js","sources":["TUIKit/components/TUIChat/emoji-config/locales/zh_cn.ts"],"sourcesContent":["const Emoji: Record<string, string> = {\r\n '[TUIEmoji_Smile]': '[微笑]',\r\n '[TUIEmoji_Expect]': '[期待]',\r\n '[TUIEmoji_Blink]': '[眨眼]',\r\n '[TUIEmoji_Guffaw]': '[大笑]',\r\n '[TUIEmoji_KindSmile]': '[姨母笑]',\r\n '[TUIEmoji_Haha]': '[哈哈哈]',\r\n '[TUIEmoji_Cheerful]': '[愉快]',\r\n '[TUIEmoji_Speechless]': '[无语]',\r\n '[TUIEmoji_Amazed]': '[惊讶]',\r\n '[TUIEmoji_Sorrow]': '[悲伤]',\r\n '[TUIEmoji_Complacent]': '[得意]',\r\n '[TUIEmoji_Silly]': '[傻了]',\r\n '[TUIEmoji_Lustful]': '[色]',\r\n '[TUIEmoji_Giggle]': '[憨笑]',\r\n '[TUIEmoji_Kiss]': '[亲亲]',\r\n '[TUIEmoji_Wail]': '[大哭]',\r\n '[TUIEmoji_TearsLaugh]': '[哭笑]',\r\n '[TUIEmoji_Trapped]': '[困]',\r\n '[TUIEmoji_Mask]': '[口罩]',\r\n '[TUIEmoji_Fear]': '[恐惧]',\r\n '[TUIEmoji_BareTeeth]': '[龇牙]',\r\n '[TUIEmoji_FlareUp]': '[发怒]',\r\n '[TUIEmoji_Yawn]': '[打哈欠]',\r\n '[TUIEmoji_Tact]': '[机智]',\r\n '[TUIEmoji_Stareyes]': '[星星眼]',\r\n '[TUIEmoji_ShutUp]': '[闭嘴]',\r\n '[TUIEmoji_Sigh]': '[叹气]',\r\n '[TUIEmoji_Hehe]': '[呵呵]',\r\n '[TUIEmoji_Silent]': '[收声]',\r\n '[TUIEmoji_Surprised]': '[惊喜]',\r\n '[TUIEmoji_Askance]': '[白眼]',\r\n '[TUIEmoji_Ok]': '[OK]',\r\n '[TUIEmoji_Shit]': '[便便]',\r\n '[TUIEmoji_Monster]': '[怪兽]',\r\n '[TUIEmoji_Daemon]': '[恶魔]',\r\n '[TUIEmoji_Rage]': '[恶魔怒]',\r\n '[TUIEmoji_Fool]': '[衰]',\r\n '[TUIEmoji_Pig]': '[猪]',\r\n '[TUIEmoji_Cow]': '[牛]',\r\n '[TUIEmoji_Ai]': '[AI]',\r\n '[TUIEmoji_Skull]': '[骷髅]',\r\n '[TUIEmoji_Bombs]': '[炸弹]',\r\n '[TUIEmoji_Coffee]': '[咖啡]',\r\n '[TUIEmoji_Cake]': '[蛋糕]',\r\n '[TUIEmoji_Beer]': '[啤酒]',\r\n '[TUIEmoji_Flower]': '[花]',\r\n '[TUIEmoji_Watermelon]': '[瓜]',\r\n '[TUIEmoji_Rich]': '[壕]',\r\n '[TUIEmoji_Heart]': '[爱心]',\r\n '[TUIEmoji_Moon]': '[月亮]',\r\n '[TUIEmoji_Sun]': '[太阳]',\r\n '[TUIEmoji_Star]': '[星星]',\r\n '[TUIEmoji_RedPacket]': '[红包]',\r\n '[TUIEmoji_Celebrate]': '[庆祝]',\r\n '[TUIEmoji_Bless]': '[福]',\r\n '[TUIEmoji_Fortune]': '[发]',\r\n '[TUIEmoji_Convinced]': '[服]',\r\n '[TUIEmoji_Prohibit]': '[禁]',\r\n '[TUIEmoji_666]': '[666]',\r\n '[TUIEmoji_857]': '[857]',\r\n '[TUIEmoji_Knife]': '[刀]',\r\n '[TUIEmoji_Like]': '[赞]',\r\n};\r\n\r\nexport default Emoji;\r\n"],"names":[],"mappings":";AAAA,MAAM,QAAgC;AAAA,EACpC,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,yBAAyB;AAAA,EACzB,qBAAqB;AAAA,EACrB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,yBAAyB;AAAA,EACzB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,uBAAuB;AAAA,EACvB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,mBAAmB;AAAA,EACnB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,wBAAwB;AAAA,EACxB,wBAAwB;AAAA,EACxB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EACtB,wBAAwB;AAAA,EACxB,uBAAuB;AAAA,EACvB,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,mBAAmB;AACrB;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"entry-chat-only.js","sources":["TUIKit/components/TUIChat/entry-chat-only.ts"],"sourcesContent":["import { TUILogin } from '@tencentcloud/tui-core';\nimport { TUIConversationService } from '@tencentcloud/chat-uikit-engine';\n// #ifdef MP-WEIXIN\nimport { TUIChatKit } from '../../index.ts';\n// #endif\n\nexport const initChat = (options: Record<string, string>) => {\n // #ifdef MP-WEIXIN\n // uni-app packages the mini program.\n // If you call TUIChatKit.init() directly during import, an error will be reported.\n // You need to init during the page onLoad.\n TUIChatKit.init();\n // #endif\n\n // When opening TUIChat, the options and options.conversationID parameters carried in the url,\n // determine whether to enter the Chat from the [Conversation List] or [Online Communication].\n const { chat } = TUILogin.getContext();\n if (options && options.conversationID && chat?.isReady()) {\n const { conversationID } = options;\n // verify conversationID\n if (!conversationID.startsWith('C2C') && !conversationID.startsWith('GROUP')) {\n console.warn('conversationID from options is invalid.');\n return;\n }\n // open chat\n TUIConversationService.switchConversation(conversationID);\n }\n};\n\nexport const logout = (flag: boolean) => {\n if (flag) {\n return TUILogin.logout();\n }\n return Promise.resolve();\n};\n"],"names":["TUIChatKit","TUILogin","uni","TUIConversationService"],"mappings":";;;AAMa,MAAA,WAAW,CAAC,YAAoC;AAK3DA,eAAA,WAAW,KAAK;AAKhB,QAAM,EAAE,KAAA,IAASC,cAAA,EAAS,WAAW;AACrC,MAAI,WAAW,QAAQ,mBAAkB,6BAAM,YAAW;AAClD,UAAA,EAAE,eAAmB,IAAA;AAEvB,QAAA,CAAC,eAAe,WAAW,KAAK,KAAK,CAAC,eAAe,WAAW,OAAO,GAAG;AAC/DC,oBAAAA,MAAA,MAAA,QAAA,sDAAA,yCAAyC;AACtD;AAAA,IACF;AAEAC,qBAAuB,mBAAmB,cAAc;AAAA,EAC1D;AACF;AAEa,MAAA,SAAS,CAAC,SAAkB;AACvC,MAAI,MAAM;AACR,WAAOF,cAAAA,EAAS;EAClB;AACA,SAAO,QAAQ;AACjB;;;"}
{"version":3,"file":"entry-chat-only.js","sources":["TUIKit/components/TUIChat/entry-chat-only.ts"],"sourcesContent":["import { TUILogin } from '@tencentcloud/tui-core';\r\nimport { TUIConversationService } from '@tencentcloud/chat-uikit-engine';\r\n// #ifdef MP-WEIXIN\r\nimport { TUIChatKit } from '../../index.ts';\r\n// #endif\r\n\r\nexport const initChat = (options: Record<string, string>) => {\r\n // #ifdef MP-WEIXIN\r\n // uni-app packages the mini program.\r\n // If you call TUIChatKit.init() directly during import, an error will be reported.\r\n // You need to init during the page onLoad.\r\n TUIChatKit.init();\r\n // #endif\r\n\r\n // When opening TUIChat, the options and options.conversationID parameters carried in the url,\r\n // determine whether to enter the Chat from the [Conversation List] or [Online Communication].\r\n const { chat } = TUILogin.getContext();\r\n if (options && options.conversationID && chat?.isReady()) {\r\n const { conversationID } = options;\r\n // verify conversationID\r\n if (!conversationID.startsWith('C2C') && !conversationID.startsWith('GROUP')) {\r\n console.warn('conversationID from options is invalid.');\r\n return;\r\n }\r\n // open chat\r\n TUIConversationService.switchConversation(conversationID);\r\n }\r\n};\r\n\r\nexport const logout = (flag: boolean) => {\r\n if (flag) {\r\n return TUILogin.logout();\r\n }\r\n return Promise.resolve();\r\n};\r\n"],"names":["TUIChatKit","TUILogin","uni","TUIConversationService"],"mappings":";;;AAMa,MAAA,WAAW,CAAC,YAAoC;AAK3DA,eAAA,WAAW,KAAK;AAKhB,QAAM,EAAE,KAAA,IAASC,cAAA,EAAS,WAAW;AACrC,MAAI,WAAW,QAAQ,mBAAkB,6BAAM,YAAW;AAClD,UAAA,EAAE,eAAmB,IAAA;AAEvB,QAAA,CAAC,eAAe,WAAW,KAAK,KAAK,CAAC,eAAe,WAAW,OAAO,GAAG;AAC/DC,oBAAAA,MAAA,MAAA,QAAA,sDAAA,yCAAyC;AACtD;AAAA,IACF;AAEAC,qBAAuB,mBAAmB,cAAc;AAAA,EAC1D;AACF;AAEa,MAAA,SAAS,CAAC,SAAkB;AACvC,MAAI,MAAM;AACR,WAAOF,cAAAA,EAAS;EAClB;AACA,SAAO,QAAQ;AACjB;;;"}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/index.vue?type=page"],"sourcesContent":["import MiniProgramPage from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["MiniProgramPage"],"mappings":";;AACA,GAAG,WAAWA,wBAAe,iBAAA;"}
{"version":3,"file":"index.js","sources":["../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/VFVJS2l0XGNvbXBvbmVudHNcVFVJQ2hhdFxpbmRleC52dWU"],"sourcesContent":["import MiniProgramPage from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["MiniProgramPage"],"mappings":";;AACA,GAAG,WAAWA,wBAAe,iBAAA;"}

View File

@@ -1 +1 @@
{"version":3,"file":"popupinvite.js","sources":["TUIKit/components/TUIChat/message-input-toolbar/evaluate/popupinvite.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-input-toolbar/evaluate/popupinvite.vue?type=component"],"sourcesContent":["<template>\n <uni-popup class=\"popupcss\" ref=\"popup\" type=\"center\" border-radius=\"10px 10px 0 0\">\n <view class=\"popup-content\">\n <view class=\"popup-title\">\n <view class=\"popup-text\">点击选择您要参与的主播</view>\n <view v-if=\"list.length !== 0\">\n <scroll-view show-scrollbar=\"false\" scroll-y=\"true\" class=\"scroll\">\n <view class=\"card\" v-for=\"(item, index) in list\" :key=\"index\">\n <view\n class=\"card-content\"\n @click=\"Select(item.id, index)\"\n :style=\"{\n background: selectedId === item.id ? '#b8ff8c74' : '#ffffff',\n }\"\n >\n <view class=\"Avatarimg\">\n <image class=\"avatar\" :src=\"item.anchorIcon\" mode=\"scaleToFill\" />\n </view>\n <view class=\"NameMoney\">\n <view class=\"TimeMoney\">\n <view class=\"NameMoney_Name\">{{ item.anchorId }}</view>\n </view>\n <view class=\"TimeMoney_Time\">\n <view class=\"pkTimeimg\">\n <image\n style=\"width: 31.49rpx; height: 31.49rpx; margin-top: 3rpx\"\n src=\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/time.png\"\n mode=\"scaleToFill\"\n />\n </view>\n <!-- <view>{{ TimeFormatting(item.pkTime) }}</view> -->\n <view class=\"goldimg\">\n <image\n style=\"width: 31.49rpx; height: 31.49rpx; margin-top: 4rpx\"\n src=\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/species.png\"\n mode=\"scaleToFill\"\n />\n </view>\n <view class=\"goldnb\">{{ item.coin }}K</view>\n </view>\n </view>\n </view>\n </view>\n </scroll-view>\n </view>\n <view class=\"noData\" v-if=\"list.length === 0\"\n >您还没有可参与的主播PK快去新建一个吧</view\n >\n </view>\n <view class=\"popup-btn\">\n <button class=\"invite\" type=\"primary\" @click=\"invite()\">邀请</button>\n <button class=\"cancel\" type=\"default\" @click=\"close()\">取消</button>\n </view>\n </view>\n </uni-popup>\n</template>\n\n<script>\nexport default {\n data() {\n return {\n title: \"Hello\",\n };\n },\n onLoad() {\n // 页面加载时执行\n },\n methods: {\n //确定邀请\n invite() {},\n //关闭弹窗\n close() {\n popup.value.close();\n },\n },\n};\n</script>\n\n<style scoped>\n/* 样式定义 */\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-input-toolbar/evaluate/popupinvite.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;AA0DA,MAAK,YAAU;AAAA,EACb,OAAO;AACL,WAAO;AAAA,MACL,OAAO;AAAA;EAEV;AAAA,EACD,SAAS;AAAA,EAER;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,SAAS;AAAA,IAAE;AAAA;AAAA,IAEX,QAAQ;AACN,YAAM,MAAM;IACb;AAAA,EACF;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1EA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"popupinvite.js","sources":["TUIKit/components/TUIChat/message-input-toolbar/evaluate/popupinvite.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtaW5wdXQtdG9vbGJhci9ldmFsdWF0ZS9wb3B1cGludml0ZS52dWU"],"sourcesContent":["<template>\r\n <uni-popup class=\"popupcss\" ref=\"popup\" type=\"center\" border-radius=\"10px 10px 0 0\">\r\n <view class=\"popup-content\">\r\n <view class=\"popup-title\">\r\n <view class=\"popup-text\">点击选择您要参与的主播</view>\r\n <view v-if=\"list.length !== 0\">\r\n <scroll-view show-scrollbar=\"false\" scroll-y=\"true\" class=\"scroll\">\r\n <view class=\"card\" v-for=\"(item, index) in list\" :key=\"index\">\r\n <view\r\n class=\"card-content\"\r\n @click=\"Select(item.id, index)\"\r\n :style=\"{\r\n background: selectedId === item.id ? '#b8ff8c74' : '#ffffff',\r\n }\"\r\n >\r\n <view class=\"Avatarimg\">\r\n <image class=\"avatar\" :src=\"item.anchorIcon\" mode=\"scaleToFill\" />\r\n </view>\r\n <view class=\"NameMoney\">\r\n <view class=\"TimeMoney\">\r\n <view class=\"NameMoney_Name\">{{ item.anchorId }}</view>\r\n </view>\r\n <view class=\"TimeMoney_Time\">\r\n <view class=\"pkTimeimg\">\r\n <image\r\n style=\"width: 31.49rpx; height: 31.49rpx; margin-top: 3rpx\"\r\n src=\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/time.png\"\r\n mode=\"scaleToFill\"\r\n />\r\n </view>\r\n <!-- <view>{{ TimeFormatting(item.pkTime) }}</view> -->\r\n <view class=\"goldimg\">\r\n <image\r\n style=\"width: 31.49rpx; height: 31.49rpx; margin-top: 4rpx\"\r\n src=\"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/species.png\"\r\n mode=\"scaleToFill\"\r\n />\r\n </view>\r\n <view class=\"goldnb\">{{ item.coin }}K</view>\r\n </view>\r\n </view>\r\n </view>\r\n </view>\r\n </scroll-view>\r\n </view>\r\n <view class=\"noData\" v-if=\"list.length === 0\"\r\n >您还没有可参与的主播PK快去新建一个吧</view\r\n >\r\n </view>\r\n <view class=\"popup-btn\">\r\n <button class=\"invite\" type=\"primary\" @click=\"invite()\">邀请</button>\r\n <button class=\"cancel\" type=\"default\" @click=\"close()\">取消</button>\r\n </view>\r\n </view>\r\n </uni-popup>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n data() {\r\n return {\r\n title: \"Hello\",\r\n };\r\n },\r\n onLoad() {\r\n // 页面加载时执行\r\n },\r\n methods: {\r\n //确定邀请\r\n invite() {},\r\n //关闭弹窗\r\n close() {\r\n popup.value.close();\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped>\r\n/* 样式定义 */\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-input-toolbar/evaluate/popupinvite.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;AA0DA,MAAK,YAAU;AAAA,EACb,OAAO;AACL,WAAO;AAAA,MACL,OAAO;AAAA;EAEV;AAAA,EACD,SAAS;AAAA,EAER;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,SAAS;AAAA,IAAE;AAAA;AAAA,IAEX,QAAQ;AACN,YAAM,MAAM;IACb;AAAA,EACF;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1EA,GAAG,gBAAgB,SAAS;"}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-input-toolbar/words/index.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-input-toolbar/words/index.vue?type=component"],"sourcesContent":["<template>\n <ToolbarItemContainer\n ref=\"container\"\n :iconFile=\"wordsIcon\"\n title=\"常用语\"\n :needBottomPopup=\"true\"\n :iconWidth=\"isUniFrameWork ? '26px' : '20px'\"\n :iconHeight=\"isUniFrameWork ? '26px' : '20px'\"\n @onDialogShow=\"onDialogShow\"\n @onDialogClose=\"onDialogClose\"\n >\n <div :class=\"['words', !isPC && 'words-h5']\">\n <div :class=\"['words-header', !isPC && 'words-h5-header']\">\n <span :class=\"['words-header-title', !isPC && 'words-h5-header-title']\">\n {{ TUITranslateService.t(\"Words.常用语-快捷回复工具\") }}\n </span>\n <span\n v-if=\"!isPC\"\n :class=\"['words-header-close', !isPC && 'words-h5-header-close']\"\n @click=\"closeDialog\"\n >\n 关闭\n </span>\n </div>\n <ul :class=\"['words-list', !isPC && 'words-h5-list']\">\n <li\n v-for=\"(item, index) in wordsList\"\n :key=\"index\"\n :class=\"['words-list-item', !isPC && 'words-h5-list-item']\"\n @click=\"selectWord(item)\"\n >\n {{ TUITranslateService.t(`Words.${item.value}`) }}\n </li>\n </ul>\n </div>\n </ToolbarItemContainer>\n</template>\n<script setup lang=\"ts\">\nimport {\n TUITranslateService,\n TUIStore,\n StoreName,\n IConversationModel,\n SendMessageParams,\n TUIChatService,\n} from '@tencentcloud/chat-uikit-engine';\nimport { ref } from '../../../../adapter-vue';\nimport ToolbarItemContainer from '../toolbar-item-container/index.vue';\nimport wordsIconLight from '../../../../assets/icon/words-light.svg';\nimport wordsIconDark from '../../../../assets/icon/words-dark.svg';\nimport { wordsList } from '../../utils/wordsList';\nimport { isEnabledMessageReadReceiptGlobal } from '../../utils/utils';\nimport { isPC, isUniFrameWork } from '../../../../utils/env';\nimport TUIChatConfig from '../../config';\n\nconst wordsIcon = TUIChatConfig.getTheme() === 'dark' ? wordsIconDark : wordsIconLight;\nconst emits = defineEmits(['onDialogPopupShowOrHide']);\nconst currentConversation = ref<IConversationModel>();\nconst container = ref();\n\nTUIStore.watch(StoreName.CONV, {\n currentConversation: (conversation: IConversationModel) => {\n currentConversation.value = conversation;\n },\n});\n\nconst selectWord = (item: any) => {\n const options = {\n to:\n currentConversation?.value?.groupProfile?.groupID\n || currentConversation?.value?.userProfile?.userID,\n conversationType: currentConversation?.value?.type,\n payload: {\n text: TUITranslateService.t(`Words.${item.value}`),\n },\n needReadReceipt: isEnabledMessageReadReceiptGlobal(),\n } as SendMessageParams;\n TUIChatService.sendTextMessage(options);\n // close dialog after submit evaluate\n container?.value?.toggleDialogDisplay(false);\n};\n\nconst closeDialog = () => {\n container?.value?.toggleDialogDisplay(false);\n};\n\nconst onDialogShow = () => {\n emits('onDialogPopupShowOrHide', true);\n};\n\nconst onDialogClose = () => {\n emits('onDialogPopupShowOrHide', false);\n};\n</script>\n<style scoped lang=\"scss\" src=\"./style/index.scss\"></style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-input-toolbar/words/index.vue'\nwx.createComponent(Component)"],"names":["TUIChatConfig","wordsIconDark","wordsIconLight","ref","TUIStore","StoreName","TUITranslateService","isEnabledMessageReadReceiptGlobal","TUIChatService"],"mappings":";;;;;;;;;;;AA+CA,MAAA,uBAAiC,MAAA;;;;;AAQjC,UAAM,YAAYA,iCAAAA,WAAc,SAAS,MAAM,SAASC,cAAgB,gBAAAC;AACxE,UAAM,QAAQ;AACd,UAAM,sBAAsBC,cAAAA;AAC5B,UAAM,YAAYA,cAAAA;AAETC,qBAAA,MAAMC,gBAAU,MAAM;AAAA,MAC7B,qBAAqB,CAAC,iBAAqC;AACzD,4BAAoB,QAAQ;AAAA,MAC9B;AAAA,IAAA,CACD;AAEK,UAAA,aAAa,CAAC,SAAc;;AAChC,YAAM,UAAU;AAAA,QACd,MACE,sEAAqB,UAArB,mBAA4B,iBAA5B,mBAA0C,cACvC,sEAAqB,UAArB,mBAA4B,gBAA5B,mBAAyC;AAAA,QAC9C,mBAAkB,gEAAqB,UAArB,mBAA4B;AAAA,QAC9C,SAAS;AAAA,UACP,MAAMC,cAAoB,GAAA,EAAE,SAAS,KAAK,KAAK,EAAE;AAAA,QACnD;AAAA,QACA,iBAAiBC,sCAAAA,kCAAkC;AAAA,MAAA;AAErDC,uBAAe,gBAAgB,OAAO;AAE3B,mDAAA,UAAA,mBAAO,oBAAoB;AAAA,IAAK;AAG7C,UAAM,cAAc,MAAM;;AACb,mDAAA,UAAA,mBAAO,oBAAoB;AAAA,IAAK;AAG7C,UAAM,eAAe,MAAM;AACzB,YAAM,2BAA2B,IAAI;AAAA,IAAA;AAGvC,UAAM,gBAAgB,MAAM;AAC1B,YAAM,2BAA2B,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1FxC,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-input-toolbar/words/index.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtaW5wdXQtdG9vbGJhci93b3Jkcy9pbmRleC52dWU"],"sourcesContent":["<template>\r\n <ToolbarItemContainer\r\n ref=\"container\"\r\n :iconFile=\"wordsIcon\"\r\n title=\"常用语\"\r\n :needBottomPopup=\"true\"\r\n :iconWidth=\"isUniFrameWork ? '26px' : '20px'\"\r\n :iconHeight=\"isUniFrameWork ? '26px' : '20px'\"\r\n @onDialogShow=\"onDialogShow\"\r\n @onDialogClose=\"onDialogClose\"\r\n >\r\n <div :class=\"['words', !isPC && 'words-h5']\">\r\n <div :class=\"['words-header', !isPC && 'words-h5-header']\">\r\n <span :class=\"['words-header-title', !isPC && 'words-h5-header-title']\">\r\n {{ TUITranslateService.t(\"Words.常用语-快捷回复工具\") }}\r\n </span>\r\n <span\r\n v-if=\"!isPC\"\r\n :class=\"['words-header-close', !isPC && 'words-h5-header-close']\"\r\n @click=\"closeDialog\"\r\n >\r\n 关闭\r\n </span>\r\n </div>\r\n <ul :class=\"['words-list', !isPC && 'words-h5-list']\">\r\n <li\r\n v-for=\"(item, index) in wordsList\"\r\n :key=\"index\"\r\n :class=\"['words-list-item', !isPC && 'words-h5-list-item']\"\r\n @click=\"selectWord(item)\"\r\n >\r\n {{ TUITranslateService.t(`Words.${item.value}`) }}\r\n </li>\r\n </ul>\r\n </div>\r\n </ToolbarItemContainer>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport {\r\n TUITranslateService,\r\n TUIStore,\r\n StoreName,\r\n IConversationModel,\r\n SendMessageParams,\r\n TUIChatService,\r\n} from '@tencentcloud/chat-uikit-engine';\r\nimport { ref } from '../../../../adapter-vue';\r\nimport ToolbarItemContainer from '../toolbar-item-container/index.vue';\r\nimport wordsIconLight from '../../../../assets/icon/words-light.svg';\r\nimport wordsIconDark from '../../../../assets/icon/words-dark.svg';\r\nimport { wordsList } from '../../utils/wordsList';\r\nimport { isEnabledMessageReadReceiptGlobal } from '../../utils/utils';\r\nimport { isPC, isUniFrameWork } from '../../../../utils/env';\r\nimport TUIChatConfig from '../../config';\r\n\r\nconst wordsIcon = TUIChatConfig.getTheme() === 'dark' ? wordsIconDark : wordsIconLight;\r\nconst emits = defineEmits(['onDialogPopupShowOrHide']);\r\nconst currentConversation = ref<IConversationModel>();\r\nconst container = ref();\r\n\r\nTUIStore.watch(StoreName.CONV, {\r\n currentConversation: (conversation: IConversationModel) => {\r\n currentConversation.value = conversation;\r\n },\r\n});\r\n\r\nconst selectWord = (item: any) => {\r\n const options = {\r\n to:\r\n currentConversation?.value?.groupProfile?.groupID\r\n || currentConversation?.value?.userProfile?.userID,\r\n conversationType: currentConversation?.value?.type,\r\n payload: {\r\n text: TUITranslateService.t(`Words.${item.value}`),\r\n },\r\n needReadReceipt: isEnabledMessageReadReceiptGlobal(),\r\n } as SendMessageParams;\r\n TUIChatService.sendTextMessage(options);\r\n // close dialog after submit evaluate\r\n container?.value?.toggleDialogDisplay(false);\r\n};\r\n\r\nconst closeDialog = () => {\r\n container?.value?.toggleDialogDisplay(false);\r\n};\r\n\r\nconst onDialogShow = () => {\r\n emits('onDialogPopupShowOrHide', true);\r\n};\r\n\r\nconst onDialogClose = () => {\r\n emits('onDialogPopupShowOrHide', false);\r\n};\r\n</script>\r\n<style scoped lang=\"scss\" src=\"./style/index.scss\"></style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-input-toolbar/words/index.vue'\nwx.createComponent(Component)"],"names":["TUIChatConfig","wordsIconDark","wordsIconLight","ref","TUIStore","StoreName","TUITranslateService","isEnabledMessageReadReceiptGlobal","TUIChatService"],"mappings":";;;;;;;;;;;AA+CA,MAAA,uBAAiC,MAAA;;;;;AAQjC,UAAM,YAAYA,iCAAAA,WAAc,SAAS,MAAM,SAASC,cAAgB,gBAAAC;AACxE,UAAM,QAAQ;AACd,UAAM,sBAAsBC,cAAAA;AAC5B,UAAM,YAAYA,cAAAA;AAETC,qBAAA,MAAMC,gBAAU,MAAM;AAAA,MAC7B,qBAAqB,CAAC,iBAAqC;AACzD,4BAAoB,QAAQ;AAAA,MAC9B;AAAA,IAAA,CACD;AAEK,UAAA,aAAa,CAAC,SAAc;;AAChC,YAAM,UAAU;AAAA,QACd,MACE,sEAAqB,UAArB,mBAA4B,iBAA5B,mBAA0C,cACvC,sEAAqB,UAArB,mBAA4B,gBAA5B,mBAAyC;AAAA,QAC9C,mBAAkB,gEAAqB,UAArB,mBAA4B;AAAA,QAC9C,SAAS;AAAA,UACP,MAAMC,cAAoB,GAAA,EAAE,SAAS,KAAK,KAAK,EAAE;AAAA,QACnD;AAAA,QACA,iBAAiBC,sCAAAA,kCAAkC;AAAA,MAAA;AAErDC,uBAAe,gBAAgB,OAAO;AAE3B,mDAAA,UAAA,mBAAO,oBAAoB;AAAA,IAAK;AAG7C,UAAM,cAAc,MAAM;;AACb,mDAAA,UAAA,mBAAO,oBAAoB;AAAA,IAAK;AAG7C,UAAM,eAAe,MAAM;AACzB,YAAM,2BAA2B,IAAI;AAAA,IAAA;AAGvC,UAAM,gBAAgB,MAAM;AAC1B,YAAM,2BAA2B,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1FxC,GAAG,gBAAgB,SAAS;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-list/link/index.ts"],"sourcesContent":["const Link = {\n product: {\n label: '产品文档',\n url: 'https://cloud.tencent.com/document/product/269/1499#.E7.BE.A4.E7.BB.84.E5.8A.9F.E8.83.BD',\n },\n customMessage: {\n label: '自定义消息',\n url: 'https://web.sdk.qcloud.com/im/doc/zh-cn/SDK.html#createCustomMessage',\n },\n complaint: {\n label: '点此投诉',\n url: 'https://cloud.tencent.com/apply/p/xc3oaubi98g',\n },\n implement: {\n label: '集成TUICallKit',\n url: 'https://cloud.tencent.com/document/product/269/79861',\n },\n purchase: {\n label: '开通腾讯实时音视频服务',\n url: 'https://cloud.tencent.com/document/product/1640/79968',\n },\n};\nexport default Link;\n"],"names":[],"mappings":";AAAA,MAAM,OAAO;AAAA,EACX,SAAS;AAAA,IACP,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,eAAe;AAAA,IACb,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,WAAW;AAAA,IACT,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,WAAW;AAAA,IACT,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,UAAU;AAAA,IACR,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AACF;;"}
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-list/link/index.ts"],"sourcesContent":["const Link = {\r\n product: {\r\n label: '产品文档',\r\n url: 'https://cloud.tencent.com/document/product/269/1499#.E7.BE.A4.E7.BB.84.E5.8A.9F.E8.83.BD',\r\n },\r\n customMessage: {\r\n label: '自定义消息',\r\n url: 'https://web.sdk.qcloud.com/im/doc/zh-cn/SDK.html#createCustomMessage',\r\n },\r\n complaint: {\r\n label: '点此投诉',\r\n url: 'https://cloud.tencent.com/apply/p/xc3oaubi98g',\r\n },\r\n implement: {\r\n label: '集成TUICallKit',\r\n url: 'https://cloud.tencent.com/document/product/269/79861',\r\n },\r\n purchase: {\r\n label: '开通腾讯实时音视频服务',\r\n url: 'https://cloud.tencent.com/document/product/1640/79968',\r\n },\r\n};\r\nexport default Link;\r\n"],"names":[],"mappings":";AAAA,MAAM,OAAO;AAAA,EACX,SAAS;AAAA,IACP,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,eAAe;AAAA,IACb,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,WAAW;AAAA,IACT,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,WAAW;AAAA,IACT,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,UAAU;AAAA,IACR,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AACF;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"convert-content.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-convert/convert-content.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-convert/convert-content.vue?type=component"],"sourcesContent":["<template>\n <div class=\"message-convert-container\">\n <div\n v-if=\"convertFinished\"\n :class=\"{\n 'convert-content': true,\n 'occur': true,\n }\"\n >\n {{ convertText }}\n </div>\n <div\n :class=\"{\n 'loading': true,\n 'loading-end': convertFinished\n }\"\n >\n {{ TUITranslateService.t('TUIChat.转换中') }}...\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from '../../../../../adapter-vue';\nimport {\n IMessageModel,\n TUITranslateService,\n} from '@tencentcloud/chat-uikit-engine';\nimport { convertor } from '../../../utils/convertVoiceToText';\n\ninterface IProps {\n message: IMessageModel;\n contentVisible: boolean;\n}\n\ninterface IEmits {\n (e: 'toggleErrorStatus', status: boolean): void;\n}\n\nconst emits = defineEmits<IEmits>();\nconst props = withDefaults(defineProps<IProps>(), {\n message: () => ({} as IMessageModel),\n isSingleConvert: false,\n});\n\nconst convertFinished = ref<boolean>(false);\nconst convertText = ref<string>('');\n\nwatch(() => props.contentVisible, (newVal: boolean) => {\n if (newVal) {\n convertor.get(props.message)\n .then((text) => {\n convertFinished.value = true;\n convertText.value = text;\n })\n .catch((err) => {\n convertFinished.value = true;\n emits('toggleErrorStatus', true);\n convertText.value = err.message;\n });\n }\n}, {\n immediate: true,\n});\n</script>\n\n<style lang=\"scss\" scoped>\n.message-convert-container {\n min-height: 20px;\n min-width: 80px;\n position: relative;\n transition: width 0.15s ease-out, height 0.15s ease-out, ;\n font-size: 14px;\n\n .loading {\n position: absolute;\n top: 0;\n left: 0;\n opacity: 1;\n transition: opacity 0.3s ease-out;\n\n &.loading-end {\n opacity: 0;\n }\n }\n\n .convert-content {\n opacity: 0;\n\n &.occur {\n animation: occur 0.3s ease-out 0.45s forwards;\n\n @keyframes occur {\n 100% {\n opacity: 1;\n }\n }\n }\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-convert/convert-content.vue'\nwx.createComponent(Component)"],"names":["ref","watch","convertor"],"mappings":";;;;;;;;;;;;AAuCA,UAAM,QAAQ;AACd,UAAM,QAAQ;AAKR,UAAA,kBAAkBA,kBAAa,KAAK;AACpC,UAAA,cAAcA,kBAAY,EAAE;AAElCC,kBAAAA,MAAM,MAAM,MAAM,gBAAgB,CAAC,WAAoB;AACrD,UAAI,QAAQ;AACVC,2DAAA,UAAU,IAAI,MAAM,OAAO,EACxB,KAAK,CAAC,SAAS;AACd,0BAAgB,QAAQ;AACxB,sBAAY,QAAQ;AAAA,QAAA,CACrB,EACA,MAAM,CAAC,QAAQ;AACd,0BAAgB,QAAQ;AACxB,gBAAM,qBAAqB,IAAI;AAC/B,sBAAY,QAAQ,IAAI;AAAA,QAAA,CACzB;AAAA,MACL;AAAA,IAAA,GACC;AAAA,MACD,WAAW;AAAA,IAAA,CACZ;;;;;;;;;;;;;;AC9DD,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"convert-content.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-convert/convert-content.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtY29udmVydC9jb252ZXJ0LWNvbnRlbnQudnVl"],"sourcesContent":["<template>\r\n <div class=\"message-convert-container\">\r\n <div\r\n v-if=\"convertFinished\"\r\n :class=\"{\r\n 'convert-content': true,\r\n 'occur': true,\r\n }\"\r\n >\r\n {{ convertText }}\r\n </div>\r\n <div\r\n :class=\"{\r\n 'loading': true,\r\n 'loading-end': convertFinished\r\n }\"\r\n >\r\n {{ TUITranslateService.t('TUIChat.转换中') }}...\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref, watch } from '../../../../../adapter-vue';\r\nimport {\r\n IMessageModel,\r\n TUITranslateService,\r\n} from '@tencentcloud/chat-uikit-engine';\r\nimport { convertor } from '../../../utils/convertVoiceToText';\r\n\r\ninterface IProps {\r\n message: IMessageModel;\r\n contentVisible: boolean;\r\n}\r\n\r\ninterface IEmits {\r\n (e: 'toggleErrorStatus', status: boolean): void;\r\n}\r\n\r\nconst emits = defineEmits<IEmits>();\r\nconst props = withDefaults(defineProps<IProps>(), {\r\n message: () => ({} as IMessageModel),\r\n isSingleConvert: false,\r\n});\r\n\r\nconst convertFinished = ref<boolean>(false);\r\nconst convertText = ref<string>('');\r\n\r\nwatch(() => props.contentVisible, (newVal: boolean) => {\r\n if (newVal) {\r\n convertor.get(props.message)\r\n .then((text) => {\r\n convertFinished.value = true;\r\n convertText.value = text;\r\n })\r\n .catch((err) => {\r\n convertFinished.value = true;\r\n emits('toggleErrorStatus', true);\r\n convertText.value = err.message;\r\n });\r\n }\r\n}, {\r\n immediate: true,\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.message-convert-container {\r\n min-height: 20px;\r\n min-width: 80px;\r\n position: relative;\r\n transition: width 0.15s ease-out, height 0.15s ease-out, ;\r\n font-size: 14px;\r\n\r\n .loading {\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n opacity: 1;\r\n transition: opacity 0.3s ease-out;\r\n\r\n &.loading-end {\r\n opacity: 0;\r\n }\r\n }\r\n\r\n .convert-content {\r\n opacity: 0;\r\n\r\n &.occur {\r\n animation: occur 0.3s ease-out 0.45s forwards;\r\n\r\n @keyframes occur {\r\n 100% {\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-convert/convert-content.vue'\nwx.createComponent(Component)"],"names":["ref","watch","convertor"],"mappings":";;;;;;;;;;;;AAuCA,UAAM,QAAQ;AACd,UAAM,QAAQ;AAKR,UAAA,kBAAkBA,kBAAa,KAAK;AACpC,UAAA,cAAcA,kBAAY,EAAE;AAElCC,kBAAAA,MAAM,MAAM,MAAM,gBAAgB,CAAC,WAAoB;AACrD,UAAI,QAAQ;AACVC,2DAAA,UAAU,IAAI,MAAM,OAAO,EACxB,KAAK,CAAC,SAAS;AACd,0BAAgB,QAAQ;AACxB,sBAAY,QAAQ;AAAA,QAAA,CACrB,EACA,MAAM,CAAC,QAAQ;AACd,0BAAgB,QAAQ;AACxB,gBAAM,qBAAqB,IAAI;AAC/B,sBAAY,QAAQ,IAAI;AAAA,QAAA,CACzB;AAAA,MACL;AAAA,IAAA,GACC;AAAA,MACD,WAAW;AAAA,IAAA,CACZ;;;;;;;;;;;;;;AC9DD,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-convert/index.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-convert/index.vue?type=component"],"sourcesContent":["<template>\n <div\n v-if=\"convertVisible\"\n ref=\"convertWrapperRef\"\n :class=\"{\n 'message-convert': true,\n 'reverse': props.message.flow === 'out',\n 'error': hasConvertError,\n }\"\n >\n <ConvertContent\n :message=\"props.message\"\n :contentVisible=\"convertVisible\"\n :isSingleConvert=\"isSingleConvert\"\n :convertWrapperRef=\"convertWrapperRef\"\n @toggleErrorStatus=\"toggleErrorStatus\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, onMounted, onUnmounted } from '../../../../../adapter-vue';\nimport {\n TUIStore,\n StoreName,\n IMessageModel,\n} from '@tencentcloud/chat-uikit-engine';\nimport ConvertContent from './convert-content.vue';\nimport { IConvertInfo } from '../../../../../interface';\n\ninterface IProps {\n message: IMessageModel;\n}\n\nconst props = withDefaults(defineProps<IProps>(), {\n message: () => ({} as IMessageModel),\n});\n\nconst convertVisible = ref<boolean>(false);\nconst hasConvertError = ref<boolean>(false);\nconst convertWrapperRef = ref<HTMLDivElement>();\n\nlet isSingleConvert = true;\n\nonMounted(() => {\n TUIStore.watch(StoreName.CHAT, {\n voiceToTextInfo: onMessageConvertUpdated,\n });\n});\n\nonUnmounted(() => {\n TUIStore.unwatch(StoreName.CHAT, {\n voiceToTextInfo: onMessageConvertUpdated,\n });\n});\n\nfunction toggleErrorStatus(hasError: boolean) {\n hasConvertError.value = hasError;\n}\n\nfunction onMessageConvertUpdated(info: Map<string, IConvertInfo[]>) {\n if (info === undefined) return;\n isSingleConvert = false;\n const convertInfoList = info.get(props.message.conversationID) || [];\n for (let i = 0; i < convertInfoList.length; ++i) {\n const { messageID, visible } = convertInfoList[i];\n if (messageID === props.message.ID && visible !== undefined) {\n if (convertInfoList.length === 1 && visible) {\n isSingleConvert = true;\n }\n hasConvertError.value = false;\n convertVisible.value = visible;\n break;\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.message-convert {\n margin-top: 4px;\n margin-left: 44px;\n padding: 10px;\n background-color: #f2f7ff;\n border-radius: 10px;\n display: flex;\n flex-direction: column !important;\n transition: background-color 0.15s ease-out;\n\n &.error {\n background-color: #ffdfdf;\n }\n}\n\n.message-convert.reverse {\n margin-right: 44px;\n margin-left: auto;\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-convert/index.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted","TUIStore","StoreName","onUnmounted"],"mappings":";;;;;;AA2BA,MAAA,iBAA2B,MAAA;;;;;;;AAO3B,UAAM,QAAQ;AAIR,UAAA,iBAAiBA,kBAAa,KAAK;AACnC,UAAA,kBAAkBA,kBAAa,KAAK;AAC1C,UAAM,oBAAoBA,cAAAA;AAE1B,QAAI,kBAAkB;AAEtBC,kBAAAA,UAAU,MAAM;AACLC,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,iBAAiB;AAAA,MAAA,CAClB;AAAA,IAAA,CACF;AAEDC,kBAAAA,YAAY,MAAM;AACPF,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,iBAAiB;AAAA,MAAA,CAClB;AAAA,IAAA,CACF;AAED,aAAS,kBAAkB,UAAmB;AAC5C,sBAAgB,QAAQ;AAAA,IAC1B;AAEA,aAAS,wBAAwB,MAAmC;AAClE,UAAI,SAAS;AAAW;AACN,wBAAA;AAClB,YAAM,kBAAkB,KAAK,IAAI,MAAM,QAAQ,cAAc,KAAK;AAClE,eAAS,IAAI,GAAG,IAAI,gBAAgB,QAAQ,EAAE,GAAG;AAC/C,cAAM,EAAE,WAAW,QAAQ,IAAI,gBAAgB,CAAC;AAChD,YAAI,cAAc,MAAM,QAAQ,MAAM,YAAY,QAAW;AACvD,cAAA,gBAAgB,WAAW,KAAK,SAAS;AACzB,8BAAA;AAAA,UACpB;AACA,0BAAgB,QAAQ;AACxB,yBAAe,QAAQ;AACvB;AAAA,QACF;AAAA,MACF;AAAA,IACF;;;;;;;;;;;;;;;;;;;AC1EA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-convert/index.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtY29udmVydC9pbmRleC52dWU"],"sourcesContent":["<template>\r\n <div\r\n v-if=\"convertVisible\"\r\n ref=\"convertWrapperRef\"\r\n :class=\"{\r\n 'message-convert': true,\r\n 'reverse': props.message.flow === 'out',\r\n 'error': hasConvertError,\r\n }\"\r\n >\r\n <ConvertContent\r\n :message=\"props.message\"\r\n :contentVisible=\"convertVisible\"\r\n :isSingleConvert=\"isSingleConvert\"\r\n :convertWrapperRef=\"convertWrapperRef\"\r\n @toggleErrorStatus=\"toggleErrorStatus\"\r\n />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref, onMounted, onUnmounted } from '../../../../../adapter-vue';\r\nimport {\r\n TUIStore,\r\n StoreName,\r\n IMessageModel,\r\n} from '@tencentcloud/chat-uikit-engine';\r\nimport ConvertContent from './convert-content.vue';\r\nimport { IConvertInfo } from '../../../../../interface';\r\n\r\ninterface IProps {\r\n message: IMessageModel;\r\n}\r\n\r\nconst props = withDefaults(defineProps<IProps>(), {\r\n message: () => ({} as IMessageModel),\r\n});\r\n\r\nconst convertVisible = ref<boolean>(false);\r\nconst hasConvertError = ref<boolean>(false);\r\nconst convertWrapperRef = ref<HTMLDivElement>();\r\n\r\nlet isSingleConvert = true;\r\n\r\nonMounted(() => {\r\n TUIStore.watch(StoreName.CHAT, {\r\n voiceToTextInfo: onMessageConvertUpdated,\r\n });\r\n});\r\n\r\nonUnmounted(() => {\r\n TUIStore.unwatch(StoreName.CHAT, {\r\n voiceToTextInfo: onMessageConvertUpdated,\r\n });\r\n});\r\n\r\nfunction toggleErrorStatus(hasError: boolean) {\r\n hasConvertError.value = hasError;\r\n}\r\n\r\nfunction onMessageConvertUpdated(info: Map<string, IConvertInfo[]>) {\r\n if (info === undefined) return;\r\n isSingleConvert = false;\r\n const convertInfoList = info.get(props.message.conversationID) || [];\r\n for (let i = 0; i < convertInfoList.length; ++i) {\r\n const { messageID, visible } = convertInfoList[i];\r\n if (messageID === props.message.ID && visible !== undefined) {\r\n if (convertInfoList.length === 1 && visible) {\r\n isSingleConvert = true;\r\n }\r\n hasConvertError.value = false;\r\n convertVisible.value = visible;\r\n break;\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.message-convert {\r\n margin-top: 4px;\r\n margin-left: 44px;\r\n padding: 10px;\r\n background-color: #f2f7ff;\r\n border-radius: 10px;\r\n display: flex;\r\n flex-direction: column !important;\r\n transition: background-color 0.15s ease-out;\r\n\r\n &.error {\r\n background-color: #ffdfdf;\r\n }\r\n}\r\n\r\n.message-convert.reverse {\r\n margin-right: 44px;\r\n margin-left: auto;\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-convert/index.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted","TUIStore","StoreName","onUnmounted"],"mappings":";;;;;;AA2BA,MAAA,iBAA2B,MAAA;;;;;;;AAO3B,UAAM,QAAQ;AAIR,UAAA,iBAAiBA,kBAAa,KAAK;AACnC,UAAA,kBAAkBA,kBAAa,KAAK;AAC1C,UAAM,oBAAoBA,cAAAA;AAE1B,QAAI,kBAAkB;AAEtBC,kBAAAA,UAAU,MAAM;AACLC,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,iBAAiB;AAAA,MAAA,CAClB;AAAA,IAAA,CACF;AAEDC,kBAAAA,YAAY,MAAM;AACPF,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,iBAAiB;AAAA,MAAA,CAClB;AAAA,IAAA,CACF;AAED,aAAS,kBAAkB,UAAmB;AAC5C,sBAAgB,QAAQ;AAAA,IAC1B;AAEA,aAAS,wBAAwB,MAAmC;AAClE,UAAI,SAAS;AAAW;AACN,wBAAA;AAClB,YAAM,kBAAkB,KAAK,IAAI,MAAM,QAAQ,cAAc,KAAK;AAClE,eAAS,IAAI,GAAG,IAAI,gBAAgB,QAAQ,EAAE,GAAG;AAC/C,cAAM,EAAE,WAAW,QAAQ,IAAI,gBAAgB,CAAC;AAChD,YAAI,cAAc,MAAM,QAAQ,MAAM,YAAY,QAAW;AACvD,cAAA,gBAAgB,WAAW,KAAK,SAAS;AACzB,8BAAA;AAAA,UACpB;AACA,0BAAgB,QAAQ;AACxB,yBAAe,QAAQ;AACvB;AAAA,QACF;AAAA,MACF;AAAA,IACF;;;;;;;;;;;;;;;;;;;AC1EA,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-face.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-face.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-face.vue?type=component"],"sourcesContent":["<template>\n <div\n class=\"message-image\"\n >\n <img\n mode=\"aspectFit\"\n class=\"message-image\"\n :src=\"url\"\n >\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, onMounted } from '../../../../adapter-vue';\nimport { CUSTOM_BIG_EMOJI_URL } from '../../emoji-config';\n\nconst props = defineProps({\n content: {\n type: Object,\n default: () => ({}),\n },\n});\n\nconst url = ref(props.content.url);\n\nonMounted(() => {\n if (props.content.type === 'custom') {\n if (!CUSTOM_BIG_EMOJI_URL) {\n uni.__f__('warn','at TUIKit/components/TUIChat/message-list/message-elements/message-face.vue:29','CUSTOM_BIG_EMOJI_URL is required for custom emoji, please check your CUSTOM_BIG_EMOJI_URL.');\n } else {\n url.value = CUSTOM_BIG_EMOJI_URL + props.content.name;\n }\n }\n});\n</script>\n\n<style lang=\"scss\" scoped>\n@import \"../../../../assets/styles/common\";\n\n.message-image {\n width: 80px;\n height: 80px;\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-face.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted","uni"],"mappings":";;;;;;;;;;;;;AAgBA,UAAM,QAAQ;AAOd,UAAM,MAAMA,cAAA,IAAI,MAAM,QAAQ,GAAG;AAEjCC,kBAAAA,UAAU,MAAM;AACV,UAAA,MAAM,QAAQ,SAAS,UAAU;AACR;AACrBC,wBAAAA,MAAA,MAAM,QAAO,kFAAiF,4FAA4F;AAAA,QAGhM;AAAA,MACF;AAAA,IAAA,CACD;;;;;;;;;AChCD,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-face.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-face.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtZmFjZS52dWU"],"sourcesContent":["<template>\r\n <div\r\n class=\"message-image\"\r\n >\r\n <img\r\n mode=\"aspectFit\"\r\n class=\"message-image\"\r\n :src=\"url\"\r\n >\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref, onMounted } from '../../../../adapter-vue';\r\nimport { CUSTOM_BIG_EMOJI_URL } from '../../emoji-config';\r\n\r\nconst props = defineProps({\r\n content: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n});\r\n\r\nconst url = ref(props.content.url);\r\n\r\nonMounted(() => {\r\n if (props.content.type === 'custom') {\r\n if (!CUSTOM_BIG_EMOJI_URL) {\r\n uni.__f__('warn','at TUIKit/components/TUIChat/message-list/message-elements/message-face.vue:29','CUSTOM_BIG_EMOJI_URL is required for custom emoji, please check your CUSTOM_BIG_EMOJI_URL.');\r\n } else {\r\n url.value = CUSTOM_BIG_EMOJI_URL + props.content.name;\r\n }\r\n }\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"../../../../assets/styles/common\";\r\n\r\n.message-image {\r\n width: 80px;\r\n height: 80px;\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-face.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted","uni"],"mappings":";;;;;;;;;;;;;;AAgBA,UAAM,QAAQ;AAOd,UAAM,MAAMA,cAAA,IAAI,MAAM,QAAQ,GAAG;AAEjCC,kBAAAA,UAAU,MAAM;AACV,UAAA,MAAM,QAAQ,SAAS,UAAU;AACR;AACrBC,wBAAAA,MAAA,MAAM,QAAO,kFAAiF,4FAA4F;AAAA,QAGhM;AAAA,MACF;AAAA,IAAA,CACD;;;;;;;;;AChCD,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-file.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-file.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-file.vue?type=component"],"sourcesContent":["<template>\n <div\n class=\"file-message-montainer\"\n :title=\"TUITranslateService.t('TUIChat.单击下载')\"\n @click=\"download\"\n >\n <Icon\n :file=\"files\"\n class=\"file-icon\"\n />\n <div>\n <div>{{ props.content.name }}</div>\n <div>{{ props.content.size }}</div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { withDefaults } from '../../../../adapter-vue';\nimport { TUITranslateService, IMessageModel } from '@tencentcloud/chat-uikit-engine';\nimport Icon from '../../../common/Icon.vue';\nimport files from '../../../../assets/icon/file-light.svg';\nimport type { IFileMessageContent } from '../../../../interface';\n\nconst props = withDefaults(\n defineProps<{\n content: IFileMessageContent;\n messageItem: IMessageModel;\n }>(),\n {\n content: () => ({} as IFileMessageContent),\n messageItem: () => ({} as IMessageModel),\n },\n);\n\nconst download = () => {\n if (props.messageItem.hasRiskContent) {\n return;\n }\n const option = {\n mode: 'cors',\n headers: new Headers({\n 'Content-Type': 'application/x-www-form-urlencoded',\n }),\n } as RequestInit;\n // If the browser supports fetch, use blob to download, so as to avoid the browser clicking the a tag and jumping to the preview of the new page\n if ((window as any)?.fetch) {\n fetch(props.content.url, option)\n .then(res => res.blob())\n .then((blob) => {\n const a = document.createElement('a');\n const url = window.URL.createObjectURL(blob);\n a.href = url;\n a.download = props.content.name;\n a.click();\n });\n } else {\n const a = document.createElement('a');\n a.href = props.content.url;\n a.target = '_blank';\n a.download = props.content.name;\n a.click();\n }\n};\n</script>\n<style lang=\"scss\" scoped>\n@import \"../../../../assets/styles/common\";\n\n.file-message-montainer {\n display: flex;\n flex-direction: row;\n cursor: pointer;\n\n .file-icon {\n margin: auto 8px;\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-file.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;AAoBA,MAAA,OAAiB,MAAA;;;;;;;;AAIjB,UAAM,QAAQ;AAWd,UAAM,WAAW,MAAM;AACjB,UAAA,MAAM,YAAY,gBAAgB;AACpC;AAAA,MACF;AACA,YAAM,SAAS;AAAA,QACb,MAAM;AAAA,QACN,SAAS,IAAI,QAAQ;AAAA,UACnB,gBAAgB;AAAA,QAAA,CACjB;AAAA,MAAA;AAGH,UAAK,iCAAgB,OAAO;AAC1B,cAAM,MAAM,QAAQ,KAAK,MAAM,EAC5B,KAAK,CAAO,QAAA,IAAI,KAAK,CAAC,EACtB,KAAK,CAAC,SAAS;AACR,gBAAA,IAAI,SAAS,cAAc,GAAG;AACpC,gBAAM,MAAM,OAAO,IAAI,gBAAgB,IAAI;AAC3C,YAAE,OAAO;AACP,YAAA,WAAW,MAAM,QAAQ;AAC3B,YAAE,MAAM;AAAA,QAAA,CACT;AAAA,MAAA,OACE;AACC,cAAA,IAAI,SAAS,cAAc,GAAG;AAClC,UAAA,OAAO,MAAM,QAAQ;AACvB,UAAE,SAAS;AACT,UAAA,WAAW,MAAM,QAAQ;AAC3B,UAAE,MAAM;AAAA,MACV;AAAA,IAAA;;;;;;;;;;;;;;;AC7DF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-file.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-file.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtZmlsZS52dWU"],"sourcesContent":["<template>\r\n <div\r\n class=\"file-message-montainer\"\r\n :title=\"TUITranslateService.t('TUIChat.单击下载')\"\r\n @click=\"download\"\r\n >\r\n <Icon\r\n :file=\"files\"\r\n class=\"file-icon\"\r\n />\r\n <div>\r\n <div>{{ props.content.name }}</div>\r\n <div>{{ props.content.size }}</div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { withDefaults } from '../../../../adapter-vue';\r\nimport { TUITranslateService, IMessageModel } from '@tencentcloud/chat-uikit-engine';\r\nimport Icon from '../../../common/Icon.vue';\r\nimport files from '../../../../assets/icon/file-light.svg';\r\nimport type { IFileMessageContent } from '../../../../interface';\r\n\r\nconst props = withDefaults(\r\n defineProps<{\r\n content: IFileMessageContent;\r\n messageItem: IMessageModel;\r\n }>(),\r\n {\r\n content: () => ({} as IFileMessageContent),\r\n messageItem: () => ({} as IMessageModel),\r\n },\r\n);\r\n\r\nconst download = () => {\r\n if (props.messageItem.hasRiskContent) {\r\n return;\r\n }\r\n const option = {\r\n mode: 'cors',\r\n headers: new Headers({\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n }),\r\n } as RequestInit;\r\n // If the browser supports fetch, use blob to download, so as to avoid the browser clicking the a tag and jumping to the preview of the new page\r\n if ((window as any)?.fetch) {\r\n fetch(props.content.url, option)\r\n .then(res => res.blob())\r\n .then((blob) => {\r\n const a = document.createElement('a');\r\n const url = window.URL.createObjectURL(blob);\r\n a.href = url;\r\n a.download = props.content.name;\r\n a.click();\r\n });\r\n } else {\r\n const a = document.createElement('a');\r\n a.href = props.content.url;\r\n a.target = '_blank';\r\n a.download = props.content.name;\r\n a.click();\r\n }\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n@import \"../../../../assets/styles/common\";\r\n\r\n.file-message-montainer {\r\n display: flex;\r\n flex-direction: row;\r\n cursor: pointer;\r\n\r\n .file-icon {\r\n margin: auto 8px;\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-file.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;AAoBA,MAAA,OAAiB,MAAA;;;;;;;;AAIjB,UAAM,QAAQ;AAWd,UAAM,WAAW,MAAM;AACjB,UAAA,MAAM,YAAY,gBAAgB;AACpC;AAAA,MACF;AACA,YAAM,SAAS;AAAA,QACb,MAAM;AAAA,QACN,SAAS,IAAI,QAAQ;AAAA,UACnB,gBAAgB;AAAA,QAAA,CACjB;AAAA,MAAA;AAGH,UAAK,iCAAgB,OAAO;AAC1B,cAAM,MAAM,QAAQ,KAAK,MAAM,EAC5B,KAAK,CAAO,QAAA,IAAI,KAAK,CAAC,EACtB,KAAK,CAAC,SAAS;AACR,gBAAA,IAAI,SAAS,cAAc,GAAG;AACpC,gBAAM,MAAM,OAAO,IAAI,gBAAgB,IAAI;AAC3C,YAAE,OAAO;AACP,YAAA,WAAW,MAAM,QAAQ;AAC3B,YAAE,MAAM;AAAA,QAAA,CACT;AAAA,MAAA,OACE;AACC,cAAA,IAAI,SAAS,cAAc,GAAG;AAClC,UAAA,OAAO,MAAM,QAAQ;AACvB,UAAE,SAAS;AACT,UAAA,WAAW,MAAM,QAAQ;AAC3B,UAAE,MAAM;AAAA,MACV;AAAA,IAAA;;;;;;;;;;;;;;;AC7DF,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-image.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-image.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-image.vue?type=component"],"sourcesContent":["<template>\n <div\n class=\"image-container\"\n @click=\"handleImagePreview\"\n >\n <image\n class=\"message-image\"\n mode=\"aspectFit\"\n :src=\"props.content.url\"\n :style=\"{ width: imageStyles.width, height: imageStyles.height }\"\n @load=\"imageLoad\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { watchEffect, ref } from '../../../../adapter-vue';\nimport type { IMessageModel } from '@tencentcloud/chat-uikit-engine';\nimport type { IImageMessageContent } from '../../../../interface';\n\ninterface IProps {\n content: IImageMessageContent;\n messageItem: IMessageModel;\n}\ninterface IEmit {\n (key: 'previewImage'): void;\n}\n\nconst emits = defineEmits<IEmit>();\nconst props = withDefaults(\n defineProps<IProps>(),\n {\n content: () => ({}),\n messageItem: () => ({} as IMessageModel),\n },\n);\n\nconst DEFAULT_MAX_SIZE = 155;\nconst imageStyles = ref({ width: 'auto', height: 'auto' });\n\nconst genImageStyles = (value: { width?: any; height?: any }) => {\n const { width, height } = value;\n if (width === 0 || height === 0) {\n return;\n }\n\n let imageWidth = 0;\n let imageHeight = 0;\n if (width >= height) {\n imageWidth = DEFAULT_MAX_SIZE;\n imageHeight = (DEFAULT_MAX_SIZE * height) / width;\n } else {\n imageWidth = (DEFAULT_MAX_SIZE * width) / height;\n imageHeight = DEFAULT_MAX_SIZE;\n }\n imageStyles.value.width = imageWidth + 'px';\n imageStyles.value.height = imageHeight + 'px';\n};\n\nwatchEffect(() => {\n genImageStyles(props.content);\n});\n\nconst imageLoad = (event: Event) => {\n genImageStyles(event.detail);\n};\n\nconst handleImagePreview = () => {\n if (props.messageItem?.status === 'success' || props.messageItem.progress === 1) {\n emits('previewImage');\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.image-container {\n position: relative;\n background-color: #f4f4f4;\n font-size: 0;\n\n .message-image {\n max-width: 150px;\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-image.vue'\nwx.createComponent(Component)"],"names":["ref","watchEffect"],"mappings":";;;AAqCA,MAAM,mBAAmB;;;;;;;;;AATzB,UAAM,QAAQ;AACd,UAAM,QAAQ;AASd,UAAM,cAAcA,cAAAA,IAAI,EAAE,OAAO,QAAQ,QAAQ,QAAQ;AAEnD,UAAA,iBAAiB,CAAC,UAAyC;AACzD,YAAA,EAAE,OAAO,OAAW,IAAA;AACtB,UAAA,UAAU,KAAK,WAAW,GAAG;AAC/B;AAAA,MACF;AAEA,UAAI,aAAa;AACjB,UAAI,cAAc;AAClB,UAAI,SAAS,QAAQ;AACN,qBAAA;AACb,sBAAe,mBAAmB,SAAU;AAAA,MAAA,OACvC;AACL,qBAAc,mBAAmB,QAAS;AAC5B,sBAAA;AAAA,MAChB;AACY,kBAAA,MAAM,QAAQ,aAAa;AAC3B,kBAAA,MAAM,SAAS,cAAc;AAAA,IAAA;AAG3CC,kBAAAA,YAAY,MAAM;AAChB,qBAAe,MAAM,OAAO;AAAA,IAAA,CAC7B;AAEK,UAAA,YAAY,CAAC,UAAiB;AAClC,qBAAe,MAAM,MAAM;AAAA,IAAA;AAG7B,UAAM,qBAAqB,MAAM;;AAC/B,YAAI,WAAM,gBAAN,mBAAmB,YAAW,aAAa,MAAM,YAAY,aAAa,GAAG;AAC/E,cAAM,cAAc;AAAA,MACtB;AAAA,IAAA;;;;;;;;;;;;;ACrEF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-image.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-image.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtaW1hZ2UudnVl"],"sourcesContent":["<template>\r\n <div\r\n class=\"image-container\"\r\n @click=\"handleImagePreview\"\r\n >\r\n <image\r\n class=\"message-image\"\r\n mode=\"aspectFit\"\r\n :src=\"props.content.url\"\r\n :style=\"{ width: imageStyles.width, height: imageStyles.height }\"\r\n @load=\"imageLoad\"\r\n />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { watchEffect, ref } from '../../../../adapter-vue';\r\nimport type { IMessageModel } from '@tencentcloud/chat-uikit-engine';\r\nimport type { IImageMessageContent } from '../../../../interface';\r\n\r\ninterface IProps {\r\n content: IImageMessageContent;\r\n messageItem: IMessageModel;\r\n}\r\ninterface IEmit {\r\n (key: 'previewImage'): void;\r\n}\r\n\r\nconst emits = defineEmits<IEmit>();\r\nconst props = withDefaults(\r\n defineProps<IProps>(),\r\n {\r\n content: () => ({}),\r\n messageItem: () => ({} as IMessageModel),\r\n },\r\n);\r\n\r\nconst DEFAULT_MAX_SIZE = 155;\r\nconst imageStyles = ref({ width: 'auto', height: 'auto' });\r\n\r\nconst genImageStyles = (value: { width?: any; height?: any }) => {\r\n const { width, height } = value;\r\n if (width === 0 || height === 0) {\r\n return;\r\n }\r\n\r\n let imageWidth = 0;\r\n let imageHeight = 0;\r\n if (width >= height) {\r\n imageWidth = DEFAULT_MAX_SIZE;\r\n imageHeight = (DEFAULT_MAX_SIZE * height) / width;\r\n } else {\r\n imageWidth = (DEFAULT_MAX_SIZE * width) / height;\r\n imageHeight = DEFAULT_MAX_SIZE;\r\n }\r\n imageStyles.value.width = imageWidth + 'px';\r\n imageStyles.value.height = imageHeight + 'px';\r\n};\r\n\r\nwatchEffect(() => {\r\n genImageStyles(props.content);\r\n});\r\n\r\nconst imageLoad = (event: Event) => {\r\n genImageStyles(event.detail);\r\n};\r\n\r\nconst handleImagePreview = () => {\r\n if (props.messageItem?.status === 'success' || props.messageItem.progress === 1) {\r\n emits('previewImage');\r\n }\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.image-container {\r\n position: relative;\r\n background-color: #f4f4f4;\r\n font-size: 0;\r\n\r\n .message-image {\r\n max-width: 150px;\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-image.vue'\nwx.createComponent(Component)"],"names":["ref","watchEffect"],"mappings":";;;AAqCA,MAAM,mBAAmB;;;;;;;;;AATzB,UAAM,QAAQ;AACd,UAAM,QAAQ;AASd,UAAM,cAAcA,cAAAA,IAAI,EAAE,OAAO,QAAQ,QAAQ,QAAQ;AAEnD,UAAA,iBAAiB,CAAC,UAAyC;AACzD,YAAA,EAAE,OAAO,OAAW,IAAA;AACtB,UAAA,UAAU,KAAK,WAAW,GAAG;AAC/B;AAAA,MACF;AAEA,UAAI,aAAa;AACjB,UAAI,cAAc;AAClB,UAAI,SAAS,QAAQ;AACN,qBAAA;AACb,sBAAe,mBAAmB,SAAU;AAAA,MAAA,OACvC;AACL,qBAAc,mBAAmB,QAAS;AAC5B,sBAAA;AAAA,MAChB;AACY,kBAAA,MAAM,QAAQ,aAAa;AAC3B,kBAAA,MAAM,SAAS,cAAc;AAAA,IAAA;AAG3CC,kBAAAA,YAAY,MAAM;AAChB,qBAAe,MAAM,OAAO;AAAA,IAAA,CAC7B;AAEK,UAAA,YAAY,CAAC,UAAiB;AAClC,qBAAe,MAAM,MAAM;AAAA,IAAA;AAG7B,UAAM,qBAAqB,MAAM;;AAC/B,YAAI,WAAM,gBAAN,mBAAmB,YAAW,aAAa,MAAM,YAAY,aAAa,GAAG;AAC/E,cAAM,cAAc;AAAA,MACtB;AAAA,IAAA;;;;;;;;;;;;;ACrEF,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-location.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-location.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-location.vue?type=component"],"sourcesContent":["<template>\n <a\n class=\"message-location\"\n :href=\"data.href\"\n target=\"_blank\"\n title=\"点击查看详情\"\n >\n <span class=\"el-icon-location-outline\">{{ data.description }}</span>\n <img :src=\"data.url\">\n </a>\n</template>\n\n<script lang=\"ts\" setup>\nimport { watchEffect, ref } from '../../../../adapter-vue';\nconst props = defineProps({\n content: {\n type: Object,\n default: () => ({}),\n },\n});\nconst data = ref();\nwatchEffect(() => {\n data.value = props.content;\n});\n</script>\n<style lang=\"scss\" scoped>\n@import \"../../../../assets/styles/common\";\n\n.message-location {\n display: flex;\n flex-direction: column;\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-location.vue'\nwx.createComponent(Component)"],"names":["ref","watchEffect"],"mappings":";;;;;;;;;;;;AAcA,UAAM,QAAQ;AAMd,UAAM,OAAOA,cAAAA;AACbC,kBAAAA,YAAY,MAAM;AAChB,WAAK,QAAQ,MAAM;AAAA,IAAA,CACpB;;;;;;;;;;;ACtBD,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-location.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-location.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtbG9jYXRpb24udnVl"],"sourcesContent":["<template>\r\n <a\r\n class=\"message-location\"\r\n :href=\"data.href\"\r\n target=\"_blank\"\r\n title=\"点击查看详情\"\r\n >\r\n <span class=\"el-icon-location-outline\">{{ data.description }}</span>\r\n <img :src=\"data.url\">\r\n </a>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { watchEffect, ref } from '../../../../adapter-vue';\r\nconst props = defineProps({\r\n content: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n});\r\nconst data = ref();\r\nwatchEffect(() => {\r\n data.value = props.content;\r\n});\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n@import \"../../../../assets/styles/common\";\r\n\r\n.message-location {\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-location.vue'\nwx.createComponent(Component)"],"names":["ref","watchEffect"],"mappings":";;;;;;;;;;;;AAcA,UAAM,QAAQ;AAMd,UAAM,OAAOA,cAAAA;AACbC,kBAAAA,YAAY,MAAM;AAChB,WAAK,QAAQ,MAAM;AAAA,IAAA,CACpB;;;;;;;;;;;ACtBD,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"interface.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-quote/interface.ts"],"sourcesContent":["export interface IQuoteContent {\n messageAbstract: string;\n messageID: string;\n messageSender: string;\n messageSequence: number;\n messageTime: number;\n messageType: number;\n version: number;\n}\n\nexport interface ICloudCustomData {\n messageReply: IQuoteContent;\n}\n\nexport enum MessageQuoteTypeEnum {\n /**\n * none message\n */\n TYPE_NONE = 0,\n /**\n * text message\n */\n TYPE_TEXT = 1,\n /**\n * custom message\n */\n TYPE_CUSTOM = 2,\n /**\n * image message\n */\n TYPE_IMAGE = 3,\n /**\n * voice message\n */\n TYPE_SOUND = 4,\n /**\n * video message\n */\n TYPE_VIDEO = 5,\n /**\n * file message\n */\n TYPE_FILE = 6,\n /**\n * location message\n */\n TYPE_LOCATION = 7,\n /**\n * animation face message\n */\n TYPE_FACE = 8,\n /**\n * group tips message (save in message list)\n */\n TYPE_GROUP_TIPS = 9,\n /**\n * merge forward message\n */\n TYPE_MERGER = 10,\n}\n"],"names":["MessageQuoteTypeEnum"],"mappings":";AAcY,IAAA,yCAAAA,0BAAL;AAILA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,iBAAc,CAAd,IAAA;AAIAA,wBAAAA,sBAAA,gBAAa,CAAb,IAAA;AAIAA,wBAAAA,sBAAA,gBAAa,CAAb,IAAA;AAIAA,wBAAAA,sBAAA,gBAAa,CAAb,IAAA;AAIAA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,mBAAgB,CAAhB,IAAA;AAIAA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,qBAAkB,CAAlB,IAAA;AAIAA,wBAAAA,sBAAA,iBAAc,EAAd,IAAA;AA5CUA,SAAAA;AAAA,GAAA,wBAAA,CAAA,CAAA;;"}
{"version":3,"file":"interface.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-quote/interface.ts"],"sourcesContent":["export interface IQuoteContent {\r\n messageAbstract: string;\r\n messageID: string;\r\n messageSender: string;\r\n messageSequence: number;\r\n messageTime: number;\r\n messageType: number;\r\n version: number;\r\n}\r\n\r\nexport interface ICloudCustomData {\r\n messageReply: IQuoteContent;\r\n}\r\n\r\nexport enum MessageQuoteTypeEnum {\r\n /**\r\n * none message\r\n */\r\n TYPE_NONE = 0,\r\n /**\r\n * text message\r\n */\r\n TYPE_TEXT = 1,\r\n /**\r\n * custom message\r\n */\r\n TYPE_CUSTOM = 2,\r\n /**\r\n * image message\r\n */\r\n TYPE_IMAGE = 3,\r\n /**\r\n * voice message\r\n */\r\n TYPE_SOUND = 4,\r\n /**\r\n * video message\r\n */\r\n TYPE_VIDEO = 5,\r\n /**\r\n * file message\r\n */\r\n TYPE_FILE = 6,\r\n /**\r\n * location message\r\n */\r\n TYPE_LOCATION = 7,\r\n /**\r\n * animation face message\r\n */\r\n TYPE_FACE = 8,\r\n /**\r\n * group tips message (save in message list)\r\n */\r\n TYPE_GROUP_TIPS = 9,\r\n /**\r\n * merge forward message\r\n */\r\n TYPE_MERGER = 10,\r\n}\r\n"],"names":["MessageQuoteTypeEnum"],"mappings":";AAcY,IAAA,yCAAAA,0BAAL;AAILA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,iBAAc,CAAd,IAAA;AAIAA,wBAAAA,sBAAA,gBAAa,CAAb,IAAA;AAIAA,wBAAAA,sBAAA,gBAAa,CAAb,IAAA;AAIAA,wBAAAA,sBAAA,gBAAa,CAAb,IAAA;AAIAA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,mBAAgB,CAAhB,IAAA;AAIAA,wBAAAA,sBAAA,eAAY,CAAZ,IAAA;AAIAA,wBAAAA,sBAAA,qBAAkB,CAAlB,IAAA;AAIAA,wBAAAA,sBAAA,iBAAc,EAAd,IAAA;AA5CUA,SAAAA;AAAA,GAAA,wBAAA,CAAA,CAAA;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-timestamp.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-timestamp.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-timestamp.vue?type=component"],"sourcesContent":["<template>\n <div\n v-if=\"timestampShowFlag\"\n class=\"message-timestamp\"\n >\n {{ timestampShowContent }}\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { toRefs, ref, watch } from '../../../../adapter-vue';\nimport { calculateTimestamp } from '../../utils/utils';\n\nconst props = defineProps({\n currTime: {\n type: Number,\n default: 0,\n },\n prevTime: {\n type: Number,\n default: 0,\n },\n});\nconst { currTime, prevTime } = toRefs(props);\nconst timestampShowFlag = ref(false);\nconst timestampShowContent = ref('');\n\nconst handleItemTime = (currTime: number, prevTime: number) => {\n timestampShowFlag.value = false;\n if (currTime <= 0) {\n return '';\n } else if (!prevTime || prevTime <= 0) {\n timestampShowFlag.value = true;\n return calculateTimestamp(currTime * 1000);\n } else {\n const minDiffToShow = 10 * 60; // 10min 10*60s\n const diff = currTime - prevTime; // s\n if (diff >= minDiffToShow) {\n timestampShowFlag.value = true;\n return calculateTimestamp(currTime * 1000);\n }\n }\n return '';\n};\n\nwatch(\n () => [currTime.value, prevTime.value],\n (newVal: any, oldVal: any) => {\n if (newVal?.toString() === oldVal?.toString()) {\n return;\n } else {\n timestampShowContent.value = handleItemTime(\n currTime.value,\n prevTime.value,\n );\n }\n },\n {\n immediate: true,\n },\n);\n</script>\n<style lang=\"scss\" scoped>\n@import \"../../../../assets/styles/common\";\n\n.message-timestamp {\n margin: 10px auto;\n color: #999;\n font-size: 12px;\n overflow-wrap: anywhere;\n display: flex;\n align-items: center;\n text-align: center;\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-timestamp.vue'\nwx.createComponent(Component)"],"names":["toRefs","ref","currTime","prevTime","calculateTimestamp","watch"],"mappings":";;;;;;;;;;;;;;;;;AAYA,UAAM,QAAQ;AAUd,UAAM,EAAE,UAAU,SAAS,IAAIA,qBAAO,KAAK;AACrC,UAAA,oBAAoBC,kBAAI,KAAK;AAC7B,UAAA,uBAAuBA,kBAAI,EAAE;AAE7B,UAAA,iBAAiB,CAACC,WAAkBC,cAAqB;AAC7D,wBAAkB,QAAQ;AAC1B,UAAID,aAAY,GAAG;AACV,eAAA;AAAA,MACE,WAAA,CAACC,aAAYA,aAAY,GAAG;AACrC,0BAAkB,QAAQ;AACnB,eAAAC,sCAAA,mBAAmBF,YAAW,GAAI;AAAA,MAAA,OACpC;AACL,cAAM,gBAAgB,KAAK;AAC3B,cAAM,OAAOA,YAAWC;AACxB,YAAI,QAAQ,eAAe;AACzB,4BAAkB,QAAQ;AACnB,iBAAAC,sCAAA,mBAAmBF,YAAW,GAAI;AAAA,QAC3C;AAAA,MACF;AACO,aAAA;AAAA,IAAA;AAGTG,kBAAA;AAAA,MACE,MAAM,CAAC,SAAS,OAAO,SAAS,KAAK;AAAA,MACrC,CAAC,QAAa,WAAgB;AAC5B,aAAI,iCAAQ,iBAAe,iCAAQ,aAAY;AAC7C;AAAA,QAAA,OACK;AACL,+BAAqB,QAAQ;AAAA,YAC3B,SAAS;AAAA,YACT,SAAS;AAAA,UAAA;AAAA,QAEb;AAAA,MACF;AAAA,MACA;AAAA,QACE,WAAW;AAAA,MACb;AAAA,IAAA;;;;;;;;;;;ACzDF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-timestamp.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-timestamp.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtdGltZXN0YW1wLnZ1ZQ"],"sourcesContent":["<template>\r\n <div\r\n v-if=\"timestampShowFlag\"\r\n class=\"message-timestamp\"\r\n >\r\n {{ timestampShowContent }}\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { toRefs, ref, watch } from '../../../../adapter-vue';\r\nimport { calculateTimestamp } from '../../utils/utils';\r\n\r\nconst props = defineProps({\r\n currTime: {\r\n type: Number,\r\n default: 0,\r\n },\r\n prevTime: {\r\n type: Number,\r\n default: 0,\r\n },\r\n});\r\nconst { currTime, prevTime } = toRefs(props);\r\nconst timestampShowFlag = ref(false);\r\nconst timestampShowContent = ref('');\r\n\r\nconst handleItemTime = (currTime: number, prevTime: number) => {\r\n timestampShowFlag.value = false;\r\n if (currTime <= 0) {\r\n return '';\r\n } else if (!prevTime || prevTime <= 0) {\r\n timestampShowFlag.value = true;\r\n return calculateTimestamp(currTime * 1000);\r\n } else {\r\n const minDiffToShow = 10 * 60; // 10min 10*60s\r\n const diff = currTime - prevTime; // s\r\n if (diff >= minDiffToShow) {\r\n timestampShowFlag.value = true;\r\n return calculateTimestamp(currTime * 1000);\r\n }\r\n }\r\n return '';\r\n};\r\n\r\nwatch(\r\n () => [currTime.value, prevTime.value],\r\n (newVal: any, oldVal: any) => {\r\n if (newVal?.toString() === oldVal?.toString()) {\r\n return;\r\n } else {\r\n timestampShowContent.value = handleItemTime(\r\n currTime.value,\r\n prevTime.value,\r\n );\r\n }\r\n },\r\n {\r\n immediate: true,\r\n },\r\n);\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n@import \"../../../../assets/styles/common\";\r\n\r\n.message-timestamp {\r\n margin: 10px auto;\r\n color: #999;\r\n font-size: 12px;\r\n overflow-wrap: anywhere;\r\n display: flex;\r\n align-items: center;\r\n text-align: center;\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-timestamp.vue'\nwx.createComponent(Component)"],"names":["toRefs","ref","currTime","prevTime","calculateTimestamp","watch"],"mappings":";;;;;;;;;;;;;;;;;AAYA,UAAM,QAAQ;AAUd,UAAM,EAAE,UAAU,SAAS,IAAIA,qBAAO,KAAK;AACrC,UAAA,oBAAoBC,kBAAI,KAAK;AAC7B,UAAA,uBAAuBA,kBAAI,EAAE;AAE7B,UAAA,iBAAiB,CAACC,WAAkBC,cAAqB;AAC7D,wBAAkB,QAAQ;AAC1B,UAAID,aAAY,GAAG;AACV,eAAA;AAAA,MACE,WAAA,CAACC,aAAYA,aAAY,GAAG;AACrC,0BAAkB,QAAQ;AACnB,eAAAC,sCAAA,mBAAmBF,YAAW,GAAI;AAAA,MAAA,OACpC;AACL,cAAM,gBAAgB,KAAK;AAC3B,cAAM,OAAOA,YAAWC;AACxB,YAAI,QAAQ,eAAe;AACzB,4BAAkB,QAAQ;AACnB,iBAAAC,sCAAA,mBAAmBF,YAAW,GAAI;AAAA,QAC3C;AAAA,MACF;AACO,aAAA;AAAA,IAAA;AAGTG,kBAAA;AAAA,MACE,MAAM,CAAC,SAAS,OAAO,SAAS,KAAK;AAAA,MACrC,CAAC,QAAa,WAAgB;AAC5B,aAAI,iCAAQ,iBAAe,iCAAQ,aAAY;AAC7C;AAAA,QAAA,OACK;AACL,+BAAqB,QAAQ;AAAA,YAC3B,SAAS;AAAA,YACT,SAAS;AAAA,UAAA;AAAA,QAEb;AAAA,MACF;AAAA,MACA;AAAA,QACE,WAAW;AAAA,MACb;AAAA,IAAA;;;;;;;;;;;ACzDF,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-tip.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-tip.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-tip.vue?type=component"],"sourcesContent":["<template>\n <div class=\"message-tip\">\n <span>{{ tipContent }}</span>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from '../../../../adapter-vue';\nconst props = defineProps({\n content: {\n type: Object,\n default: () => ({}),\n },\n});\nconst tipContent = computed(() => props.content?.text || props.content?.custom || '');\n</script>\n<style lang=\"scss\" scoped>\n@import \"../../../../assets/styles/common\";\n\n.message-tip {\n margin: 0 auto;\n padding: 0 20px;\n color: #999;\n font-size: 12px;\n overflow-wrap: anywhere;\n display: flex;\n place-content: center center;\n align-items: center;\n text-align: center;\n margin-bottom: 10px;\n\n &-highlight {\n animation: highlight 1000ms infinite;\n\n @keyframes highlight {\n 50% {\n color: #ff9c19;\n }\n }\n\n @keyframes highlight {\n 50% {\n color: #ff9c19;\n }\n }\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-tip.vue'\nwx.createComponent(Component)"],"names":["computed"],"mappings":";;;;;;;;;;;;AAQA,UAAM,QAAQ;AAMR,UAAA,aAAaA,cAAAA,SAAS,MAAM;;AAAA,0BAAM,YAAN,mBAAe,WAAQ,WAAM,YAAN,mBAAe,WAAU;AAAA,KAAE;;;;;;;;;ACbpF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-tip.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-tip.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtdGlwLnZ1ZQ"],"sourcesContent":["<template>\r\n <div class=\"message-tip\">\r\n <span>{{ tipContent }}</span>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { computed } from '../../../../adapter-vue';\r\nconst props = defineProps({\r\n content: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n});\r\nconst tipContent = computed(() => props.content?.text || props.content?.custom || '');\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n@import \"../../../../assets/styles/common\";\r\n\r\n.message-tip {\r\n margin: 0 auto;\r\n padding: 0 20px;\r\n color: #999;\r\n font-size: 12px;\r\n overflow-wrap: anywhere;\r\n display: flex;\r\n place-content: center center;\r\n align-items: center;\r\n text-align: center;\r\n margin-bottom: 10px;\r\n\r\n &-highlight {\r\n animation: highlight 1000ms infinite;\r\n\r\n @keyframes highlight {\r\n 50% {\r\n color: #ff9c19;\r\n }\r\n }\r\n\r\n @keyframes highlight {\r\n 50% {\r\n color: #ff9c19;\r\n }\r\n }\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-tip.vue'\nwx.createComponent(Component)"],"names":["computed"],"mappings":";;;;;;;;;;;;AAQA,UAAM,QAAQ;AAMR,UAAA,aAAaA,cAAAA,SAAS,MAAM;;AAAA,0BAAM,YAAN,mBAAe,WAAQ,WAAM,YAAN,mBAAe,WAAU;AAAA,KAAE;;;;;;;;;ACbpF,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-translate/index.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-translate/index.vue?type=component"],"sourcesContent":["<template>\n <div\n v-if=\"translationVisible\"\n ref=\"translationWrapperRef\"\n :class=\"{\n 'message-translation': true,\n 'reverse': props.message.flow === 'out',\n 'error': hasTranslationError,\n }\"\n >\n <TranslationContent\n :message=\"props.message\"\n :translationContentVisible=\"translationVisible\"\n :translationWrapperRef=\"translationWrapperRef\"\n :isSingleTranslation=\"isSingleTranslation\"\n @toggleErrorStatus=\"toggleErrorStatus\"\n />\n <div class=\"copyright\">\n <Icon\n :file=\"checkIcon\"\n size=\"13px\"\n />\n <div class=\"copyright-text\">\n {{ TUITranslateService.t('TUIChat.由IM提供翻译支持') }}\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, onMounted, onUnmounted } from '../../../../../adapter-vue';\nimport {\n TUIStore,\n StoreName,\n IMessageModel,\n TUITranslateService,\n} from '@tencentcloud/chat-uikit-engine';\nimport Icon from '../../../../common/Icon.vue';\nimport TranslationContent from './translation-content.vue';\nimport checkIcon from '../../../../../assets/icon/check-sm.svg';\nimport { ITranslateInfo } from '../../../../../interface';\n\ninterface IProps {\n message: IMessageModel;\n}\n\nconst props = withDefaults(defineProps<IProps>(), {\n message: () => ({} as IMessageModel),\n});\n\nconst translationVisible = ref<boolean>(false);\nconst hasTranslationError = ref<boolean>(false);\n\nconst translationWrapperRef = ref<HTMLDivElement>();\n\nlet isSingleTranslation = true;\n\nonMounted(() => {\n TUIStore.watch(StoreName.CHAT, {\n translateTextInfo: onMessageTranslationUpdated,\n });\n});\n\nonUnmounted(() => {\n TUIStore.unwatch(StoreName.CHAT, {\n translateTextInfo: onMessageTranslationUpdated,\n });\n});\n\nfunction toggleErrorStatus(hasError: boolean) {\n hasTranslationError.value = hasError;\n}\n\nfunction onMessageTranslationUpdated(info: Map<string, ITranslateInfo[]>) {\n if (info === undefined) return;\n isSingleTranslation = false;\n const translationInfoList = info.get(props.message.conversationID) || [];\n for (let i = 0; i < translationInfoList.length; ++i) {\n const { messageID, visible } = translationInfoList[i];\n if (messageID === props.message.ID && visible !== undefined) {\n if (translationInfoList.length === 1 && visible) {\n isSingleTranslation = true;\n }\n hasTranslationError.value = false;\n translationVisible.value = visible;\n break;\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.message-translation {\n margin-top: 4px;\n margin-left: 44px;\n padding: 10px;\n background-color: #f2f7ff;\n border-radius: 10px;\n display: flex;\n flex-direction: column !important;\n transition: background-color 0.15s ease-out;\n\n &.error {\n background-color: #ffdfdf;\n }\n\n .copyright {\n display: flex;\n align-items: center;\n margin-top: 10px;\n\n .copyright-text {\n margin-left: 2px;\n font-size: 12px;\n color: #999;\n }\n }\n}\n\n.message-translation.reverse {\n margin-right: 44px;\n margin-left: auto;\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-translate/index.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted","TUIStore","StoreName","onUnmounted"],"mappings":";;;;;;;AAqCA,MAAA,OAAiB,MAAA;AACjB,MAAA,qBAA+B,MAAA;;;;;;;AAQ/B,UAAM,QAAQ;AAIR,UAAA,qBAAqBA,kBAAa,KAAK;AACvC,UAAA,sBAAsBA,kBAAa,KAAK;AAE9C,UAAM,wBAAwBA,cAAAA;AAE9B,QAAI,sBAAsB;AAE1BC,kBAAAA,UAAU,MAAM;AACLC,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,mBAAmB;AAAA,MAAA,CACpB;AAAA,IAAA,CACF;AAEDC,kBAAAA,YAAY,MAAM;AACPF,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,mBAAmB;AAAA,MAAA,CACpB;AAAA,IAAA,CACF;AAED,aAAS,kBAAkB,UAAmB;AAC5C,0BAAoB,QAAQ;AAAA,IAC9B;AAEA,aAAS,4BAA4B,MAAqC;AACxE,UAAI,SAAS;AAAW;AACF,4BAAA;AACtB,YAAM,sBAAsB,KAAK,IAAI,MAAM,QAAQ,cAAc,KAAK;AACtE,eAAS,IAAI,GAAG,IAAI,oBAAoB,QAAQ,EAAE,GAAG;AACnD,cAAM,EAAE,WAAW,QAAQ,IAAI,oBAAoB,CAAC;AACpD,YAAI,cAAc,MAAM,QAAQ,MAAM,YAAY,QAAW;AACvD,cAAA,oBAAoB,WAAW,KAAK,SAAS;AACzB,kCAAA;AAAA,UACxB;AACA,8BAAoB,QAAQ;AAC5B,6BAAmB,QAAQ;AAC3B;AAAA,QACF;AAAA,MACF;AAAA,IACF;;;;;;;;;;;;;;;;;;;;;;;;ACvFA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-translate/index.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtdHJhbnNsYXRlL2luZGV4LnZ1ZQ"],"sourcesContent":["<template>\r\n <div\r\n v-if=\"translationVisible\"\r\n ref=\"translationWrapperRef\"\r\n :class=\"{\r\n 'message-translation': true,\r\n 'reverse': props.message.flow === 'out',\r\n 'error': hasTranslationError,\r\n }\"\r\n >\r\n <TranslationContent\r\n :message=\"props.message\"\r\n :translationContentVisible=\"translationVisible\"\r\n :translationWrapperRef=\"translationWrapperRef\"\r\n :isSingleTranslation=\"isSingleTranslation\"\r\n @toggleErrorStatus=\"toggleErrorStatus\"\r\n />\r\n <div class=\"copyright\">\r\n <Icon\r\n :file=\"checkIcon\"\r\n size=\"13px\"\r\n />\r\n <div class=\"copyright-text\">\r\n {{ TUITranslateService.t('TUIChat.由IM提供翻译支持') }}\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref, onMounted, onUnmounted } from '../../../../../adapter-vue';\r\nimport {\r\n TUIStore,\r\n StoreName,\r\n IMessageModel,\r\n TUITranslateService,\r\n} from '@tencentcloud/chat-uikit-engine';\r\nimport Icon from '../../../../common/Icon.vue';\r\nimport TranslationContent from './translation-content.vue';\r\nimport checkIcon from '../../../../../assets/icon/check-sm.svg';\r\nimport { ITranslateInfo } from '../../../../../interface';\r\n\r\ninterface IProps {\r\n message: IMessageModel;\r\n}\r\n\r\nconst props = withDefaults(defineProps<IProps>(), {\r\n message: () => ({} as IMessageModel),\r\n});\r\n\r\nconst translationVisible = ref<boolean>(false);\r\nconst hasTranslationError = ref<boolean>(false);\r\n\r\nconst translationWrapperRef = ref<HTMLDivElement>();\r\n\r\nlet isSingleTranslation = true;\r\n\r\nonMounted(() => {\r\n TUIStore.watch(StoreName.CHAT, {\r\n translateTextInfo: onMessageTranslationUpdated,\r\n });\r\n});\r\n\r\nonUnmounted(() => {\r\n TUIStore.unwatch(StoreName.CHAT, {\r\n translateTextInfo: onMessageTranslationUpdated,\r\n });\r\n});\r\n\r\nfunction toggleErrorStatus(hasError: boolean) {\r\n hasTranslationError.value = hasError;\r\n}\r\n\r\nfunction onMessageTranslationUpdated(info: Map<string, ITranslateInfo[]>) {\r\n if (info === undefined) return;\r\n isSingleTranslation = false;\r\n const translationInfoList = info.get(props.message.conversationID) || [];\r\n for (let i = 0; i < translationInfoList.length; ++i) {\r\n const { messageID, visible } = translationInfoList[i];\r\n if (messageID === props.message.ID && visible !== undefined) {\r\n if (translationInfoList.length === 1 && visible) {\r\n isSingleTranslation = true;\r\n }\r\n hasTranslationError.value = false;\r\n translationVisible.value = visible;\r\n break;\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.message-translation {\r\n margin-top: 4px;\r\n margin-left: 44px;\r\n padding: 10px;\r\n background-color: #f2f7ff;\r\n border-radius: 10px;\r\n display: flex;\r\n flex-direction: column !important;\r\n transition: background-color 0.15s ease-out;\r\n\r\n &.error {\r\n background-color: #ffdfdf;\r\n }\r\n\r\n .copyright {\r\n display: flex;\r\n align-items: center;\r\n margin-top: 10px;\r\n\r\n .copyright-text {\r\n margin-left: 2px;\r\n font-size: 12px;\r\n color: #999;\r\n }\r\n }\r\n}\r\n\r\n.message-translation.reverse {\r\n margin-right: 44px;\r\n margin-left: auto;\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-translate/index.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted","TUIStore","StoreName","onUnmounted"],"mappings":";;;;;;;AAqCA,MAAA,OAAiB,MAAA;AACjB,MAAA,qBAA+B,MAAA;;;;;;;AAQ/B,UAAM,QAAQ;AAIR,UAAA,qBAAqBA,kBAAa,KAAK;AACvC,UAAA,sBAAsBA,kBAAa,KAAK;AAE9C,UAAM,wBAAwBA,cAAAA;AAE9B,QAAI,sBAAsB;AAE1BC,kBAAAA,UAAU,MAAM;AACLC,uBAAA,MAAMC,gBAAU,MAAM;AAAA,QAC7B,mBAAmB;AAAA,MAAA,CACpB;AAAA,IAAA,CACF;AAEDC,kBAAAA,YAAY,MAAM;AACPF,uBAAA,QAAQC,gBAAU,MAAM;AAAA,QAC/B,mBAAmB;AAAA,MAAA,CACpB;AAAA,IAAA,CACF;AAED,aAAS,kBAAkB,UAAmB;AAC5C,0BAAoB,QAAQ;AAAA,IAC9B;AAEA,aAAS,4BAA4B,MAAqC;AACxE,UAAI,SAAS;AAAW;AACF,4BAAA;AACtB,YAAM,sBAAsB,KAAK,IAAI,MAAM,QAAQ,cAAc,KAAK;AACtE,eAAS,IAAI,GAAG,IAAI,oBAAoB,QAAQ,EAAE,GAAG;AACnD,cAAM,EAAE,WAAW,QAAQ,IAAI,oBAAoB,CAAC;AACpD,YAAI,cAAc,MAAM,QAAQ,MAAM,YAAY,QAAW;AACvD,cAAA,oBAAoB,WAAW,KAAK,SAAS;AACzB,kCAAA;AAAA,UACxB;AACA,8BAAoB,QAAQ;AAC5B,6BAAmB,QAAQ;AAC3B;AAAA,QACF;AAAA,MACF;AAAA,IACF;;;;;;;;;;;;;;;;;;;;;;;;ACvFA,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"translation-content.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-translate/translation-content.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-translate/translation-content.vue?type=component"],"sourcesContent":["<template>\n <div class=\"message-translation-container\">\n <div\n v-if=\"translationFinished\"\n :id=\"`translation-content-${props.message.ID}`\"\n :class=\"{\n 'translation-content': true,\n 'occur': true\n }\"\n >\n <template\n v-if=\"translationTextList.length > 0\"\n >\n <span\n v-for=\"(text, index) in translationTextList\"\n :key=\"index\"\n >\n <img\n v-if=\"text.type === 'face'\"\n class=\"text-face\"\n :src=\"text.value\"\n >\n <span\n v-else\n class=\"text-plain\"\n >\n {{ text.value }}\n </span>\n </span>\n </template>\n <template v-else>\n {{ translationErrorText }}\n </template>\n </div>\n <div\n :class=\"{\n 'loading': true,\n 'loading-end': translationFinished\n }\"\n >\n {{ TUITranslateService.t('TUIChat.翻译中') }}...\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from '../../../../../adapter-vue';\nimport {\n IMessageModel,\n TUITranslateService,\n} from '@tencentcloud/chat-uikit-engine';\nimport { TranslationTextType, translator } from '../../../utils/translation';\n\ninterface IProps {\n message: IMessageModel;\n translationContentVisible: boolean;\n isSingleTranslation: boolean;\n translationWrapperRef: HTMLDivElement | undefined;\n}\n\nconst props = withDefaults(defineProps<IProps>(), {\n message: () => ({} as IMessageModel),\n});\n\nconst translationFinished = ref<boolean>(false);\nconst translationErrorText = ref<string>('');\nconst translationTextList = ref<TranslationTextType[]>([]);\n\nwatch(() => props.translationContentVisible, (newVal: boolean) => {\n if (newVal) {\n translator.get(props.message)\n .then((result) => {\n translationFinished.value = true;\n translationTextList.value = result;\n })\n .catch((err) => {\n translationFinished.value = true;\n emits('toggleErrorStatus', true);\n translationErrorText.value = err.message;\n });\n }\n}, { immediate: true });\n</script>\n\n<style lang=\"scss\" scoped>\n.message-translation-container {\n min-height: 16px;\n min-width: 80px;\n position: relative;\n transition: width 0.15s ease-out, height 0.15s ease-out, ;\n font-size: 14px;\n\n .loading {\n position: absolute;\n top: 0;\n left: 0;\n opacity: 1;\n transition: opacity 0.3s ease-out;\n\n &.loading-end {\n opacity: 0;\n }\n }\n\n .translation-content {\n opacity: 0;\n\n &.occur {\n animation: occur 0.3s ease-out 0.45s forwards;\n\n @keyframes occur {\n 100% {\n opacity: 1;\n }\n }\n }\n\n .text-face {\n width: 20px;\n height: 20px;\n }\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-translate/translation-content.vue'\nwx.createComponent(Component)"],"names":["ref","watch","translator"],"mappings":";;;;;;;;;;;;;AA4DA,UAAM,QAAQ;AAIR,UAAA,sBAAsBA,kBAAa,KAAK;AACxC,UAAA,uBAAuBA,kBAAY,EAAE;AACrC,UAAA,sBAAsBA,kBAA2B,CAAA,CAAE;AAEzDC,kBAAAA,MAAM,MAAM,MAAM,2BAA2B,CAAC,WAAoB;AAChE,UAAI,QAAQ;AACVC,oDAAA,WAAW,IAAI,MAAM,OAAO,EACzB,KAAK,CAAC,WAAW;AAChB,8BAAoB,QAAQ;AAC5B,8BAAoB,QAAQ;AAAA,QAAA,CAC7B,EACA,MAAM,CAAC,QAAQ;AACd,8BAAoB,QAAQ;AAC5B,gBAAM,qBAAqB,IAAI;AAC/B,+BAAqB,QAAQ,IAAI;AAAA,QAAA,CAClC;AAAA,MACL;AAAA,IAAA,GACC,EAAE,WAAW,KAAA,CAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChFtB,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"translation-content.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-translate/translation-content.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtdHJhbnNsYXRlL3RyYW5zbGF0aW9uLWNvbnRlbnQudnVl"],"sourcesContent":["<template>\r\n <div class=\"message-translation-container\">\r\n <div\r\n v-if=\"translationFinished\"\r\n :id=\"`translation-content-${props.message.ID}`\"\r\n :class=\"{\r\n 'translation-content': true,\r\n 'occur': true\r\n }\"\r\n >\r\n <template\r\n v-if=\"translationTextList.length > 0\"\r\n >\r\n <span\r\n v-for=\"(text, index) in translationTextList\"\r\n :key=\"index\"\r\n >\r\n <img\r\n v-if=\"text.type === 'face'\"\r\n class=\"text-face\"\r\n :src=\"text.value\"\r\n >\r\n <span\r\n v-else\r\n class=\"text-plain\"\r\n >\r\n {{ text.value }}\r\n </span>\r\n </span>\r\n </template>\r\n <template v-else>\r\n {{ translationErrorText }}\r\n </template>\r\n </div>\r\n <div\r\n :class=\"{\r\n 'loading': true,\r\n 'loading-end': translationFinished\r\n }\"\r\n >\r\n {{ TUITranslateService.t('TUIChat.翻译中') }}...\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref, watch } from '../../../../../adapter-vue';\r\nimport {\r\n IMessageModel,\r\n TUITranslateService,\r\n} from '@tencentcloud/chat-uikit-engine';\r\nimport { TranslationTextType, translator } from '../../../utils/translation';\r\n\r\ninterface IProps {\r\n message: IMessageModel;\r\n translationContentVisible: boolean;\r\n isSingleTranslation: boolean;\r\n translationWrapperRef: HTMLDivElement | undefined;\r\n}\r\n\r\nconst props = withDefaults(defineProps<IProps>(), {\r\n message: () => ({} as IMessageModel),\r\n});\r\n\r\nconst translationFinished = ref<boolean>(false);\r\nconst translationErrorText = ref<string>('');\r\nconst translationTextList = ref<TranslationTextType[]>([]);\r\n\r\nwatch(() => props.translationContentVisible, (newVal: boolean) => {\r\n if (newVal) {\r\n translator.get(props.message)\r\n .then((result) => {\r\n translationFinished.value = true;\r\n translationTextList.value = result;\r\n })\r\n .catch((err) => {\r\n translationFinished.value = true;\r\n emits('toggleErrorStatus', true);\r\n translationErrorText.value = err.message;\r\n });\r\n }\r\n}, { immediate: true });\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.message-translation-container {\r\n min-height: 16px;\r\n min-width: 80px;\r\n position: relative;\r\n transition: width 0.15s ease-out, height 0.15s ease-out, ;\r\n font-size: 14px;\r\n\r\n .loading {\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n opacity: 1;\r\n transition: opacity 0.3s ease-out;\r\n\r\n &.loading-end {\r\n opacity: 0;\r\n }\r\n }\r\n\r\n .translation-content {\r\n opacity: 0;\r\n\r\n &.occur {\r\n animation: occur 0.3s ease-out 0.45s forwards;\r\n\r\n @keyframes occur {\r\n 100% {\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n\r\n .text-face {\r\n width: 20px;\r\n height: 20px;\r\n }\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-translate/translation-content.vue'\nwx.createComponent(Component)"],"names":["ref","watch","translator"],"mappings":";;;;;;;;;;;;;AA4DA,UAAM,QAAQ;AAIR,UAAA,sBAAsBA,kBAAa,KAAK;AACxC,UAAA,uBAAuBA,kBAAY,EAAE;AACrC,UAAA,sBAAsBA,kBAA2B,CAAA,CAAE;AAEzDC,kBAAAA,MAAM,MAAM,MAAM,2BAA2B,CAAC,WAAoB;AAChE,UAAI,QAAQ;AACVC,oDAAA,WAAW,IAAI,MAAM,OAAO,EACzB,KAAK,CAAC,WAAW;AAChB,8BAAoB,QAAQ;AAC5B,8BAAoB,QAAQ;AAAA,QAAA,CAC7B,EACA,MAAM,CAAC,QAAQ;AACd,8BAAoB,QAAQ;AAC5B,gBAAM,qBAAqB,IAAI;AAC/B,+BAAqB,QAAQ,IAAI;AAAA,QAAA,CAClC;AAAA,MACL;AAAA,IAAA,GACC,EAAE,WAAW,KAAA,CAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChFtB,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-video.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-video.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-video.vue?type=component"],"sourcesContent":["<template>\n <div class=\"message-video\">\n <div\n class=\"message-video-box\"\n @click=\"handlerVideoPlay\"\n >\n <image\n :src=\"props.content.snapshotUrl\"\n class=\"message-video-box\"\n />\n <Icon\n v-if=\"props.messageItem.status === 'success' || props.messageItem.progress === 1\"\n class=\"video-play\"\n :file=\"playIcon\"\n />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { withDefaults } from '../../../../adapter-vue';\nimport type { IMessageModel } from '@tencentcloud/chat-uikit-engine';\nimport Icon from '../../../common/Icon.vue';\nimport playIcon from '../../../../assets/icon/video-play.png';\nimport type { IVideoMessageContent } from '../../../../interface';\n\nconst props = withDefaults(\n defineProps<{\n content: IVideoMessageContent;\n messageItem: IMessageModel;\n }>(),\n {\n content: () => ({} as IVideoMessageContent),\n messageItem: () => ({} as IMessageModel),\n },\n);\n\nfunction handlerVideoPlay() {\n const encodedUrl = encodeURIComponent(props.content.url);\n uni.navigateTo({\n url: `/TUIKit/components/TUIChat/video-play?videoUrl=${encodedUrl}`,\n });\n}\n</script>\n<style lang=\"scss\" scoped>\n.message-video {\n position: relative;\n\n &-box {\n width: 120px;\n max-width: 120px;\n background-color: rgba(#000, 0.3);\n border-radius: 6px;\n height: 200px;\n font-size: 0;\n }\n\n .video-play {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-video.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;AAsBA,MAAA,OAAiB,MAAA;;;;;;;;AAIjB,UAAM,QAAQ;AAWd,aAAS,mBAAmB;AAC1B,YAAM,aAAa,mBAAmB,MAAM,QAAQ,GAAG;AACvDA,oBAAAA,MAAI,WAAW;AAAA,QACb,KAAK,kDAAkD,UAAU;AAAA,MAAA,CAClE;AAAA,IACH;;;;;;;;;;;;;;;;ACzCA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-video.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/message-video.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL21lc3NhZ2UtdmlkZW8udnVl"],"sourcesContent":["<template>\r\n <div class=\"message-video\">\r\n <div\r\n class=\"message-video-box\"\r\n @click=\"handlerVideoPlay\"\r\n >\r\n <image\r\n :src=\"props.content.snapshotUrl\"\r\n class=\"message-video-box\"\r\n />\r\n <Icon\r\n v-if=\"props.messageItem.status === 'success' || props.messageItem.progress === 1\"\r\n class=\"video-play\"\r\n :file=\"playIcon\"\r\n />\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { withDefaults } from '../../../../adapter-vue';\r\nimport type { IMessageModel } from '@tencentcloud/chat-uikit-engine';\r\nimport Icon from '../../../common/Icon.vue';\r\nimport playIcon from '../../../../assets/icon/video-play.png';\r\nimport type { IVideoMessageContent } from '../../../../interface';\r\n\r\nconst props = withDefaults(\r\n defineProps<{\r\n content: IVideoMessageContent;\r\n messageItem: IMessageModel;\r\n }>(),\r\n {\r\n content: () => ({} as IVideoMessageContent),\r\n messageItem: () => ({} as IMessageModel),\r\n },\r\n);\r\n\r\nfunction handlerVideoPlay() {\r\n const encodedUrl = encodeURIComponent(props.content.url);\r\n uni.navigateTo({\r\n url: `/TUIKit/components/TUIChat/video-play?videoUrl=${encodedUrl}`,\r\n });\r\n}\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.message-video {\r\n position: relative;\r\n\r\n &-box {\r\n width: 120px;\r\n max-width: 120px;\r\n background-color: rgba(#000, 0.3);\r\n border-radius: 6px;\r\n height: 200px;\r\n font-size: 0;\r\n }\r\n\r\n .video-play {\r\n position: absolute;\r\n top: 50%;\r\n left: 50%;\r\n transform: translate(-50%, -50%);\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/message-video.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;AAsBA,MAAA,OAAiB,MAAA;;;;;;;;AAIjB,UAAM,QAAQ;AAWd,aAAS,mBAAmB;AAC1B,YAAM,aAAa,mBAAmB,MAAM,QAAQ,GAAG;AACvDA,oBAAAA,MAAI,WAAW;AAAA,QACb,KAAK,kDAAkD,UAAU;AAAA,MAAA,CAClE;AAAA,IACH;;;;;;;;;;;;;;;;ACzCA,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-container.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/simple-message-list/message-container.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/simple-message-list/message-container.vue?type=component"],"sourcesContent":["<template>\n <div class=\"simple-message-container\">\n <div class=\"simple-message-avatar\">\n <Avatar :url=\"props.avatar\" />\n </div>\n <div>\n <div class=\"simple-message-sender\">\n {{ props.sender }}\n </div>\n <div class=\"simple-message-body\">\n <div\n :class=\"{\n 'simple-message-content': true,\n 'no-padding': isNoPadding\n }\"\n >\n <slot />\n </div>\n <div class=\"timestamp\">\n {{ calculateTimestamp(props.time*1000) }}\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from '../../../../../adapter-vue';\nimport TUIChatEngine from '@tencentcloud/chat-uikit-engine';\nimport Avatar from '../../../../common/Avatar/index.vue';\nimport { calculateTimestamp } from '../../../utils/utils';\n\ninterface IProps {\n sender: string;\n avatar: string;\n type: string;\n time: number;\n}\n\nconst props = withDefaults(defineProps<IProps>(), {\n sender: '',\n avatar: '',\n});\n\nconst TYPES = TUIChatEngine.TYPES;\n\nconst isNoPadding = computed(() => {\n return [TYPES.MSG_IMAGE, TYPES.MSG_VIDEO, TYPES.MSG_MERGER].includes(props.type);\n});\n</script>\n\n<style scoped lang=\"scss\">\n:not(not){\n display: flex;\n flex-direction: column;\n min-width: 0;\n box-sizing: border-box;\n}\n\n.simple-message-container {\n flex-direction: row;\n\n .simple-message-avatar {\n flex: 0 0 auto;\n margin-right: 8px;\n }\n\n .simple-message-sender {\n display: block;\n max-width: 200px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-size: 11px;\n color: #999;\n }\n\n .simple-message-body {\n flex-direction: row;\n align-items: flex-end;\n }\n\n .simple-message-content {\n margin-top: 8px;\n background-color: #dceafd;\n border-radius: 0 10px 10px;\n padding: 10px 12px;\n }\n\n .timestamp {\n flex: 0 0 auto;\n font-size: 12px;\n color: #aaa;\n margin-left: 6px;\n }\n\n .no-padding {\n padding: 0;\n background-color: transparent;\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/simple-message-list/message-container.vue'\nwx.createComponent(Component)"],"names":["TUIChatEngine","computed"],"mappings":";;;;;;;AA6BA,MAAA,SAAmB,MAAA;;;;;;;;;;AAUnB,UAAM,QAAQ;AAKd,UAAM,QAAQA,cAAc,GAAA;AAEtB,UAAA,cAAcC,cAAAA,SAAS,MAAM;AAC1B,aAAA,CAAC,MAAM,WAAW,MAAM,WAAW,MAAM,UAAU,EAAE,SAAS,MAAM,IAAI;AAAA,IAAA,CAChF;;;;;;;;;;;;;;AC/CD,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-container.js","sources":["TUIKit/components/TUIChat/message-list/message-elements/simple-message-list/message-container.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLWVsZW1lbnRzL3NpbXBsZS1tZXNzYWdlLWxpc3QvbWVzc2FnZS1jb250YWluZXIudnVl"],"sourcesContent":["<template>\r\n <div class=\"simple-message-container\">\r\n <div class=\"simple-message-avatar\">\r\n <Avatar :url=\"props.avatar\" />\r\n </div>\r\n <div>\r\n <div class=\"simple-message-sender\">\r\n {{ props.sender }}\r\n </div>\r\n <div class=\"simple-message-body\">\r\n <div\r\n :class=\"{\r\n 'simple-message-content': true,\r\n 'no-padding': isNoPadding\r\n }\"\r\n >\r\n <slot />\r\n </div>\r\n <div class=\"timestamp\">\r\n {{ calculateTimestamp(props.time*1000) }}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed } from '../../../../../adapter-vue';\r\nimport TUIChatEngine from '@tencentcloud/chat-uikit-engine';\r\nimport Avatar from '../../../../common/Avatar/index.vue';\r\nimport { calculateTimestamp } from '../../../utils/utils';\r\n\r\ninterface IProps {\r\n sender: string;\r\n avatar: string;\r\n type: string;\r\n time: number;\r\n}\r\n\r\nconst props = withDefaults(defineProps<IProps>(), {\r\n sender: '',\r\n avatar: '',\r\n});\r\n\r\nconst TYPES = TUIChatEngine.TYPES;\r\n\r\nconst isNoPadding = computed(() => {\r\n return [TYPES.MSG_IMAGE, TYPES.MSG_VIDEO, TYPES.MSG_MERGER].includes(props.type);\r\n});\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n:not(not){\r\n display: flex;\r\n flex-direction: column;\r\n min-width: 0;\r\n box-sizing: border-box;\r\n}\r\n\r\n.simple-message-container {\r\n flex-direction: row;\r\n\r\n .simple-message-avatar {\r\n flex: 0 0 auto;\r\n margin-right: 8px;\r\n }\r\n\r\n .simple-message-sender {\r\n display: block;\r\n max-width: 200px;\r\n overflow: hidden;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n font-size: 11px;\r\n color: #999;\r\n }\r\n\r\n .simple-message-body {\r\n flex-direction: row;\r\n align-items: flex-end;\r\n }\r\n\r\n .simple-message-content {\r\n margin-top: 8px;\r\n background-color: #dceafd;\r\n border-radius: 0 10px 10px;\r\n padding: 10px 12px;\r\n }\r\n\r\n .timestamp {\r\n flex: 0 0 auto;\r\n font-size: 12px;\r\n color: #aaa;\r\n margin-left: 6px;\r\n }\r\n\r\n .no-padding {\r\n padding: 0;\r\n background-color: transparent;\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-elements/simple-message-list/message-container.vue'\nwx.createComponent(Component)"],"names":["TUIChatEngine","computed"],"mappings":";;;;;;;AA6BA,MAAA,SAAmB,MAAA;;;;;;;;;;AAUnB,UAAM,QAAQ;AAKd,UAAM,QAAQA,cAAc,GAAA;AAEtB,UAAA,cAAcC,cAAAA,SAAS,MAAM;AAC1B,aAAA,CAAC,MAAM,WAAW,MAAM,WAAW,MAAM,UAAU,EAAE,SAAS,MAAM,IAAI;AAAA,IAAA,CAChF;;;;;;;;;;;;;;AC/CD,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"message-revoked.js","sources":["TUIKit/components/TUIChat/message-list/message-tool/message-revoked.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-tool/message-revoked.vue?type=component"],"sourcesContent":["<template>\n <div class=\"revoke\">\n <span v-if=\"message.flow === 'in'\">{{ message.nick || message.from }}</span>\n <span v-else-if=\"message.from === message.revoker\">{{ TUITranslateService.t(\"TUIChat.您\") }}</span>\n <span v-else>{{ message.revoker }}</span>\n <span>{{ TUITranslateService.t(\"TUIChat.撤回了一条消息\") }}</span>\n <span\n v-if=\"message.flow === 'out' && isEditMsg\"\n class=\"edit\"\n @click=\"messageEdit\"\n >{{ TUITranslateService.t(\"TUIChat.重新编辑\") }}</span>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { watchEffect, ref } from '../../../../adapter-vue';\nimport { TUITranslateService, IMessageModel } from '@tencentcloud/chat-uikit-engine';\nconst props = defineProps({\n isEdit: {\n type: Boolean,\n default: () => false,\n },\n messageItem: {\n type: Object,\n default: () => ({}),\n },\n});\n\nconst message = ref<IMessageModel>();\nconst isEditMsg = ref(false);\nconst emits = defineEmits(['messageEdit']);\n\nwatchEffect(() => {\n message.value = props.messageItem;\n isEditMsg.value = props.isEdit;\n});\nconst messageEdit = () => {\n emits('messageEdit');\n};\n</script>\n<style lang=\"scss\" scoped>\n@import \"../../../../assets/styles/common\";\n\n.revoke {\n display: flex;\n flex-direction: row;\n justify-content: center;\n color: #999;\n font-size: 12px;\n margin-bottom: 10px;\n white-space: pre;\n\n .edit {\n padding: 0 5px;\n color: #006eff;\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/message-list/message-tool/message-revoked.vue'\nwx.createComponent(Component)"],"names":["ref","watchEffect"],"mappings":";;;;;;;;;;;;;;;;;AAiBA,UAAM,QAAQ;AAWd,UAAM,UAAUA,cAAAA;AACV,UAAA,YAAYA,kBAAI,KAAK;AAC3B,UAAM,QAAQ;AAEdC,kBAAAA,YAAY,MAAM;AAChB,cAAQ,QAAQ,MAAM;AACtB,gBAAU,QAAQ,MAAM;AAAA,IAAA,CACzB;AACD,UAAM,cAAc,MAAM;AACxB,YAAM,aAAa;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;ACpCrB,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"message-revoked.js","sources":["TUIKit/components/TUIChat/message-list/message-tool/message-revoked.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L21lc3NhZ2UtbGlzdC9tZXNzYWdlLXRvb2wvbWVzc2FnZS1yZXZva2VkLnZ1ZQ"],"sourcesContent":["<template>\r\n <div class=\"revoke\">\r\n <span v-if=\"message.flow === 'in'\">{{ message.nick || message.from }}</span>\r\n <span v-else-if=\"message.from === message.revoker\">{{ TUITranslateService.t(\"TUIChat.您\") }}</span>\r\n <span v-else>{{ message.revoker }}</span>\r\n <span>{{ TUITranslateService.t(\"TUIChat.撤回了一条消息\") }}</span>\r\n <span\r\n v-if=\"message.flow === 'out' && isEditMsg\"\r\n class=\"edit\"\r\n @click=\"messageEdit\"\r\n >{{ TUITranslateService.t(\"TUIChat.重新编辑\") }}</span>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { watchEffect, ref } from '../../../../adapter-vue';\r\nimport { TUITranslateService, IMessageModel } from '@tencentcloud/chat-uikit-engine';\r\nconst props = defineProps({\r\n isEdit: {\r\n type: Boolean,\r\n default: () => false,\r\n },\r\n messageItem: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n});\r\n\r\nconst message = ref<IMessageModel>();\r\nconst isEditMsg = ref(false);\r\nconst emits = defineEmits(['messageEdit']);\r\n\r\nwatchEffect(() => {\r\n message.value = props.messageItem;\r\n isEditMsg.value = props.isEdit;\r\n});\r\nconst messageEdit = () => {\r\n emits('messageEdit');\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n@import \"../../../../assets/styles/common\";\r\n\r\n.revoke {\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: center;\r\n color: #999;\r\n font-size: 12px;\r\n margin-bottom: 10px;\r\n white-space: pre;\r\n\r\n .edit {\r\n padding: 0 5px;\r\n color: #006eff;\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/message-list/message-tool/message-revoked.vue'\nwx.createComponent(Component)"],"names":["ref","watchEffect"],"mappings":";;;;;;;;;;;;;;;;;AAiBA,UAAM,QAAQ;AAWd,UAAM,UAAUA,cAAAA;AACV,UAAA,YAAYA,kBAAI,KAAK;AAC3B,UAAM,QAAQ;AAEdC,kBAAAA,YAAY,MAAM;AAChB,cAAQ,QAAQ,MAAM;AACtB,gBAAU,QAAQ,MAAM;AAAA,IAAA,CACzB;AACD,UAAM,cAAc,MAAM;AACxB,YAAM,aAAa;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;ACpCrB,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/mulitple-select-panel/index.vue","/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/mulitple-select-panel/index.vue?type=component"],"sourcesContent":["<template>\n <div\n :class=\"{\n 'mulitple-select-panel': true,\n 'mulitple-select-panel-mobile': isMobile,\n }\"\n >\n <div\n class=\"forward-button\"\n @click=\"oneByOneForwardMessage\"\n >\n <Icon\n :file=\"ForwardEachIcon\"\n :size=\"iconSize\"\n />\n <span\n :class=\"{\n 'forward-button-text': true,\n 'forward-button-text-mobile': isMobile,\n }\"\n >{{ TUITranslateService.t('TUIChat.逐条转发') }}</span>\n </div>\n <div\n class=\"forward-button\"\n @click=\"mergeForwardMessage\"\n >\n <Icon\n :file=\"ForwardMergeIcon\"\n :size=\"iconSize\"\n />\n <span\n :class=\"{\n 'forward-button-text': true,\n 'forward-button-text-mobile': isMobile,\n }\"\n >{{ TUITranslateService.t('TUIChat.合并转发') }}</span>\n </div>\n <div\n class=\"forward-button\"\n @click=\"cancelMultipleSelect\"\n >\n <Icon\n class=\"cancel-button-icon\"\n :file=\"AddIcon\"\n :size=\"iconSize\"\n />\n <span\n :class=\"{\n 'forward-button-text': true,\n 'forward-button-text-mobile': isMobile,\n }\"\n >\n {{ TUITranslateService.t('TUIChat.取消') }}\n </span>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref } from '../../../adapter-vue';\nimport {\n TUITranslateService,\n} from '@tencentcloud/chat-uikit-engine';\nimport Icon from '../../common/Icon.vue';\nimport ForwardEachIcon from '../../../assets/icon/forward-each.svg';\nimport ForwardMergeIcon from '../../../assets/icon/forward-merge.svg';\nimport AddIcon from '../../../assets/icon/add-circle.svg';\nimport { isMobile } from '../../../utils/env';\n\ninterface IEmits {\n (key: 'oneByOneForwardMessage'): void;\n (key: 'mergeForwardMessage'): void;\n (key: 'toggleMultipleSelectMode'): void;\n}\n\nconst emits = defineEmits<IEmits>();\n\nconst iconSize = ref(isMobile ? '25px' : '30px');\n\nfunction oneByOneForwardMessage() {\n emits('oneByOneForwardMessage');\n}\n\nfunction mergeForwardMessage() {\n emits('mergeForwardMessage');\n}\n\nfunction cancelMultipleSelect() {\n emits('toggleMultipleSelectMode');\n}\n</script>\n\n<style lang=\"scss\" scoped>\n:not(not) {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n min-width: 0;\n}\n\n.mulitple-select-panel {\n height: 196px;\n border-top: 1px solid #ebebeb;\n flex-direction: row;\n justify-content: space-around;\n align-items: center;\n background-color: #EBF0F6;\n\n &-mobile {\n height: 64px;\n padding-bottom: 15px;\n flex-direction: row;\n align-items: flex-end;\n }\n}\n\n.forward-button {\n justify-content: center;\n align-items: center;\n\n &-text {\n margin-top: 8px;\n font-size: 12px;\n\n &-mobile {\n margin-top: 2px;\n }\n }\n\n .cancel-button-icon {\n transform: rotate(45deg);\n }\n}\n</style>\n","import Component from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/mulitple-select-panel/index.vue'\nwx.createComponent(Component)"],"names":["ref","isMobile"],"mappings":";;;;;;;;AA+DA,MAAA,OAAiB,MAAA;;;;;AAYjB,UAAM,QAAQ;AAEd,UAAM,WAAWA,cAAA,IAAIC,iBAAW,WAAA,SAAS,MAAM;AAE/C,aAAS,yBAAyB;AAChC,YAAM,wBAAwB;AAAA,IAChC;AAEA,aAAS,sBAAsB;AAC7B,YAAM,qBAAqB;AAAA,IAC7B;AAEA,aAAS,uBAAuB;AAC9B,YAAM,0BAA0B;AAAA,IAClC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxFA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/mulitple-select-panel/index.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDov6aG555uuL3RrLW1pbmktcHJvZ3JhbS9UVUlLaXQvY29tcG9uZW50cy9UVUlDaGF0L211bGl0cGxlLXNlbGVjdC1wYW5lbC9pbmRleC52dWU"],"sourcesContent":["<template>\r\n <div\r\n :class=\"{\r\n 'mulitple-select-panel': true,\r\n 'mulitple-select-panel-mobile': isMobile,\r\n }\"\r\n >\r\n <div\r\n class=\"forward-button\"\r\n @click=\"oneByOneForwardMessage\"\r\n >\r\n <Icon\r\n :file=\"ForwardEachIcon\"\r\n :size=\"iconSize\"\r\n />\r\n <span\r\n :class=\"{\r\n 'forward-button-text': true,\r\n 'forward-button-text-mobile': isMobile,\r\n }\"\r\n >{{ TUITranslateService.t('TUIChat.逐条转发') }}</span>\r\n </div>\r\n <div\r\n class=\"forward-button\"\r\n @click=\"mergeForwardMessage\"\r\n >\r\n <Icon\r\n :file=\"ForwardMergeIcon\"\r\n :size=\"iconSize\"\r\n />\r\n <span\r\n :class=\"{\r\n 'forward-button-text': true,\r\n 'forward-button-text-mobile': isMobile,\r\n }\"\r\n >{{ TUITranslateService.t('TUIChat.合并转发') }}</span>\r\n </div>\r\n <div\r\n class=\"forward-button\"\r\n @click=\"cancelMultipleSelect\"\r\n >\r\n <Icon\r\n class=\"cancel-button-icon\"\r\n :file=\"AddIcon\"\r\n :size=\"iconSize\"\r\n />\r\n <span\r\n :class=\"{\r\n 'forward-button-text': true,\r\n 'forward-button-text-mobile': isMobile,\r\n }\"\r\n >\r\n {{ TUITranslateService.t('TUIChat.取消') }}\r\n </span>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref } from '../../../adapter-vue';\r\nimport {\r\n TUITranslateService,\r\n} from '@tencentcloud/chat-uikit-engine';\r\nimport Icon from '../../common/Icon.vue';\r\nimport ForwardEachIcon from '../../../assets/icon/forward-each.svg';\r\nimport ForwardMergeIcon from '../../../assets/icon/forward-merge.svg';\r\nimport AddIcon from '../../../assets/icon/add-circle.svg';\r\nimport { isMobile } from '../../../utils/env';\r\n\r\ninterface IEmits {\r\n (key: 'oneByOneForwardMessage'): void;\r\n (key: 'mergeForwardMessage'): void;\r\n (key: 'toggleMultipleSelectMode'): void;\r\n}\r\n\r\nconst emits = defineEmits<IEmits>();\r\n\r\nconst iconSize = ref(isMobile ? '25px' : '30px');\r\n\r\nfunction oneByOneForwardMessage() {\r\n emits('oneByOneForwardMessage');\r\n}\r\n\r\nfunction mergeForwardMessage() {\r\n emits('mergeForwardMessage');\r\n}\r\n\r\nfunction cancelMultipleSelect() {\r\n emits('toggleMultipleSelectMode');\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n:not(not) {\r\n display: flex;\r\n flex-direction: column;\r\n box-sizing: border-box;\r\n min-width: 0;\r\n}\r\n\r\n.mulitple-select-panel {\r\n height: 196px;\r\n border-top: 1px solid #ebebeb;\r\n flex-direction: row;\r\n justify-content: space-around;\r\n align-items: center;\r\n background-color: #EBF0F6;\r\n\r\n &-mobile {\r\n height: 64px;\r\n padding-bottom: 15px;\r\n flex-direction: row;\r\n align-items: flex-end;\r\n }\r\n}\r\n\r\n.forward-button {\r\n justify-content: center;\r\n align-items: center;\r\n\r\n &-text {\r\n margin-top: 8px;\r\n font-size: 12px;\r\n\r\n &-mobile {\r\n margin-top: 2px;\r\n }\r\n }\r\n\r\n .cancel-button-icon {\r\n transform: rotate(45deg);\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/mulitple-select-panel/index.vue'\nwx.createComponent(Component)"],"names":["ref","isMobile"],"mappings":";;;;;;;;AA+DA,MAAA,OAAiB,MAAA;;;;;AAYjB,UAAM,QAAQ;AAEd,UAAM,WAAWA,cAAA,IAAIC,iBAAW,WAAA,SAAS,MAAM;AAE/C,aAAS,yBAAyB;AAChC,YAAM,wBAAwB;AAAA,IAChC;AAEA,aAAS,sBAAsB;AAC7B,YAAM,qBAAqB;AAAA,IAC7B;AAEA,aAAS,uBAAuB;AAC9B,YAAM,0BAA0B;AAAA,IAClC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxFA,GAAG,gBAAgB,SAAS;"}

View File

@@ -1 +1 @@
{"version":3,"file":"const.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/const.ts"],"sourcesContent":["import TUIChatEngine from '@tencentcloud/chat-uikit-engine';\nexport const DEFAULT_DESC: any = {\n [TUIChatEngine.TYPES.MSG_TEXT]: '[文本]',\n [TUIChatEngine.TYPES.MSG_FACE]: '[动画表情]',\n [TUIChatEngine.TYPES.MSG_IMAGE]: '[图片]',\n [TUIChatEngine.TYPES.MSG_FILE]: '[文件]',\n [TUIChatEngine.TYPES.MSG_AUDIO]: '[语音]',\n [TUIChatEngine.TYPES.MSG_VIDEO]: '[视频]',\n [TUIChatEngine.TYPES.MSG_LOCATION]: '[地理位置]',\n [TUIChatEngine.TYPES.MSG_MERGER]: '[聊天记录]',\n [TUIChatEngine.TYPES.MSG_CUSTOM]: '[自定义消息]',\n};\n\nexport enum PUSH_SCENE {\n CHAT = 'chat',\n CALL = 'call',\n}\n"],"names":["TUIChatEngine","PUSH_SCENE"],"mappings":";;AACO,MAAM,eAAoB;AAAA,EAC/B,CAACA,cAAA,GAAc,MAAM,QAAQ,GAAG;AAAA,EAChC,CAACA,cAAA,GAAc,MAAM,QAAQ,GAAG;AAAA,EAChC,CAACA,cAAA,GAAc,MAAM,SAAS,GAAG;AAAA,EACjC,CAACA,cAAA,GAAc,MAAM,QAAQ,GAAG;AAAA,EAChC,CAACA,cAAA,GAAc,MAAM,SAAS,GAAG;AAAA,EACjC,CAACA,cAAA,GAAc,MAAM,SAAS,GAAG;AAAA,EACjC,CAACA,cAAA,GAAc,MAAM,YAAY,GAAG;AAAA,EACpC,CAACA,cAAA,GAAc,MAAM,UAAU,GAAG;AAAA,EAClC,CAACA,cAAA,GAAc,MAAM,UAAU,GAAG;AACpC;AAEY,IAAA,+BAAAC,gBAAL;AACLA,cAAA,MAAO,IAAA;AACPA,cAAA,MAAO,IAAA;AAFGA,SAAAA;AAAA,GAAA,cAAA,CAAA,CAAA;;;"}
{"version":3,"file":"const.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/const.ts"],"sourcesContent":["import TUIChatEngine from '@tencentcloud/chat-uikit-engine';\r\nexport const DEFAULT_DESC: any = {\r\n [TUIChatEngine.TYPES.MSG_TEXT]: '[文本]',\r\n [TUIChatEngine.TYPES.MSG_FACE]: '[动画表情]',\r\n [TUIChatEngine.TYPES.MSG_IMAGE]: '[图片]',\r\n [TUIChatEngine.TYPES.MSG_FILE]: '[文件]',\r\n [TUIChatEngine.TYPES.MSG_AUDIO]: '[语音]',\r\n [TUIChatEngine.TYPES.MSG_VIDEO]: '[视频]',\r\n [TUIChatEngine.TYPES.MSG_LOCATION]: '[地理位置]',\r\n [TUIChatEngine.TYPES.MSG_MERGER]: '[聊天记录]',\r\n [TUIChatEngine.TYPES.MSG_CUSTOM]: '[自定义消息]',\r\n};\r\n\r\nexport enum PUSH_SCENE {\r\n CHAT = 'chat',\r\n CALL = 'call',\r\n}\r\n"],"names":["TUIChatEngine","PUSH_SCENE"],"mappings":";;AACO,MAAM,eAAoB;AAAA,EAC/B,CAACA,cAAA,GAAc,MAAM,QAAQ,GAAG;AAAA,EAChC,CAACA,cAAA,GAAc,MAAM,QAAQ,GAAG;AAAA,EAChC,CAACA,cAAA,GAAc,MAAM,SAAS,GAAG;AAAA,EACjC,CAACA,cAAA,GAAc,MAAM,QAAQ,GAAG;AAAA,EAChC,CAACA,cAAA,GAAc,MAAM,SAAS,GAAG;AAAA,EACjC,CAACA,cAAA,GAAc,MAAM,SAAS,GAAG;AAAA,EACjC,CAACA,cAAA,GAAc,MAAM,YAAY,GAAG;AAAA,EACpC,CAACA,cAAA,GAAc,MAAM,UAAU,GAAG;AAAA,EAClC,CAACA,cAAA,GAAc,MAAM,UAAU,GAAG;AACpC;AAEY,IAAA,+BAAAC,gBAAL;AACLA,cAAA,MAAO,IAAA;AACPA,cAAA,MAAO,IAAA;AAFGA,SAAAA;AAAA,GAAA,cAAA,CAAA,CAAA;;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/index.ts"],"sourcesContent":["import OfflinePushInfoManager from './offlinePushInfoManager';\n\nexport * from './const';\nexport * from './interface';\n\nexport default OfflinePushInfoManager.getInstance();\n"],"names":["OfflinePushInfoManager"],"mappings":";;;AAKA,MAAeA,yBAAAA,wEAAAA,uBAAuB,YAAY;;"}
{"version":3,"file":"index.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/index.ts"],"sourcesContent":["import OfflinePushInfoManager from './offlinePushInfoManager';\r\n\r\nexport * from './const';\r\nexport * from './interface';\r\n\r\nexport default OfflinePushInfoManager.getInstance();\r\n"],"names":["OfflinePushInfoManager"],"mappings":";;;AAKA,MAAeA,yBAAAA,wEAAAA,uBAAuB,YAAY;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"info.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/info.ts"],"sourcesContent":["import { IChatOfflinePushInfo, ICallOfflinePushInfo } from './interface';\n\nexport const chatOfflinePushInfo: IChatOfflinePushInfo = {\n androidInfo: {},\n apnsInfo: {},\n};\n\nexport const callOfflinePushInfo: ICallOfflinePushInfo = {};\n"],"names":[],"mappings":";AAEO,MAAM,sBAA4C;AAAA,EACvD,aAAa,CAAC;AAAA,EACd,UAAU,CAAC;AACb;AAEO,MAAM,sBAA4C,CAAA;;;"}
{"version":3,"file":"info.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/info.ts"],"sourcesContent":["import { IChatOfflinePushInfo, ICallOfflinePushInfo } from './interface';\r\n\r\nexport const chatOfflinePushInfo: IChatOfflinePushInfo = {\r\n androidInfo: {},\r\n apnsInfo: {},\r\n};\r\n\r\nexport const callOfflinePushInfo: ICallOfflinePushInfo = {};\r\n"],"names":[],"mappings":";AAEO,MAAM,sBAA4C;AAAA,EACvD,aAAa,CAAC;AAAA,EACd,UAAU,CAAC;AACb;AAEO,MAAM,sBAA4C,CAAA;;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"offlinePushInfoManager.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/offlinePushInfoManager.ts"],"sourcesContent":["import TUIChatEngine, { IConversationModel, StoreName, TUIStore, TUITranslateService } from '@tencentcloud/chat-uikit-engine';\nimport { transformTextWithKeysToEmojiNames } from '../emoji-config';\nimport {\n IChatOfflinePushInfo,\n IOfflinePushInfoCreateParams,\n} from './interface';\nimport { chatOfflinePushInfo, callOfflinePushInfo } from './info';\nimport { DEFAULT_DESC, PUSH_SCENE } from './const';\n\nclass OfflinePushInfoManager {\n private name = 'OfflinePushInfoManager';\n private static instance: OfflinePushInfoManager | null = null;\n\n private offlinePushInfo: any = {};\n\n private constructor() {\n this.offlinePushInfo = {\n [PUSH_SCENE.CHAT]: chatOfflinePushInfo,\n [PUSH_SCENE.CALL]: callOfflinePushInfo,\n };\n }\n\n public static getInstance(): OfflinePushInfoManager {\n if (!OfflinePushInfoManager.instance) {\n OfflinePushInfoManager.instance = new OfflinePushInfoManager();\n }\n return OfflinePushInfoManager.instance;\n }\n\n public getOfflinePushInfo(scene: PUSH_SCENE) {\n if (!Object.values(PUSH_SCENE).includes(scene)) {\n console.error(`${this.name} getOfflinePushInfo scene: ${scene} is invalid`);\n return null;\n }\n return this.offlinePushInfo[scene];\n }\n\n private genTitle(conversation: IConversationModel, userInfo: any) {\n let title = conversation?.getShowName();\n if (conversation.type === TUIChatEngine.TYPES.CONV_C2C) {\n title = userInfo?.nick || userInfo?.userID;\n }\n return title;\n }\n\n private genDesc(messageType: string, payload: any) {\n let desc = '';\n if (messageType === TUIChatEngine.TYPES.MSG_TEXT) {\n desc = transformTextWithKeysToEmojiNames(payload.text);\n }\n if (messageType === TUIChatEngine.TYPES.MSG_CUSTOM) {\n desc = payload.description;\n }\n return desc || TUITranslateService.t(`TUIChat.${DEFAULT_DESC[messageType]}`);\n }\n\n public create(options: IOfflinePushInfoCreateParams): IChatOfflinePushInfo {\n const { conversation, messageType = '', payload = {} } = options || {};\n const userInfo = TUIStore.getData(StoreName.USER, 'userProfile');\n const entity = {\n sender: conversation.type === TUIChatEngine.TYPES.CONV_GROUP ? conversation.groupProfile?.groupID : userInfo?.userID,\n nickName: userInfo?.nick,\n chatType: conversation.type === TUIChatEngine.TYPES.CONV_GROUP ? 2 : 1,\n version: 1,\n action: 1,\n };\n return {\n title: this.genTitle(conversation, userInfo),\n description: this.genDesc(messageType, payload),\n extension: JSON.stringify({ entity }),\n ...this.offlinePushInfo[PUSH_SCENE.CHAT],\n };\n }\n}\n\nexport default OfflinePushInfoManager;\n"],"names":["PUSH_SCENE","chatOfflinePushInfo","callOfflinePushInfo","uni","TUIChatEngine","transformTextWithKeysToEmojiNames","TUITranslateService","DEFAULT_DESC","TUIStore","StoreName"],"mappings":";;;;;AASA,MAAM,0BAAN,MAAM,wBAAuB;AAAA,EAMnB,cAAc;AALtB,SAAQ,OAAO;AAGf,SAAQ,kBAAuB;AAG7B,SAAK,kBAAkB;AAAA,MACrB,CAACA,uDAAAA,WAAW,IAAI,GAAGC,sDAAA;AAAA,MACnB,CAACD,uDAAAA,WAAW,IAAI,GAAGE,sDAAA;AAAA,IAAA;AAAA,EAEvB;AAAA,EAEA,OAAc,cAAsC;AAC9C,QAAA,CAAC,wBAAuB,UAAU;AACb,8BAAA,WAAW,IAAI;IACxC;AACA,WAAO,wBAAuB;AAAA,EAChC;AAAA,EAEO,mBAAmB,OAAmB;AAC3C,QAAI,CAAC,OAAO,OAAOF,uDAAU,UAAA,EAAE,SAAS,KAAK,GAAG;AAC9CG,oBAAAA,MAAA,MAAA,SAAA,oFAAc,GAAG,KAAK,IAAI,8BAA8B,KAAK,aAAa;AACnE,aAAA;AAAA,IACT;AACO,WAAA,KAAK,gBAAgB,KAAK;AAAA,EACnC;AAAA,EAEQ,SAAS,cAAkC,UAAe;AAC5D,QAAA,QAAQ,6CAAc;AAC1B,QAAI,aAAa,SAASC,iBAAc,MAAM,UAAU;AAC9C,eAAA,qCAAU,UAAQ,qCAAU;AAAA,IACtC;AACO,WAAA;AAAA,EACT;AAAA,EAEQ,QAAQ,aAAqB,SAAc;AACjD,QAAI,OAAO;AACP,QAAA,gBAAgBA,cAAAA,GAAc,MAAM,UAAU;AACzC,aAAAC,4CAAA,kCAAkC,QAAQ,IAAI;AAAA,IACvD;AACI,QAAA,gBAAgBD,cAAAA,GAAc,MAAM,YAAY;AAClD,aAAO,QAAQ;AAAA,IACjB;AACA,WAAO,QAAQE,cAAoB,GAAA,EAAE,WAAWC,oEAAa,WAAW,CAAC,EAAE;AAAA,EAC7E;AAAA,EAEO,OAAO,SAA6D;;AACnE,UAAA,EAAE,cAAc,cAAc,IAAI,UAAU,GAAO,IAAA,WAAW;AACpE,UAAM,WAAWC,cAAAA,GAAS,QAAQC,cAAAA,EAAU,MAAM,aAAa;AAC/D,UAAM,SAAS;AAAA,MACb,QAAQ,aAAa,SAASL,cAAAA,GAAc,MAAM,cAAa,kBAAa,iBAAb,mBAA2B,UAAU,qCAAU;AAAA,MAC9G,UAAU,qCAAU;AAAA,MACpB,UAAU,aAAa,SAASA,cAAAA,GAAc,MAAM,aAAa,IAAI;AAAA,MACrE,SAAS;AAAA,MACT,QAAQ;AAAA,IAAA;AAEH,WAAA;AAAA,MACL,OAAO,KAAK,SAAS,cAAc,QAAQ;AAAA,MAC3C,aAAa,KAAK,QAAQ,aAAa,OAAO;AAAA,MAC9C,WAAW,KAAK,UAAU,EAAE,QAAQ;AAAA,MACpC,GAAG,KAAK,gBAAgBJ,uDAAA,WAAW,IAAI;AAAA,IAAA;AAAA,EAE3C;AACF;AA9DE,wBAAe,WAA0C;AAF3D,IAAM,yBAAN;;"}
{"version":3,"file":"offlinePushInfoManager.js","sources":["TUIKit/components/TUIChat/offlinePushInfoManager/offlinePushInfoManager.ts"],"sourcesContent":["import TUIChatEngine, { IConversationModel, StoreName, TUIStore, TUITranslateService } from '@tencentcloud/chat-uikit-engine';\r\nimport { transformTextWithKeysToEmojiNames } from '../emoji-config';\r\nimport {\r\n IChatOfflinePushInfo,\r\n IOfflinePushInfoCreateParams,\r\n} from './interface';\r\nimport { chatOfflinePushInfo, callOfflinePushInfo } from './info';\r\nimport { DEFAULT_DESC, PUSH_SCENE } from './const';\r\n\r\nclass OfflinePushInfoManager {\r\n private name = 'OfflinePushInfoManager';\r\n private static instance: OfflinePushInfoManager | null = null;\r\n\r\n private offlinePushInfo: any = {};\r\n\r\n private constructor() {\r\n this.offlinePushInfo = {\r\n [PUSH_SCENE.CHAT]: chatOfflinePushInfo,\r\n [PUSH_SCENE.CALL]: callOfflinePushInfo,\r\n };\r\n }\r\n\r\n public static getInstance(): OfflinePushInfoManager {\r\n if (!OfflinePushInfoManager.instance) {\r\n OfflinePushInfoManager.instance = new OfflinePushInfoManager();\r\n }\r\n return OfflinePushInfoManager.instance;\r\n }\r\n\r\n public getOfflinePushInfo(scene: PUSH_SCENE) {\r\n if (!Object.values(PUSH_SCENE).includes(scene)) {\r\n console.error(`${this.name} getOfflinePushInfo scene: ${scene} is invalid`);\r\n return null;\r\n }\r\n return this.offlinePushInfo[scene];\r\n }\r\n\r\n private genTitle(conversation: IConversationModel, userInfo: any) {\r\n let title = conversation?.getShowName();\r\n if (conversation.type === TUIChatEngine.TYPES.CONV_C2C) {\r\n title = userInfo?.nick || userInfo?.userID;\r\n }\r\n return title;\r\n }\r\n\r\n private genDesc(messageType: string, payload: any) {\r\n let desc = '';\r\n if (messageType === TUIChatEngine.TYPES.MSG_TEXT) {\r\n desc = transformTextWithKeysToEmojiNames(payload.text);\r\n }\r\n if (messageType === TUIChatEngine.TYPES.MSG_CUSTOM) {\r\n desc = payload.description;\r\n }\r\n return desc || TUITranslateService.t(`TUIChat.${DEFAULT_DESC[messageType]}`);\r\n }\r\n\r\n public create(options: IOfflinePushInfoCreateParams): IChatOfflinePushInfo {\r\n const { conversation, messageType = '', payload = {} } = options || {};\r\n const userInfo = TUIStore.getData(StoreName.USER, 'userProfile');\r\n const entity = {\r\n sender: conversation.type === TUIChatEngine.TYPES.CONV_GROUP ? conversation.groupProfile?.groupID : userInfo?.userID,\r\n nickName: userInfo?.nick,\r\n chatType: conversation.type === TUIChatEngine.TYPES.CONV_GROUP ? 2 : 1,\r\n version: 1,\r\n action: 1,\r\n };\r\n return {\r\n title: this.genTitle(conversation, userInfo),\r\n description: this.genDesc(messageType, payload),\r\n extension: JSON.stringify({ entity }),\r\n ...this.offlinePushInfo[PUSH_SCENE.CHAT],\r\n };\r\n }\r\n}\r\n\r\nexport default OfflinePushInfoManager;\r\n"],"names":["PUSH_SCENE","chatOfflinePushInfo","callOfflinePushInfo","uni","TUIChatEngine","transformTextWithKeysToEmojiNames","TUITranslateService","DEFAULT_DESC","TUIStore","StoreName"],"mappings":";;;;;AASA,MAAM,0BAAN,MAAM,wBAAuB;AAAA,EAMnB,cAAc;AALtB,SAAQ,OAAO;AAGf,SAAQ,kBAAuB;AAG7B,SAAK,kBAAkB;AAAA,MACrB,CAACA,uDAAAA,WAAW,IAAI,GAAGC,sDAAA;AAAA,MACnB,CAACD,uDAAAA,WAAW,IAAI,GAAGE,sDAAA;AAAA,IAAA;AAAA,EAEvB;AAAA,EAEA,OAAc,cAAsC;AAC9C,QAAA,CAAC,wBAAuB,UAAU;AACb,8BAAA,WAAW,IAAI;IACxC;AACA,WAAO,wBAAuB;AAAA,EAChC;AAAA,EAEO,mBAAmB,OAAmB;AAC3C,QAAI,CAAC,OAAO,OAAOF,uDAAU,UAAA,EAAE,SAAS,KAAK,GAAG;AAChCG,oBAAAA,MAAA,MAAA,SAAA,oFAAA,GAAG,KAAK,IAAI,8BAA8B,KAAK,aAAa;AACnE,aAAA;AAAA,IACT;AACO,WAAA,KAAK,gBAAgB,KAAK;AAAA,EACnC;AAAA,EAEQ,SAAS,cAAkC,UAAe;AAC5D,QAAA,QAAQ,6CAAc;AAC1B,QAAI,aAAa,SAASC,iBAAc,MAAM,UAAU;AAC9C,eAAA,qCAAU,UAAQ,qCAAU;AAAA,IACtC;AACO,WAAA;AAAA,EACT;AAAA,EAEQ,QAAQ,aAAqB,SAAc;AACjD,QAAI,OAAO;AACP,QAAA,gBAAgBA,cAAAA,GAAc,MAAM,UAAU;AACzC,aAAAC,4CAAA,kCAAkC,QAAQ,IAAI;AAAA,IACvD;AACI,QAAA,gBAAgBD,cAAAA,GAAc,MAAM,YAAY;AAClD,aAAO,QAAQ;AAAA,IACjB;AACA,WAAO,QAAQE,cAAoB,GAAA,EAAE,WAAWC,oEAAa,WAAW,CAAC,EAAE;AAAA,EAC7E;AAAA,EAEO,OAAO,SAA6D;;AACnE,UAAA,EAAE,cAAc,cAAc,IAAI,UAAU,GAAO,IAAA,WAAW;AACpE,UAAM,WAAWC,cAAAA,GAAS,QAAQC,cAAAA,EAAU,MAAM,aAAa;AAC/D,UAAM,SAAS;AAAA,MACb,QAAQ,aAAa,SAASL,cAAAA,GAAc,MAAM,cAAa,kBAAa,iBAAb,mBAA2B,UAAU,qCAAU;AAAA,MAC9G,UAAU,qCAAU;AAAA,MACpB,UAAU,aAAa,SAASA,cAAAA,GAAc,MAAM,aAAa,IAAI;AAAA,MACrE,SAAS;AAAA,MACT,QAAQ;AAAA,IAAA;AAEH,WAAA;AAAA,MACL,OAAO,KAAK,SAAS,cAAc,QAAQ;AAAA,MAC3C,aAAa,KAAK,QAAQ,aAAa,OAAO;AAAA,MAC9C,WAAW,KAAK,UAAU,EAAE,QAAQ;AAAA,MACpC,GAAG,KAAK,gBAAgBJ,uDAAA,WAAW,IAAI;AAAA,IAAA;AAAA,EAE3C;AACF;AA9DE,wBAAe,WAA0C;AAF3D,IAAM,yBAAN;;"}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"chatStorage.js","sources":["TUIKit/components/TUIChat/utils/chatStorage.ts"],"sourcesContent":["import { isUniFrameWork } from '../../../utils/env';\nimport { TUIGlobal } from '@tencentcloud/universal-api';\n\ninterface IChatStorage {\n getChatStorage(key: string): any;\n setChatStorage(key: string, value: any): void;\n}\n\nclass ChatStorage implements IChatStorage {\n private static instance: ChatStorage | null = null;\n private static CHAT_STORAGE_KEY: string = 'TUI_CHAT_STORAGE';\n\n private chatStorage: Record<string, any> | null = null;\n\n private constructor() {}\n\n public static getInstance(): ChatStorage {\n if (!ChatStorage.instance) {\n ChatStorage.instance = new ChatStorage();\n }\n return ChatStorage.instance;\n }\n\n public getChatStorage(key: string): any | undefined {\n if (!this.chatStorage) {\n this.chatStorage = this.getChatStorageFromLocalStorage();\n }\n if (key) {\n return this.chatStorage[key];\n } else {\n throw new Error('No key provided');\n }\n }\n\n public setChatStorage(key: string, value: any): void {\n if (!this.chatStorage) {\n this.chatStorage = this.getChatStorageFromLocalStorage();\n }\n this.chatStorage[key] = value;\n try {\n if (isUniFrameWork) {\n TUIGlobal.setStorageSync(ChatStorage.CHAT_STORAGE_KEY, JSON.stringify(this.chatStorage));\n } else {\n localStorage.setItem(ChatStorage.CHAT_STORAGE_KEY, JSON.stringify(this.chatStorage));\n }\n } catch (error) {\n throw new Error('Fail to set chat storage');\n }\n }\n\n private getChatStorageFromLocalStorage(): Record<string, any> {\n let chatStorageString: string = '';\n if (isUniFrameWork) {\n chatStorageString = TUIGlobal.getStorageSync(ChatStorage.CHAT_STORAGE_KEY) || '';\n } else {\n chatStorageString = localStorage.getItem(ChatStorage.CHAT_STORAGE_KEY) || '';\n }\n if (!chatStorageString) {\n return {};\n }\n try {\n this.chatStorage = JSON.parse(chatStorageString);\n } catch (error) {\n this.chatStorage = {};\n }\n return this.chatStorage as Record<string, any>;\n }\n}\n\nexport default ChatStorage.getInstance();\n"],"names":["isUniFrameWork","TUIGlobal"],"mappings":";;;AAQA,MAAM,eAAN,MAAM,aAAoC;AAAA,EAMhC,cAAc;AAFtB,SAAQ,cAA0C;AAAA,EAE3B;AAAA,EAEvB,OAAc,cAA2B;AACnC,QAAA,CAAC,aAAY,UAAU;AACb,mBAAA,WAAW,IAAI;IAC7B;AACA,WAAO,aAAY;AAAA,EACrB;AAAA,EAEO,eAAe,KAA8B;AAC9C,QAAA,CAAC,KAAK,aAAa;AAChB,WAAA,cAAc,KAAK;IAC1B;AACA,QAAI,KAAK;AACA,aAAA,KAAK,YAAY,GAAG;AAAA,IAAA,OACtB;AACC,YAAA,IAAI,MAAM,iBAAiB;AAAA,IACnC;AAAA,EACF;AAAA,EAEO,eAAe,KAAa,OAAkB;AAC/C,QAAA,CAAC,KAAK,aAAa;AAChB,WAAA,cAAc,KAAK;IAC1B;AACK,SAAA,YAAY,GAAG,IAAI;AACpB,QAAA;AACF,UAAIA,iCAAgB;AAClBC,wBAAU,eAAe,aAAY,kBAAkB,KAAK,UAAU,KAAK,WAAW,CAAC;AAAA,MAAA,OAClF;AACL,qBAAa,QAAQ,aAAY,kBAAkB,KAAK,UAAU,KAAK,WAAW,CAAC;AAAA,MACrF;AAAA,aACO,OAAO;AACR,YAAA,IAAI,MAAM,0BAA0B;AAAA,IAC5C;AAAA,EACF;AAAA,EAEQ,iCAAsD;AAC5D,QAAI,oBAA4B;AAChC,QAAID,iCAAgB;AAClB,0BAAoBC,cAAU,EAAA,eAAe,aAAY,gBAAgB,KAAK;AAAA,IAAA,OACzE;AACL,0BAAoB,aAAa,QAAQ,aAAY,gBAAgB,KAAK;AAAA,IAC5E;AACA,QAAI,CAAC,mBAAmB;AACtB,aAAO;IACT;AACI,QAAA;AACG,WAAA,cAAc,KAAK,MAAM,iBAAiB;AAAA,aACxC,OAAO;AACd,WAAK,cAAc;IACrB;AACA,WAAO,KAAK;AAAA,EACd;AACF;AA1DE,aAAe,WAA+B;AAC9C,aAAe,mBAA2B;AAF5C,IAAM,cAAN;AA6DA,MAAe,cAAA,YAAY,YAAY;;"}
{"version":3,"file":"chatStorage.js","sources":["TUIKit/components/TUIChat/utils/chatStorage.ts"],"sourcesContent":["import { isUniFrameWork } from '../../../utils/env';\r\nimport { TUIGlobal } from '@tencentcloud/universal-api';\r\n\r\ninterface IChatStorage {\r\n getChatStorage(key: string): any;\r\n setChatStorage(key: string, value: any): void;\r\n}\r\n\r\nclass ChatStorage implements IChatStorage {\r\n private static instance: ChatStorage | null = null;\r\n private static CHAT_STORAGE_KEY: string = 'TUI_CHAT_STORAGE';\r\n\r\n private chatStorage: Record<string, any> | null = null;\r\n\r\n private constructor() {}\r\n\r\n public static getInstance(): ChatStorage {\r\n if (!ChatStorage.instance) {\r\n ChatStorage.instance = new ChatStorage();\r\n }\r\n return ChatStorage.instance;\r\n }\r\n\r\n public getChatStorage(key: string): any | undefined {\r\n if (!this.chatStorage) {\r\n this.chatStorage = this.getChatStorageFromLocalStorage();\r\n }\r\n if (key) {\r\n return this.chatStorage[key];\r\n } else {\r\n throw new Error('No key provided');\r\n }\r\n }\r\n\r\n public setChatStorage(key: string, value: any): void {\r\n if (!this.chatStorage) {\r\n this.chatStorage = this.getChatStorageFromLocalStorage();\r\n }\r\n this.chatStorage[key] = value;\r\n try {\r\n if (isUniFrameWork) {\r\n TUIGlobal.setStorageSync(ChatStorage.CHAT_STORAGE_KEY, JSON.stringify(this.chatStorage));\r\n } else {\r\n localStorage.setItem(ChatStorage.CHAT_STORAGE_KEY, JSON.stringify(this.chatStorage));\r\n }\r\n } catch (error) {\r\n throw new Error('Fail to set chat storage');\r\n }\r\n }\r\n\r\n private getChatStorageFromLocalStorage(): Record<string, any> {\r\n let chatStorageString: string = '';\r\n if (isUniFrameWork) {\r\n chatStorageString = TUIGlobal.getStorageSync(ChatStorage.CHAT_STORAGE_KEY) || '';\r\n } else {\r\n chatStorageString = localStorage.getItem(ChatStorage.CHAT_STORAGE_KEY) || '';\r\n }\r\n if (!chatStorageString) {\r\n return {};\r\n }\r\n try {\r\n this.chatStorage = JSON.parse(chatStorageString);\r\n } catch (error) {\r\n this.chatStorage = {};\r\n }\r\n return this.chatStorage as Record<string, any>;\r\n }\r\n}\r\n\r\nexport default ChatStorage.getInstance();\r\n"],"names":["isUniFrameWork","TUIGlobal"],"mappings":";;;AAQA,MAAM,eAAN,MAAM,aAAoC;AAAA,EAMhC,cAAc;AAFtB,SAAQ,cAA0C;AAAA,EAE3B;AAAA,EAEvB,OAAc,cAA2B;AACnC,QAAA,CAAC,aAAY,UAAU;AACb,mBAAA,WAAW,IAAI;IAC7B;AACA,WAAO,aAAY;AAAA,EACrB;AAAA,EAEO,eAAe,KAA8B;AAC9C,QAAA,CAAC,KAAK,aAAa;AAChB,WAAA,cAAc,KAAK;IAC1B;AACA,QAAI,KAAK;AACA,aAAA,KAAK,YAAY,GAAG;AAAA,IAAA,OACtB;AACC,YAAA,IAAI,MAAM,iBAAiB;AAAA,IACnC;AAAA,EACF;AAAA,EAEO,eAAe,KAAa,OAAkB;AAC/C,QAAA,CAAC,KAAK,aAAa;AAChB,WAAA,cAAc,KAAK;IAC1B;AACK,SAAA,YAAY,GAAG,IAAI;AACpB,QAAA;AACF,UAAIA,iCAAgB;AAClBC,wBAAU,eAAe,aAAY,kBAAkB,KAAK,UAAU,KAAK,WAAW,CAAC;AAAA,MAAA,OAClF;AACL,qBAAa,QAAQ,aAAY,kBAAkB,KAAK,UAAU,KAAK,WAAW,CAAC;AAAA,MACrF;AAAA,aACO,OAAO;AACR,YAAA,IAAI,MAAM,0BAA0B;AAAA,IAC5C;AAAA,EACF;AAAA,EAEQ,iCAAsD;AAC5D,QAAI,oBAA4B;AAChC,QAAID,iCAAgB;AAClB,0BAAoBC,cAAU,EAAA,eAAe,aAAY,gBAAgB,KAAK;AAAA,IAAA,OACzE;AACL,0BAAoB,aAAa,QAAQ,aAAY,gBAAgB,KAAK;AAAA,IAC5E;AACA,QAAI,CAAC,mBAAmB;AACtB,aAAO;IACT;AACI,QAAA;AACG,WAAA,cAAc,KAAK,MAAM,iBAAiB;AAAA,aACxC,OAAO;AACd,WAAK,cAAc;IACrB;AACA,WAAO,KAAK;AAAA,EACd;AACF;AA1DE,aAAe,WAA+B;AAC9C,aAAe,mBAA2B;AAF5C,IAAM,cAAN;AA6DA,MAAe,cAAA,YAAY,YAAY;;"}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"convertVoiceToText.js","sources":["TUIKit/components/TUIChat/utils/convertVoiceToText.ts"],"sourcesContent":["import {\n IMessageModel,\n TUIChatService,\n TUIStore,\n} from '@tencentcloud/chat-uikit-engine';\nimport { IChatResponese } from '../../../interface';\n\nclass Convertor {\n public isUseCache = true;\n private convertCache = new Map<string, string>();\n private static instance: Convertor | undefined = undefined;\n\n private constructor() {}\n\n static getInstance() {\n if (!Convertor.instance) {\n Convertor.instance = new Convertor();\n }\n return Convertor.instance;\n }\n\n async get(message: IMessageModel): Promise<string> {\n // step1: check in cache if convert result exist\n if (this.isUseCache) {\n const cache = this.convertCache.get(message.ID);\n if (cache !== undefined) {\n return cache;\n }\n }\n\n // step2: get message model with prototype methods\n const currentMessage: IMessageModel = TUIStore.getMessageModel(message.ID);\n if (!currentMessage) {\n return Promise.reject('message not found');\n }\n // step3: get response from api\n const response: IChatResponese<{ result: string }> = await TUIChatService.convertVoiceToText({\n message: currentMessage,\n });\n let { data: { result } = {} } = response;\n if (result) {\n this.convertCache.set(currentMessage.ID, result);\n } else {\n result = '';\n }\n return result;\n }\n\n clear() {\n this.convertCache.clear();\n }\n\n disableCache() {\n this.isUseCache = false;\n }\n\n enableCache() {\n this.isUseCache = true;\n }\n}\n\nexport const convertor = Convertor.getInstance();\n"],"names":["TUIStore","TUIChatService"],"mappings":";;AAOA,MAAM,aAAN,MAAM,WAAU;AAAA,EAKN,cAAc;AAJtB,SAAO,aAAa;AACZ,SAAA,mCAAmB;EAGJ;AAAA,EAEvB,OAAO,cAAc;AACf,QAAA,CAAC,WAAU,UAAU;AACb,iBAAA,WAAW,IAAI;IAC3B;AACA,WAAO,WAAU;AAAA,EACnB;AAAA,EAEA,MAAM,IAAI,SAAyC;AAEjD,QAAI,KAAK,YAAY;AACnB,YAAM,QAAQ,KAAK,aAAa,IAAI,QAAQ,EAAE;AAC9C,UAAI,UAAU,QAAW;AAChB,eAAA;AAAA,MACT;AAAA,IACF;AAGA,UAAM,iBAAgCA,cAAA,GAAS,gBAAgB,QAAQ,EAAE;AACzE,QAAI,CAAC,gBAAgB;AACZ,aAAA,QAAQ,OAAO,mBAAmB;AAAA,IAC3C;AAEM,UAAA,WAA+C,MAAMC,cAAA,GAAe,mBAAmB;AAAA,MAC3F,SAAS;AAAA,IAAA,CACV;AACD,QAAI,EAAE,MAAM,EAAE,OAAW,IAAA,OAAO;AAChC,QAAI,QAAQ;AACV,WAAK,aAAa,IAAI,eAAe,IAAI,MAAM;AAAA,IAAA,OAC1C;AACI,eAAA;AAAA,IACX;AACO,WAAA;AAAA,EACT;AAAA,EAEA,QAAQ;AACN,SAAK,aAAa;EACpB;AAAA,EAEA,eAAe;AACb,SAAK,aAAa;AAAA,EACpB;AAAA,EAEA,cAAc;AACZ,SAAK,aAAa;AAAA,EACpB;AACF;AAjDE,WAAe,WAAkC;AAHnD,IAAM,YAAN;AAsDa,MAAA,YAAY,UAAU,YAAY;;"}
{"version":3,"file":"convertVoiceToText.js","sources":["TUIKit/components/TUIChat/utils/convertVoiceToText.ts"],"sourcesContent":["import {\r\n IMessageModel,\r\n TUIChatService,\r\n TUIStore,\r\n} from '@tencentcloud/chat-uikit-engine';\r\nimport { IChatResponese } from '../../../interface';\r\n\r\nclass Convertor {\r\n public isUseCache = true;\r\n private convertCache = new Map<string, string>();\r\n private static instance: Convertor | undefined = undefined;\r\n\r\n private constructor() {}\r\n\r\n static getInstance() {\r\n if (!Convertor.instance) {\r\n Convertor.instance = new Convertor();\r\n }\r\n return Convertor.instance;\r\n }\r\n\r\n async get(message: IMessageModel): Promise<string> {\r\n // step1: check in cache if convert result exist\r\n if (this.isUseCache) {\r\n const cache = this.convertCache.get(message.ID);\r\n if (cache !== undefined) {\r\n return cache;\r\n }\r\n }\r\n\r\n // step2: get message model with prototype methods\r\n const currentMessage: IMessageModel = TUIStore.getMessageModel(message.ID);\r\n if (!currentMessage) {\r\n return Promise.reject('message not found');\r\n }\r\n // step3: get response from api\r\n const response: IChatResponese<{ result: string }> = await TUIChatService.convertVoiceToText({\r\n message: currentMessage,\r\n });\r\n let { data: { result } = {} } = response;\r\n if (result) {\r\n this.convertCache.set(currentMessage.ID, result);\r\n } else {\r\n result = '';\r\n }\r\n return result;\r\n }\r\n\r\n clear() {\r\n this.convertCache.clear();\r\n }\r\n\r\n disableCache() {\r\n this.isUseCache = false;\r\n }\r\n\r\n enableCache() {\r\n this.isUseCache = true;\r\n }\r\n}\r\n\r\nexport const convertor = Convertor.getInstance();\r\n"],"names":["TUIStore","TUIChatService"],"mappings":";;AAOA,MAAM,aAAN,MAAM,WAAU;AAAA,EAKN,cAAc;AAJtB,SAAO,aAAa;AACZ,SAAA,mCAAmB;EAGJ;AAAA,EAEvB,OAAO,cAAc;AACf,QAAA,CAAC,WAAU,UAAU;AACb,iBAAA,WAAW,IAAI;IAC3B;AACA,WAAO,WAAU;AAAA,EACnB;AAAA,EAEA,MAAM,IAAI,SAAyC;AAEjD,QAAI,KAAK,YAAY;AACnB,YAAM,QAAQ,KAAK,aAAa,IAAI,QAAQ,EAAE;AAC9C,UAAI,UAAU,QAAW;AAChB,eAAA;AAAA,MACT;AAAA,IACF;AAGA,UAAM,iBAAgCA,cAAA,GAAS,gBAAgB,QAAQ,EAAE;AACzE,QAAI,CAAC,gBAAgB;AACZ,aAAA,QAAQ,OAAO,mBAAmB;AAAA,IAC3C;AAEM,UAAA,WAA+C,MAAMC,cAAA,GAAe,mBAAmB;AAAA,MAC3F,SAAS;AAAA,IAAA,CACV;AACD,QAAI,EAAE,MAAM,EAAE,OAAW,IAAA,OAAO;AAChC,QAAI,QAAQ;AACV,WAAK,aAAa,IAAI,eAAe,IAAI,MAAM;AAAA,IAAA,OAC1C;AACI,eAAA;AAAA,IACX;AACO,WAAA;AAAA,EACT;AAAA,EAEA,QAAQ;AACN,SAAK,aAAa;EACpB;AAAA,EAEA,eAAe;AACb,SAAK,aAAa;AAAA,EACpB;AAAA,EAEA,cAAc;AACZ,SAAK,aAAa;AAAA,EACpB;AACF;AAjDE,WAAe,WAAkC;AAHnD,IAAM,YAAN;AAsDa,MAAA,YAAY,UAAU,YAAY;;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"wordsList.js","sources":["TUIKit/components/TUIChat/utils/wordsList.ts"],"sourcesContent":["export const wordsList = [\n {\n value: '在吗?在吗?在吗?重要的话说三遍。',\n },\n {\n value: '好久没聊天了,快来和我说说话~',\n },\n {\n value: '好的,就这么说定了。',\n },\n {\n value: '感恩的心,感谢有你。',\n },\n {\n value: '糟糕!是心动的感觉!',\n },\n {\n value: '心疼地抱抱自己,我太难了!',\n },\n {\n value: '没关系,别在意,事情过去就过去了。',\n },\n {\n value: '早上好,今天也是让人期待的一天呢!',\n },\n {\n value: '熬夜有什么用,又没人陪你聊天,早点休息吧。',\n },\n];\n"],"names":[],"mappings":";AAAO,MAAM,YAAY;AAAA,EACvB;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AACF;;"}
{"version":3,"file":"wordsList.js","sources":["TUIKit/components/TUIChat/utils/wordsList.ts"],"sourcesContent":["export const wordsList = [\r\n {\r\n value: '在吗?在吗?在吗?重要的话说三遍。',\r\n },\r\n {\r\n value: '好久没聊天了,快来和我说说话~',\r\n },\r\n {\r\n value: '好的,就这么说定了。',\r\n },\r\n {\r\n value: '感恩的心,感谢有你。',\r\n },\r\n {\r\n value: '糟糕!是心动的感觉!',\r\n },\r\n {\r\n value: '心疼地抱抱自己,我太难了!',\r\n },\r\n {\r\n value: '没关系,别在意,事情过去就过去了。',\r\n },\r\n {\r\n value: '早上好,今天也是让人期待的一天呢!',\r\n },\r\n {\r\n value: '熬夜有什么用,又没人陪你聊天,早点休息吧。',\r\n },\r\n];\r\n"],"names":[],"mappings":";AAAO,MAAM,YAAY;AAAA,EACvB;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,EACT;AACF;;"}

View File

@@ -1 +1 @@
{"version":3,"file":"video-play.js","sources":["TUIKit/components/TUIChat/video-play.vue","TUIKit/components/TUIChat/video-play.vue?type=page"],"sourcesContent":["<template>\n <div class=\"dialog-video\">\n <video\n v-if=\"isShow\"\n id=\"videoEle\"\n class=\"video-box\"\n :src=\"videoData\"\n controls\n autoplay\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref } from '../../adapter-vue';\nimport { TUIGlobal } from '@tencentcloud/universal-api';\nimport { onLoad, onReady } from '@dcloudio/uni-app';\n\nconst videoData = ref();\nconst isShow = ref(false);\nconst videoContext = ref();\nonLoad((option: any) => {\n const decodedUrl = decodeURIComponent(option?.videoUrl);\n videoData.value = decodedUrl;\n isShow.value = true;\n});\n\nonReady(() => {\n isShow.value = true;\n videoContext.value = TUIGlobal.createVideoContext('videoEle');\n});\n</script>\n<style lang=\"scss\" scoped>\n.dialog-video {\n position: fixed;\n z-index: 999;\n width: 100vw;\n height: 100vh;\n background: rgba(#000, 0.6);\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n\n .video-box {\n position: absolute;\n width: 100vw;\n height: 100vh;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n }\n}\n</style>\n","import MiniProgramPage from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/video-play.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","onLoad","onReady","TUIGlobal"],"mappings":";;;;;;AAkBA,UAAM,YAAYA,cAAAA;AACZ,UAAA,SAASA,kBAAI,KAAK;AACxB,UAAM,eAAeA,cAAAA;AACrBC,kBAAA,OAAO,CAAC,WAAgB;AAChB,YAAA,aAAa,mBAAmB,iCAAQ,QAAQ;AACtD,gBAAU,QAAQ;AAClB,aAAO,QAAQ;AAAA,IAAA,CAChB;AAEDC,kBAAAA,QAAQ,MAAM;AACZ,aAAO,QAAQ;AACF,mBAAA,QAAQC,cAAAA,EAAU,mBAAmB,UAAU;AAAA,IAAA,CAC7D;;;;;;;;;;;AC7BD,GAAG,WAAW,eAAe;"}
{"version":3,"file":"video-play.js","sources":["TUIKit/components/TUIChat/video-play.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/VFVJS2l0XGNvbXBvbmVudHNcVFVJQ2hhdFx2aWRlby1wbGF5LnZ1ZQ"],"sourcesContent":["<template>\r\n <div class=\"dialog-video\">\r\n <video\r\n v-if=\"isShow\"\r\n id=\"videoEle\"\r\n class=\"video-box\"\r\n :src=\"videoData\"\r\n controls\r\n autoplay\r\n />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref } from '../../adapter-vue';\r\nimport { TUIGlobal } from '@tencentcloud/universal-api';\r\nimport { onLoad, onReady } from '@dcloudio/uni-app';\r\n\r\nconst videoData = ref();\r\nconst isShow = ref(false);\r\nconst videoContext = ref();\r\nonLoad((option: any) => {\r\n const decodedUrl = decodeURIComponent(option?.videoUrl);\r\n videoData.value = decodedUrl;\r\n isShow.value = true;\r\n});\r\n\r\nonReady(() => {\r\n isShow.value = true;\r\n videoContext.value = TUIGlobal.createVideoContext('videoEle');\r\n});\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.dialog-video {\r\n position: fixed;\r\n z-index: 999;\r\n width: 100vw;\r\n height: 100vh;\r\n background: rgba(#000, 0.6);\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n\r\n .video-box {\r\n position: absolute;\r\n width: 100vw;\r\n height: 100vh;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n }\r\n}\r\n</style>\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/video-play.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","onLoad","onReady","TUIGlobal"],"mappings":";;;;;;AAkBA,UAAM,YAAYA,cAAAA;AACZ,UAAA,SAASA,kBAAI,KAAK;AACxB,UAAM,eAAeA,cAAAA;AACrBC,kBAAA,OAAO,CAAC,WAAgB;AAChB,YAAA,aAAa,mBAAmB,iCAAQ,QAAQ;AACtD,gBAAU,QAAQ;AAClB,aAAO,QAAQ;AAAA,IAAA,CAChB;AAEDC,kBAAAA,QAAQ,MAAM;AACZ,aAAO,QAAQ;AACF,mBAAA,QAAQC,cAAAA,EAAU,mBAAmB,UAAU;AAAA,IAAA,CAC7D;;;;;;;;;;;AC7BD,GAAG,WAAW,eAAe;"}

View File

@@ -1 +1 @@
{"version":3,"file":"web-view.js","sources":["TUIKit/components/TUIChat/web-view.vue","TUIKit/components/TUIChat/web-view.vue?type=page"],"sourcesContent":["<template>\n <web-view :src=\"url\" />\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref } from '../../adapter-vue';\nimport { onLoad } from '@dcloudio/uni-app';\n\nconst url = ref('');\nonLoad((option: any) => {\n url.value = option && option.url;\n});\n</script>\n","import MiniProgramPage from '/Users/plw/Documents/outsource/tk-mini-program/TUIKit/components/TUIChat/web-view.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","onLoad","MiniProgramPage"],"mappings":";;;;;;AAQM,UAAA,MAAMA,kBAAI,EAAE;AAClBC,kBAAA,OAAO,CAAC,WAAgB;AAClB,UAAA,QAAQ,UAAU,OAAO;AAAA,IAAA,CAC9B;;;;;;;;ACVD,GAAG,WAAWC,SAAe;"}
{"version":3,"file":"web-view.js","sources":["TUIKit/components/TUIChat/web-view.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/VFVJS2l0XGNvbXBvbmVudHNcVFVJQ2hhdFx3ZWItdmlldy52dWU"],"sourcesContent":["<template>\r\n <web-view :src=\"url\" />\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref } from '../../adapter-vue';\r\nimport { onLoad } from '@dcloudio/uni-app';\r\n\r\nconst url = ref('');\r\nonLoad((option: any) => {\r\n url.value = option && option.url;\r\n});\r\n</script>\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/TUIKit/components/TUIChat/web-view.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","onLoad","MiniProgramPage"],"mappings":";;;;;;AAQM,UAAA,MAAMA,kBAAI,EAAE;AAClBC,kBAAA,OAAO,CAAC,WAAgB;AAClB,UAAA,QAAQ,UAAU,OAAO;AAAA,IAAA,CAC9B;;;;;;;;ACVD,GAAG,WAAWC,SAAe;"}