cnhis-design-vue 3.2.14-release.0 → 3.2.15-beta.10

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 (366) hide show
  1. package/README.md +87 -87
  2. package/es/components/ai-chat/index.d.ts +1 -0
  3. package/es/components/ai-chat/src/Index.vue.d.ts +1 -0
  4. package/es/components/ai-chat/src/components/ChatCard.js +1 -1
  5. package/es/components/ai-chat/src/components/ChatFooter.vue.d.ts +1 -0
  6. package/es/components/ai-chat/src/components/ChatFooter.vue2.js +1 -1
  7. package/es/components/ai-chat/src/components/ChatMain.js +1 -1
  8. package/es/components/ai-chat/src/components/ChatPatient.vue2.js +1 -1
  9. package/es/components/ai-chat/src/components/ChatPrompt.vue2.js +1 -1
  10. package/es/components/ai-chat/style/index.css +1 -1
  11. package/es/components/audio-sdk/src/components/recording.vue2.js +1 -1
  12. package/es/components/base-search/index.d.ts +8 -3
  13. package/es/components/base-search/src/index.vue.d.ts +8 -3
  14. package/es/components/base-search/src/index.vue2.js +1 -1
  15. package/es/components/big-table/src/BigTable.vue2.js +1 -1
  16. package/es/components/big-table/src/components/NoData.vue2.js +1 -1
  17. package/es/components/big-table/src/components/edit-form/edit-date.js +1 -1
  18. package/es/components/big-table/src/components/edit-form/edit-input.js +1 -1
  19. package/es/components/big-table/src/components/edit-form/edit-select.js +1 -1
  20. package/es/components/big-table/src/components/edit-form/edit-time.js +1 -1
  21. package/es/components/big-table/src/components/input-button.vue2.js +1 -1
  22. package/es/components/big-table/src/hooks/useNestTable.js +1 -1
  23. package/es/components/big-table/src/hooks/useTableParse.js +1 -1
  24. package/es/components/body-select/src/index.vue2.js +1 -1
  25. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  26. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  27. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  28. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  29. package/es/components/branch-notice/index.d.ts +479 -0
  30. package/es/components/branch-notice/index.js +1 -0
  31. package/es/components/branch-notice/src/BranchNotice.vue.d.ts +433 -0
  32. package/es/components/branch-notice/src/BranchNotice.vue.js +1 -0
  33. package/es/components/branch-notice/src/BranchNotice.vue2.js +1 -0
  34. package/es/components/branch-notice/src/canstants.d.ts +8 -0
  35. package/es/components/branch-notice/src/canstants.js +1 -0
  36. package/es/components/branch-notice/src/components/NoticeItem.vue.d.ts +275 -0
  37. package/es/components/branch-notice/src/components/NoticeItem.vue.js +1 -0
  38. package/es/components/branch-notice/src/components/NoticeItem.vue2.js +1 -0
  39. package/es/components/branch-notice/src/components/NoticeItemAside.vue.d.ts +104 -0
  40. package/es/components/branch-notice/src/components/NoticeItemAside.vue.js +1 -0
  41. package/es/components/branch-notice/src/components/NoticeItemAside.vue2.js +1 -0
  42. package/es/components/branch-notice/src/components/NoticeOperationList.vue.d.ts +49 -0
  43. package/es/components/branch-notice/src/components/NoticeOperationList.vue.js +1 -0
  44. package/es/components/branch-notice/src/components/NoticeOperationList.vue2.js +1 -0
  45. package/es/components/branch-notice/src/drawLine.d.ts +2 -0
  46. package/es/components/branch-notice/src/drawLine.js +1 -0
  47. package/es/components/branch-notice/src/hooks/useTheme.d.ts +1 -0
  48. package/es/components/branch-notice/src/hooks/useTheme.js +1 -0
  49. package/es/components/branch-notice/src/types.d.ts +32 -0
  50. package/es/components/branch-notice/src/types.js +1 -0
  51. package/es/components/branch-notice/style/index.css +1 -0
  52. package/es/components/button-print/index.d.ts +4 -0
  53. package/es/components/button-print/src/ButtonPrint.vue.d.ts +4 -0
  54. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  55. package/es/components/button-print/src/components/EditFormat.vue2.js +1 -1
  56. package/es/components/button-print/src/components/IdentityVerification.vue2.js +1 -1
  57. package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +4 -0
  58. package/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
  59. package/es/components/button-print/src/components/OldPrintComponent.vue2.js +1 -1
  60. package/es/components/button-print/src/components/Preview.vue2.js +1 -1
  61. package/es/components/button-print/src/utils/dialog.js +1 -1
  62. package/es/components/button-print/src/utils/print.js +1 -1
  63. package/es/components/calendar/index.d.ts +4 -4
  64. package/es/components/calendar/src/Calendar.vue.d.ts +4 -4
  65. package/es/components/card-reader-sdk/src/components/readCardDialog.vue2.js +1 -1
  66. package/es/components/card-reader-sdk/src/utils/readHealthCard.js +1 -1
  67. package/es/components/classification/index.d.ts +1 -0
  68. package/es/components/classification/src/components/search-filter/index.vue2.js +1 -1
  69. package/es/components/classification/src/components/set-classification/index.vue2.js +1 -1
  70. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  71. package/es/components/classification/src/components/table-modal/index.vue2.js +1 -1
  72. package/es/components/classification/src/index.vue.d.ts +1 -0
  73. package/es/components/classification/src/index.vue2.js +1 -1
  74. package/es/components/classification/style/index.css +1 -1
  75. package/es/components/default-page/src/constants/index.js +1 -1
  76. package/es/components/default-page/src/index.vue2.js +1 -1
  77. package/es/components/expand-field/src/components/FormBatchOptionsModal.vue2.js +1 -1
  78. package/es/components/expand-field/src/components/FormItemPerson.vue2.js +1 -1
  79. package/es/components/expand-field/src/components/PersonModal.vue2.js +1 -1
  80. package/es/components/expand-field/src/components/form.vue2.js +1 -1
  81. package/es/components/expand-field/src/index.vue2.js +1 -1
  82. package/es/components/expand-field/src/utils/constant.js +1 -1
  83. package/es/components/fabric-chart/index.d.ts +23 -4
  84. package/es/components/fabric-chart/src/FabricChart.vue.d.ts +23 -4
  85. package/es/components/fabric-chart/src/FabricChart.vue2.js +1 -1
  86. package/es/components/fabric-chart/src/components/PopupMenu.js +1 -1
  87. package/es/components/fabric-chart/src/components/PopupTip.vue.d.ts +13 -0
  88. package/es/components/fabric-chart/src/components/PopupTip.vue2.js +1 -1
  89. package/es/components/fabric-chart/src/components/useStyle.js +1 -1
  90. package/es/components/fabric-chart/src/constants/index.d.ts +1 -1
  91. package/es/components/fabric-chart/src/constants/index.js +1 -1
  92. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
  93. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.d.ts +1 -0
  94. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.js +1 -1
  95. package/es/components/fabric-chart/src/hooks/electrocardiogram/hooks/useDetailEvent.js +1 -1
  96. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogram.js +1 -1
  97. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.d.ts +1 -0
  98. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.js +1 -1
  99. package/es/components/fabric-chart/src/hooks/electrocardiogram/useMeasureInstrument.js +1 -1
  100. package/es/components/fabric-chart/src/hooks/index.d.ts +1 -0
  101. package/es/components/fabric-chart/src/hooks/index.js +1 -1
  102. package/es/components/fabric-chart/src/hooks/newBirthProcess/useNewBirthProcess.js +1 -1
  103. package/es/components/fabric-chart/src/hooks/newBirthProcess/useNewBirthProcessChart.js +1 -1
  104. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.d.ts +1 -1
  105. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.js +1 -1
  106. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useLeft.js +1 -1
  107. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
  108. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.d.ts +1 -0
  109. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.js +1 -1
  110. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.d.ts +7 -1
  111. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.js +1 -1
  112. package/es/components/fabric-chart/src/hooks/temperature/useBottom.js +1 -1
  113. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  114. package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +1 -1
  115. package/es/components/fabric-chart/src/hooks/temperature/useOther.js +1 -1
  116. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.d.ts +1 -0
  117. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  118. package/es/components/fabric-chart/src/hooks/temperature/useTop.js +1 -1
  119. package/es/components/fabric-chart/src/hooks/useCommon.js +1 -1
  120. package/es/components/fabric-chart/src/hooks/useDraw.js +1 -1
  121. package/es/components/fabric-chart/src/hooks/{temperature/useShadow.d.ts → useShadow.d.ts} +2 -2
  122. package/es/components/fabric-chart/src/hooks/useShadow.js +1 -0
  123. package/es/components/fabric-chart/src/interface.d.ts +3 -0
  124. package/es/components/fabric-chart/src/utils/index.d.ts +2 -1
  125. package/es/components/fabric-chart/src/utils/index.js +1 -1
  126. package/es/components/field-set/src/FieldColor.vue.d.ts +7 -7
  127. package/es/components/field-set/src/FieldColor.vue2.js +1 -1
  128. package/es/components/field-set/src/FieldFilter.vue.d.ts +9 -8
  129. package/es/components/field-set/src/FieldFilter.vue2.js +1 -1
  130. package/es/components/field-set/src/FieldSet.vue.d.ts +7 -7
  131. package/es/components/field-set/src/FieldSet.vue2.js +1 -1
  132. package/es/components/field-set/src/Index.vue2.js +1 -1
  133. package/es/components/field-set/src/TableStyle.vue2.js +1 -1
  134. package/es/components/field-set/src/components/condition.vue2.js +1 -1
  135. package/es/components/field-set/src/components/edit-dialog.vue.d.ts +1 -1
  136. package/es/components/field-set/src/components/edit-dialog.vue2.js +1 -1
  137. package/es/components/field-set/src/components/edit-filter.vue2.js +1 -1
  138. package/es/components/field-set/src/components/table-row.vue.d.ts +6 -6
  139. package/es/components/field-set/src/components/table-row.vue2.js +1 -1
  140. package/es/components/field-set/src/constants/filter.d.ts +21 -12
  141. package/es/components/field-set/src/constants/filter.js +1 -1
  142. package/es/components/field-set/src/constants/index.js +1 -1
  143. package/es/components/field-set/src/types/index.d.ts +1 -1
  144. package/es/components/form-config/index.d.ts +108 -3
  145. package/es/components/form-config/src/FormConfig.vue.d.ts +108 -3
  146. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  147. package/es/components/form-config/src/components/FormConfigEventSetting.vue.js +1 -0
  148. package/es/components/form-config/src/components/FormConfigEventSetting.vue2.js +1 -0
  149. package/es/components/form-config/src/constants/index.js +1 -1
  150. package/es/components/form-config/src/hooks/useLocale.js +1 -1
  151. package/es/components/form-render/index.js +1 -1
  152. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  153. package/es/components/form-render/src/components/renderer/combination/combination.js +1 -1
  154. package/es/components/form-render/src/components/renderer/combination/hooks/useCombination.js +1 -1
  155. package/es/components/form-render/src/components/renderer/combination/jsonCombination.js +1 -1
  156. package/es/components/form-render/src/components/renderer/combination/tableCombination.js +1 -1
  157. package/es/components/form-render/src/components/renderer/complex.js +1 -1
  158. package/es/components/form-render/src/components/renderer/date.js +1 -1
  159. package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
  160. package/es/components/form-render/src/components/renderer/remoteSearch.js +1 -1
  161. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  162. package/es/components/form-render/src/components/renderer/select.js +1 -1
  163. package/es/components/form-render/src/components/renderer/switch.js +1 -1
  164. package/es/components/form-render/src/components/renderer/text.js +1 -1
  165. package/es/components/form-render/src/components/renderer/textarea.js +1 -1
  166. package/es/components/form-render/src/hooks/useAnchor.js +1 -1
  167. package/es/components/form-render/src/hooks/useBusinessBinding.js +1 -1
  168. package/es/components/form-render/src/hooks/useComplexOptions.js +1 -1
  169. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  170. package/es/components/form-render/src/hooks/useFieldNormalize.js +1 -1
  171. package/es/components/form-render/src/hooks/useFormEvent.js +1 -1
  172. package/es/components/form-render/src/hooks/useFormValidator.js +1 -1
  173. package/es/components/form-render/src/hooks/usePresetScope.d.ts +1 -1
  174. package/es/components/form-render/src/hooks/usePresetScope.js +1 -1
  175. package/es/components/form-render/src/utils/index.d.ts +1 -0
  176. package/es/components/form-render/src/utils/index.js +1 -1
  177. package/es/components/iho-chat/index.d.ts +885 -66
  178. package/es/components/iho-chat/src/Index.vue.d.ts +888 -73
  179. package/es/components/iho-chat/src/Index.vue2.js +1 -1
  180. package/es/components/iho-chat/src/api/index.d.ts +1 -0
  181. package/es/components/iho-chat/src/api/index.js +1 -1
  182. package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +33 -1
  183. package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -1
  184. package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +54 -3
  185. package/es/components/iho-chat/src/components/ChatFile.vue2.js +1 -1
  186. package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +54 -2
  187. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
  188. package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +232 -13
  189. package/es/components/iho-chat/src/components/ChatHeader.vue2.js +1 -1
  190. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +86 -7
  191. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  192. package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +20 -1
  193. package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
  194. package/es/components/iho-chat/src/components/ChatSearch.vue.d.ts +44 -5
  195. package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
  196. package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +75 -5
  197. package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
  198. package/es/components/iho-chat/src/components/ContextMenu.d.ts +11 -2
  199. package/es/components/iho-chat/src/components/ContextMenu.js +1 -1
  200. package/es/components/iho-chat/src/components/MessageTemplate.vue.d.ts +1 -1
  201. package/es/components/iho-chat/src/components/MessageTemplate.vue2.js +1 -1
  202. package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +53 -2
  203. package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +1 -1
  204. package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +21 -2
  205. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  206. package/es/components/iho-chat/src/components/SiderList.vue.d.ts +276 -5
  207. package/es/components/iho-chat/src/components/SiderList.vue2.js +1 -1
  208. package/es/components/iho-chat/src/components/Video.vue.d.ts +20 -1
  209. package/es/components/iho-chat/src/components/Video.vue2.js +1 -1
  210. package/es/components/iho-chat/src/components/userItemRender.d.ts +18 -0
  211. package/es/components/iho-chat/src/components/userItemRender.js +1 -0
  212. package/es/components/iho-chat/src/constants/index.d.ts +12 -3
  213. package/es/components/iho-chat/src/constants/index.js +1 -1
  214. package/es/components/iho-chat/src/hooks/index.d.ts +2 -2
  215. package/es/components/iho-chat/src/hooks/index.js +1 -1
  216. package/es/components/iho-chat/src/hooks/useData.d.ts +96 -0
  217. package/es/components/iho-chat/src/hooks/useData.js +1 -0
  218. package/es/components/iho-chat/src/hooks/useSearchUserList.js +1 -1
  219. package/es/components/iho-chat/src/hooks/useVideo.d.ts +20 -1
  220. package/es/components/iho-chat/src/hooks/useVideo.js +1 -1
  221. package/es/components/iho-chat/src/hooks/useWebSocket.d.ts +3 -0
  222. package/es/components/iho-chat/src/hooks/useWebSocket.js +1 -0
  223. package/es/components/iho-chat/src/types/index.d.ts +2 -6
  224. package/es/components/iho-chat/src/types/index.js +1 -1
  225. package/es/components/iho-chat/src/utils/chatSock.js +1 -1
  226. package/es/components/iho-chat/src/utils/index.d.ts +2 -0
  227. package/es/components/iho-chat/src/utils/index.js +1 -1
  228. package/es/components/iho-chat/style/index.css +1 -1
  229. package/es/components/iho-table/src/hooks/useColumnConfigAdaptor.js +1 -1
  230. package/es/components/iho-table/src/plugins/dynamicFilterRenderPlugin/dynamicFilter.vue2.js +1 -1
  231. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue2.js +1 -1
  232. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
  233. package/es/components/iho-table/src/plugins/filterTextPlugin/filter.vue2.js +1 -1
  234. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/numberRendererPlugin.js +1 -1
  235. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
  236. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue2.js +1 -1
  237. package/es/components/iho-table/src/utils/index.js +1 -1
  238. package/es/components/index.css +1 -1
  239. package/es/components/index.d.ts +2 -1
  240. package/es/components/index.js +1 -1
  241. package/es/components/info-header/src/components/patientInfo/index.vue2.js +1 -1
  242. package/es/components/keyboard/src/Keyboard.vue2.js +1 -1
  243. package/es/components/keyboard/src/components/NumberPanel.vue2.js +1 -1
  244. package/es/components/map/src/Map.vue2.js +1 -1
  245. package/es/components/picture-clipper/src/PictureClipper.vue2.js +1 -1
  246. package/es/components/quick-search/index.d.ts +3 -1
  247. package/es/components/quick-search/src/index.vue.d.ts +3 -1
  248. package/es/components/quick-search/src/index.vue2.js +1 -1
  249. package/es/components/quick-search/style/index.css +1 -1
  250. package/es/components/recommend-search/src/components/BaseSearch.js +1 -1
  251. package/es/components/recommend-search/src/components/RecommendInput.vue2.js +1 -1
  252. package/es/components/recommend-search/src/components/RecommendSelect.vue2.js +1 -1
  253. package/es/components/scale-view/index.d.ts +31 -0
  254. package/es/components/scale-view/src/ScaleView.vue.d.ts +13 -0
  255. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  256. package/es/components/scale-view/src/components/NoData.vue2.js +1 -1
  257. package/es/components/scale-view/src/components/composables/choose-common.js +1 -1
  258. package/es/components/scale-view/src/components/formitem/r-cascader.js +1 -1
  259. package/es/components/scale-view/src/components/formitem/r-checkbox.d.ts +9 -0
  260. package/es/components/scale-view/src/components/formitem/r-checkbox.js +1 -1
  261. package/es/components/scale-view/src/components/formitem/r-input.d.ts +9 -0
  262. package/es/components/scale-view/src/components/formitem/r-input.js +1 -1
  263. package/es/components/scale-view/src/components/formitem/r-map.js +1 -1
  264. package/es/components/scale-view/src/components/formitem/r-radio.d.ts +9 -0
  265. package/es/components/scale-view/src/components/formitem/r-radio.js +1 -1
  266. package/es/components/scale-view/src/components/formitem/r-select.js +1 -1
  267. package/es/components/scale-view/src/components/formitem/r-sign.js +1 -1
  268. package/es/components/scale-view/src/components/formitem/standard-modal.js +1 -1
  269. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  270. package/es/components/scale-view/src/hooks/scaleview-methods.js +1 -1
  271. package/es/components/scale-view/src/hooks/scaleview-props.d.ts +4 -0
  272. package/es/components/scale-view/src/hooks/scaleview-props.js +1 -1
  273. package/es/components/scale-view/src/hooks/scaleview-submit.js +1 -1
  274. package/es/components/scale-view/src/hooks/scaleview-validate.js +1 -1
  275. package/es/components/scale-view/src/hooks/use-component.d.ts +72 -0
  276. package/es/components/scale-view/style/index.css +1 -1
  277. package/es/components/search-cascader/src/SearchCascader.vue2.js +1 -1
  278. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  279. package/es/components/select-label/src/SelectLabel.vue2.js +1 -1
  280. package/es/components/select-label/src/components/label-classify.vue2.js +1 -1
  281. package/es/components/select-label/src/ihoLabel/IhoLabelFormContent.vue2.js +1 -1
  282. package/es/components/select-label/src/ihoLabel/IhoSelectLabel.vue2.js +1 -1
  283. package/es/components/select-label/src/ihoLabel/iho-label-classify.vue2.js +1 -1
  284. package/es/components/select-person/src/SelectPerson.vue2.js +1 -1
  285. package/es/components/select-person/src/SelectPersonType.vue2.js +1 -1
  286. package/es/components/select-person/src/components/SearchOrgAndStaff.vue2.js +1 -1
  287. package/es/components/select-person/src/index.vue2.js +1 -1
  288. package/es/components/slider-tree/src/index.vue2.js +1 -1
  289. package/es/components/table-export-field/src/components/ExportModal.vue2.js +1 -1
  290. package/es/components/table-export-field/src/components/SaveProjectModal.vue2.js +1 -1
  291. package/es/components/table-export-field/src/index.vue2.js +1 -1
  292. package/es/components/table-filter/src/components/bi-filter/ValueCfg.vue2.js +1 -1
  293. package/es/components/table-filter/src/components/bi-filter/helpers/options.js +1 -1
  294. package/es/components/table-filter/src/components/bi-filter/index.vue2.js +1 -1
  295. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue2.js +1 -1
  296. package/es/components/table-filter/src/components/classify-filter/components/Date.vue2.js +1 -1
  297. package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue2.js +1 -1
  298. package/es/components/table-filter/src/components/classify-filter/components/InputFilter.vue2.js +1 -1
  299. package/es/components/table-filter/src/components/classify-filter/components/InputNumberGroup.vue2.js +1 -1
  300. package/es/components/table-filter/src/components/classify-filter/helpers/options.js +1 -1
  301. package/es/components/table-filter/src/components/classify-filter/hooks/useDisplayCategory.js +1 -1
  302. package/es/components/table-filter/src/components/classify-filter/index.vue2.js +1 -1
  303. package/es/components/table-filter/src/components/render-widget/components/DateInner.vue2.js +1 -1
  304. package/es/components/table-filter/src/components/render-widget/components/DateOut.vue2.js +1 -1
  305. package/es/components/table-filter/src/components/render-widget/components/DateRangeInner.vue2.js +1 -1
  306. package/es/components/table-filter/src/components/render-widget/components/DateRangeOut.vue2.js +1 -1
  307. package/es/components/table-filter/src/components/render-widget/components/InputCustom.vue2.js +1 -1
  308. package/es/components/table-filter/src/components/render-widget/components/InputNumberGroup.vue2.js +1 -1
  309. package/es/components/table-filter/src/components/render-widget/components/LabelInner.vue2.js +1 -1
  310. package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue.d.ts +4 -7
  311. package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue2.js +1 -1
  312. package/es/components/table-filter/src/components/render-widget/components/SelectDynamicOption/index.vue2.js +1 -1
  313. package/es/components/table-filter/src/components/render-widget/components/index.d.ts +4 -7
  314. package/es/components/table-filter/src/components/render-widget/helpers/dateExtraMap.js +1 -1
  315. package/es/components/table-filter/src/components/render-widget/helpers/selectExtraMap.js +1 -1
  316. package/es/components/table-filter/src/components/render-widget/index.vue.d.ts +3 -1
  317. package/es/components/table-filter/src/components/render-widget/index.vue.js +1 -1
  318. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +4 -7
  319. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.js +1 -1
  320. package/es/components/table-filter/src/tool/baseOptions.js +1 -1
  321. package/es/components/template-render/src/components/index.d.ts +23 -23
  322. package/es/components/tooth-bitmap/src/ToothBitmap.vue2.js +1 -1
  323. package/es/components/vod-chunk-upload/src/hooks/upload-computed.js +1 -1
  324. package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue2.js +1 -1
  325. package/es/components/vod-chunk-upload/src/vod-upload-modal.js +1 -1
  326. package/es/env.d.ts +25 -25
  327. package/es/shared/assets/img/ai__avatar.png.js +1 -1
  328. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  329. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  330. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  331. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  332. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  333. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  334. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  335. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  336. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  337. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  338. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  339. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  340. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  341. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  342. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  343. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  344. package/es/shared/assets/img/failure.png.js +1 -1
  345. package/es/shared/assets/img/logo.png.js +1 -1
  346. package/es/shared/assets/img/no-permission.png.js +1 -1
  347. package/es/shared/assets/img/nodata.png.js +1 -1
  348. package/es/shared/assets/img/notfound.png.js +1 -1
  349. package/es/shared/assets/img/qr.png.js +1 -1
  350. package/es/shared/assets/img/success.png.js +1 -1
  351. package/es/shared/assets/img/table_style_2.png.js +1 -1
  352. package/es/shared/assets/img/video.png.js +1 -1
  353. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  354. package/es/shared/assets/img/xb_big.png.js +1 -1
  355. package/es/shared/assets/img/xb_small.png.js +1 -1
  356. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  357. package/es/shared/hooks/useLevelSearchCascader.js +1 -1
  358. package/es/shared/package.json.js +1 -1
  359. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  360. package/es/shared/utils/tapable/index.d.ts +139 -0
  361. package/package.json +2 -2
  362. package/es/components/fabric-chart/src/hooks/temperature/useShadow.js +0 -1
  363. package/es/components/iho-chat/src/hooks/useSession.d.ts +0 -12
  364. package/es/components/iho-chat/src/hooks/useSession.js +0 -1
  365. package/es/components/iho-chat/src/hooks/useState.d.ts +0 -18
  366. package/es/components/iho-chat/src/hooks/useState.js +0 -1
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as n,onBeforeUnmount as t,openBlock as s,createElementBlock as l,createElementVNode as i,withDirectives as a,toDisplayString as c,unref as r,vShow as d,createVNode as u,withCtx as m,Fragment as p,renderList as v,createCommentVNode as f,createTextVNode as g,nextTick as h}from"vue";import{NButton as I,NIcon as k}from"naive-ui";import A from"./ChatAdd.vue.js";import{Close as y,Mic as V,MicOff as b,Videocam as w,VideocamOff as _,Call as M,PersonAdd as x}from"@vicons/ionicons5";import{xorBy as R}from"lodash-es";import"date-fns";import{CHAT_TYPE as E,SUBSCRIBE_MESSAGE_TYPE as T}from"../constants/index.js";import"../utils/emoji.js";import"../../../../shared/utils/index.js";import"@vueuse/core";import{getUserDetailApi as C}from"../api/index.js";import{useVideo as S}from"../hooks/useVideo.js";import j from"trtc-sdk-v5";const $={class:"video-wrapper video-wrapper--multiple"},L={class:"video-header"},U={key:0,class:"video-main"},z={class:"video-main__left"},H=["data-name"],N={class:"video-bottom"},D={class:"btn-group"},O={class:"btn"},P=i("span",{class:"text"},"静音",-1),Y={class:"btn"},q=i("span",{class:"text"},"摄像头",-1),G=i("span",{class:"text"},"结束会诊",-1),B={class:"btn"},F=i("span",{class:"text"},"添加参会人",-1),J={class:"video-main__right"},K=["id","data-name"],Q={class:"user"},W={class:"name"},X={key:0,class:"tip"},Z={key:0,class:"calling-box"},ee={class:"btn-box"},oe={key:1,class:"opt-btn"},ne={class:"btn"},te=i("span",null,"拒接",-1),se={class:"btn"},le=i("span",null,"接听",-1);var ie=e({__name:"MultipleVideo",setup(e){const ie=o(),ae=o([]),{state:ce,sendMessage:re,trtc:de,voiceOpen:ue,isAudio:me,isCall:pe,startTimer:ve,resetTimer:fe,toggleAudio:ge,messageTypeText:he,timing:Ie,toggleVideo:ke,videocamOpen:Ae,installEventHandlers:ye,uninstallEventHandlers:Ve}=S(),be=o(!1),we=n((()=>pe.value?ce.userInfo.name:ce.currentAVMsg.sendName)),_e=n((()=>{if(!be.value)return"";const e=pe.value?`(${ae.value.length+1}/${ce.currentAVMsg.checkedIds.length+1})`:"";return`${we.value}发起的${he.value}会诊${e} ${Ie.value}`}));function Me(e){console.log("checkedIds :>> ",e),ce.currentAVMsg.checkedIds.push(...e),xe()}function xe(){var e;(null==(e=ce.currentAVMsg.checkedIds)?void 0:e.length)&&ce.currentAVMsg.checkedIds.forEach((e=>{re({chatType:E.SINGLE,content:{msg:ce.currentAVMsg.chatMessageType+","+ce.currentAVMsg.strRoomId,chatMessageType:T.AV_STATUS},receiver:e})})),be.value||Re()}async function Re(){const e=await j.isSupported();if(!e.result||!e.detail.isH264EncodeSupported||!e.detail.isH264DecodeSupported)return console.log("checkResult :>> ",e),void(ce.showMultipleVideo=!1);try{if(await de.enterRoom({strRoomId:ce.currentAVMsg.strRoomId,sdkAppId:parseInt(ce.userInfo.sdkAppID),userId:ce.userInfo.id,userSig:ce.userInfo.userSig}),be.value=!0,ve(),ye({handleError:Le,handleRemoteUserEnter:Se,handleRemoteAudioAvailable:Ce,handleRemoteUserExit:$e,handleRemoteVideoAvailable:Te}),await de.startLocalAudio(),me.value)return;await de.startLocalVideo({view:ie.value})}catch(e){console.log("error :>> ",e),ce.showMultipleVideo=!1}}async function Ee(){try{if(ce.showMultipleVideo=!1,Ve({handleError:Le,handleRemoteUserEnter:Se,handleRemoteAudioAvailable:Ce,handleRemoteUserExit:$e,handleRemoteVideoAvailable:Te}),await de.exitRoom(),await de.stopLocalAudio(),me.value)return;await de.stopLocalVideo()}catch(e){console.log("error :>> ",e)}}async function Te(e){const{userId:o,streamType:n}=e;try{n===j.TYPE.STREAM_TYPE_MAIN&&(await h(),await de.startRemoteVideo({userId:o,streamType:n,view:o}))}catch(e){console.log("error :>> ",e)}}async function Ce(e){var o;const{userId:n}=e;if(n&&!(null==(o=ae.value.map((e=>e.id)))?void 0:o.includes(n))){const e=await je(n);ae.value.push({id:n,name:e})}}async function Se(e){const{userId:o}=e,n=await je(o);ae.value.push({id:o,name:n}),ve()}async function je(e){const o=await C({userId:e});return(null==o?void 0:o.name)||""}function $e(e){console.log("event :>> 退房",e);const{userId:o}=e;ae.value=R(ae.value,[{id:o,name:""}],"id")}function Le(e){console.log("error :>> ",e),ce.showMultipleVideo=!1}return t((()=>{Ee()})),(e,o)=>(s(),l("div",$,[i("div",L,[a(i("span",{class:"title"},c(r(_e)),513),[[d,be.value]]),u(r(I),{quaternary:"",circle:"",color:"#ffffffcc",onClick:Ee},{icon:m((()=>[u(r(k),{component:r(y)},null,8,["component"])])),_:1})]),be.value?(s(),l("div",U,[i("div",z,[i("div",{ref_key:"selfVideoRef",ref:ie,class:"video-view","data-name":r(ce).userInfo.name},null,8,H),i("div",N,[i("div",D,[i("div",O,[u(r(I),{text:"",color:r(ue)?"#fff":"#000",onClick:r(ge)},{icon:m((()=>[u(r(k),{component:r(ue)?r(V):r(b)},null,8,["component"])])),_:1},8,["color","onClick"]),P]),i("div",Y,[u(r(I),{text:"",color:r(Ae)?"#fff":"#000",disabled:r(me),onClick:r(ke)},{icon:m((()=>[u(r(k),{component:r(Ae)?r(w):r(_)},null,8,["component"])])),_:1},8,["color","disabled","onClick"]),q]),i("div",{class:"btn",onClick:Ee},[u(r(I),{circle:"",color:"#f17568",class:"btn--rotate"},{icon:m((()=>[u(r(k),{component:r(M)},null,8,["component"])])),_:1}),G]),u(A,{onComfirm:Me},{trigger:m((()=>[i("div",B,[u(r(I),{text:"",color:"#fff"},{icon:m((()=>[u(r(k),{component:r(x)},null,8,["component"])])),_:1}),F])])),_:1})])])]),i("div",J,[(s(!0),l(p,null,v(ae.value,(e=>(s(),l("div",{key:e.id,id:e.id,class:"video-view","data-name":e.name},null,8,K)))),128))])])):(s(),l(p,{key:1},[i("div",Q,[i("span",W,c(r(we))+"发起的"+c(r(he))+"会议",1),r(pe)?f("v-if",!0):(s(),l("span",X,"邀请你加入"+c(r(he))+"会议",1))]),r(pe)?(s(),l("div",Z,[u(A,{onComfirm:Me,disabledIds:r(ce).currentAVMsg.checkedIds},{trigger:m((()=>[u(r(I),{size:"large",circle:"",color:"#000"},{icon:m((()=>[u(r(k),{component:r(x)},null,8,["component"])])),_:1})])),_:1},8,["disabledIds"]),i("p",null,"已邀请共"+c(r(ce).currentAVMsg.checkedIds.length)+"人",1),u(r(I),{size:"large",strong:"",round:"",type:"primary",onClick:xe},{default:m((()=>[g("开始会诊")])),_:1}),i("div",ee,[u(r(I),{color:"#000",round:""},{icon:m((()=>[u(r(k),{component:r(V)},null,8,["component"])])),_:1}),u(r(I),{color:"#000",round:""},{icon:m((()=>[u(r(k),{component:r(w)},null,8,["component"])])),_:1})])])):(s(),l("div",oe,[i("div",ne,[u(r(I),{circle:"",color:"#f17568",class:"btn--rotate",onClick:o[0]||(o[0]=()=>r(ce).showMultipleVideo=!1)},{icon:m((()=>[u(r(k),{size:"30",component:r(M)},null,8,["component"])])),_:1}),te]),i("div",se,[u(r(I),{circle:"",color:"#2ac98b",onClick:Re},{icon:m((()=>[u(r(k),{size:"30",component:r(M)},null,8,["component"])])),_:1}),le])]))],64))]))}});export{ie as default};
1
+ import{createElementVNode as e,defineComponent as o,ref as t,computed as n,onBeforeUnmount as l,openBlock as i,createElementBlock as a,withDirectives as s,toDisplayString as d,unref as c,vShow as r,createVNode as u,withCtx as m,Fragment as p,renderList as v,createCommentVNode as g,createTextVNode as w,nextTick as f}from"vue";import{NButton as h,NIcon as y}from"naive-ui";import k from"./ChatAdd.vue.js";import{Close as I,Mic as b,MicOff as A,Videocam as C,VideocamOff as V,Call as M,PersonAdd as _}from"@vicons/ionicons5";import{getUserDetailApi as L}from"../api/index.js";import"@vueuse/core";import{$message as x}from"../utils/index.js";import{xorBy as R}from"lodash-es";import{CHAT_TYPE as E,SUBSCRIBE_MESSAGE_TYPE as T}from"../constants/index.js";import"../../../../shared/utils/index.js";import"date-fns";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import"../../../../shared/hooks/useScrollLoading.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{useVideo as B}from"../hooks/useVideo.js";import j from"trtc-sdk-v5";var S,$,H,U,z,N;const D={class:"video-wrapper video-wrapper--multiple"},O={class:"video-header"},P={key:0,class:"video-main"},Y={class:"video-main__left"},q=["data-name"],G={class:"video-bottom"},F={class:"btn-group"},J={class:"btn"},K=e("span",{class:"text"},(null==(S=window.getLanguageByCode)?void 0:S.call(window,"10010.1.104"))||"静音",-1),Q={class:"btn"},W=e("span",{class:"text"},(null==($=window.getLanguageByCode)?void 0:$.call(window,"10010.1.105"))||"摄像头",-1),X=e("span",{class:"text"},(null==(H=window.getLanguageByCode)?void 0:H.call(window,"10010.1.106"))||"结束会诊",-1),Z={class:"btn"},ee=e("span",{class:"text"},(null==(U=window.getLanguageByCode)?void 0:U.call(window,"10010.1.107"))||"添加参会人",-1),oe={class:"video-main__right"},te=["id","data-name"],ne={class:"user"},le={class:"name"},ie={key:0,class:"tip"},ae={key:0,class:"calling-box"},se={key:1,class:"opt-btn"},de={class:"btn"},ce=e("span",null,(null==(z=window.getLanguageByCode)?void 0:z.call(window,"10010.1.113"))||"拒接",-1),re={class:"btn"},ue=e("span",null,(null==(N=window.getLanguageByCode)?void 0:N.call(window,"10010.1.114"))||"接听",-1);var me=o({__name:"MultipleVideo",setup(o){const S=t(),$=t([]),{state:H,sendMessage:U,trtc:z,voiceOpen:N,isAudio:me,isCall:pe,startTimer:ve,resetTimer:ge,toggleAudio:we,messageTypeText:fe,timing:he,toggleVideo:ye,videocamOpen:ke,installEventHandlers:Ie,uninstallEventHandlers:be}=B(),Ae=t(!1),Ce=n((()=>pe.value?H.userInfo.name:H.currentAVMsg.sendName)),Ve=n((()=>{if(!Ae.value)return"";const e=pe.value?`(${$.value.length+1}/${H.currentAVMsg.checkedIds.length+1})`:"";return`${Ce.value}发起的${fe.value}会诊${e} ${he.value}`}));function Me(e){console.log("checkedIds :>> ",e),H.currentAVMsg.checkedIds.push(...e),_e()}function _e(){var e;(null==(e=H.currentAVMsg.checkedIds)?void 0:e.length)&&H.currentAVMsg.checkedIds.forEach((e=>{U({chatType:E.SINGLE,content:{msg:H.currentAVMsg.chatMessageType+","+H.currentAVMsg.strRoomId,chatMessageType:T.AV_STATUS},receiver:e})})),Ae.value||Le()}async function Le(){const e=await j.isSupported();if(!e.result||!e.detail.isH264EncodeSupported||!e.detail.isH264DecodeSupported)return console.log("checkResult :>> ",e),void(H.showMultipleVideo=!1);try{if(await z.enterRoom({strRoomId:H.currentAVMsg.strRoomId,sdkAppId:parseInt(H.userInfo.sdkAppID),userId:H.userInfo.id,userSig:H.userInfo.userSig}),Ae.value=!0,ve(),Ie({handleError:Se,handleRemoteUserEnter:Te,handleRemoteAudioAvailable:Ee,handleRemoteUserExit:je,handleRemoteVideoAvailable:Re}),await z.startLocalAudio(),me.value)return;await z.startLocalVideo({view:S.value})}catch(e){console.log("error :>> ",e),x.error(e),H.showMultipleVideo=!1}}async function xe(){try{if(H.showMultipleVideo=!1,be({handleError:Se,handleRemoteUserEnter:Te,handleRemoteAudioAvailable:Ee,handleRemoteUserExit:je,handleRemoteVideoAvailable:Re}),await z.exitRoom(),await z.stopLocalAudio(),me.value)return;await z.stopLocalVideo()}catch(e){console.log("error :>> ",e)}}async function Re(e){const{userId:o,streamType:t}=e;try{t===j.TYPE.STREAM_TYPE_MAIN&&(await f(),await z.startRemoteVideo({userId:o,streamType:t,view:o}))}catch(e){console.log("error :>> ",e)}}async function Ee(e){var o;const{userId:t}=e;if(t&&!(null==(o=$.value.map((e=>e.id)))?void 0:o.includes(t))){const e=await Be(t);$.value.push({id:t,name:e})}}async function Te(e){const{userId:o}=e,t=await Be(o);$.value.push({id:o,name:t}),ve()}async function Be(e){const o=await L({userId:e});return(null==o?void 0:o.name)||""}function je(e){console.log("event :>> 退房",e);const{userId:o}=e;$.value=R($.value,[{id:o,name:""}],"id")}function Se(e){console.log("error :>> ",e),H.showMultipleVideo=!1}return l((()=>{xe()})),(o,t)=>{var n,l,f,L,x,R;return i(),a("div",D,[e("div",O,[s(e("span",{class:"title"},d(c(Ve)),513),[[r,Ae.value]]),u(c(h),{quaternary:"",circle:"",color:"#ffffffcc",onClick:xe},{icon:m((()=>[u(c(y),{component:c(I)},null,8,["component"])])),_:1})]),Ae.value?(i(),a("div",P,[e("div",Y,[e("div",{ref_key:"selfVideoRef",ref:S,class:"video-view","data-name":c(H).userInfo.name},null,8,q),e("div",G,[e("div",F,[e("div",J,[u(c(h),{text:"",color:c(N)?"#fff":"#000",onClick:c(we)},{icon:m((()=>[u(c(y),{component:c(N)?c(b):c(A)},null,8,["component"])])),_:1},8,["color","onClick"]),K]),e("div",Q,[u(c(h),{text:"",color:c(ke)?"#fff":"#000",disabled:c(me),onClick:c(ye)},{icon:m((()=>[u(c(y),{component:c(ke)?c(C):c(V)},null,8,["component"])])),_:1},8,["color","disabled","onClick"]),W]),e("div",{class:"btn",onClick:xe},[u(c(h),{circle:"",color:"#f17568",class:"btn--rotate"},{icon:m((()=>[u(c(y),{component:c(M)},null,8,["component"])])),_:1}),X]),u(k,{onComfirm:Me},{trigger:m((()=>[e("div",Z,[u(c(h),{text:"",color:"#fff"},{icon:m((()=>[u(c(y),{component:c(_)},null,8,["component"])])),_:1}),ee])])),_:1})])])]),e("div",oe,[(i(!0),a(p,null,v($.value,(e=>(i(),a("div",{key:e.id,id:e.id,class:"video-view","data-name":e.name},null,8,te)))),128))])])):(i(),a(p,{key:1},[e("div",ne,[e("span",le,d(c(Ce))+((null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.108"))||"发起的")+d(c(fe))+((null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.109"))||"会议"),1),c(pe)?g("v-if",!0):(i(),a("span",ie,((null==(f=window.getLanguageByCode)?void 0:f.call(window,"10010.1.110"))||"邀请你加入")+d(c(fe))+((null==(L=window.getLanguageByCode)?void 0:L.call(window,"10010.1.109"))||"会议"),1))]),c(pe)?(i(),a("div",ae,[u(k,{onComfirm:Me,disabledIds:c(H).currentAVMsg.checkedIds},{trigger:m((()=>[u(c(h),{size:"large",circle:"",color:"#000"},{icon:m((()=>[u(c(y),{component:c(_)},null,8,["component"])])),_:1})])),_:1},8,["disabledIds"]),e("p",null,((null==(x=window.getLanguageByCode)?void 0:x.call(window,"10010.1.111"))||"已邀请共")+d(c(H).currentAVMsg.checkedIds.length)+((null==(R=window.getLanguageByCode)?void 0:R.call(window,"10010.1.40"))||"人"),1),u(c(h),{size:"large",strong:"",round:"",type:"primary",onClick:_e},{default:m((()=>{var e;return[w((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.112"))||"开始会诊")]})),_:1}),g(' <div class="btn-box">\n\t\t\t\t\t\t<n-button color="#000" round>\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<n-icon :component="Mic" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</n-button>\n\t\t\t\t\t\t<n-button color="#000" round>\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<n-icon :component="Videocam" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</n-button>\n\t\t\t\t\t</div> ')])):(i(),a("div",se,[e("div",de,[u(c(h),{circle:"",color:"#f17568",class:"btn--rotate",onClick:t[0]||(t[0]=()=>c(H).showMultipleVideo=!1)},{icon:m((()=>[u(c(y),{size:"30",component:c(M)},null,8,["component"])])),_:1}),ce]),e("div",re,[u(c(h),{circle:"",color:"#2ac98b",onClick:Le},{icon:m((()=>[u(c(y),{size:"30",component:c(M)},null,8,["component"])])),_:1}),ue])]))],64))])}}});export{me as default};
@@ -23,8 +23,27 @@ declare const _default: import("vue").DefineComponent<{
23
23
  onClose?: ((...args: any[]) => any) | undefined;
24
24
  }>>;
