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.
- package/es/components/big-table/src/hooks/useBatchEditing.js +25 -24
- package/es/components/button-print/index.d.ts +98 -8
- package/es/components/button-print/src/ButtonPrint.vue.d.ts +98 -8
- package/es/components/button-print/src/ButtonPrint.vue2.js +12 -1
- package/es/components/button-print/src/components/IdentityVerification.vue.d.ts +11 -2
- package/es/components/button-print/src/components/IdentityVerification.vue2.js +3 -2
- package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +44 -6
- package/es/components/button-print/src/components/NewPrintComponent.vue2.js +194 -41
- package/es/components/button-print/src/components/OldPrintComponent.vue.d.ts +29 -2
- package/es/components/button-print/src/components/OldPrintComponent.vue2.js +34 -5
- package/es/components/button-print/src/utils/print.d.ts +7 -5
- package/es/components/button-print/src/utils/print.js +183 -7
- package/es/components/button-print/style/index.css +1 -1
- package/es/components/calendar/src/Calendar.vue2.js +15 -5
- package/es/components/callback/src/components/render/popupMaps.d.ts +5 -0
- package/es/components/card-render/src/components/index.d.ts +23 -23
- package/es/components/classification/index.d.ts +258 -5
- package/es/components/classification/src/components/search-filter/index.vue.d.ts +258 -5
- package/es/components/classification/src/components/set-classification/index.vue.d.ts +258 -5
- package/es/components/classification/src/index.vue.d.ts +258 -5
- package/es/components/fabric-chart/src/components/PopupMenu.js +1 -1
- package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +6 -2
- package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +3 -2
- package/es/components/fabric-chart/src/hooks/temperature/useOther.d.ts +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useOther.js +58 -15
- package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +4 -3
- package/es/components/field-editor/index.d.ts +5 -0
- package/es/components/field-editor/src/FieldEditor.vue.d.ts +5 -0
- package/es/components/field-set/src/FieldColor.vue.d.ts +4 -1
- package/es/components/field-set/src/FieldFilter.vue.d.ts +4 -1
- package/es/components/field-set/src/FieldSet.vue.d.ts +4 -1
- package/es/components/field-set/src/components/table-row.vue.d.ts +2 -1
- package/es/components/field-set/src/components/table-row.vue2.js +21 -6
- package/es/components/field-set/src/constants/index.js +4 -4
- package/es/components/field-set/src/types/index.d.ts +2 -1
- package/es/components/form-config/index.d.ts +63 -0
- package/es/components/form-config/src/FormConfig.vue.d.ts +63 -0
- package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +5 -0
- package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +50 -0
- package/es/components/form-config/src/components/FormConfigEdit.vue2.js +4 -4
- package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +5 -0
- package/es/components/form-config/src/constants/index.d.ts +31 -1
- package/es/components/form-config/src/constants/index.js +150 -1
- package/es/components/form-config/src/hooks/useConfigurationField.d.ts +2 -2
- package/es/components/form-config/src/hooks/useConfigurationField.js +53 -6
- package/es/components/form-config/src/hooks/useLocale.d.ts +6 -0
- package/es/components/form-config/src/hooks/useLocale.js +34 -0
- package/es/components/form-config/src/types/index.d.ts +12 -0
- package/es/components/form-render/index.d.ts +5 -0
- package/es/components/form-render/src/FormRender.vue.d.ts +5 -0
- package/es/components/form-render/src/FormRender.vue2.js +1 -0
- package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +5 -0
- package/es/components/form-render/src/components/renderer/date.d.ts +3 -1
- package/es/components/form-render/src/components/renderer/date.js +12 -10
- package/es/components/form-render/src/components/renderer/formItem.d.ts +2 -0
- package/es/components/form-render/src/components/renderer/formItem.js +10 -3
- package/es/components/form-render/src/components/renderer/levelSearchCascader/index.js +4 -2
- package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +1 -0
- package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +1 -0
- package/es/components/form-render/src/components/renderer/radio_checkbox.js +9 -3
- package/es/components/form-render/src/constants/index.d.ts +1 -1
- package/es/components/form-render/src/hooks/useFieldListAdaptor.js +5 -2
- package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +2 -0
- package/es/components/form-render/src/hooks/useFieldNormalize.js +15 -0
- package/es/components/form-render/src/hooks/useNuiThemeOverrides.d.ts +1 -2
- package/es/components/form-render/src/types/index.d.ts +1 -0
- package/es/components/form-render/style/index.css +1 -1
- package/es/components/iho-chat/index.d.ts +897 -97
- package/es/components/iho-chat/src/Index.vue.d.ts +897 -97
- package/es/components/iho-chat/src/Index.vue2.js +14 -6
- package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +24 -1
- package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +179 -6
- package/es/components/iho-chat/src/components/ChatFile.vue2.js +48 -28
- package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +61 -5
- package/es/components/iho-chat/src/components/ChatFooter.vue2.js +106 -44
- package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +327 -13
- package/es/components/iho-chat/src/components/ChatHeader.vue2.js +18 -17
- package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +232 -17
- package/es/components/iho-chat/src/components/ChatMain.vue2.js +299 -272
- package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +49 -3
- package/es/components/iho-chat/src/components/ChatSearch.vue.d.ts +24 -1
- package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +48 -2
- package/es/components/iho-chat/src/components/ContextMenu.js +33 -18
- package/es/components/iho-chat/src/components/ImageLightbox.vue.d.ts +104 -0
- package/es/components/iho-chat/src/components/ImageLightbox.vue.js +6 -0
- package/es/components/iho-chat/src/components/ImageLightbox.vue2.js +307 -0
- package/es/components/iho-chat/src/components/MessageEvent.vue.d.ts +24 -1
- package/es/components/iho-chat/src/components/MessageMergeForward.vue.d.ts +51 -4
- package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +77 -31
- package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +223 -98
- package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +24 -1
- package/es/components/iho-chat/src/components/SelectLabel.vue.d.ts +1 -1
- package/es/components/iho-chat/src/components/SiderList.vue.d.ts +24 -1
- package/es/components/iho-chat/src/components/Video.vue.d.ts +44 -26
- package/es/components/iho-chat/src/components/Video.vue2.js +56 -49
- package/es/components/iho-chat/src/hooks/useData.d.ts +51 -4
- package/es/components/iho-chat/src/hooks/useVideo.d.ts +83 -16
- package/es/components/iho-chat/src/hooks/useVideo.js +439 -43
- package/es/components/iho-chat/src/types/index.d.ts +37 -1
- package/es/components/iho-chat/src/utils/emoji.d.ts +1 -1
- package/es/components/iho-chat/src/utils/emoji.js +1 -1
- package/es/components/iho-chat/src/utils/index.d.ts +2 -0
- package/es/components/iho-chat/src/utils/index.js +14 -1
- package/es/components/iho-chat/style/index.css +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/index.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useAutoFocus.js +0 -22
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/inputRendererPlugin.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/numberRendererPlugin.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +36 -4
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/index.js +1 -1
- package/es/components/index.css +1 -1
- package/es/components/index.d.ts +2 -0
- package/es/components/index.js +2 -1
- package/es/components/info-header/index.d.ts +24 -17
- package/es/components/info-header/src/InfoHeader.vue.d.ts +24 -17
- package/es/components/info-header/src/InfoHeader.vue2.js +2 -2
- package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +1 -0
- package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue2.js +56 -22
- package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +4 -2
- package/es/components/info-header/src/components/infoDescription/DescriptionList.vue2.js +1 -1
- package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +15 -17
- package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +5 -0
- package/es/components/info-header/src/constants/index.d.ts +1 -1
- package/es/components/info-header/src/hooks/useThemeOverrides.d.ts +1 -2
- package/es/components/keyboard/index.d.ts +9 -0
- package/es/components/keyboard/src/Keyboard.vue.d.ts +9 -0
- package/es/components/keyboard/src/Keyboard.vue2.js +33 -9
- package/es/components/keyboard/src/components/NumberPanel.vue.d.ts +4 -0
- package/es/components/keyboard/src/components/NumberPanel.vue2.js +50 -17
- package/es/components/keyboard/src/types.d.ts +17 -0
- package/es/components/keyboard/src/types.js +1 -0
- package/es/components/scale-view/index.d.ts +13 -0
- package/es/components/scale-view/src/ScaleView.vue.d.ts +13 -0
- package/es/components/scale-view/src/hooks/scaleview-computed.js +2 -1
- package/es/components/scale-view/src/hooks/scaleview-props.d.ts +4 -0
- package/es/components/scale-view/src/hooks/scaleview-props.js +4 -0
- package/es/components/search-cascader/src/utils/index.d.ts +1 -1
- package/es/components/select-person/src/SelectPerson.vue2.js +8 -1
- package/es/components/shortcut-provider/src/hooks/useShortcuts.js +1 -1
- package/es/components/shortcut-provider/src/types/index.d.ts +1 -0
- package/es/components/shortcut-provider/src/utils/index.d.ts +1 -1
- package/es/components/shortcut-provider/src/utils/index.js +3 -1
- package/es/components/shortcut-setter/index.d.ts +5 -0
- package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +5 -0
- package/es/components/table-filter/index.js +1 -1
- package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +246 -1
- package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue2.js +8 -2
- package/es/components/table-filter/src/components/classify-filter/components/Base/DateOption.vue.d.ts +104 -0
- package/es/components/table-filter/src/components/classify-filter/components/Base/DateOption.vue.js +6 -0
- package/es/components/table-filter/src/components/classify-filter/components/Base/DateOption.vue2.js +250 -0
- package/es/components/table-filter/src/components/classify-filter/components/Date.vue.d.ts +116 -0
- package/es/components/table-filter/src/components/classify-filter/components/Date.vue2.js +43 -4
- package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue.d.ts +117 -1
- package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue2.js +45 -8
- package/es/components/table-filter/src/components/classify-filter/components/index.d.ts +233 -1
- package/es/components/table-filter/src/components/classify-filter/helpers/options.d.ts +5 -1
- package/es/components/table-filter/src/components/classify-filter/helpers/options.js +74 -2
- package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +258 -5
- package/es/components/table-filter/src/components/classify-filter/index.vue2.js +15 -6
- package/es/components/table-filter/src/components/render-widget/components/DateInner.vue.d.ts +1 -1
- package/es/components/table-filter/src/components/render-widget/components/DateOut.vue.d.ts +1 -1
- package/es/components/table-filter/src/components/render-widget/components/DateQuickBtn/index.vue2.js +1 -1
- package/es/components/table-filter/src/components/render-widget/components/DateRangeInner.vue.d.ts +1 -1
- package/es/components/table-filter/src/components/render-widget/components/index.d.ts +3 -3
- package/es/components/table-filter/src/components/render-widget/helpers/dateExtraMap.js +32 -4
- package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.d.ts +1 -0
- package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +38 -2
- package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +3 -3
- package/es/components/table-filter/src/hooks/useAdvanced.js +5 -4
- package/es/components/table-filter/src/tool/baseOptions.js +8 -1
- package/es/components/table-filter/src/types/enums.d.ts +5 -0
- package/es/components/table-filter/src/types/enums.js +6 -1
- package/es/components/time-picker/index.d.ts +36 -4
- package/es/components/time-picker/src/TimePicker.vue.d.ts +36 -4
- package/es/components/time-picker/src/TimePicker.vue2.js +98 -13
- package/es/components/vertify/index.d.ts +1 -0
- package/es/components/vertify/index.js +1 -0
- package/es/components/vertify/src/components/IdentityVerification.vue.d.ts +89 -0
- package/es/components/vertify/src/components/IdentityVerification.vue.js +6 -0
- package/es/components/vertify/src/components/IdentityVerification.vue2.js +256 -0
- package/es/components/vertify/src/utils/dialog.d.ts +7 -0
- package/es/components/vertify/src/utils/dialog.js +73 -0
- package/es/components/vertify/src/utils/index.d.ts +11 -0
- package/es/components/vertify/src/utils/index.js +24 -0
- package/es/components/vod-chunk-upload/index.d.ts +13 -0
- package/es/components/vod-chunk-upload/src/chunk-upload-new.vue.d.ts +19 -2
- package/es/components/vod-chunk-upload/src/chunk-upload-new.vue2.js +104 -75
- package/es/components/vod-chunk-upload/src/hooks/upload-computed.d.ts +1 -0
- package/es/components/vod-chunk-upload/src/hooks/upload-computed.js +20 -3
- package/es/components/vod-chunk-upload/src/hooks/upload-data.d.ts +4 -0
- package/es/components/vod-chunk-upload/src/hooks/upload-data.js +6 -2
- package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue.d.ts +13 -0
- package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue2.js +6 -1
- package/es/components/vod-chunk-upload/style/index.css +1 -1
- package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
- package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
- package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
- package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
- package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
- package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
- package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
- package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
- package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
- package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
- package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
- package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
- package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
- package/es/shared/assets/img/failure.png.js +1 -1
- package/es/shared/assets/img/no-permission.png.js +1 -1
- package/es/shared/assets/img/nodata.png.js +1 -1
- package/es/shared/assets/img/notfound.png.js +1 -1
- package/es/shared/assets/img/qr.png.js +1 -1
- package/es/shared/assets/img/success.png.js +1 -1
- package/es/shared/assets/img/table_style_2.png.js +1 -1
- package/es/shared/assets/img/video.png.js +1 -1
- package/es/shared/assets/img/video_default_cover.png.js +1 -1
- package/es/shared/assets/img/xb_big.png.js +1 -1
- package/es/shared/assets/img/xb_small.png.js +1 -1
- package/es/shared/components/InputNumberSlash/InputNumberSlash.js +1 -1
- package/es/shared/hooks/useDateTime.d.ts +1 -1
- package/es/shared/hooks/useDateTime.js +1 -1
- package/es/shared/hooks/useLevelSearchCascader.js +3 -3
- package/es/shared/package.json.js +2 -2
- package/es/shared/utils/fabricjs/index.js +1 -1
- package/package.json +5 -5
- package/es/components/audio-sdk/src/utils/recorder/fft.d.ts +0 -4
- package/es/components/audio-sdk/src/utils/recorder/mp3-engine.d.ts +0 -4
- package/es/components/audio-sdk/src/utils/recorder/mp3.d.ts +0 -4
- package/es/components/audio-sdk/src/utils/recorder/recorder.d.ts +0 -4
- package/es/components/audio-sdk/src/utils/recorder/wave.d.ts +0 -4
- package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
- package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
- package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
- package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
- package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
- package/es/shared/utils/fabricjs/index.d.ts +0 -6823
- 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
|
-
|
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
|
154
|
-
if (!
|
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
|
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.
|
186
|
-
$message.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
|
208
|
-
await trtc.stopLocalAudio();
|
209
|
-
if (isAudio.value)
|
210
|
-
return;
|
211
|
-
await trtc.stopLocalVideo();
|
196
|
+
await exitRoom();
|
212
197
|
} catch (error) {
|
213
|
-
console.
|
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
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
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.
|
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
|
-
|
235
|
-
|
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("
|
230
|
+
console.log("Remote user exited:", event.userId);
|
239
231
|
handleExit();
|
240
232
|
}
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
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
|
-
|
249
|
-
|
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:
|
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:
|
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
|
-
|
4
|
-
|
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
|
-
|
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:
|
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:
|
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:
|
48
|
-
voiceClose:
|
49
|
-
videocamClose:
|
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
|
-
|
62
|
-
|
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 {};
|