cnhis-design-vue 3.3.3-release.9 → 3.4.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/es/components/big-table/src/hooks/useBatchEditing.js +25 -24
  2. package/es/components/button-print/index.d.ts +98 -8
  3. package/es/components/button-print/src/ButtonPrint.vue.d.ts +98 -8
  4. package/es/components/button-print/src/ButtonPrint.vue2.js +12 -1
  5. package/es/components/button-print/src/components/IdentityVerification.vue.d.ts +11 -2
  6. package/es/components/button-print/src/components/IdentityVerification.vue2.js +3 -2
  7. package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +44 -6
  8. package/es/components/button-print/src/components/NewPrintComponent.vue2.js +194 -41
  9. package/es/components/button-print/src/components/OldPrintComponent.vue.d.ts +29 -2
  10. package/es/components/button-print/src/components/OldPrintComponent.vue2.js +34 -5
  11. package/es/components/button-print/src/utils/print.d.ts +7 -5
  12. package/es/components/button-print/src/utils/print.js +183 -7
  13. package/es/components/button-print/style/index.css +1 -1
  14. package/es/components/calendar/src/Calendar.vue2.js +15 -5
  15. package/es/components/callback/src/components/render/popupMaps.d.ts +5 -0
  16. package/es/components/card-render/src/components/index.d.ts +23 -23
  17. package/es/components/classification/index.d.ts +258 -5
  18. package/es/components/classification/src/components/search-filter/index.vue.d.ts +258 -5
  19. package/es/components/classification/src/components/set-classification/index.vue.d.ts +258 -5
  20. package/es/components/classification/src/index.vue.d.ts +258 -5
  21. package/es/components/fabric-chart/src/components/PopupMenu.js +1 -1
  22. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +6 -2
  23. package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +3 -2
  24. package/es/components/fabric-chart/src/hooks/temperature/useOther.d.ts +1 -1
  25. package/es/components/fabric-chart/src/hooks/temperature/useOther.js +58 -15
  26. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +4 -3
  27. package/es/components/field-editor/index.d.ts +5 -0
  28. package/es/components/field-editor/src/FieldEditor.vue.d.ts +5 -0
  29. package/es/components/field-set/src/FieldColor.vue.d.ts +4 -1
  30. package/es/components/field-set/src/FieldFilter.vue.d.ts +4 -1
  31. package/es/components/field-set/src/FieldSet.vue.d.ts +4 -1
  32. package/es/components/field-set/src/components/table-row.vue.d.ts +2 -1
  33. package/es/components/field-set/src/components/table-row.vue2.js +21 -6
  34. package/es/components/field-set/src/constants/index.js +4 -4
  35. package/es/components/field-set/src/types/index.d.ts +2 -1
  36. package/es/components/form-config/index.d.ts +63 -0
  37. package/es/components/form-config/src/FormConfig.vue.d.ts +63 -0
  38. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +5 -0
  39. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +50 -0
  40. package/es/components/form-config/src/components/FormConfigEdit.vue2.js +4 -4
  41. package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +5 -0
  42. package/es/components/form-config/src/constants/index.d.ts +31 -1
  43. package/es/components/form-config/src/constants/index.js +150 -1
  44. package/es/components/form-config/src/hooks/useConfigurationField.d.ts +2 -2
  45. package/es/components/form-config/src/hooks/useConfigurationField.js +53 -6
  46. package/es/components/form-config/src/hooks/useLocale.d.ts +6 -0
  47. package/es/components/form-config/src/hooks/useLocale.js +34 -0
  48. package/es/components/form-config/src/types/index.d.ts +12 -0
  49. package/es/components/form-render/index.d.ts +5 -0
  50. package/es/components/form-render/src/FormRender.vue.d.ts +5 -0
  51. package/es/components/form-render/src/FormRender.vue2.js +1 -0
  52. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +5 -0
  53. package/es/components/form-render/src/components/renderer/date.d.ts +3 -1
  54. package/es/components/form-render/src/components/renderer/date.js +12 -10
  55. package/es/components/form-render/src/components/renderer/formItem.d.ts +2 -0
  56. package/es/components/form-render/src/components/renderer/formItem.js +10 -3
  57. package/es/components/form-render/src/components/renderer/levelSearchCascader/index.js +4 -2
  58. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +1 -0
  59. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +1 -0
  60. package/es/components/form-render/src/components/renderer/radio_checkbox.js +9 -3
  61. package/es/components/form-render/src/constants/index.d.ts +1 -1
  62. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +5 -2
  63. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +2 -0
  64. package/es/components/form-render/src/hooks/useFieldNormalize.js +15 -0
  65. package/es/components/form-render/src/hooks/useNuiThemeOverrides.d.ts +1 -2
  66. package/es/components/form-render/src/types/index.d.ts +1 -0
  67. package/es/components/form-render/style/index.css +1 -1
  68. package/es/components/iho-chat/index.d.ts +897 -97
  69. package/es/components/iho-chat/src/Index.vue.d.ts +897 -97
  70. package/es/components/iho-chat/src/Index.vue2.js +14 -6
  71. package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +24 -1
  72. package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +179 -6
  73. package/es/components/iho-chat/src/components/ChatFile.vue2.js +48 -28
  74. package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +61 -5
  75. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +106 -44
  76. package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +327 -13
  77. package/es/components/iho-chat/src/components/ChatHeader.vue2.js +18 -17
  78. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +232 -17
  79. package/es/components/iho-chat/src/components/ChatMain.vue2.js +299 -272
  80. package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +49 -3
  81. package/es/components/iho-chat/src/components/ChatSearch.vue.d.ts +24 -1
  82. package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +48 -2
  83. package/es/components/iho-chat/src/components/ContextMenu.js +33 -18
  84. package/es/components/iho-chat/src/components/ImageLightbox.vue.d.ts +104 -0
  85. package/es/components/iho-chat/src/components/ImageLightbox.vue.js +6 -0
  86. package/es/components/iho-chat/src/components/ImageLightbox.vue2.js +307 -0
  87. package/es/components/iho-chat/src/components/MessageEvent.vue.d.ts +24 -1
  88. package/es/components/iho-chat/src/components/MessageMergeForward.vue.d.ts +51 -4
  89. package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +77 -31
  90. package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +223 -98
  91. package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +24 -1
  92. package/es/components/iho-chat/src/components/SelectLabel.vue.d.ts +1 -1
  93. package/es/components/iho-chat/src/components/SiderList.vue.d.ts +24 -1
  94. package/es/components/iho-chat/src/components/Video.vue.d.ts +44 -26
  95. package/es/components/iho-chat/src/components/Video.vue2.js +56 -49
  96. package/es/components/iho-chat/src/hooks/useData.d.ts +51 -4
  97. package/es/components/iho-chat/src/hooks/useVideo.d.ts +83 -16
  98. package/es/components/iho-chat/src/hooks/useVideo.js +439 -43
  99. package/es/components/iho-chat/src/types/index.d.ts +37 -1
  100. package/es/components/iho-chat/src/utils/emoji.d.ts +1 -1
  101. package/es/components/iho-chat/src/utils/emoji.js +1 -1
  102. package/es/components/iho-chat/src/utils/index.d.ts +2 -0
  103. package/es/components/iho-chat/src/utils/index.js +14 -1
  104. package/es/components/iho-chat/style/index.css +1 -1
  105. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/index.js +1 -1
  106. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useAutoFocus.js +0 -22
  107. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/inputRendererPlugin.js +1 -1
  108. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.js +1 -1
  109. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/numberRendererPlugin.js +1 -1
  110. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  111. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  112. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +36 -4
  113. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/index.js +1 -1
  114. package/es/components/index.css +1 -1
  115. package/es/components/index.d.ts +2 -0
  116. package/es/components/index.js +2 -1
  117. package/es/components/info-header/index.d.ts +24 -17
  118. package/es/components/info-header/src/InfoHeader.vue.d.ts +24 -17
  119. package/es/components/info-header/src/InfoHeader.vue2.js +2 -2
  120. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +1 -0
  121. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue2.js +56 -22
  122. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +4 -2
  123. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue2.js +1 -1
  124. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +15 -17
  125. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +5 -0
  126. package/es/components/info-header/src/constants/index.d.ts +1 -1
  127. package/es/components/info-header/src/hooks/useThemeOverrides.d.ts +1 -2
  128. package/es/components/keyboard/index.d.ts +9 -0
  129. package/es/components/keyboard/src/Keyboard.vue.d.ts +9 -0
  130. package/es/components/keyboard/src/Keyboard.vue2.js +33 -9
  131. package/es/components/keyboard/src/components/NumberPanel.vue.d.ts +4 -0
  132. package/es/components/keyboard/src/components/NumberPanel.vue2.js +50 -17
  133. package/es/components/keyboard/src/types.d.ts +17 -0
  134. package/es/components/keyboard/src/types.js +1 -0
  135. package/es/components/scale-view/index.d.ts +13 -0
  136. package/es/components/scale-view/src/ScaleView.vue.d.ts +13 -0
  137. package/es/components/scale-view/src/hooks/scaleview-computed.js +2 -1
  138. package/es/components/scale-view/src/hooks/scaleview-props.d.ts +4 -0
  139. package/es/components/scale-view/src/hooks/scaleview-props.js +4 -0
  140. package/es/components/search-cascader/src/utils/index.d.ts +1 -1
  141. package/es/components/select-person/src/SelectPerson.vue2.js +8 -1
  142. package/es/components/shortcut-provider/src/hooks/useShortcuts.js +1 -1
  143. package/es/components/shortcut-provider/src/types/index.d.ts +1 -0
  144. package/es/components/shortcut-provider/src/utils/index.d.ts +1 -1
  145. package/es/components/shortcut-provider/src/utils/index.js +3 -1
  146. package/es/components/shortcut-setter/index.d.ts +5 -0
  147. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +5 -0
  148. package/es/components/table-filter/index.js +1 -1
  149. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +246 -1
  150. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue2.js +8 -2
  151. package/es/components/table-filter/src/components/classify-filter/components/Base/DateOption.vue.d.ts +104 -0
  152. package/es/components/table-filter/src/components/classify-filter/components/Base/DateOption.vue.js +6 -0
  153. package/es/components/table-filter/src/components/classify-filter/components/Base/DateOption.vue2.js +250 -0
  154. package/es/components/table-filter/src/components/classify-filter/components/Date.vue.d.ts +116 -0
  155. package/es/components/table-filter/src/components/classify-filter/components/Date.vue2.js +43 -4
  156. package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue.d.ts +117 -1
  157. package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue2.js +45 -8
  158. package/es/components/table-filter/src/components/classify-filter/components/index.d.ts +233 -1
  159. package/es/components/table-filter/src/components/classify-filter/helpers/options.d.ts +5 -1
  160. package/es/components/table-filter/src/components/classify-filter/helpers/options.js +74 -2
  161. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +258 -5
  162. package/es/components/table-filter/src/components/classify-filter/index.vue2.js +15 -6
  163. package/es/components/table-filter/src/components/render-widget/components/DateInner.vue.d.ts +1 -1
  164. package/es/components/table-filter/src/components/render-widget/components/DateOut.vue.d.ts +1 -1
  165. package/es/components/table-filter/src/components/render-widget/components/DateQuickBtn/index.vue2.js +1 -1
  166. package/es/components/table-filter/src/components/render-widget/components/DateRangeInner.vue.d.ts +1 -1
  167. package/es/components/table-filter/src/components/render-widget/components/index.d.ts +3 -3
  168. package/es/components/table-filter/src/components/render-widget/helpers/dateExtraMap.js +32 -4
  169. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.d.ts +1 -0
  170. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +38 -2
  171. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +3 -3
  172. package/es/components/table-filter/src/hooks/useAdvanced.js +5 -4
  173. package/es/components/table-filter/src/tool/baseOptions.js +8 -1
  174. package/es/components/table-filter/src/types/enums.d.ts +5 -0
  175. package/es/components/table-filter/src/types/enums.js +6 -1
  176. package/es/components/time-picker/index.d.ts +36 -4
  177. package/es/components/time-picker/src/TimePicker.vue.d.ts +36 -4
  178. package/es/components/time-picker/src/TimePicker.vue2.js +98 -13
  179. package/es/components/vertify/index.d.ts +1 -0
  180. package/es/components/vertify/index.js +1 -0
  181. package/es/components/vertify/src/components/IdentityVerification.vue.d.ts +89 -0
  182. package/es/components/vertify/src/components/IdentityVerification.vue.js +6 -0
  183. package/es/components/vertify/src/components/IdentityVerification.vue2.js +256 -0
  184. package/es/components/vertify/src/utils/dialog.d.ts +7 -0
  185. package/es/components/vertify/src/utils/dialog.js +73 -0
  186. package/es/components/vertify/src/utils/index.d.ts +11 -0
  187. package/es/components/vertify/src/utils/index.js +24 -0
  188. package/es/components/vod-chunk-upload/index.d.ts +13 -0
  189. package/es/components/vod-chunk-upload/src/chunk-upload-new.vue.d.ts +19 -2
  190. package/es/components/vod-chunk-upload/src/chunk-upload-new.vue2.js +104 -75
  191. package/es/components/vod-chunk-upload/src/hooks/upload-computed.d.ts +1 -0
  192. package/es/components/vod-chunk-upload/src/hooks/upload-computed.js +20 -3
  193. package/es/components/vod-chunk-upload/src/hooks/upload-data.d.ts +4 -0
  194. package/es/components/vod-chunk-upload/src/hooks/upload-data.js +6 -2
  195. package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue.d.ts +13 -0
  196. package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue2.js +6 -1
  197. package/es/components/vod-chunk-upload/style/index.css +1 -1
  198. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  199. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  200. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  201. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  202. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  203. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  204. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  205. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  206. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  207. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  208. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  209. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  210. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  211. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  212. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  213. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  214. package/es/shared/assets/img/failure.png.js +1 -1
  215. package/es/shared/assets/img/no-permission.png.js +1 -1
  216. package/es/shared/assets/img/nodata.png.js +1 -1
  217. package/es/shared/assets/img/notfound.png.js +1 -1
  218. package/es/shared/assets/img/qr.png.js +1 -1
  219. package/es/shared/assets/img/success.png.js +1 -1
  220. package/es/shared/assets/img/table_style_2.png.js +1 -1
  221. package/es/shared/assets/img/video.png.js +1 -1
  222. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  223. package/es/shared/assets/img/xb_big.png.js +1 -1
  224. package/es/shared/assets/img/xb_small.png.js +1 -1
  225. package/es/shared/components/InputNumberSlash/InputNumberSlash.js +1 -1
  226. package/es/shared/hooks/useDateTime.d.ts +1 -1
  227. package/es/shared/hooks/useDateTime.js +1 -1
  228. package/es/shared/hooks/useLevelSearchCascader.js +3 -3
  229. package/es/shared/package.json.js +2 -2
  230. package/es/shared/utils/fabricjs/index.js +1 -1
  231. package/package.json +5 -5
  232. package/es/components/audio-sdk/src/utils/recorder/fft.d.ts +0 -4
  233. package/es/components/audio-sdk/src/utils/recorder/mp3-engine.d.ts +0 -4
  234. package/es/components/audio-sdk/src/utils/recorder/mp3.d.ts +0 -4
  235. package/es/components/audio-sdk/src/utils/recorder/recorder.d.ts +0 -4
  236. package/es/components/audio-sdk/src/utils/recorder/wave.d.ts +0 -4
  237. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  238. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  239. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  240. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  241. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  242. package/es/shared/utils/fabricjs/index.d.ts +0 -6823
  243. package/es/shared/utils/tapable/index.d.ts +0 -139