25
25
  emit: (event: "close", ...args: any[]) => void;
26
- state: import("../types").IState;
27
- openSession: (item: AnyObject) => Promise<void>;
26
+ state: {
27
+ filterable: boolean;
28
+ orgId: string | number;
29
+ currentSessionItem: AnyObject;
30
+ id: string;
31
+ userInfo: AnyObject;
32
+ msgList: AnyObject[];
33
+ currentMsg: AnyObject;
34
+ isAppendMsg: boolean;
35
+ sessionList: AnyObject[];
36
+ isChangeSession: boolean;
37
+ updateSessionItem: AnyObject;
38
+ isUpdateSession: boolean;
39
+ currentReferenceMsg: AnyObject | null;
40
+ currentReEditMsg: AnyObject | null;
41
+ showVideo: boolean;
42
+ currentAVMsg: AnyObject;
43
+ currentGroupUser: AnyObject[];
44
+ showMultipleVideo: boolean;
45
+ };
46
+ openSession: (session: string | AnyObject) => Promise<void>;
28
47
  showUserDetail: import("vue").Ref<boolean>;
29
48
  showLargeAvatar: import("vue").Ref<boolean>;
30
49
  showPhone: import("vue").Ref<boolean>;
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,reactive as a,computed as o,openBlock as l,createBlock as r,unref as n,withCtx as s,renderSlot as i,createElementBlock as c,Fragment as u,withDirectives as d,createElementVNode as p,createVNode as m,createCommentVNode as v,toDisplayString as f,createTextVNode as g,renderList as y,vShow as k}from"vue";import{NPopover as h,NAvatar as b,NButton as w,NIcon as j}from"naive-ui";import{ChatbubbleEllipses as C,EyeOffOutline as I,EyeOutline as _,Close as x}from"@vicons/ionicons5";import{useState as z}from"../hooks/useState.js";import{useSession as N}from"../hooks/useSession.js";import{CHAT_TYPE as S}from"../constants/index.js";import"trtc-sdk-v5";import"date-fns";import"lodash-es";import"../utils/emoji.js";import"../../../../shared/utils/index.js";import{openSessionApi as $,getUserDetailApi as D}from"../api/index.js";const E={class:"person-profile-main"},L={class:"left"},P={class:"profile"},q={class:"profile__text"},B={class:"right"},G={class:"right__content"},O={class:"label"},T={class:"content"};var U=t({__name:"PersonProfile",props:{userId:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["close"],setup(t,{emit:U}){const A=t,{state:F}=z(),{openSession:H}=N(F),J=e(!1),K=e(!1),M=e(!1),Q=a({}),R=[{label:"机构",value:"",key:"orgName"},{label:"姓名",value:"",key:"name"},{label:"归属科室",value:"",key:"deptName"},{label:"业务科室",value:"",key:"businessDeptNames"},{label:"手机号",value:"",key:"phone"},{label:"岗位",value:"",key:"post"},{label:"工号",value:"",key:"jobId"},{label:"性别",value:"",key:"orgName"}],V=o((()=>(Q.id&&R.forEach((t=>{const{key:e}=t;t.value=Q[e]})),R)));async function W(){J.value=!1;let t=F.sessionList.find((t=>t.receiver===A.userId));if(!t)try{t=await $({chatType:S.SINGLE,receiver:A.userId,sender:F.userInfo.id})}catch(t){console.log("error :>> ",t)}t&&H(t),U("close")}async function X(t){if(!t)return;const e=await D({userId:A.userId});(null==e?void 0:e.id)?Object.assign(Q,e):Q.id=""}function Y(t){const{key:e,value:a}=t;return"phone"!==e||M.value?a:(a||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return(e,a)=>(l(),r(n(h),{raw:"",class:"person-profile-wrapper",show:J.value,"onUpdate:show":[a[3]||(a[3]=t=>J.value=t),X],trigger:t.disabled?"manual":"click","show-arrow":!1,to:"body",shift:""},{trigger:s((()=>[i(e.$slots,"trigger")])),default:s((()=>[Q.id?(l(),c(u,{key:0},[d(p("div",E,[p("div",L,[p("div",P,[m(n(b),{src:Q.avatar,bordered:"",round:"",size:100,onClickCapture:a[0]||(a[0]=t=>K.value=!0)},null,8,["src"]),v(' <n-upload abstract accept="image/*" @change="onChange">\r\n\t\t\t\t\t\t\t<n-upload-trigger #="{ handleClick }" abstract>\r\n\t\t\t\t\t\t\t\t<n-button\r\n\t\t\t\t\t\t\t\t\tcircle\r\n\t\t\t\t\t\t\t\t\tsecondary\r\n\t\t\t\t\t\t\t\t\tclass="edit-avatar"\r\n\t\t\t\t\t\t\t\t\tv-show="userDetail.id === state.userInfo.id"\r\n\t\t\t\t\t\t\t\t\t@click="handleClick"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t<n-icon size="16" color="#666666" :component="Camera" />\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</n-button>\r\n\t\t\t\t\t\t\t</n-upload-trigger>\r\n\t\t\t\t\t\t</n-upload> '),p("div",q,[p("h4",null,f(Q.name),1),p("p",null,f(Q.orgName),1)]),m(n(w),{strong:"",secondary:"",onClick:W},{default:s((()=>[m(n(j),{size:"13",color:"#666666",component:n(C),style:{"margin-right":"6px"}},null,8,["component"]),g(" 发消息 ")])),_:1})])]),p("div",B,[p("div",G,[(l(!0),c(u,null,y(n(V),((t,e)=>(l(),c("div",{class:"info-item",key:e},[p("span",O,f(t.label),1),p("div",T,[p("span",null,f(Y(t)),1),"phone"===t.key&&Y(t)?(l(),r(n(j),{key:0,size:"16",color:"#666666",component:M.value?n(I):n(_),style:{"margin-left":"10px"},onClick:a[1]||(a[1]=t=>M.value=!M.value)},null,8,["component"])):v("v-if",!0)])])))),128))])])],512),[[k,!K.value]]),d(p("div",{class:"large-avatar",onClick:a[2]||(a[2]=t=>K.value=!1)},[m(n(w),{circle:"",size:"small",secondary:""},{icon:s((()=>[m(n(j),{size:24,component:n(x),color:"#fff"},null,8,["component"])])),_:1}),m(n(b),{size:310,round:"",src:Q.avatar},null,8,["src"])],512),[[k,K.value]])],64)):v("v-if",!0)])),_:3},8,["show","trigger"]))}});export{U as default};
1
+ import{defineComponent as t,ref as e,reactive as l,computed as n,openBlock as o,createBlock as a,unref as i,withCtx as s,renderSlot as r,createElementBlock as d,Fragment as c,withDirectives as u,createElementVNode as p,createVNode as v,createCommentVNode as g,toDisplayString as m,createTextVNode as w,renderList as y,vShow as f}from"vue";import{NPopover as k,NAvatar as h,NButton as b,NIcon as C}from"naive-ui";import{ChatbubbleEllipses as j,EyeOffOutline as L,EyeOutline as B,Close as I}from"@vicons/ionicons5";import{useData as _}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{CHAT_TYPE as x}from"../constants/index.js";import{openSessionApi as z,getUserDetailApi as N}from"../api/index.js";import"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";const D={class:"person-profile-main"},S={class:"left"},$={class:"profile"},E={class:"profile__text"},P={class:"right"},q={class:"right__content"},G={class:"label"},O={class:"content"};var T=t({__name:"PersonProfile",props:{userId:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["close"],setup(t,{emit:T}){var U,A,F,H,J,K,M,Q;const R=t,{state:V,openSession:W}=_(),X=e(!1),Y=e(!1),Z=e(!1),tt=l({}),et=[{label:(null==(U=window.getLanguageByCode)?void 0:U.call(window,"10010.1.115"))||"机构",value:"",key:"orgName"},{label:(null==(A=window.getLanguageByCode)?void 0:A.call(window,"10010.1.116"))||"姓名",value:"",key:"name"},{label:(null==(F=window.getLanguageByCode)?void 0:F.call(window,"10010.1.117"))||"归属科室",value:"",key:"deptName"},{label:(null==(H=window.getLanguageByCode)?void 0:H.call(window,"10010.1.118"))||"业务科室",value:"",key:"businessDeptNames"},{label:(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.119"))||"手机号",value:"",key:"phone"},{label:(null==(K=window.getLanguageByCode)?void 0:K.call(window,"10010.1.120"))||"岗位",value:"",key:"post"},{label:(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.121"))||"工号",value:"",key:"jobId"},{label:(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.122"))||"性别",value:"",key:"orgName"}],lt=n((()=>(tt.id&&et.forEach((t=>{const{key:e}=t;t.value=tt[e]})),et)));async function nt(){X.value=!1;let t=V.sessionList.find((t=>t.receiver===R.userId));if(!t)try{t=await z({chatType:x.SINGLE,receiver:R.userId,sender:V.userInfo.id})}catch(t){console.log("error :>> ",t)}t&&W(t),T("close")}async function ot(t){if(!t)return;const e=await N({userId:R.userId});(null==e?void 0:e.id)?Object.assign(tt,e):tt.id=""}function at(t){const{key:e,value:l}=t;return"phone"!==e||Z.value?l:(l||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return(e,l)=>(o(),a(i(k),{raw:"",class:"person-profile-wrapper",show:X.value,"onUpdate:show":[l[3]||(l[3]=t=>X.value=t),ot],trigger:t.disabled?"manual":"click","show-arrow":!1,to:"body",shift:""},{trigger:s((()=>[r(e.$slots,"trigger")])),default:s((()=>[tt.id?(o(),d(c,{key:0},[u(p("div",D,[p("div",S,[p("div",$,[v(i(h),{src:tt.avatar,bordered:"",round:"",size:100,onClickCapture:l[0]||(l[0]=t=>Y.value=!0)},null,8,["src"]),g(' <n-upload abstract accept="image/*" @change="onChange">\n\t\t\t\t\t\t\t<n-upload-trigger #="{ handleClick }" abstract>\n\t\t\t\t\t\t\t\t<n-button\n\t\t\t\t\t\t\t\t\tcircle\n\t\t\t\t\t\t\t\t\tsecondary\n\t\t\t\t\t\t\t\t\tclass="edit-avatar"\n\t\t\t\t\t\t\t\t\tv-show="userDetail.id === state.userInfo.id"\n\t\t\t\t\t\t\t\t\t@click="handleClick"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t<n-icon size="16" color="#666666" :component="Camera" />\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t</n-button>\n\t\t\t\t\t\t\t</n-upload-trigger>\n\t\t\t\t\t\t</n-upload> '),p("div",E,[p("h4",null,m(tt.name),1),p("p",null,m(tt.orgName),1)]),v(i(b),{strong:"",secondary:"",onClick:nt},{default:s((()=>[v(i(C),{size:"13",color:"#666666",component:i(j),style:{"margin-right":"6px"}},null,8,["component"]),w(" 发消息 ")])),_:1})])]),p("div",P,[p("div",q,[(o(!0),d(c,null,y(i(lt),((t,e)=>(o(),d("div",{class:"info-item",key:e},[p("span",G,m(t.label),1),p("div",O,[p("span",null,m(at(t)),1),"phone"===t.key&&at(t)?(o(),a(i(C),{key:0,size:"16",color:"#666666",component:Z.value?i(L):i(B),style:{"margin-left":"10px"},onClick:l[1]||(l[1]=t=>Z.value=!Z.value)},null,8,["component"])):g("v-if",!0)])])))),128))])])],512),[[f,!Y.value]]),u(p("div",{class:"large-avatar",onClick:l[2]||(l[2]=t=>Y.value=!1)},[v(i(b),{circle:"",size:"small",secondary:""},{icon:s((()=>[v(i(C),{size:24,component:i(I),color:"#fff"},null,8,["component"])])),_:1}),v(i(h),{size:310,round:"",src:tt.avatar},null,8,["src"])],512),[[f,Y.value]])],64)):g("v-if",!0)])),_:3},8,["show","trigger"]))}});export{T as default};
@@ -1,35 +1,306 @@
1
+ import { CSSProperties } from 'vue';
1
2
  import { AnyObject } from '../../../../shared/types';
2
3
  import { formatTime } from '../utils';
4
+ import { STATUS } from '../constants';
3
5
  declare const _default: import("vue").DefineComponent<{}, {
4
6
  filterKey: {
5
7
  all: string;
6
8
  unread: string;
9
+ ended: string;
7
10
  };
8
11
  unreadSessionKeys: string[];
9
12
  flexWidth: import("vue").Ref<number>;
10
13
  listBoxRef: import("vue").Ref<HTMLElement | undefined>;
11
- loading: import("vue").Ref<boolean>;
12
- filterList: import("vue").Ref<{
14
+ filterListByTag: import("vue").Ref<{
13
15
  label: string;
14
16
  key: string;
15
17
  }[]>;
18
+ contextmenuRef: import("vue").Ref<any>;
19
+ showMenu: import("vue").Ref<boolean>;
20
+ menuPosition: any;
21
+ sessionId: import("vue").Ref<any>;
16
22
  currentFilterKey: import("vue").Ref<string>;
17
- state: import("../types").IState;
23
+ datePickerRef: import("vue").Ref<any>;
24
+ inputRef: import("vue").Ref<any>;
25
+ dateRange: import("vue").Ref<any>;
26
+ keyword: import("vue").Ref<string>;
27
+ showSearch: import("vue").Ref<boolean>;
28
+ filterList: import("vue").Ref<AnyObject[]>;
29
+ handleInput: () => void;
30
+ state: {
31
+ filterable: boolean;
32
+ orgId: string | number;
33
+ currentSessionItem: AnyObject;
34
+ id: string;
35
+ userInfo: AnyObject;
36
+ msgList: AnyObject[];
37
+ currentMsg: AnyObject;
38
+ isAppendMsg: boolean;
39
+ sessionList: AnyObject[];
40
+ isChangeSession: boolean;
41
+ updateSessionItem: AnyObject;
42
+ isUpdateSession: boolean;
43
+ currentReferenceMsg: AnyObject | null;
44
+ currentReEditMsg: AnyObject | null;
45
+ showVideo: boolean;
46
+ currentAVMsg: AnyObject;
47
+ currentGroupUser: AnyObject[];
48
+ showMultipleVideo: boolean;
49
+ };
18
50
  unreadTotal: import("vue").ComputedRef<number>;
19
- openSession: (item: AnyObject) => Promise<void>;
51
+ openSession: (session: string | AnyObject) => Promise<void>;
52
+ setUpdateSessionItem: (item: AnyObject) => void;
53
+ setCurrentSessionItem: (item: AnyObject) => void;
20
54
  currentWidth: import("vue").ComputedRef<number>;
21
55
  sessionList: import("vue").ComputedRef<AnyObject[]>;
56
+ getLabelNum: (session: AnyObject) => number;
22
57
  changeWidth: ({ distance }: AnyObject) => void;
23
58
  handleFilter: (key: string) => void;
24
59
  showSession: (item: AnyObject, currentKey?: string) => boolean | undefined;
25
- NSpin: any;
60
+ handleContextmenu: (event: MouseEvent, id: string) => Promise<void>;
61
+ handleSelect: (key: string, session: AnyObject) => Promise<void>;
62
+ handleUpdateShow: (value: boolean) => void;
63
+ handleClickoutside: (e: Event) => void;
64
+ handleUpdateDate: (value: string[]) => void;
65
+ handleSearch: () => void;
26
66
  NBadge: any;
27
67
  NAvatar: any;
68
+ NInput: any;
28
69
  NTag: any;
70
+ NIcon: any;
71
+ NPopover: any;
72
+ ContextMenu: import("vue").DefineComponent<{
73
+ type: {
74
+ type: StringConstructor;
75
+ default: string;
76
+ };
77
+ show: {
78
+ type: BooleanConstructor;
79
+ default: boolean;
80
+ };
81
+ position: {
82
+ type: import("vue").PropType<CSSProperties>;
83
+ };
84
+ id: {
85
+ type: StringConstructor;
86
+ };
87
+ }, () => JSX.Element | null, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "update:show")[], "select" | "update:show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
88
+ type: {
89
+ type: StringConstructor;
90
+ default: string;
91
+ };
92
+ show: {
93
+ type: BooleanConstructor;
94
+ default: boolean;
95
+ };
96
+ position: {
97
+ type: import("vue").PropType<CSSProperties>;
98
+ };
99
+ id: {
100
+ type: StringConstructor;
101
+ };
102
+ }>> & {
103
+ onSelect?: ((...args: any[]) => any) | undefined;
104
+ "onUpdate:show"?: ((...args: any[]) => any) | undefined;
105
+ }, {
106
+ type: string;
107
+ show: boolean;
108
+ }>;
29
109
  vFlexibleResize: {
30
110
  mounted(el: any, { value }: any): void;
31
111
  beforeUnmount(el: any): void;
32
112
  };
33
113
  formatTime: typeof formatTime;
114
+ STATUS: typeof STATUS;
115
+ CDatePicker: import("../../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
116
+ updateUnchangedValue: {
117
+ type: BooleanConstructor;
118
+ };
119
+ onConfirm: {
120
+ type: FunctionConstructor;
121
+ };
122
+ formattedValue: {
123
+ type: import("vue").PropType<(string | [string, string]) | null | undefined>;
124
+ };
125
+ placeholder: {
126
+ type: StringConstructor;
127
+ };
128
+ allowedInvalidValue: {
129
+ type: StringConstructor;
130
+ };
131
+ to: {
132
+ type: import("vue").PropType<string | false | HTMLElement>;
133
+ default: string;
134
+ };
135
+ holidays: {
136
+ type: import("vue").PropType<Date[]>;
137
+ default: () => never[];
138
+ };
139
+ type: {
140
+ type: StringConstructor;
141
+ default: string;
142
+ };
143
+ }, {
144
+ attrs: {
145
+ [x: string]: unknown;
146
+ };
147
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
148
+ updateUnchangedValue: {
149
+ type: BooleanConstructor;
150
+ };
151
+ onConfirm: {
152
+ type: FunctionConstructor;
153
+ };
154
+ formattedValue: {
155
+ type: import("vue").PropType<(string | [string, string]) | null | undefined>;
156
+ };
157
+ placeholder: {
158
+ type: StringConstructor;
159
+ };
160
+ allowedInvalidValue: {
161
+ type: StringConstructor;
162
+ };
163
+ to: {
164
+ type: import("vue").PropType<string | false | HTMLElement>;
165
+ default: string;
166
+ };
167
+ holidays: {
168
+ type: import("vue").PropType<Date[]>;
169
+ default: () => never[];
170
+ };
171
+ type: {
172
+ type: StringConstructor;
173
+ default: string;
174
+ };
175
+ }>> & {
176
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
177
+ }>>;
178
+ emit: (event: "update:formatted-value", ...args: any[]) => void;
179
+ datePickerRef: import("vue").Ref<AnyObject | null>;
180
+ panelInstRef: import("vue").Ref<null>;
181
+ placeholderRef: import("vue").Ref<any>;
182
+ oldValue: string;
183
+ currentFormattedValue: import("vue").WritableComputedRef<(string | [string, string]) | null | undefined>;
184
+ isDateTime: import("vue").ComputedRef<boolean>;
185
+ formatRef: import("vue").ComputedRef<string>;
186
+ panelFormatRef: import("vue").ComputedRef<string | [string, string]>;
187
+ focus: () => any;
188
+ blur: () => any;
189
+ handleConfirm: (target: HTMLInputElement) => void;
190
+ onUpdateShow: (show: boolean) => Promise<void>;
191
+ watchers: import("../../../../shared/types").AnyFn[];
192
+ stopWatcher: () => void;
193
+ setHoliday: (show: boolean) => Promise<void>;
194
+ onConfirm: (...args: any[]) => Promise<void>;
195
+ isAllowedInvalidValue: (value: (string | [string, string]) | null | undefined) => boolean | "" | undefined;
196
+ setShortcutValue: (type: "month" | "week") => Promise<void>;
197
+ NDatePicker: any;
198
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:formatted-value"[], "update:formatted-value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
199
+ updateUnchangedValue: {
200
+ type: BooleanConstructor;
201
+ };
202
+ onConfirm: {
203
+ type: FunctionConstructor;
204
+ };
205
+ formattedValue: {
206
+ type: import("vue").PropType<(string | [string, string]) | null | undefined>;
207
+ };
208
+ placeholder: {
209
+ type: StringConstructor;
210
+ };
211
+ allowedInvalidValue: {
212
+ type: StringConstructor;
213
+ };
214
+ to: {
215
+ type: import("vue").PropType<string | false | HTMLElement>;
216
+ default: string;
217
+ };
218
+ holidays: {
219
+ type: import("vue").PropType<Date[]>;
220
+ default: () => never[];
221
+ };
222
+ type: {
223
+ type: StringConstructor;
224
+ default: string;
225
+ };
226
+ }>> & {
227
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
228
+ }, {
229
+ type: string;
230
+ updateUnchangedValue: boolean;
231
+ to: string | false | HTMLElement;
232
+ holidays: Date[];
233
+ }>>;
234
+ SearchOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
235
+ userItemRender: import("vue").DefineComponent<{
236
+ item: {
237
+ type: import("vue").PropType<AnyObject>;
238
+ default: () => {};
239
+ };
240
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "item-click"[], "item-click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
241
+ item: {
242
+ type: import("vue").PropType<AnyObject>;
243
+ default: () => {};
244
+ };
245
+ }>> & {
246
+ "onItem-click"?: ((...args: any[]) => any) | undefined;
247
+ }, {
248
+ item: AnyObject;
249
+ }>;
250
+ DefaultPage: import("../../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
251
+ type: {
252
+ type: StringConstructor;
253
+ default: string;
254
+ };
255
+ config: {
256
+ type: import("vue").PropType<AnyObject>;
257
+ default: () => {
258
+ title: string;
259
+ content: string;
260
+ };
261
+ };
262
+ }, {
263
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
264
+ type: {
265
+ type: StringConstructor;
266
+ default: string;
267
+ };
268
+ config: {
269
+ type: import("vue").PropType<AnyObject>;
270
+ default: () => {
271
+ title: string;
272
+ content: string;
273
+ };
274
+ };
275
+ }>> & {
276
+ onReloadPage?: ((...args: any[]) => any) | undefined;
277
+ }>>;
278
+ emit: (event: "reloadPage", ...args: any[]) => void;
279
+ configResult: import("vue").ComputedRef<{
280
+ title: string;
281
+ content: string;
282
+ img: string;
283
+ }>;
284
+ reloadPage: () => void;
285
+ NIcon: any;
286
+ Refresh: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
287
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "reloadPage"[], "reloadPage", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
288
+ type: {
289
+ type: StringConstructor;
290
+ default: string;
291
+ };
292
+ config: {
293
+ type: import("vue").PropType<AnyObject>;
294
+ default: () => {
295
+ title: string;
296
+ content: string;
297
+ };
298
+ };
299
+ }>> & {
300
+ onReloadPage?: ((...args: any[]) => any) | undefined;
301
+ }, {
302
+ type: string;
303
+ config: AnyObject;
304
+ }>>;
34
305
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
35
306
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as s,computed as l,withDirectives as i,openBlock as a,createElementBlock as t,normalizeStyle as n,unref as r,createBlock as o,createCommentVNode as u,createElementVNode as d,Fragment as v,renderList as m,withCtx as c,createTextVNode as p,toDisplayString as k,normalizeClass as f,createVNode as y,vShow as _}from"vue";import{NSpin as h,NTag as g,NAvatar as x,NBadge as M}from"naive-ui";import{useState as b}from"../hooks/useState.js";import{useSession as S}from"../hooks/useSession.js";import"trtc-sdk-v5";import{listSort as T,formatTime as C}from"../utils/index.js";import{vFlexibleResize as N}from"../../../../shared/directive/flexibleResize.js";const j={class:"sider-list__filter box-shadow"},L=["onClick"],R={class:"avatar-right"},w={class:"name"},H={class:"msg-tip"},z={class:"msg-tip__content"},K={key:0},W=["innerHTML"];var A=e({__name:"SiderList",setup(e){const A="all",B="unread";let D=[];const I=s(300),V=s(),q=s(!1),E=s([{label:"全部",key:A},{label:"未读",key:B}]),F=s("all"),{state:G,unreadTotal:J}=b(),{openSession:O}=S(G),P=l((()=>Math.min(Math.max(I.value,240),360))),Q=l((()=>T(G.sessionList)));function U({distance:e}){I.value=I.value+e}function X(e,s=r(F)){var l;return s===A||(s===B?D.includes(e.sessionKey)||(null!=(l=e.unreadNum)?l:0)>0:void 0)}return(e,s)=>i((a(),t("section",{class:"sider-list",style:n({width:r(P)+"px"})},[q.value?(a(),o(r(h),{key:0,stroke:"#5585f5"})):u("v-if",!0),u(' <n-input v-else placeholder="输入用户名模糊搜索" v-model:value="keyword" @keyup.enter="handleSearch"></n-input> '),d("div",j,[(a(!0),t(v,null,m(E.value,(e=>(a(),o(r(g),{type:F.value===e.key?"info":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return s=e.key,F.value=s,void(s===B&&(D=(Q.value.filter((e=>{var s;return(null!=(s=e.unreadNum)?s:0)>0}))||[]).map((e=>e.sessionKey))));var s}},{default:c((()=>[p(k(e.label)+"("+k(r(J))+") ",1)])),_:2},1032,["type","onClick"])))),128))]),d("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:V},[(a(!0),t(v,null,m(r(Q),(e=>i((a(),t("div",{key:e.id,onClick:()=>r(O)(e),class:f(["sider-list__box__item",{active:e.id===r(G).id},e.topping?"sider-list__box__item--top":""])},[y(r(x),{round:"",size:"large",src:e.avatar},null,8,["src"]),d("div",R,[d("div",w,[d("h4",null,k(e.name),1),d("span",null,k(e.lastMessage?r(C)(e.lastMessageSendTime).siderMsgTime:""),1)]),d("div",H,[d("div",z,["WITHDRAWN"===e.lastMessageStatus?(a(),t("div",K,"撤回了一条消息")):(a(),t("div",{key:1,innerHTML:e.lastMessageContent},null,8,W))]),y(r(M),{value:e.unreadNum>99?"99+":e.unreadNum},null,8,["value"])])])],10,L)),[[_,X(e)]]))),128))],512)],4)),[[r(N),{mode:"VR",onMove:U}]])}});export{A as default};
1
+ import{defineComponent as e,ref as t,computed as l,withDirectives as n,openBlock as i,createElementBlock as a,normalizeStyle as o,unref as s,createVNode as u,withCtx as r,createElementVNode as d,Fragment as v,renderList as c,createBlock as p,vShow as m,createCommentVNode as f,createTextVNode as g,toDisplayString as w,withModifiers as y,normalizeClass as k,nextTick as h}from"vue";import{NPopover as _,NInput as x,NIcon as C,NTag as M,NAvatar as R,NBadge as b}from"naive-ui";import j from"./ContextMenu.js";import{useData as D}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{STATUS as E}from"../constants/index.js";import{toppingSessionApi as L,updateStatusApi as B}from"../api/index.js";import{listSort as I,formatTime as T}from"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";import{vFlexibleResize as N}from"../../../../shared/directive/flexibleResize.js";import S from"../../../date-picker/index.js";import{SearchOutline as V}from"@vicons/ionicons5";import $ from"./userItemRender.js";import O from"../../../default-page/index.js";import{useDebounceFn as U}from"@vueuse/core";import{isBefore as H,isAfter as z}from"date-fns";const K={key:0,class:"sider-list__filter"},P={class:"user-list-wrapper"},W={class:"sider-list__tags box-shadow"},A=["onClick","onContextmenu"],X={class:"avatar-right"},Y={class:"name"},q={class:"msg-tip"},F={class:"msg-tip__content"},G={key:0},J=["innerHTML"];var Q=e({__name:"SiderList",setup(e){var Q,Z,ee;const te="all",le="unread",ne="ended";let ie=[];const ae=t(300),oe=t(),se=t([{label:(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.123"))||"全部",key:te},{label:(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.124"))||"未读",key:le},{label:(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.77"))||"结束",key:ne}]),ue=t(),re=t(!1),de=t({left:0,top:0}),ve=t(),ce=t("all"),pe=t(),me=t(),fe=t(),ge=t(""),we=t(!1),ye=t([]),ke=U(Te,500),{state:he,unreadTotal:_e,openSession:xe,setUpdateSessionItem:Ce,setCurrentSessionItem:Me}=D(),Re=l((()=>Math.min(Math.max(ae.value,240),360))),be=l((()=>I(he.sessionList)));function je({distance:e}){ae.value=ae.value+e}function De(e,t=s(ce)){var l;return t===te||(t===le?ie.includes(e.sessionKey)||(null!=(l=e.unreadNum)?l:0)>0:t===ne?e.status===E.ENDED:void 0)}async function Ee(e,t){try{if("topping"===e)return await L({id:t.id,topping:!(null==t?void 0:t.topping)}),void(he.id===t.id?Me({topping:!(null==t?void 0:t.topping)}):Ce({...t,topping:!(null==t?void 0:t.topping)}));"remove"===e&&(await B({id:t.id,status:E.REMOVED}),he.id===t.id?Me({status:E.REMOVED}):Ce({...t,status:E.REMOVED}))}catch(e){}}function Le(e){we.value=e,e||(ge.value="",fe.value=null,ye.value=[])}function Be(e){var t,l,n,i,a;const o=null==(n=null==(l=null==(t=pe.value)?void 0:t.$datePicker)?void 0:l.panelInstRef)?void 0:n.$el;Le(!(!e.target||!(o&&o.contains(e.target)||(null==(i=me.value)?void 0:i.$el)&&(null==(a=me.value)?void 0:a.$el.contains(e.target)))))}function Ie(e){fe.value=e,Te()}function Te(){ge.value||fe.value?ye.value=be.value.filter((e=>{const t=e.name.includes(ge.value);if(!fe.value)return t;const[l,n]=fe.value,i=new Date(e.createdTime);return t&&H(i,new Date(n+" 23:59:59"))&&z(i,new Date(l+" 00:00:00"))})):ye.value=[]}return(e,t)=>n((i(),a("section",{class:"sider-list",style:o({width:s(Re)+"px"})},[s(he).filterable?(i(),a("div",K,[u(s(_),{raw:"","content-class":"search-content__sider",class:"search-wrapper",show:we.value,placement:"bottom-start","display-directive":"show","show-arrow":!1,onClickoutside:Be},{trigger:r((()=>[u(s(x),{ref_key:"inputRef",ref:me,placeholder:"请输入名称模糊搜索",value:ge.value,"onUpdate:value":t[0]||(t[0]=e=>ge.value=e),onInput:s(ke),onClick:t[1]||(t[1]=()=>Le(!0))},{prefix:r((()=>[u(s(C),{component:s(V)},null,8,["component"])])),_:1},8,["value","onInput"])])),default:r((()=>{var e;return[u(s(S),{ref_key:"datePickerRef",ref:pe,"formatted-value":fe.value,type:"daterange",clearable:"","onUpdate:formattedValue":Ie},null,8,["formatted-value"]),d("div",P,[(i(!0),a(v,null,c(ye.value,(e=>(i(),p(s($),{key:e.id,item:e,onItemClick:t[2]||(t[2]=()=>Le(!1))},null,8,["item"])))),128)),n(u(s(O),{config:{title:" ",content:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.81"))||"找不到相关的结果"},type:"5"},null,512),[[m,ye.value.length<1]])])]})),_:1},8,["show"])])):f("v-if",!0),d("div",W,[(i(!0),a(v,null,c(se.value,(e=>(i(),p(s(M),{type:ce.value===e.key?"primary":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return t=e.key,ce.value=t,void(t===le&&(ie=(be.value.filter((e=>{var t;return(null!=(t=e.unreadNum)?t:0)>0}))||[]).map((e=>e.sessionKey))));var t}},{default:r((()=>{return[g(w(e.label)+"("+w((t=e,t.key===ne?be.value.filter((e=>e.status===E.ENDED)).length:_e.value))+") ",1)];var t})),_:2},1032,["type","onClick"])))),128))]),d("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:oe},[(i(!0),a(v,null,c(s(be),(e=>{var t;return i(),a(v,{key:e.id},[e.status!==s(E).REMOVED?n((i(),a("div",{key:0,onClick:()=>s(xe)(e),onContextmenu:y((t=>async function(e,t){var l,n,i,a,o;ve.value=t,re.value=!0,await h();const{clientX:s,clientY:u}=e,{width:r=0,height:d=0,left:v=0,top:c=0}=(null==(l=oe.value)?void 0:l.getBoundingClientRect())||{},{width:p=100,height:m=80}=(null==(i=null==(n=ue.value)?void 0:n.$el)?void 0:i.getBoundingClientRect())||{},f=null!=(o=null==(a=oe.value)?void 0:a.scrollTop)?o:0,g={};s<v+r-(p+2)-5?g.left=s-v+5+"px":g.right=v+r-s+5+"px",c+d-u<=m+5?g.bottom=5-f+"px":g.top=u-c+f+5+"px",de.value=g}(t,e.id)),["prevent"]),class:k(["sider-list__box__item",{active:e.id===s(he).id},e.topping?"sider-list__box__item--top":""])},[u(s(R),{round:"",size:"large",src:e.avatar},null,8,["src"]),d("div",X,[d("div",Y,[d("h4",null,w(e.name),1),d("span",null,w(e.lastMessage?s(T)(e.lastMessageSendTime).siderMsgTime:""),1)]),d("div",q,[d("div",F,["WITHDRAWN"===e.lastMessageStatus?(i(),a("div",G,(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.68"))||"撤回了一条消息")):(i(),a("div",{key:1,innerHTML:e.lastMessageContent},null,8,J))]),u(s(b),{value:e.unreadNum>99?"99+":e.unreadNum},null,8,["value"])])])],42,A)),[[m,De(e)]]):f("v-if",!0)],64)})),128)),u(s(j),{ref_key:"contextmenuRef",ref:ue,show:re.value,"onUpdate:show":t[3]||(t[3]=e=>re.value=e),type:"session",position:de.value,id:ve.value,onSelect:Ee},null,8,["show","position","id"])],512)],4)),[[s(N),{mode:"VR",onMove:je}]])}});export{Q as default};
@@ -6,7 +6,26 @@ declare const _default: import("vue").DefineComponent<{}, {
6
6
  content: import("../../../../shared/types").AnyObject;
7
7
  receiver?: string | undefined;
8
8
  }) => Promise<void>;
9
- state: import("../types").IState;
9
+ state: {
10
+ filterable: boolean;
11
+ orgId: string | number;
12
+ currentSessionItem: import("../../../../shared/types").AnyObject;
13
+ id: string;
14
+ userInfo: import("../../../../shared/types").AnyObject;
15
+ msgList: import("../../../../shared/types").AnyObject[];
16
+ currentMsg: import("../../../../shared/types").AnyObject;
17
+ isAppendMsg: boolean;
18
+ sessionList: import("../../../../shared/types").AnyObject[];
19
+ isChangeSession: boolean;
20
+ updateSessionItem: import("../../../../shared/types").AnyObject;
21
+ isUpdateSession: boolean;
22
+ currentReferenceMsg: import("../../../../shared/types").AnyObject | null;
23
+ currentReEditMsg: import("../../../../shared/types").AnyObject | null;
24
+ showVideo: boolean;
25
+ currentAVMsg: import("../../../../shared/types").AnyObject;
26
+ currentGroupUser: import("../../../../shared/types").AnyObject[];
27
+ showMultipleVideo: boolean;
28
+ };
10
29
  trtc: TRTC;
11
30
  timing: import("vue").Ref<string>;
12
31
  voiceOpen: import("vue").Ref<boolean>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as n,watch as t,onBeforeUnmount as s,openBlock as r,createElementBlock as a,withDirectives as l,createElementVNode as i,vShow as c,createVNode as u,unref as d,toDisplayString as v,Fragment as m,normalizeClass as p,withCtx as f}from"vue";import{NAvatar as g,NButton as I,NIcon as h}from"naive-ui";import{Mic as A,MicOffCircle as y,Call as E}from"@vicons/ionicons5";import"lodash-es";import"date-fns";import{AV_STATUS as V,CHAT_TYPE as R}from"../constants/index.js";import"../utils/emoji.js";import"../../../../shared/utils/index.js";import"@vueuse/core";import{avFinishApi as w}from"../api/index.js";import{useVideo as k}from"../hooks/useVideo.js";import S from"trtc-sdk-v5";const M={class:"video-wrapper"},b={class:"user"},T={class:"name"},x={class:"tip"},C={class:"opt-btn"},_={class:"btn"},N=i("span",null,"静音",-1),L=i("span",null,"拒接",-1),D={class:"btn"},H=i("span",null,"挂断",-1),j=i("span",null,"接听",-1);var z=e({__name:"Video",setup(e){const{sendMessage:z,state:U,trtc:F,timing:O,voiceOpen:G,isAudio:J,isCall:P,startTimer:$,resetTimer:q,toggleAudio:B,messageTypeText:K,time:Q,installEventHandlers:W,uninstallEventHandlers:X}=k(),Y=o(),Z=o(),ee=o(!1);let oe=null;const ne=n((()=>{var e,o,n;return P.value?{avatar:U.currentSessionItem.avatar,name:U.currentSessionItem.name,userId:U.currentSessionItem.receiver}:{avatar:null==(e=U.currentAVMsg.currentMsg)?void 0:e.senderAvatar,name:null==(o=U.currentAVMsg.currentMsg)?void 0:o.senderName,userId:null==(n=U.currentAVMsg.currentMsg)?void 0:n.sender}})),te=n((()=>ee.value?J.value?O.value:"":P.value?"正在呼叫...":`邀请你${K.value}问诊...`)),se=n((()=>{var e,o;return null==(o=null==(e=U.currentAVMsg.currentMsg)?void 0:e.content)?void 0:o.avStatus}));async function re(e=V.FINISHED){z({chatType:R.SINGLE,content:{msg:e===V.FINISHED?""+Q.seconds:"s",chatMessageType:U.currentAVMsg.chatMessageType,avStatus:e},receiver:ne.value.userId}),await w({recordId:U.currentAVMsg.currentMsg.id,status:e,duration:e===V.FINISHED?Q.seconds:0})}async function ae(){const e=await S.isSupported();if(!e.result||!e.detail.isH264EncodeSupported||!e.detail.isH264DecodeSupported)return console.log("checkResult :>> ",e),void(U.showVideo=!1);try{if(await F.enterRoom({strRoomId:U.currentAVMsg.strRoomId,sdkAppId:parseInt(U.userInfo.sdkAppID),userId:U.userInfo.id,userSig:U.userInfo.userSig}),P.value||(ee.value=!0,$()),W({handleError:me,handleRemoteUserEnter:de,handleRemoteAudioAvailable:ue,handleRemoteUserExit:ve,handleRemoteVideoAvailable:ce}),await F.startLocalAudio(),J.value)return;await F.startLocalVideo({view:Z.value})}catch(e){console.log("error :>> ",e),U.showVideo=!1}}function le(){P.value&&!ee.value?re(V.CANCELED):re()}async function ie(){try{if(U.showVideo=!1,X({handleError:me,handleRemoteUserEnter:de,handleRemoteAudioAvailable:ue,handleRemoteUserExit:ve,handleRemoteVideoAvailable:ce}),await F.exitRoom(),await F.stopLocalAudio(),J.value)return;await F.stopLocalVideo()}catch(e){console.log("error :>> ",e)}}async function ce(e){const{userId:o,streamType:n}=e;try{await F.startRemoteVideo({userId:o,streamType:n,view:Y.value})}catch(e){console.log("error :>> ",e)}}function ue(e){}function de(){ee.value=!0,$()}function ve(e){console.log("event :>> 对方已挂断",e),ie()}function me(e){console.log("error :>> ",e),U.showVideo=!1}return t((()=>se.value),(e=>{U.showVideo&&(e===V.IN_CALL?async function(){P.value?ae():(oe&&clearTimeout(oe),oe=setTimeout((async()=>{ee.value||re(V.NO_RESPONSE)}),6e4))}():ie())}),{immediate:!0}),s((()=>{ie()})),(e,o)=>(r(),a("div",M,[l(i("div",{class:"video-box",ref_key:"videoRef",ref:Y},null,512),[[c,ee.value]]),l(i("div",{class:"video-box--self",ref_key:"selfVideoRef",ref:Z},null,512),[[c,ee.value]]),l(i("div",b,[u(d(g),{size:58,round:"",src:d(ne).avatar},null,8,["src"]),i("span",T,v(d(ne).name),1),i("span",x,v(d(te)),1)],512),[[c,d(J)||!ee.value]]),i("div",C,[i("div",_,[d(P)&&!ee.value||ee.value?(r(),a(m,{key:0},[u(d(I),{circle:"",onClick:d(B),class:p({bordered:d(G)})},{icon:f((()=>[u(d(h),{size:"30",color:d(G)?"#fff":"#626262",component:d(G)?d(A):d(y)},null,8,["color","component"])])),_:1},8,["onClick","class"]),N],64)):(r(),a(m,{key:1},[u(d(I),{circle:"",color:"#f17568",class:"btn--rotate",onClick:o[0]||(o[0]=()=>re(d(V).REJECTED))},{icon:f((()=>[u(d(h),{size:"30",component:d(E)},null,8,["component"])])),_:1}),L],64))]),i("div",D,[d(P)&&!ee.value||ee.value?(r(),a(m,{key:0},[u(d(I),{circle:"",color:"#f17568",class:"btn--rotate",onClick:le},{icon:f((()=>[u(d(h),{size:"30",component:d(E)},null,8,["component"])])),_:1}),H],64)):(r(),a(m,{key:1},[u(d(I),{circle:"",color:"#2ac98b",onClick:ae},{icon:f((()=>[u(d(h),{size:"30",component:d(E)},null,8,["component"])])),_:1}),j],64))])])]))}});export{z as default};
1
+ import{createElementVNode as e,defineComponent as o,ref as n,computed as s,watch as t,onBeforeUnmount as r,openBlock as a,createElementBlock as l,withDirectives as i,vShow as c,createVNode as u,unref as d,toDisplayString as v,Fragment as m,normalizeClass as p,withCtx as g}from"vue";import{NAvatar as f,NButton as w,NIcon as h}from"naive-ui";import{Mic as I,MicOffCircle as y,Call as A}from"@vicons/ionicons5";import{avFinishApi as k}from"../api/index.js";import"@vueuse/core";import{$message as E}from"../utils/index.js";import"lodash-es";import{AV_STATUS as V,CHAT_TYPE as R}from"../constants/index.js";import"../../../../shared/utils/index.js";import"date-fns";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import"../../../../shared/hooks/useScrollLoading.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{useVideo as S}from"../hooks/useVideo.js";import C from"trtc-sdk-v5";var M,b,L,T;const j={class:"video-wrapper"},x={class:"user"},_={class:"name"},N={class:"tip"},H={class:"opt-btn"},D={class:"btn"},z=e("span",null,(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.104"))||"静音",-1),B=e("span",null,(null==(b=window.getLanguageByCode)?void 0:b.call(window,"10010.1.113"))||"拒接",-1),U={class:"btn"},F=e("span",null,(null==(L=window.getLanguageByCode)?void 0:L.call(window,"10010.1.125"))||"挂断",-1),O=e("span",null,(null==(T=window.getLanguageByCode)?void 0:T.call(window,"10010.1.114"))||"接听",-1);var G=o({__name:"Video",setup(o){const{sendMessage:M,state:b,trtc:L,timing:T,voiceOpen:G,isAudio:J,isCall:P,startTimer:$,resetTimer:q,toggleAudio:K,messageTypeText:Q,time:W,installEventHandlers:X,uninstallEventHandlers:Y}=S(),Z=n(),ee=n(),oe=n(!1);let ne=null;const se=s((()=>{var e,o,n;return P.value?{avatar:b.currentSessionItem.avatar,name:b.currentSessionItem.name,userId:b.currentSessionItem.receiver}:{avatar:null==(e=b.currentAVMsg.currentMsg)?void 0:e.senderAvatar,name:null==(o=b.currentAVMsg.currentMsg)?void 0:o.senderName,userId:null==(n=b.currentAVMsg.currentMsg)?void 0:n.sender}})),te=s((()=>oe.value?J.value?T.value:"":P.value?"正在呼叫...":`邀请你${Q.value}问诊...`)),re=s((()=>{var e,o;return null==(o=null==(e=b.currentAVMsg.currentMsg)?void 0:e.content)?void 0:o.avStatus}));async function ae(e=V.FINISHED){M({chatType:R.SINGLE,content:{msg:e===V.FINISHED?""+W.seconds:"s",chatMessageType:b.currentAVMsg.chatMessageType,avStatus:e},receiver:se.value.userId}),await k({recordId:b.currentAVMsg.currentMsg.id,status:e,duration:e===V.FINISHED?W.seconds:0})}async function le(){const e=await C.isSupported();if(!e.result||!e.detail.isH264EncodeSupported||!e.detail.isH264DecodeSupported)return console.log("checkResult :>> ",e),void(b.showVideo=!1);try{if(await L.enterRoom({strRoomId:b.currentAVMsg.strRoomId,sdkAppId:parseInt(b.userInfo.sdkAppID),userId:b.userInfo.id,userSig:b.userInfo.userSig}),P.value||(oe.value=!0,$()),X({handleError:pe,handleRemoteUserEnter:ve,handleRemoteAudioAvailable:de,handleRemoteUserExit:me,handleRemoteVideoAvailable:ue}),await L.startLocalAudio(),J.value)return;await L.startLocalVideo({view:ee.value})}catch(e){console.log("error :>> ",e),E.error(e),b.showVideo=!1}}function ie(){P.value&&!oe.value?ae(V.CANCELED):ae()}async function ce(){try{if(b.showVideo=!1,Y({handleError:pe,handleRemoteUserEnter:ve,handleRemoteAudioAvailable:de,handleRemoteUserExit:me,handleRemoteVideoAvailable:ue}),await L.exitRoom(),await L.stopLocalAudio(),J.value)return;await L.stopLocalVideo()}catch(e){console.log("error :>> ",e)}}async function ue(e){const{userId:o,streamType:n}=e;try{await L.startRemoteVideo({userId:o,streamType:n,view:Z.value})}catch(e){console.log("error :>> ",e)}}function de(e){}function ve(){oe.value=!0,$()}function me(e){console.log("event :>> 对方已挂断",e),ce()}function pe(e){console.log("error :>> ",e),b.showVideo=!1}return t((()=>re.value),(e=>{b.showVideo&&(e===V.IN_CALL?async function(){P.value?le():(ne&&clearTimeout(ne),ne=setTimeout((async()=>{oe.value||ae(V.NO_RESPONSE)}),6e4))}():ce())}),{immediate:!0}),r((()=>{ce()})),(o,n)=>(a(),l("div",j,[i(e("div",{class:"video-box",ref_key:"videoRef",ref:Z},null,512),[[c,oe.value]]),i(e("div",{class:"video-box--self",ref_key:"selfVideoRef",ref:ee},null,512),[[c,oe.value]]),i(e("div",x,[u(d(f),{size:58,round:"",src:d(se).avatar},null,8,["src"]),e("span",_,v(d(se).name),1),e("span",N,v(d(te)),1)],512),[[c,d(J)||!oe.value]]),e("div",H,[e("div",D,[d(P)&&!oe.value||oe.value?(a(),l(m,{key:0},[u(d(w),{circle:"",onClick:d(K),class:p({bordered:d(G)})},{icon:g((()=>[u(d(h),{size:"30",color:d(G)?"#fff":"#626262",component:d(G)?d(I):d(y)},null,8,["color","component"])])),_:1},8,["onClick","class"]),z],64)):(a(),l(m,{key:1},[u(d(w),{circle:"",color:"#f17568",class:"btn--rotate",onClick:n[0]||(n[0]=()=>ae(d(V).REJECTED))},{icon:g((()=>[u(d(h),{size:"30",component:d(A)},null,8,["component"])])),_:1}),B],64))]),e("div",U,[d(P)&&!oe.value||oe.value?(a(),l(m,{key:0},[u(d(w),{circle:"",color:"#f17568",class:"btn--rotate",onClick:ie},{icon:g((()=>[u(d(h),{size:"30",component:d(A)},null,8,["component"])])),_:1}),F],64)):(a(),l(m,{key:1},[u(d(w),{circle:"",color:"#2ac98b",onClick:le},{icon:g((()=>[u(d(h),{size:"30",component:d(A)},null,8,["component"])])),_:1}),O],64))])])]))}});export{G as default};
@@ -0,0 +1,18 @@
1
+ import { PropType } from 'vue';
2
+ import { AnyObject } from '../../../../shared/types';
3
+ declare const _default: import("vue").DefineComponent<{
4
+ item: {
5
+ type: PropType<AnyObject>;
6
+ default: () => {};
7
+ };
8
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "item-click"[], "item-click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
9
+ item: {
10
+ type: PropType<AnyObject>;
11
+ default: () => {};
12
+ };
13
+ }>> & {
14
+ "onItem-click"?: ((...args: any[]) => any) | undefined;
15
+ }, {
16
+ item: AnyObject;
17
+ }>;
18
+ export default _default;
@@ -0,0 +1 @@
1
+ import{defineComponent as e,createVNode as s}from"vue";import{NAvatar as t}from"naive-ui";import{useData as i}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{openSessionApi as r}from"../api/index.js";import"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";var o=e({name:"UserItemRender",props:{item:{type:Object,default:()=>({})}},emits:["item-click"],setup(e,{attrs:o,slots:m,emit:n}){const{state:a,openSession:c,cssVars:l}=i();return()=>s("div",{class:"user-item",onClick:()=>async function(e){n("item-click");const s=a.sessionList.find((s=>e&&[s.receiver,s.id].includes(e)));let t=s;s||(t=await r({chatType:"SINGLE",receiver:e,sender:a.userInfo.id}));c(t)}(e.item.id)},[s(t,{round:!0,size:32,src:e.item.avatar,color:l.value["--c-primary-color"]},null),s("div",{class:"user-info"},[s("span",null,[e.item.name]),s("span",null,[e.item.deptName]),s("span",null,[e.item.post])])])}});export{o as default};
@@ -24,12 +24,13 @@ export declare enum MESSAGE_TYPE {
24
24
  * 订阅消息类别
25
25
  */
26
26
  export declare enum SUBSCRIBE_MESSAGE_TYPE {
27
- JOIN = "JOIN",
28
- LEAVE = "LEAVE",
27
+ JOIN_GROUP = "JOIN_GROUP",
28
+ LEAVE_GROUP = "LEAVE_GROUP",
29
29
  NEW_SESSION = "NEW_SESSION",
30
30
  MESSAGE = "MESSAGE",
31
31
  AV_STATUS = "AV_STATUS",
32
- RECALL_MESSAGE = "RECALL_MESSAGE"
32
+ RECALL_MESSAGE = "RECALL_MESSAGE",
33
+ DISABLE_SESSION = "DISABLE_SESSION"
33
34
  }
34
35
  /**
35
36
  * 音视频接通状态
@@ -42,3 +43,11 @@ export declare enum AV_STATUS {
42
43
  REJECTED = "REJECTED",
43
44
  CANCELED = "CANCELED"
44
45
  }
46
+ /**
47
+ * 会话状态
48
+ */
49
+ export declare enum STATUS {
50
+ REMOVED = "REMOVED",
51
+ ENABLED = "ENABLED",
52
+ ENDED = "ENDED"
53
+ }
@@ -1 +1 @@
1
- var E=(E=>(E.SINGLE="SINGLE",E.GROUP="GROUP",E))(E||{}),S=(E=>(E.TEXT="TEXT",E.FILE="FILE",E.EMOJI="EMOJI",E.IMAGE="IMAGE",E.TEMPLATE="TEMPLATE",E.BLEND="BLEND",E.FORWARD="FORWARD",E.QUICK_REPLY="QUICK_REPLY",E.AUDIO="AUDIO",E.VIDEO="VIDEO",E))(S||{}),A=(E=>(E.JOIN="JOIN",E.LEAVE="LEAVE",E.NEW_SESSION="NEW_SESSION",E.MESSAGE="MESSAGE",E.AV_STATUS="AV_STATUS",E.RECALL_MESSAGE="RECALL_MESSAGE",E))(A||{}),L=(E=>(E.IN_CALL="IN_CALL",E.CALL_BUSY="CALL_BUSY",E.NO_RESPONSE="NO_RESPONSE",E.FINISHED="FINISHED",E.REJECTED="REJECTED",E.CANCELED="CANCELED",E))(L||{});export{L as AV_STATUS,E as CHAT_TYPE,S as MESSAGE_TYPE,A as SUBSCRIBE_MESSAGE_TYPE};
1
+ var E=(E=>(E.SINGLE="SINGLE",E.GROUP="GROUP",E))(E||{}),S=(E=>(E.TEXT="TEXT",E.FILE="FILE",E.EMOJI="EMOJI",E.IMAGE="IMAGE",E.TEMPLATE="TEMPLATE",E.BLEND="BLEND",E.FORWARD="FORWARD",E.QUICK_REPLY="QUICK_REPLY",E.AUDIO="AUDIO",E.VIDEO="VIDEO",E))(S||{}),A=(E=>(E.JOIN_GROUP="JOIN_GROUP",E.LEAVE_GROUP="LEAVE_GROUP",E.NEW_SESSION="NEW_SESSION",E.MESSAGE="MESSAGE",E.AV_STATUS="AV_STATUS",E.RECALL_MESSAGE="RECALL_MESSAGE",E.DISABLE_SESSION="DISABLE_SESSION",E))(A||{}),L=(E=>(E.IN_CALL="IN_CALL",E.CALL_BUSY="CALL_BUSY",E.NO_RESPONSE="NO_RESPONSE",E.FINISHED="FINISHED",E.REJECTED="REJECTED",E.CANCELED="CANCELED",E))(L||{}),I=(E=>(E.REMOVED="REMOVED",E.ENABLED="ENABLED",E.ENDED="ENDED",E))(I||{});export{L as AV_STATUS,E as CHAT_TYPE,S as MESSAGE_TYPE,I as STATUS,A as SUBSCRIBE_MESSAGE_TYPE};
@@ -1,3 +1,3 @@
1
- export * from './useState';
2
- export * from './useSession';
1
+ export * from './useData';
2
+ export * from './useWebSocket';
3
3
  export * from './useVideo';
@@ -1 +1 @@
1
- export{useState}from"./useState.js";export{useSession}from"./useSession.js";export{useVideo}from"./useVideo.js";
1
+ export{InjectionIChatData,initData,useData}from"./useData.js";export{useWebSocket}from"./useWebSocket.js";export{useVideo}from"./useVideo.js";