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
@@ -15,7 +15,6 @@ import '../../../../shared/hooks/useScrollLoading.js';
15
15
  import 'stompjs';
16
16
  import 'sockjs-client/dist/sockjs.min.js';
17
17
  import { useVideo } from '../hooks/useVideo.js';
18
- import TRTC from 'trtc-sdk-v5';
19
18
 
20
19
  const _hoisted_1 = {
21
20
  class: "video-wrapper"
@@ -76,20 +75,25 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
76
75
  const {
77
76
  sendMessage,
78
77
  state,
79
- trtcProxy,
80
78
  trtc,
81
79
  timing,
82
80
  voiceClose,
83
81
  isAudio,
84
82
  isCall,
85
83
  startTimer,
86
- resetTimer,
87
84
  toggleAudio,
88
85
  messageTypeText,
89
86
  time,
90
87
  installEventHandlers,
91
- uninstallEventHandlers
92
- } = useVideo();
88
+ uninstallEventHandlers,
89
+ enterRoom,
90
+ exitRoom,
91
+ startLocalMedia,
92
+ MAIN_STREAM_TYPE
93
+ } = useVideo({
94
+ isMultiple: false,
95
+ enableRetry: false
96
+ });
93
97
  const videoRef = ref();
94
98
  const selfVideoRef = ref();
95
99
  const isConnect = ref(false);
@@ -150,40 +154,26 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
150
154
  }
151
155
  }
152
156
  async function handleEnter() {
153
- const checkResult = await TRTC.isSupported();
154
- if (!checkResult.result || !checkResult.detail.isH264EncodeSupported || !checkResult.detail.isH264DecodeSupported) {
155
- console.log("checkResult :>> ", checkResult);
157
+ const success = await enterRoom();
158
+ if (!success) {
156
159
  state.showVideo = false;
157
160
  return;
158
161
  }
159
162
  try {
160
- await trtc.enterRoom({
161
- strRoomId: state.currentAVMsg.strRoomId,
162
- sdkAppId: parseInt(state.userInfo.sdkAppID),
163
- userId: state.userInfo.id,
164
- userSig: state.userInfo.userSig,
165
- proxy: trtcProxy.value
166
- });
167
163
  if (!isCall.value) {
168
164
  isConnect.value = true;
169
165
  startTimer();
170
166
  }
171
167
  installEventHandlers({
172
- handleError,
173
168
  handleRemoteUserEnter,
174
169
  handleRemoteAudioAvailable,
175
170
  handleRemoteUserExit,
176
171
  handleRemoteVideoAvailable
177
172
  });
178
- await trtc.startLocalAudio();
179
- if (isAudio.value)
180
- return;
181
- await trtc.startLocalVideo({
182
- view: selfVideoRef.value
183
- });
173
+ await startLocalMedia(selfVideoRef.value);
184
174
  } catch (error) {
185
- console.log("error :>> ", error);
186
- $message.error(error);
175
+ console.error("Error setting up single video call:", error);
176
+ $message.error("\u8BBE\u7F6E\u89C6\u9891\u901A\u8BDD\u5931\u8D25");
187
177
  state.showVideo = false;
188
178
  }
189
179
  }
@@ -198,19 +188,14 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
198
188
  try {
199
189
  state.showVideo = false;
200
190
  uninstallEventHandlers({
201
- handleError,
202
191
  handleRemoteUserEnter,
203
192
  handleRemoteAudioAvailable,
204
193
  handleRemoteUserExit,
205
194
  handleRemoteVideoAvailable
206
195
  });
207
- await trtc.exitRoom();
208
- await trtc.stopLocalAudio();
209
- if (isAudio.value)
210
- return;
211
- await trtc.stopLocalVideo();
196
+ await exitRoom();
212
197
  } catch (error) {
213
- console.log("error :>> ", error);
198
+ console.error("Error during video exit:", error);
214
199
  }
215
200
  }
216
201
  async function handleRemoteVideoAvailable(event) {
@@ -219,39 +204,61 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
219
204
  streamType
220
205
  } = event;