@@ -1,13 +1,14 @@
1
- import { defineComponent, ref, reactive, computed, watch, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, createVNode, withCtx, Fragment, renderList, toDisplayString, createCommentVNode, createBlock, createElementVNode, createTextVNode, withModifiers, nextTick } from 'vue';
2
- import { NImageGroup, NButton, NCheckbox, NAvatar, NImage, NIcon, NSpace, NButtonGroup, NTooltip } from 'naive-ui';
1
+ import { defineComponent, ref, reactive, computed, watch, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, Fragment, renderList, toDisplayString, createCommentVNode, createBlock, createElementVNode, withCtx, createTextVNode, createVNode, withModifiers, nextTick } from 'vue';
2
+ import { NButton, NCheckbox, NAvatar, NIcon, NSpace, NButtonGroup } from 'naive-ui';
3
+ import { useEventListener } from '@vueuse/core';
3
4
  import { format } from 'date-fns';
4
5
  import { getHistoryRecordApi, readMessageApi } from '../api/index.js';
5
6
  import { useData } from '../hooks/useData.js';
6
7
  import 'stompjs';
7
8
  import 'sockjs-client/dist/sockjs.min.js';
8
9
  import { MESSAGE_TYPE } from '../constants/index.js';
9
- import { isAudioOrVideoMessage, simplifyMessage, getForwardTitle, formatJsonstr, getAVTime, downloadFile } from '../utils/index.js';
10
- import { first, last, isArray, toString } from 'lodash-es';
10
+ import { formatJsonstr, isAudioOrVideoMessage, simplifyMessage, getForwardTitle, getAVTime } from '../utils/index.js';
11
+ import { sortBy, uniqBy, first, last, isArray, toString } from 'lodash-es';
11
12
  import 'trtc-sdk-v5';
12
13
  import MessageTemplate from './MessageTemplate.vue.js';
13
14
  import MessageEvent from './MessageEvent.vue.js';
@@ -17,12 +18,12 @@ import { emojis } from '../utils/emoji.js';
17
18
  import ContextMenu from './ContextMenu.js';
18
19
  import ChatAdd from './ChatAdd.vue.js';
19
20
  import '../../../../shared/utils/index.js';
20
- import '@vueuse/core';
21
21
  import '@vue/shared';
22
22
  import '@vueuse/shared';
23
23
  import '../../../../shared/hooks/selectHooks/useSearchContent.js';
24
- import { CallOutline, VideocamOutline, DocumentSharp, HappyOutline, ChatbubbleEllipsesOutline, EllipsisHorizontal, ArrowDownSharp } from '@vicons/ionicons5';
24
+ import { CallOutline, VideocamOutline, DocumentSharp, ChatbubbleEllipsesOutline, EllipsisHorizontal } from '@vicons/ionicons5';
25
25
  import { useScrollLoading } from '../../../../shared/hooks/useScrollLoading.js';
26
+ import ImageLightbox from './ImageLightbox.vue.js';
26
27
 
27
28
  const _hoisted_1 = {
28
29
  key: 0,
@@ -61,16 +62,17 @@ const _hoisted_16 = {
61
62
  class: "label-name"
62
63
  };
63
64
  const _hoisted_17 = ["innerHTML"];
64
- const _hoisted_18 = {
65
+ const _hoisted_18 = ["src", "data-msg"];
66
+ const _hoisted_19 = {
65
67
  style: {
66
68
  "margin-left": "8px"
67
69
  }
68
70
  };
69
- const _hoisted_19 = {
71
+ const _hoisted_20 = {
70
72
  class: "size"
71
73
  };
72
- const _hoisted_20 = ["src"];
73
- const _hoisted_21 = {
74
+ const _hoisted_21 = ["src"];
75
+ const _hoisted_22 = {
74
76
  key: 0
75
77
  };
76
78
  var _sfc_main = /* @__PURE__ */ defineComponent({
@@ -100,6 +102,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
100
102
  y: 0
101
103
  });
102
104
  const showForwardDetail = ref(false);
105
+ const currentImgId = ref();
106
+ const showLightbox = ref(false);
103
107
  const pageInfo = {
104
108
  page: 0,
105
109
  hasMore: true,
@@ -111,40 +115,78 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
111
115
  "--c-tip-gap": isGroupChat.value ? "10px" : "0px"
112
116
  };
113
117
  });
118
+ const images = computed(() => {
119
+ const list = [];
120
+ state.msgList.forEach((item) => {
121
+ const {
122
+ content
123
+ } = item;
124
+ if (!content)
125
+ return;
126
+ if (content.chatMessageType === MESSAGE_TYPE.IMAGE) {
127
+ addImageItem(list, item);
128
+ } else if (content.chatMessageType === MESSAGE_TYPE.BLEND) {
129
+ processBlendContent(list, item);
130
+ }
131
+ });
132
+ return sortBy(uniqBy(list, "id"), (item) => new Date(item.sendTime));
133
+ });
134
+ function addImageItem(list, item) {
135
+ const fileUrl = formatJsonstr(item.__content, "fileUrl");
136
+ list.push({
137
+ id: fileUrl,
138
+ fileUrl,
139
+ fileSize: formatJsonstr(item.__content, "fileSize"),
140
+ senderName: item.senderName,
141
+ sendTime: item.sendTime,
142
+ fileName: formatJsonstr(item.__content, "fileName")
143
+ });
144
+ }
145
+ function processBlendContent(list, item) {
146
+ const imgList = item.__content.match(/<img[^>]*data-clicked=['"]1['"][^>]*>/gi);
147
+ if (!imgList)
148
+ return;
149
+ imgList.forEach((img) => {
150
+ var _a;
151
+ const objstr = (_a = img.match(/data-msg=[']([^']+)[']/i)) == null ? void 0 : _a[1];
152
+ if (objstr) {
153
+ addImageItem(list, {
154
+ ...item,
155
+ __content: objstr
156
+ });
157
+ }
158
+ });
159
+ }
160
+ useEventListener(chatMainRef, "click", (event) => {
161
+ const target = event.target;
162
+ if ((target == null ? void 0 : target.tagName) === "IMG") {
163
+ const {
164
+ clicked = "0",
165
+ msg
166
+ } = target.dataset || {};
167
+ if (clicked == "1") {
168
+ let msgData;
169
+ try {
170
+ msgData = JSON.parse(JSON.parse(msg || "{}"));
171
+ } catch (e) {
172
+ try {
173
+ msgData = JSON.parse(msg || "{}");
174
+ } catch (e2) {
175
+ msgData = {};
176
+ }
177
+ }
178
+ if (msgData.fileUrl) {
179
+ currentImgId.value = msgData.fileUrl;
180
+ showLightbox.value = true;
181
+ }
182
+ }
183
+ }
184
+ });
114
185
  useScrollLoading(chatMainRef, () => {
115
186
  getHistoryRecord();
116
187
  }, "top", () => {
117
188
  showLabel.value = showMenu.value = false;
118
189
  });
119
- function renderToolbar({
120
- nodes
121
- }) {
122
- var _a, _b;
123
- const {
124
- _ctx
125
- } = (_a = nodes.download) == null ? void 0 : _a.children;
126
- const src = _ctx ? (_b = _ctx == null ? void 0 : _ctx.proxy) == null ? void 0 : _b.previewSrc : "";
127
- return [nodes.prev, nodes.next, nodes.rotateCounterclockwise, nodes.rotateClockwise, nodes.resizeToOriginalSize, nodes.zoomOut, nodes.zoomIn, createVNode(NTooltip, null, {
128
- trigger: () => createVNode(NIcon, {
129
- "style": "cursor: pointer",
130
- "color": "rgba(255, 255, 255, 0.75",
131
- "size": 24,
132
- "component": ArrowDownSharp,
133
- "onClick": () => src && downloadFile(JSON.stringify({
134
- fileUrl: src,
135
- fileName: "image"
136
- }))
137
- }, null),
138
- default: () => function() {
139
- var _a2, _b2, _c;
140
- try {
141
- return ((_a2 = window.getLanguageByCode) == null ? void 0 : _a2.call(window, "10010.1.102")) || ((_c = (_b2 = window.top) == null ? void 0 : _b2.getLanguageByCode) == null ? void 0 : _c.call(_b2, "10010.1.102")) || "\u4E0B\u8F7D";
142
- } catch (e) {
143
- return "\u4E0B\u8F7D";
144
- }
145
- }()
146
- }), nodes.close];
147
- }
148
190
  async function getHistoryRecord() {
149
191
  try {
150
192
  if (!pageInfo.hasMore)
@@ -178,12 +220,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
178
220
  } finally {
179
221
  }
180
222
  }
181
- function handleSelectLabel(event, msgId) {
182
- showLabel.value = true;
183
- labelPosition.x = event.clientX;
184
- labelPosition.y = event.clientY;
185
- menuMsgId.value = msgId;
186
- }
187
223
  async function handleContextmenu(event, msgId) {
188
224
  menuMsgId.value = msgId;
189
225
  setMenuPosition(event);
@@ -365,251 +401,236 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
365
401
  ref_key: "chatMainRef",
366
402
  ref: chatMainRef,
367
403
  style: normalizeStyle(unref(styleProps))
368
- }, [createVNode(unref(NImageGroup), {
369
- "show-toolbar-tooltip": "",
370
- "render-toolbar": renderToolbar
371
- }, {
372
- default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(state).msgList, (item, index) => {
373
- var _a;
374
- return openBlock(), createElementBlock(Fragment, {
375
- key: item.id
376
- }, [showMessage(item) ? (openBlock(), createElementBlock("div", {
377
- key: 0,
378
- class: normalizeClass(["message-item", {
379
- "message-item--mine": item.sender == unref(state).userInfo.id
380
- }])
381
- }, [needShowTime(item, index) ? (openBlock(), createElementBlock("p", _hoisted_1, toDisplayString(item.__sendTime), 1)) : createCommentVNode("v-if", true), showTemplateMsg(item, "system") || item.status === "WITHDRAWN" || ((_a = item.content) == null ? void 0 : _a.chatMessageType) === unref(MESSAGE_TYPE).EVENT ? (openBlock(), createElementBlock(Fragment, {
382
- key: 1
383
- }, [showTemplateMsg(item, "system") ? (openBlock(), createBlock(MessageTemplate, {
384
- key: 0,
385
- data: item
386
- }, null, 8, ["data"])) : createCommentVNode("v-if", true), item.status === "WITHDRAWN" ? (openBlock(), createElementBlock("p", _hoisted_2, [createElementVNode("span", null, toDisplayString(item.sender == unref(state).userInfo.id ? function() {
387
- var _a2, _b, _c;
388
- try {
389
- return ((_a2 = window.getLanguageByCode) == null ? void 0 : _a2.call(window, "10010.1.67")) || ((_c = (_b = window.top) == null ? void 0 : _b.getLanguageByCode) == null ? void 0 : _c.call(_b, "10010.1.67")) || "\u4F60";
390
- } catch (e) {
391
- return "\u4F60";
392
- }
393
- }() : item.senderName) + function() {
404
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(state).msgList, (item, index) => {
405
+ var _a;
406
+ return openBlock(), createElementBlock(Fragment, {
407
+ key: item.id
408
+ }, [showMessage(item) ? (openBlock(), createElementBlock("div", {
409
+ key: 0,
410
+ class: normalizeClass(["message-item", {
411
+ "message-item--mine": item.sender == unref(state).userInfo.id
412
+ }])
413
+ }, [needShowTime(item, index) ? (openBlock(), createElementBlock("p", _hoisted_1, toDisplayString(item.__sendTime), 1)) : createCommentVNode("v-if", true), showTemplateMsg(item, "system") || item.status === "WITHDRAWN" || ((_a = item.content) == null ? void 0 : _a.chatMessageType) === unref(MESSAGE_TYPE).EVENT ? (openBlock(), createElementBlock(Fragment, {
414
+ key: 1
415
+ }, [showTemplateMsg(item, "system") ? (openBlock(), createBlock(MessageTemplate, {
416
+ key: 0,
417
+ data: item
418
+ }, null, 8, ["data"])) : createCommentVNode("v-if", true), item.status === "WITHDRAWN" ? (openBlock(), createElementBlock("p", _hoisted_2, [createElementVNode("span", null, toDisplayString(item.sender == unref(state).userInfo.id ? function() {
419
+ var _a2, _b, _c;
420
+ try {
421
+ return ((_a2 = window.getLanguageByCode) == null ? void 0 : _a2.call(window, "10010.1.67")) || ((_c = (_b = window.top) == null ? void 0 : _b.getLanguageByCode) == null ? void 0 : _c.call(_b, "10010.1.67")) || "\u4F60";
422
+ } catch (e) {
423
+ return "\u4F60";
424
+ }
425
+ }() : item.senderName) + function() {
426
+ var _a2, _b, _c;
427
+ try {
428
+ return ((_a2 = window.getLanguageByCode) == null ? void 0 : _a2.call(window, "10010.1.68")) || ((_c = (_b = window.top) == null ? void 0 : _b.getLanguageByCode) == null ? void 0 : _c.call(_b, "10010.1.68")) || "\u64A4\u56DE\u4E86\u4E00\u6761\u6D88\u606F";
429
+ } catch (e) {
430
+ return "\u64A4\u56DE\u4E86\u4E00\u6761\u6D88\u606F";
431
+ }
432
+ }(), 1), showReEdit(item) ? (openBlock(), createBlock(unref(NButton), {
433
+ key: 0,
434
+ size: "tiny",
435
+ style: {
436
+ "color": "var(--c-primary-color)",
437
+ "margin-left": "5px"
438
+ },
439
+ text: "",
440
+ onClick: () => reEdit(item)
441
+ }, {
442
+ default: withCtx(() => [createTextVNode(function() {
394
443
  var _a2, _b, _c;
395
444
  try {
396
- return ((_a2 = window.getLanguageByCode) == null ? void 0 : _a2.call(window, "10010.1.68")) || ((_c = (_b = window.top) == null ? void 0 : _b.getLanguageByCode) == null ? void 0 : _c.call(_b, "10010.1.68")) || "\u64A4\u56DE\u4E86\u4E00\u6761\u6D88\u606F";
445
+ return ((_a2 = window.getLanguageByCode) == null ? void 0 : _a2.call(window, "10010.1.69")) || ((_c = (_b = window.top) == null ? void 0 : _b.getLanguageByCode) == null ? void 0 : _c.call(_b, "10010.1.69")) || "\u91CD\u65B0\u7F16\u8F91";
397
446
  } catch (e) {
398
- return "\u64A4\u56DE\u4E86\u4E00\u6761\u6D88\u606F";
447
+ return "\u91CD\u65B0\u7F16\u8F91";
399
448
  }
400
- }(), 1), showReEdit(item) ? (openBlock(), createBlock(unref(NButton), {
401
- key: 0,
402
- size: "tiny",
449
+ }())]),
450
+ _: 2
451
+ }, 1032, ["onClick"])) : createCommentVNode("v-if", true)])) : (openBlock(), createBlock(MessageEvent, {
452
+ key: 2,
453
+ data: item
454
+ }, null, 8, ["data"]))], 64)) : (openBlock(), createElementBlock("div", {
455
+ key: 2,
456
+ class: normalizeClass(["message-wrapper", {
457
+ checked: item.checked
458
+ }]),
459
+ onClick: () => item.checked = !item.checked
460
+ }, [createVNode(unref(NCheckbox), {
461
+ checked: item.checked,
462
+ "onUpdate:checked": ($event) => item.checked = $event,
463
+ size: "large"
464
+ }, null, 8, ["checked", "onUpdate:checked"]), createElementVNode("div", _hoisted_4, [createVNode(unref(NAvatar), {
465
+ round: "",
466
+ size: 38,
467
+ src: item.senderAvatar,
468
+ onClick: withModifiers((event) => unref(setUserDetail)(event, {
469
+ show: true,
470
+ userId: item.sender
471
+ }), ["stop"])
472
+ }, null, 8, ["src", "onClick"]), item.content ? (openBlock(), createElementBlock("div", _hoisted_5, [createElementVNode("div", _hoisted_6, [createElementVNode("span", {
473
+ class: "name",
474
+ "data-time": item.__time
475
+ }, toDisplayString(unref(isGroupChat) ? item.senderName : ""), 9, _hoisted_7)]), createElementVNode("div", {
476
+ class: normalizeClass(["content", {
477
+ emoji: item.content.chatMessageType === unref(MESSAGE_TYPE).EMOJI && !item.content.referenceContent,
478
+ template: item.content.chatMessageType === unref(MESSAGE_TYPE).TEMPLATE,
479
+ "template--3": isTemplate3(item.content),
480
+ "audio-video": unref(isAudioOrVideoMessage)(item.content),
481
+ file: item.content.chatMessageType === unref(MESSAGE_TYPE).FILE,
482
+ "merge-msg": item.content.chatMessageType === unref(MESSAGE_TYPE).FORWARD && unref(isArray)(item.content.forwardMessageList),
483
+ "reference-info": showReferenceMsg(item)
484
+ }]),
485
+ onContextmenu: withModifiers((event) => !unref(state).isForward && handleContextmenu(event, item.id), ["prevent"])
486
+ }, [showReferenceMsg(item) ? (openBlock(), createElementBlock(Fragment, {
487
+ key: 0
488
+ }, [item.content.referenceContent ? (openBlock(), createElementBlock("div", _hoisted_9, [createElementVNode("span", null, toDisplayString(item.content.referenceContent.senderName) + "\uFF1A", 1), createElementVNode("pre", {
489
+ innerHTML: unref(simplifyMessage)(item.content.referenceContent.content)
490
+ }, null, 8, _hoisted_10)])) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).EMOJI ? (openBlock(), createElementBlock("img", {
491
+ key: 1,
492
+ class: normalizeClass([item.content.referenceContent ? "emoji--min" : "emoji--big"]),
493
+ src: unref(emojis).findEmoji(item.__content)
494
+ }, null, 10, _hoisted_11)) : (openBlock(), createElementBlock("pre", {
495
+ key: 2,
496
+ innerHTML: item.__content
497
+ }, null, 8, _hoisted_12))], 64)) : createCommentVNode("v-if", true), showBlendMsg(item) ? (openBlock(), createElementBlock("pre", {
498
+ key: 1,
499
+ innerHTML: item.__content
500
+ }, null, 8, _hoisted_13)) : createCommentVNode("v-if", true), showTemplateMsg(item, "template") ? (openBlock(), createBlock(MessageTemplate, {
501
+ key: 2,
502
+ data: item
503
+ }, null, 8, ["data"])) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).FORWARD && unref(isArray)(item.content.forwardMessageList) ? (openBlock(), createElementBlock("div", {
504
+ key: 3,
505
+ class: "merge-msg-box",
506
+ onClick: () => clickMergeMsg(item)
507
+ }, [createElementVNode("h4", null, toDisplayString(unref(getForwardTitle)(item.content)), 1), createElementVNode("div", _hoisted_15, [(openBlock(true), createElementBlock(Fragment, null, renderList(item.content.forwardMessageList, (msg) => {
508
+ return openBlock(), createElementBlock("div", {
509
+ key: msg.id,
510
+ class: "merge-msg-contents-item"
511
+ }, [createElementVNode("span", _hoisted_16, toDisplayString(msg.senderName) + "\uFF1A", 1), createElementVNode("pre", {
512
+ innerHTML: unref(simplifyMessage)(msg.content)
513
+ }, null, 8, _hoisted_17)]);
514
+ }), 128))])], 8, _hoisted_14)) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).IMAGE ? (openBlock(), createElementBlock("img", {
515
+ key: 4,
516
+ styele: "max-width: 240px; max-height: 240px",
517
+ src: unref(formatJsonstr)(item.__content, "fileUrl"),
518
+ "data-msg": JSON.stringify(item.__content),
519
+ "data-clicked": "1"
520
+ }, null, 8, _hoisted_18)) : createCommentVNode("v-if", true), unref(isAudioOrVideoMessage)(item.content) ? (openBlock(), createElementBlock(Fragment, {
521
+ key: 5
522
+ }, [createVNode(unref(NIcon), {
523
+ class: normalizeClass({
524
+ "is-audio": item.content.chatMessageType === unref(MESSAGE_TYPE).AUDIO
525
+ }),
526
+ component: item.content.chatMessageType === unref(MESSAGE_TYPE).AUDIO ? unref(CallOutline) : unref(VideocamOutline)
527
+ }, null, 8, ["class", "component"]), createElementVNode("span", _hoisted_19, toDisplayString(unref(getAVTime)(item.__content)), 1)], 64)) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).FILE ? (openBlock(), createBlock(unref(NSpace), {
528
+ key: 6,
529
+ "wrap-item": false
530
+ }, {
531
+ default: withCtx(() => [createVNode(unref(NIcon), {
532
+ class: "icon-file",
533
+ size: "40",
534
+ component: unref(DocumentSharp)
535
+ }, null, 8, ["component"]), createVNode(unref(NSpace), {
536
+ "wrap-item": false,
537
+ vertical: "",
538
+ justify: "space-between",
403
539
  style: {
404
- "color": "var(--c-primary-color)",
405
- "margin-left": "5px"
406
- },
407
- text: "",
408
- onClick: () => reEdit(item)
540
+ "row-gap": "0"
541
+ }
409
542
  }, {
410
- default: withCtx(() => [createTextVNode(function() {
411
- var _a2, _b, _c;
412
- try {
413
- return ((_a2 = window.getLanguageByCode) == null ? void 0 : _a2.call(window, "10010.1.69")) || ((_c = (_b = window.top) == null ? void 0 : _b.getLanguageByCode) == null ? void 0 : _c.call(_b, "10010.1.69")) || "\u91CD\u65B0\u7F16\u8F91";
414
- } catch (e) {
415
- return "\u91CD\u65B0\u7F16\u8F91";
416
- }
417
- }())]),
543
+ default: withCtx(() => [createElementVNode("span", null, toDisplayString(unref(formatJsonstr)(item.__content, "fileName")), 1), createElementVNode("span", _hoisted_20, toDisplayString(unref(formatJsonstr)(item.__content, "fileSize")), 1)]),
418
544
  _: 2
419
- }, 1032, ["onClick"])) : createCommentVNode("v-if", true)])) : (openBlock(), createBlock(MessageEvent, {
420
- key: 2,
421
- data: item
422
- }, null, 8, ["data"]))], 64)) : (openBlock(), createElementBlock("div", {
423
- key: 2,
424
- class: normalizeClass(["message-wrapper", {
425
- checked: item.checked
426
- }]),
427
- onClick: () => item.checked = !item.checked
428
- }, [createVNode(unref(NCheckbox), {
429
- checked: item.checked,
430
- "onUpdate:checked": ($event) => item.checked = $event,
431
- size: "large"
432
- }, null, 8, ["checked", "onUpdate:checked"]), createElementVNode("div", _hoisted_4, [createVNode(unref(NAvatar), {
433
- round: "",
434
- size: 38,
435
- src: item.senderAvatar,
436
- onClick: withModifiers((event) => unref(setUserDetail)(event, {
437
- show: true,
438
- userId: item.sender
439
- }), ["stop"])
440
- }, null, 8, ["src", "onClick"]), item.content ? (openBlock(), createElementBlock("div", _hoisted_5, [createElementVNode("div", _hoisted_6, [createElementVNode("span", {
441
- class: "name",
442
- "data-time": item.__time
443
- }, toDisplayString(unref(isGroupChat) ? item.senderName : ""), 9, _hoisted_7)]), createElementVNode("div", {
444
- class: normalizeClass(["content", {
445
- emoji: item.content.chatMessageType === unref(MESSAGE_TYPE).EMOJI && !item.content.referenceContent,
446
- template: item.content.chatMessageType === unref(MESSAGE_TYPE).TEMPLATE,
447
- "template--3": isTemplate3(item.content),
448
- "audio-video": unref(isAudioOrVideoMessage)(item.content),
449
- file: item.content.chatMessageType === unref(MESSAGE_TYPE).FILE,
450
- "merge-msg": item.content.chatMessageType === unref(MESSAGE_TYPE).FORWARD && unref(isArray)(item.content.forwardMessageList),
451
- "reference-info": showReferenceMsg(item)
452
- }]),
453
- onContextmenu: withModifiers((event) => !unref(state).isForward && handleContextmenu(event, item.id), ["prevent"])
454
- }, [showReferenceMsg(item) ? (openBlock(), createElementBlock(Fragment, {
455
- key: 0
456
- }, [item.content.referenceContent ? (openBlock(), createElementBlock("div", _hoisted_9, [createElementVNode("span", null, toDisplayString(item.content.referenceContent.senderName) + "\uFF1A", 1), createElementVNode("pre", {
457
- innerHTML: unref(simplifyMessage)(item.content.referenceContent.content)
458
- }, null, 8, _hoisted_10)])) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).EMOJI ? (openBlock(), createElementBlock("img", {
459
- key: 1,
460
- class: normalizeClass([item.content.referenceContent ? "emoji--min" : "emoji--big"]),
461
- src: unref(emojis).findEmoji(item.__content)
462
- }, null, 10, _hoisted_11)) : (openBlock(), createElementBlock("pre", {
463
- key: 2,
464
- innerHTML: item.__content
465
- }, null, 8, _hoisted_12))], 64)) : createCommentVNode("v-if", true), showBlendMsg(item) ? (openBlock(), createElementBlock("pre", {
466
- key: 1,
467
- innerHTML: item.__content
468
- }, null, 8, _hoisted_13)) : createCommentVNode("v-if", true), showTemplateMsg(item, "template") ? (openBlock(), createBlock(MessageTemplate, {
469
- key: 2,
470
- data: item
471
- }, null, 8, ["data"])) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).FORWARD && unref(isArray)(item.content.forwardMessageList) ? (openBlock(), createElementBlock("div", {
472
- key: 3,
473
- class: "merge-msg-box",
474
- onClick: () => clickMergeMsg(item)
475
- }, [createElementVNode("h4", null, toDisplayString(unref(getForwardTitle)(item.content)), 1), createElementVNode("div", _hoisted_15, [(openBlock(true), createElementBlock(Fragment, null, renderList(item.content.forwardMessageList, (msg) => {
545
+ }, 1024)]),
546
+ _: 2
547
+ }, 1024)) : createCommentVNode("v-if", true), !unref(isAudioOrVideoMessage)(item.content) && item.content.labelList ? (openBlock(), createBlock(unref(NSpace), {
548
+ key: 7,
549
+ "wrap-item": false
550
+ }, {
551
+ default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(item.content.labelList, (labelItem, i) => {
476
552
  return openBlock(), createElementBlock("div", {
477
- key: msg.id,
478
- class: "merge-msg-contents-item"
479
- }, [createElementVNode("span", _hoisted_16, toDisplayString(msg.senderName) + "\uFF1A", 1), createElementVNode("pre", {
480
- innerHTML: unref(simplifyMessage)(msg.content)
481
- }, null, 8, _hoisted_17)]);
482
- }), 128))])], 8, _hoisted_14)) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).IMAGE ? (openBlock(), createBlock(unref(NImage), {
483
- key: 4,
484
- width: "240",
485
- src: unref(formatJsonstr)(item.__content, "fileUrl"),
486
- onClick: _cache[0] || (_cache[0] = (event) => event.stopPropagation())
487
- }, null, 8, ["src"])) : createCommentVNode("v-if", true), unref(isAudioOrVideoMessage)(item.content) ? (openBlock(), createElementBlock(Fragment, {
488
- key: 5
489
- }, [createVNode(unref(NIcon), {
490
- class: normalizeClass({
491
- "is-audio": item.content.chatMessageType === unref(MESSAGE_TYPE).AUDIO
492
- }),
493
- component: item.content.chatMessageType === unref(MESSAGE_TYPE).AUDIO ? unref(CallOutline) : unref(VideocamOutline)
494
- }, null, 8, ["class", "component"]), createElementVNode("span", _hoisted_18, toDisplayString(unref(getAVTime)(item.__content)), 1)], 64)) : createCommentVNode("v-if", true), item.content.chatMessageType === unref(MESSAGE_TYPE).FILE ? (openBlock(), createBlock(unref(NSpace), {
495
- key: 6,
496
- "wrap-item": false
497
- }, {
498
- default: withCtx(() => [createVNode(unref(NIcon), {
499
- class: "icon-file",
500
- size: "40",
501
- component: unref(DocumentSharp)
502
- }, null, 8, ["component"]), createVNode(unref(NSpace), {
503
- "wrap-item": false,
504
- vertical: "",
505
- justify: "space-between",
506
- style: {
507
- "row-gap": "0"
508
- }
553
+ key: i,
554
+ class: "label-item"
555
+ }, [labelItem.type === "text" ? (openBlock(), createBlock(unref(NButton), {
556
+ key: 0,
557
+ type: labelItem.label.type,
558
+ secondary: "",
559
+ size: "tiny",
560
+ onClick: () => unref(setMessageLabel)({
561
+ type: labelItem.type,
562
+ labelItem: labelItem.label,
563
+ msgId: item.id
564
+ })
509
565
  }, {
510
- default: withCtx(() => [createElementVNode("span", null, toDisplayString(unref(formatJsonstr)(item.__content, "fileName")), 1), createElementVNode("span", _hoisted_19, toDisplayString(unref(formatJsonstr)(item.__content, "fileSize")), 1)]),
566
+ default: withCtx(() => [createTextVNode(toDisplayString(labelItem.label.label), 1)]),
511
567
  _: 2
512
- }, 1024)]),
513
- _: 2
514
- }, 1024)) : createCommentVNode("v-if", true), !unref(isAudioOrVideoMessage)(item.content) && item.content.labelList ? (openBlock(), createBlock(unref(NSpace), {
515
- key: 7,
516
- "wrap-item": false
517
- }, {
518
- default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(item.content.labelList, (labelItem, i) => {
519
- return openBlock(), createElementBlock("div", {
520
- key: i,
521
- class: "label-item"
522
- }, [labelItem.type === "text" ? (openBlock(), createBlock(unref(NButton), {
523
- key: 0,
524
- type: labelItem.label.type,
525
- secondary: "",
526
- size: "tiny",
527
- onClick: () => unref(setMessageLabel)({
528
- type: labelItem.type,
529
- labelItem: labelItem.label,
530
- msgId: item.id
531
- })
532
- }, {
533
- default: withCtx(() => [createTextVNode(toDisplayString(labelItem.label.label), 1)]),
534
- _: 2
535
- }, 1032, ["type", "onClick"])) : (openBlock(), createBlock(unref(NButton), {
536
- key: 1,
568
+ }, 1032, ["type", "onClick"])) : (openBlock(), createBlock(unref(NButton), {
569
+ key: 1,
570
+ quaternary: "",
571
+ size: "tiny",
572
+ onClick: () => unref(setMessageLabel)({
573
+ type: labelItem.type,
574
+ labelItem: labelItem.label,
575
+ msgId: item.id
576
+ })
577
+ }, {
578
+ icon: withCtx(() => [createElementVNode("img", {
579
+ class: "emoji--min",
580
+ src: unref(emojis).findEmoji(labelItem.label)
581
+ }, null, 8, _hoisted_21)]),
582
+ _: 2
583
+ }, 1032, ["onClick"])), (openBlock(true), createElementBlock(Fragment, null, renderList(labelItem.userList, (user, i2) => {
584
+ return openBlock(), createElementBlock(Fragment, {
585
+ key: user.id
586
+ }, [createVNode(unref(NButton), {
537
587
  quaternary: "",
588
+ type: "tertiary",
538
589
  size: "tiny",
539
- onClick: () => unref(setMessageLabel)({
540
- type: labelItem.type,
541
- labelItem: labelItem.label,
542
- msgId: item.id
590
+ onClick: (event) => unref(setUserDetail)(event, {
591
+ show: true,
592
+ info: user
543
593
  })
544
594
  }, {
545
- icon: withCtx(() => [createElementVNode("img", {
546
- class: "emoji--min",
547
- src: unref(emojis).findEmoji(labelItem.label)
548
- }, null, 8, _hoisted_20)]),
595
+ default: withCtx(() => [createTextVNode(toDisplayString(user.name), 1)]),
549
596
  _: 2
550
- }, 1032, ["onClick"])), (openBlock(true), createElementBlock(Fragment, null, renderList(labelItem.userList, (user, i2) => {
551
- return openBlock(), createElementBlock(Fragment, {
552
- key: user.id
553
- }, [createVNode(unref(NButton), {
554
- quaternary: "",
555
- type: "tertiary",
556
- size: "tiny",
557
- onClick: (event) => unref(setUserDetail)(event, {
558
- show: true,
559
- info: user
560
- })
561
- }, {
562
- default: withCtx(() => [createTextVNode(toDisplayString(user.name), 1)]),
563
- _: 2
564
- }, 1032, ["onClick"]), i2 < labelItem.userList.length - 1 ? (openBlock(), createElementBlock("span", _hoisted_21, "\uFF0C")) : createCommentVNode("v-if", true)], 64);
565
- }), 128))]);
566
- }), 128))]),
597
+ }, 1032, ["onClick"]), i2 < labelItem.userList.length - 1 ? (openBlock(), createElementBlock("span", _hoisted_22, "\uFF0C")) : createCommentVNode("v-if", true)], 64);
598
+ }), 128))]);
599
+ }), 128))]),
600
+ _: 2
601
+ }, 1024)) : createCommentVNode("v-if", true), createVNode(unref(NButtonGroup), {
602
+ class: "quick-menu"
603
+ }, {
604
+ default: withCtx(() => [!unref(isAudioOrVideoMessage)(item.content) ? (openBlock(), createElementBlock(Fragment, {
605
+ key: 0
606
+ }, [createCommentVNode(' <n-button\n quaternary\n size="tiny"\n @click="(event: MouseEvent) => handleSelectLabel(event, item.id)"\n >\n <template #icon>\n <n-icon size="17" :component="HappyOutline" />\n </template>\n </n-button> '), createVNode(unref(NButton), {
607
+ quaternary: "",
608
+ size: "tiny",
609
+ onClick: () => setReferenceMsg(item)
610
+ }, {
611
+ icon: withCtx(() => [createVNode(unref(NIcon), {
612
+ size: "17",
613
+ component: unref(ChatbubbleEllipsesOutline)
614
+ }, null, 8, ["component"])]),
567
615
  _: 2
568
- }, 1024)) : createCommentVNode("v-if", true), createVNode(unref(NButtonGroup), {
569
- class: "quick-menu"
616
+ }, 1032, ["onClick"])], 64)) : createCommentVNode("v-if", true), createVNode(unref(NButton), {
617
+ quaternary: "",
618
+ size: "tiny",
619
+ onClick: (event) => handleContextmenu(event, item.id)
570
620
  }, {
571
- default: withCtx(() => [!unref(isAudioOrVideoMessage)(item.content) ? (openBlock(), createElementBlock(Fragment, {
572
- key: 0
573
- }, [createVNode(unref(NButton), {
574
- quaternary: "",
575
- size: "tiny",
576
- onClick: (event) => handleSelectLabel(event, item.id)
577
- }, {
578
- icon: withCtx(() => [createVNode(unref(NIcon), {
579
- size: "17",
580
- component: unref(HappyOutline)
581
- }, null, 8, ["component"])]),
582
- _: 2
583
- }, 1032, ["onClick"]), createVNode(unref(NButton), {
584
- quaternary: "",
585
- size: "tiny",
586
- onClick: () => setReferenceMsg(item)
587
- }, {
588
- icon: withCtx(() => [createVNode(unref(NIcon), {
589
- size: "17",
590
- component: unref(ChatbubbleEllipsesOutline)
591
- }, null, 8, ["component"])]),
592
- _: 2
593
- }, 1032, ["onClick"])], 64)) : createCommentVNode("v-if", true), createVNode(unref(NButton), {
594
- quaternary: "",
595
- size: "tiny",
596
- onClick: (event) => handleContextmenu(event, item.id)
597
- }, {
598
- icon: withCtx(() => [createVNode(unref(NIcon), {
599
- size: "14",
600
- component: unref(EllipsisHorizontal)
601
- }, null, 8, ["component"])]),
602
- _: 2
603
- }, 1032, ["onClick"])]),
621
+ icon: withCtx(() => [createVNode(unref(NIcon), {
622
+ size: "14",
623
+ component: unref(EllipsisHorizontal)
624
+ }, null, 8, ["component"])]),
604
625
  _: 2
605
- }, 1024)], 42, _hoisted_8)])) : createCommentVNode("v-if", true)])], 10, _hoisted_3))], 2)) : createCommentVNode("v-if", true)], 64);
606
- }), 128))]),
607
- _: 1
608
- }), createVNode(unref(ContextMenu), {
626
+ }, 1032, ["onClick"])]),
627
+ _: 2
628
+ }, 1024)], 42, _hoisted_8)])) : createCommentVNode("v-if", true)])], 10, _hoisted_3))], 2)) : createCommentVNode("v-if", true)], 64);
629
+ }), 128)), createVNode(unref(ContextMenu), {
609
630
  ref_key: "contextmenuRef",
610
631
  ref: contextmenuRef,
611
632
  show: showMenu.value,
612
- "onUpdate:show": _cache[1] || (_cache[1] = ($event) => showMenu.value = $event),
633
+ "onUpdate:show": _cache[0] || (_cache[0] = ($event) => showMenu.value = $event),
613
634
  position: menuPosition.value,
614
635
  id: menuMsgId.value,
615
636
  onSelect: handleSelect
@@ -643,15 +664,21 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
643
664
  }), menuMsgId.value ? (openBlock(), createBlock(SelectLabel, {
644
665
  key: 0,
645
666
  show: showLabel.value,
646
- "onUpdate:show": _cache[2] || (_cache[2] = ($event) => showLabel.value = $event),
667
+ "onUpdate:show": _cache[1] || (_cache[1] = ($event) => showLabel.value = $event),
647
668
  x: labelPosition.x,
648
669
  y: labelPosition.y,
649
670
  id: menuMsgId.value
650
671
  }, null, 8, ["show", "x", "y", "id"])) : createCommentVNode("v-if", true), createVNode(MessageMergeForward, {
651
672
  show: showForwardDetail.value,
652
- "onUpdate:show": _cache[3] || (_cache[3] = ($event) => showForwardDetail.value = $event),
673
+ "onUpdate:show": _cache[2] || (_cache[2] = ($event) => showForwardDetail.value = $event),
653
674
  id: menuMsgId.value
654
- }, null, 8, ["show", "id"])], 6);
675
+ }, null, 8, ["show", "id"]), createVNode(ImageLightbox, {
676
+ images: unref(images),
677
+ "current-id": currentImgId.value,
678
+ "onUpdate:current-id": _cache[3] || (_cache[3] = ($event) => currentImgId.value = $event),
679
+ visible: showLightbox.value,
680
+ "onUpdate:visible": _cache[4] || (_cache[4] = ($event) => showLightbox.value = $event)
681
+ }, null, 8, ["images", "current-id", "visible"])], 6);
655
682
  };
656
683
  }
657
684
  });