221
206
  try {
222
- await trtc.startRemoteVideo({
223
- userId,
224
- streamType,
225
- view: videoRef.value
226
- });
207
+ if (streamType === MAIN_STREAM_TYPE && videoRef.value) {
208
+ await trtc.startRemoteVideo({
209
+ userId,
210
+ streamType,
211
+ view: videoRef.value
212
+ });
213
+ console.log("Remote video rendered for user:", userId);
214
+ }
227
215
  } catch (error) {
228
- console.log("error :>> ", error);
216
+ console.error("Error rendering remote video:", error);
229
217
  }
230
218
  }
231
219
  function handleRemoteAudioAvailable(event) {
220
+ console.log("Remote audio available:", event.userId);
232
221
  }
233
- function handleRemoteUserEnter() {
234
- isConnect.value = true;
235
- startTimer();
222
+ function handleRemoteUserEnter(event) {
223
+ console.log("Remote user entered:", event.userId);
224
+ if (isCall.value) {
225
+ isConnect.value = true;
226
+ startTimer();
227
+ }
236
228
  }
237
229
  function handleRemoteUserExit(event) {
238
- console.log("event :>> \u5BF9\u65B9\u5DF2\u6302\u65AD", event);
230
+ console.log("Remote user exited:", event.userId);
239
231
  handleExit();
240
232
  }
241
- function handleError(error) {
242
- console.log("error :>> ", error);
243
- state.showVideo = false;
244
- }
245
- watch(() => status.value, (value) => {
233
+ const statusHandlers = {
234
+ [AV_STATUS.IN_CALL]: () => init(),
235
+ [AV_STATUS.CALL_BUSY]: () => {
236
+ $message.error("\u5BF9\u65B9\u7E41\u5FD9\uFF01");
237
+ handleExit();
238
+ },
239
+ [AV_STATUS.NO_RESPONSE]: () => {
240
+ $message.error("\u5BF9\u65B9\u672A\u63A5\u542C!");
241
+ handleExit();
242
+ },
243
+ [AV_STATUS.REJECTED]: () => {
244
+ $message.error("\u5BF9\u65B9\u5DF2\u62D2\u7EDD!");
245
+ handleExit();
246
+ }
247
+ };
248
+ watch(status, (newStatus, oldStatus) => {
249
+ if (newStatus === oldStatus)
250
+ return;
246
251
  if (!state.showVideo)
247
252
  return;
248
- if (value === AV_STATUS.IN_CALL) {
249
- init();
253
+ const handler = statusHandlers[newStatus];
254
+ if (handler) {
255
+ handler();
250
256
  } else {
251
257
  handleExit();
252
258
  }
253
259
  }, {
254
- immediate: true
260
+ immediate: true,
261
+ flush: "post"
255
262
  });
256
263
  onBeforeUnmount(() => {
257
264
  handleExit();
@@ -1,4 +1,5 @@
1
1
  import { InjectionKey } from 'vue';
2
+ import { MsgListItem } from '../types';
2
3
  import { ChatSock } from '../utils/chatSock';
3
4
  import { AnyObject } from '../../../../shared/types';
4
5
  export declare const InjectionIChatData: InjectionKey<ReturnType<typeof initData>>;
@@ -12,7 +13,30 @@ export declare function initData(props: AnyObject, emit: (event: 'template-click
12
13
  currentSessionItem: AnyObject;
13
14
  id: string;
14
15
  userInfo: AnyObject;
15
- msgList: AnyObject[];
16
+ msgList: {
17
+ [x: string]: any;
18
+ id: string;
19
+ sessionKey: string;
20
+ content: {
21
+ [x: string]: any;
22
+ chatMessageType: string;
23
+ msg: string;
24
+ referenceContent?: any;
25
+ forwardMessageList?: AnyObject[] | undefined;
26
+ messageTemplate?: any;
27
+ messageTemplateData?: any;
28
+ fileUrl?: string | undefined;
29
+ avStatus?: string | undefined;
30
+ };
31
+ senderName: string;
32
+ sendTime: string;
33
+ sender: string;
34
+ status: string;
35
+ senderAvatar: string;
36
+ __content: string;
37
+ __time?: string | undefined;
38
+ __sendTime?: string | undefined;
39
+ }[];
16
40
  currentMsg: AnyObject;
17
41
  isAppendMsg: boolean;
18
42
  sessionList: AnyObject[];
@@ -40,7 +64,7 @@ export declare function initData(props: AnyObject, emit: (event: 'template-click
40
64
  isGroupChat: import("vue").ComputedRef<boolean>;
41
65
  isGroupLeader: import("vue").ComputedRef<boolean>;
42
66
  isEnded: import("vue").ComputedRef<boolean>;
43
- setMsgList: (list?: AnyObject[]) => void;
67
+ setMsgList: (list?: AnyObject[] | MsgListItem) => void;
44
68
  sendMessage: (message: {
45
69
  chatType?: string;
46
70
  content: AnyObject;
@@ -75,7 +99,30 @@ export declare const useData: () => {
75
99
  currentSessionItem: AnyObject;
76
100
  id: string;
77
101
  userInfo: AnyObject;
78
- msgList: AnyObject[];
102
+ msgList: {
103
+ [x: string]: any;
104
+ id: string;
105
+ sessionKey: string;
106
+ content: {
107
+ [x: string]: any;
108
+ chatMessageType: string;
109
+ msg: string;
110
+ referenceContent?: any;
111
+ forwardMessageList?: AnyObject[] | undefined;
112
+ messageTemplate?: any;
113
+ messageTemplateData?: any;
114
+ fileUrl?: string | undefined;
115
+ avStatus?: string | undefined;
116
+ };
117
+ senderName: string;
118
+ sendTime: string;
119
+ sender: string;
120
+ status: string;
121
+ senderAvatar: string;
122
+ __content: string;
123
+ __time?: string | undefined;
124
+ __sendTime?: string | undefined;
125
+ }[];
79
126
  currentMsg: AnyObject;
80
127
  isAppendMsg: boolean;
81
128
  sessionList: AnyObject[];
@@ -103,7 +150,7 @@ export declare const useData: () => {
103
150
  isGroupChat: import("vue").ComputedRef<boolean>;
104
151
  isGroupLeader: import("vue").ComputedRef<boolean>;
105
152
  isEnded: import("vue").ComputedRef<boolean>;
106
- setMsgList: (list?: AnyObject[]) => void;
153
+ setMsgList: (list?: AnyObject[] | MsgListItem) => void;
107
154
  sendMessage: (message: {
108
155
  chatType?: string;
109
156
  content: AnyObject;
@@ -1,19 +1,61 @@
1
+ import { Ref } from 'vue';
1
2
  import TRTC from 'trtc-sdk-v5';
2
3
  import { AnyFn } from '../../../../shared/types';
3
- type EventHandlers = {
4
- handleError: AnyFn;
4
+ export interface RemoteUser {
5
+ id: string;
6
+ name: string;
7
+ hasVideo?: boolean;
8
+ hasAudio?: boolean;
9
+ }
10
+ export interface TRTCEvent {
11
+ userId: string;
12
+ streamType?: any;
13
+ available?: boolean;
14
+ }
15
+ export interface VideoEventHandlers {
5
16
  handleRemoteUserEnter: AnyFn;
6
17
  handleRemoteAudioAvailable: AnyFn;
7
18
  handleRemoteUserExit: AnyFn;
8
19
  handleRemoteVideoAvailable: AnyFn;
9
- };
10
- export declare function useVideo(): {
20
+ handleRemoteVideoUnavailable?: AnyFn;
21
+ handleRemoteAudioUnavailable?: AnyFn;
22
+ }
23
+ export interface VideoConfig {
24
+ isMultiple?: boolean;
25
+ enableRetry?: boolean;
26
+ retryDelay?: number;
27
+ maxRetries?: number;
28
+ }
29
+ export declare function useVideo(config?: VideoConfig): {
11
30
  state: {
12
31
  orgId: string | number;
13
32
  currentSessionItem: import("../../../../shared/types").AnyObject;
14
33
  id: string;
15
34
  userInfo: import("../../../../shared/types").AnyObject;
16
- msgList: import("../../../../shared/types").AnyObject[];
35
+ msgList: {
36
+ [x: string]: any;
37
+ id: string;
38
+ sessionKey: string;
39
+ content: {
40
+ [x: string]: any;
41
+ chatMessageType: string;
42
+ msg: string;
43
+ referenceContent?: any;
44
+ forwardMessageList?: import("../../../../shared/types").AnyObject[] | undefined;
45
+ messageTemplate?: any;
46
+ messageTemplateData?: any;
47
+ fileUrl?: string | undefined;
48
+ avStatus?: string | undefined;
49
+ };
50
+ senderName: string;
51
+ sendTime: string;
52
+ sender: string;
53
+ status: string;
54
+ senderAvatar: string;
55
+ __content: string;
56
+ __time?: string | undefined;
57
+ __sendTime?: string | undefined;
58
+ }[];
17
59
  currentMsg: import("../../../../shared/types").AnyObject;
18
60
  isAppendMsg: boolean;
19
61
  sessionList: import("../../../../shared/types").AnyObject[];
@@ -37,28 +79,53 @@ export declare function useVideo(): {
37
79
  };
38
80
  isForward: boolean;
39
81
  };
40
- trtcProxy: import("vue").Ref<any>;
82
+ trtcProxy: Ref<any>;
41
83
  sendMessage: (message: {
42
84
  chatType?: string | undefined;
43
85
  content: import("../../../../shared/types").AnyObject;
44
86
  receiver?: string | undefined;
45
87
  }) => Promise<void>;
46
88
  trtc: TRTC;
47
- timing: import("vue").Ref<string>;
48
- voiceClose: import("vue").Ref<boolean>;
49
- videocamClose: import("vue").Ref<boolean>;
89
+ timing: Ref<string>;
90
+ voiceClose: Ref<boolean>;
91
+ videocamClose: Ref<boolean>;
92
+ isConnect: Ref<boolean>;
50
93
  isAudio: import("vue").ComputedRef<boolean>;
51
94
  isCall: import("vue").ComputedRef<boolean>;
52
- startTimer: () => void;
53
- resetTimer: () => void;
54
- toggleAudio: () => Promise<void>;
55
- toggleVideo: () => Promise<void>;
56
95
  messageTypeText: import("vue").ComputedRef<"语音" | "视频">;
57
96
  time: {
58
97
  timer: any;
59
98
  seconds: number;
60
99
  };
61
- installEventHandlers: ({ handleError, handleRemoteUserEnter, handleRemoteAudioAvailable, handleRemoteUserExit, handleRemoteVideoAvailable }: EventHandlers) => void;
62
- uninstallEventHandlers: ({ handleError, handleRemoteUserEnter, handleRemoteAudioAvailable, handleRemoteUserExit, handleRemoteVideoAvailable }: EventHandlers) => void;
100
+ remoteUsers: Ref<{
101
+ id: string;
102
+ name: string;
103
+ hasVideo?: boolean | undefined;
104
+ hasAudio?: boolean | undefined;
105
+ }[]>;
106
+ videoRefs: Ref<Map<string, HTMLElement>>;
107
+ startTimer: () => void;
108
+ resetTimer: () => void;
109
+ toggleAudio: () => Promise<void>;
110
+ toggleVideo: () => Promise<void>;
111
+ enterRoom: () => Promise<boolean>;
112
+ exitRoom: () => Promise<void>;
113
+ startLocalMedia: (selfVideoRef?: HTMLElement) => Promise<void>;
114
+ checkTRTCSupport: () => Promise<boolean>;
115
+ findUser: (userId: string) => RemoteUser | undefined;
116
+ addOrUpdateUser: (userId: string, updates: Partial<RemoteUser>) => void;
117
+ removeUser: (userId: string) => void;
118
+ tryRenderRemoteVideo: (userId: string) => Promise<void>;
119
+ stopRemoteVideo: (userId: string) => Promise<void>;
120
+ setVideoRef: (userId: string, el: HTMLElement | null) => void;
121
+ installEventHandlers: (handlers: VideoEventHandlers) => void;
122
+ uninstallEventHandlers: (handlers: VideoEventHandlers) => void;
123
+ cleanupAllResources: () => void;
124
+ checkAndRenderAllVideos: () => void;
125
+ forceRenderAllVideos: () => Promise<void>;
126
+ cleanupInvalidUsers: () => void;
127
+ isUserValid: (userId: string) => boolean;
128
+ startUserConnectionMonitoring: () => void;
129
+ stopUserConnectionMonitoring: () => void;
130
+ MAIN_STREAM_TYPE: any;
63
131
  };
64
- export {};