cnhis-design-vue 3.2.14-beta.2 → 3.2.14-beta.24
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/ai-chat/src/components/ChatCard.js +1 -1
- package/es/components/ai-chat/src/components/ChatFooter.vue2.js +1 -1
- package/es/components/ai-chat/src/components/ChatMain.js +1 -1
- package/es/components/ai-chat/src/components/ChatPatient.vue2.js +1 -1
- package/es/components/ai-chat/src/components/ChatPrompt.vue2.js +1 -1
- package/es/components/audio-sdk/src/components/recording.vue2.js +1 -1
- package/es/components/big-table/src/BigTable.vue2.js +1 -1
- package/es/components/big-table/src/components/edit-form/edit-date.js +1 -1
- package/es/components/big-table/src/components/edit-form/edit-select.js +1 -1
- package/es/components/big-table/src/components/edit-form/edit-time.js +1 -1
- package/es/components/big-table/src/components/input-button.vue2.js +1 -1
- package/es/components/big-table/src/hooks/useTableParse.js +1 -1
- package/es/components/button-print/index.d.ts +4 -0
- package/es/components/button-print/src/ButtonPrint.vue.d.ts +4 -0
- package/es/components/button-print/src/components/IdentityVerification.vue2.js +1 -1
- package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +4 -0
- package/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
- package/es/components/classification/src/components/search-filter/index.vue2.js +1 -1
- package/es/components/classification/src/components/set-classification/index.vue2.js +1 -1
- package/es/components/classification/src/components/table-modal/index.vue2.js +1 -1
- package/es/components/classification/src/index.vue2.js +1 -1
- package/es/components/expand-field/src/components/FormBatchOptionsModal.vue2.js +1 -1
- package/es/components/expand-field/src/components/PersonModal.vue2.js +1 -1
- package/es/components/expand-field/src/components/form.vue2.js +1 -1
- package/es/components/expand-field/src/index.vue2.js +1 -1
- package/es/components/expand-field/src/utils/constant.js +1 -1
- package/es/components/fabric-chart/index.d.ts +19 -2
- package/es/components/fabric-chart/src/FabricChart.vue.d.ts +19 -2
- package/es/components/fabric-chart/src/FabricChart.vue2.js +1 -1
- package/es/components/fabric-chart/src/components/PopupMenu.js +1 -1
- package/es/components/fabric-chart/src/components/PopupTip.vue.d.ts +13 -0
- package/es/components/fabric-chart/src/components/PopupTip.vue2.js +1 -1
- package/es/components/fabric-chart/src/components/useStyle.js +1 -1
- package/es/components/fabric-chart/src/constants/index.js +1 -1
- package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
- package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.d.ts +1 -0
- package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.js +1 -1
- package/es/components/fabric-chart/src/hooks/electrocardiogram/hooks/useDetailEvent.js +1 -1
- package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogram.js +1 -1
- package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.d.ts +1 -0
- package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.js +1 -1
- package/es/components/fabric-chart/src/hooks/electrocardiogram/useMeasureInstrument.js +1 -1
- package/es/components/fabric-chart/src/hooks/newBirthProcess/useNewBirthProcess.js +1 -1
- package/es/components/fabric-chart/src/hooks/newBirthProcess/useNewBirthProcessChart.js +1 -1
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.js +1 -1
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useLeft.js +1 -1
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.d.ts +1 -0
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.js +1 -1
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.d.ts +7 -1
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useBottom.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useOther.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.d.ts +1 -0
- package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useTop.js +1 -1
- package/es/components/fabric-chart/src/hooks/useCommon.js +1 -1
- package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +1 -1
- package/es/components/fabric-chart/src/interface.d.ts +2 -0
- package/es/components/fabric-chart/src/utils/index.d.ts +1 -0
- package/es/components/fabric-chart/src/utils/index.js +1 -1
- package/es/components/field-set/src/FieldColor.vue.d.ts +3 -3
- package/es/components/field-set/src/FieldColor.vue2.js +1 -1
- package/es/components/field-set/src/FieldFilter.vue.d.ts +5 -4
- package/es/components/field-set/src/FieldFilter.vue2.js +1 -1
- package/es/components/field-set/src/FieldSet.vue.d.ts +2 -2
- package/es/components/field-set/src/FieldSet.vue2.js +1 -1
- package/es/components/field-set/src/Index.vue2.js +1 -1
- package/es/components/field-set/src/TableStyle.vue2.js +1 -1
- package/es/components/field-set/src/components/condition.vue2.js +1 -1
- package/es/components/field-set/src/components/edit-dialog.vue.d.ts +1 -1
- package/es/components/field-set/src/components/edit-dialog.vue2.js +1 -1
- package/es/components/field-set/src/components/edit-filter.vue2.js +1 -1
- package/es/components/field-set/src/components/table-row.vue.d.ts +2 -2
- package/es/components/field-set/src/components/table-row.vue2.js +1 -1
- package/es/components/field-set/src/constants/filter.d.ts +21 -12
- package/es/components/field-set/src/constants/filter.js +1 -1
- package/es/components/field-set/src/constants/index.js +1 -1
- package/es/components/field-set/src/types/index.d.ts +1 -1
- package/es/components/form-config/index.d.ts +7 -5
- package/es/components/form-config/index.js +1 -1
- package/es/components/form-config/src/FormConfig.vue.d.ts +7 -5
- package/es/components/form-config/src/FormConfig.vue2.js +1 -1
- package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +2 -0
- package/es/components/form-config/src/components/FormConfigCreator.vue2.js +1 -1
- package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +2 -2
- package/es/components/form-config/src/components/FormConfigEdit.vue2.js +1 -1
- package/es/components/form-config/src/components/FormConfigEventSetting.vue2.js +1 -1
- package/es/components/form-config/src/components/renderer/DefaultNode.vue2.js +1 -1
- package/es/components/form-config/src/constants/index.d.ts +1 -11
- package/es/components/form-config/src/constants/index.js +1 -1
- package/es/components/form-config/src/hooks/useConfigurationField.js +1 -1
- package/es/components/form-config/src/hooks/useLocale.d.ts +52 -0
- package/es/components/form-config/src/hooks/useLocale.js +1 -0
- package/es/components/form-render/index.js +1 -1
- package/es/components/form-render/src/components/renderer/combination/hooks/useCombination.js +1 -1
- package/es/components/form-render/src/components/renderer/combination/jsonCombination.js +1 -1
- package/es/components/form-render/src/components/renderer/combination/tableCombination.js +1 -1
- package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
- package/es/components/form-render/src/components/renderer/switch.js +1 -1
- package/es/components/form-render/src/hooks/useComplexOptions.js +1 -1
- package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
- package/es/components/form-render/src/hooks/usePresetScope.d.ts +1 -1
- package/es/components/form-render/src/hooks/usePresetScope.js +1 -1
- package/es/components/form-render/src/utils/index.d.ts +1 -0
- package/es/components/form-render/src/utils/index.js +1 -1
- package/es/components/iho-chat/index.d.ts +612 -52
- package/es/components/iho-chat/src/Index.vue.d.ts +615 -59
- package/es/components/iho-chat/src/Index.vue2.js +1 -1
- package/es/components/iho-chat/src/api/index.d.ts +1 -0
- package/es/components/iho-chat/src/api/index.js +1 -1
- package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +32 -1
- package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +52 -3
- package/es/components/iho-chat/src/components/ChatFile.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +52 -2
- package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +221 -11
- package/es/components/iho-chat/src/components/ChatHeader.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +82 -6
- package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +19 -1
- package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatSearch.vue.d.ts +20 -2
- package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +71 -4
- package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ContextMenu.d.ts +11 -2
- package/es/components/iho-chat/src/components/ContextMenu.js +1 -1
- package/es/components/iho-chat/src/components/MessageTemplate.vue.d.ts +1 -1
- package/es/components/iho-chat/src/components/MessageTemplate.vue2.js +1 -1
- package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +51 -2
- package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +1 -1
- package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +19 -1
- package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
- package/es/components/iho-chat/src/components/SiderList.vue.d.ts +66 -1
- package/es/components/iho-chat/src/components/SiderList.vue2.js +1 -1
- package/es/components/iho-chat/src/components/Video.vue.d.ts +19 -1
- package/es/components/iho-chat/src/components/Video.vue2.js +1 -1
- package/es/components/iho-chat/src/constants/index.d.ts +13 -3
- package/es/components/iho-chat/src/constants/index.js +1 -1
- package/es/components/iho-chat/src/hooks/index.d.ts +2 -2
- package/es/components/iho-chat/src/hooks/index.js +1 -1
- package/es/components/iho-chat/src/hooks/useData.d.ts +94 -0
- package/es/components/iho-chat/src/hooks/useData.js +1 -0
- package/es/components/iho-chat/src/hooks/useSearchUserList.js +1 -1
- package/es/components/iho-chat/src/hooks/useVideo.d.ts +19 -1
- package/es/components/iho-chat/src/hooks/useVideo.js +1 -1
- package/es/components/iho-chat/src/hooks/useWebSocket.d.ts +3 -0
- package/es/components/iho-chat/src/hooks/useWebSocket.js +1 -0
- package/es/components/iho-chat/src/types/index.d.ts +0 -6
- package/es/components/iho-chat/src/types/index.js +1 -1
- package/es/components/iho-chat/src/utils/index.d.ts +1 -0
- package/es/components/iho-chat/src/utils/index.js +1 -1
- package/es/components/iho-chat/style/index.css +1 -1
- package/es/components/iho-table/src/hooks/useColumnConfigAdaptor.js +1 -1
- package/es/components/iho-table/src/plugins/dynamicFilterRenderPlugin/dynamicFilter.vue2.js +1 -1
- package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue2.js +1 -1
- package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
- package/es/components/iho-table/src/plugins/filterTextPlugin/filter.vue2.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue2.js +1 -1
- package/es/components/iho-table/src/utils/index.js +1 -1
- package/es/components/index.css +1 -1
- package/es/components/index.js +1 -1
- package/es/components/info-header/src/components/patientInfo/index.vue2.js +1 -1
- package/es/components/keyboard/src/Keyboard.vue2.js +1 -1
- package/es/components/keyboard/src/components/NumberPanel.vue2.js +1 -1
- package/es/components/map/src/Map.vue2.js +1 -1
- package/es/components/picture-clipper/src/PictureClipper.vue2.js +1 -1
- package/es/components/quick-search/src/index.vue2.js +1 -1
- package/es/components/recommend-search/src/components/RecommendSelect.vue2.js +1 -1
- package/es/components/scale-view/index.d.ts +31 -0
- package/es/components/scale-view/src/ScaleView.vue.d.ts +13 -0
- package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
- package/es/components/scale-view/src/components/composables/choose-common.js +1 -1
- package/es/components/scale-view/src/components/formitem/r-cascader.js +1 -1
- package/es/components/scale-view/src/components/formitem/r-checkbox.d.ts +9 -0
- package/es/components/scale-view/src/components/formitem/r-checkbox.js +1 -1
- package/es/components/scale-view/src/components/formitem/r-input.d.ts +9 -0
- package/es/components/scale-view/src/components/formitem/r-input.js +1 -1
- package/es/components/scale-view/src/components/formitem/r-map.js +1 -1
- package/es/components/scale-view/src/components/formitem/r-radio.d.ts +9 -0
- package/es/components/scale-view/src/components/formitem/r-radio.js +1 -1
- package/es/components/scale-view/src/components/formitem/r-select.js +1 -1
- package/es/components/scale-view/src/components/formitem/r-sign.js +1 -1
- package/es/components/scale-view/src/components/formitem/standard-modal.js +1 -1
- package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
- package/es/components/scale-view/src/hooks/scaleview-methods.js +1 -1
- package/es/components/scale-view/src/hooks/scaleview-props.d.ts +4 -0
- package/es/components/scale-view/src/hooks/scaleview-props.js +1 -1
- package/es/components/scale-view/src/hooks/scaleview-submit.js +1 -1
- package/es/components/scale-view/src/hooks/scaleview-validate.js +1 -1
- package/es/components/scale-view/src/hooks/use-component.d.ts +72 -0
- package/es/components/scale-view/style/index.css +1 -1
- package/es/components/search-cascader/src/SearchCascader.vue2.js +1 -1
- package/es/components/select-label/src/SelectLabel.vue2.js +1 -1
- package/es/components/select-label/src/components/label-classify.vue2.js +1 -1
- package/es/components/select-label/src/ihoLabel/IhoLabelFormContent.vue2.js +1 -1
- package/es/components/select-label/src/ihoLabel/IhoSelectLabel.vue2.js +1 -1
- package/es/components/select-person/src/SelectPerson.vue2.js +1 -1
- package/es/components/select-person/src/SelectPersonType.vue2.js +1 -1
- package/es/components/select-person/src/index.vue2.js +1 -1
- package/es/components/table-export-field/src/components/ExportModal.vue2.js +1 -1
- package/es/components/table-export-field/src/components/SaveProjectModal.vue2.js +1 -1
- package/es/components/table-filter/src/components/bi-filter/helpers/options.js +1 -1
- package/es/components/table-filter/src/components/bi-filter/index.vue2.js +1 -1
- package/es/components/table-filter/src/components/classify-filter/components/Date.vue2.js +1 -1
- package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue2.js +1 -1
- package/es/components/table-filter/src/components/classify-filter/helpers/options.js +1 -1
- package/es/components/table-filter/src/components/classify-filter/index.vue2.js +1 -1
- package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue.d.ts +4 -7
- package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue2.js +1 -1
- package/es/components/table-filter/src/components/render-widget/components/index.d.ts +4 -7
- package/es/components/table-filter/src/components/render-widget/helpers/dateExtraMap.js +1 -1
- package/es/components/table-filter/src/components/render-widget/helpers/selectExtraMap.js +1 -1
- package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +4 -7
- package/es/components/table-filter/src/tool/baseOptions.js +1 -1
- package/es/components/tooth-bitmap/src/ToothBitmap.vue2.js +1 -1
- package/es/components/vod-chunk-upload/src/hooks/upload-computed.js +1 -1
- package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue2.js +1 -1
- package/es/components/vod-chunk-upload/src/vod-upload-modal.js +1 -1
- package/es/shared/package.json.js +1 -1
- package/es/shared/types/index.d.ts +3 -0
- package/es/shared/utils/index.d.ts +1 -0
- package/es/shared/utils/index.js +1 -1
- package/package.json +2 -2
- package/es/components/iho-chat/src/hooks/useSession.d.ts +0 -12
- package/es/components/iho-chat/src/hooks/useSession.js +0 -1
- package/es/components/iho-chat/src/hooks/useState.d.ts +0 -18
- package/es/components/iho-chat/src/hooks/useState.js +0 -1
@@ -16,7 +16,25 @@ declare const _default: import("vue").DefineComponent<{
|
|
16
16
|
type: BooleanConstructor;
|
17
17
|
};
|
18
18
|
}>> & {}>>;
|
19
|
-
state:
|
19
|
+
state: {
|
20
|
+
orgId: string | number;
|
21
|
+
currentSessionItem: AnyObject;
|
22
|
+
id: string;
|
23
|
+
userInfo: AnyObject;
|
24
|
+
msgList: AnyObject[];
|
25
|
+
currentMsg: AnyObject;
|
26
|
+
isAppendMsg: boolean;
|
27
|
+
sessionList: AnyObject[];
|
28
|
+
isChangeSession: boolean;
|
29
|
+
updateSessionItem: AnyObject;
|
30
|
+
isUpdateSession: boolean;
|
31
|
+
currentReferenceMsg: AnyObject | null;
|
32
|
+
currentReEditMsg: AnyObject | null;
|
33
|
+
showVideo: boolean;
|
34
|
+
currentAVMsg: AnyObject;
|
35
|
+
currentGroupUser: AnyObject[];
|
36
|
+
showMultipleVideo: boolean;
|
37
|
+
};
|
20
38
|
recordRef: import("vue").Ref<any>;
|
21
39
|
recordList: import("vue").Ref<AnyObject[]>;
|
22
40
|
keyword: import("vue").Ref<any>;
|
@@ -1 +1 @@
|
|
1
|
-
import{
|
1
|
+
import{createElementVNode as e,defineComponent as a,ref as l,watch as t,openBlock as r,createBlock as o,unref as n,withCtx as s,createVNode as i,toDisplayString as u,resolveDynamicComponent as d,createElementBlock as c,Fragment as v,renderList as m,withDirectives as p,createTextVNode as g,vShow as f}from"vue";import{NModal as h,NAvatar as y,NInputGroup as w,NInput as b,NSelect as _,NPopover as k,NTag as T,NIcon as j}from"naive-ui";import{SearchOutline as M}from"@vicons/ionicons5";import{useData as L}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as x}from"../constants/index.js";import{searchChatRecordApi as C}from"../api/index.js";import{transformMessage as I,formatTime as A}from"../utils/index.js";import{last as S}from"lodash-es";import"trtc-sdk-v5";import B from"../../../date-picker/index.js";import{useDebounceFn as E}from"@vueuse/core";import{format as H}from"date-fns";import"../../../../shared/utils/index.js";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{useScrollLoading as D}from"../../../../shared/hooks/useScrollLoading.js";import{emojis as U}from"../utils/emoji.js";var z,G;const N={class:"iho-chat-dialog__header"},R=e("span",{class:"left"},(null==(z=window.getLanguageByCode)?void 0:z.call(window,"10010.1.65"))||"聊天记录",-1),O={class:"center"},W={class:"iho-chat-dialog__content iho-chat-record-wrapper"},J={class:"chat-record-box"},P={class:"msg-box"},X={class:"name-and-time"},$={class:"content"},q=["src"],F=["src"],K=["innerHTML"],Q={key:1,class:"no-data"},V={class:"chat-record-box__filter"},Y=e("span",{class:"filter-title"},(null==(G=window.getLanguageByCode)?void 0:G.call(window,"10010.1.72"))||"添加筛选条件",-1),Z={class:"filter-item"},ee=e("span",{class:"label"},"成员:",-1),ae={class:"filter-item"},le=e("span",{class:"label"},"日期:",-1),te={class:"time-target"},re={class:"time-target__item"},oe=e("span",null,"开始:",-1),ne={class:"tip"},se={class:"time-target__item"},ie=e("span",null,"结束:",-1),ue={class:"tip"};var de=a({__name:"ChatRecord",props:{visible:{type:Boolean}},setup(a){const z=a,G={color:"#fff",textColor:"#666"},{state:de}=L(),ce=l(),ve=l([]),me=l(),pe=l([]),ge=l(),fe=l(),he=E(be,500),ye={page:0,hasMore:!0,lastSendTime:H(new Date,"yyyy-MM-dd HH:mm:ss")};async function we(){var e;try{if(!ye.hasMore)return;ye.page++;const a=await C({orgId:de.orgId,keyword:me.value,endTime:Te(),startTime:ge.value?ge.value+" 00:00:00":"",lastSendTime:ye.lastSendTime,memberIdSet:pe.value,page:ye.page,recordType:"ALL",receiver:de.currentSessionItem.receiver,userId:de.userInfo.id});Array.isArray(a)&&0!==a.length&&Array.isArray(a[0].recordList)||(ye.hasMore=!1);let l=a||[];Array.isArray(a)&&a.length>0&&(l=a[0].recordList.filter((e=>"WITHDRAWN"!==e.status))),ye.lastSendTime=null==(e=S(l))?void 0:e.sendTime,l.forEach((e=>{var a,l,t,r;let o="";switch(e.content.chatMessageType){case x.TEXT:case x.BLEND:o=I(e.content);break;case x.TEMPLATE:o=null==(t=null==(l=null==(a=e.content)?void 0:a.messageTemplate)?void 0:l.setting)?void 0:t.title;break;default:o=null==(r=e.content)?void 0:r.msg}e.__content=o})),ve.value=ye.page>1?ve.value.concat(l):l}catch(e){}}function be(){Object.assign(ye,{page:0,hasMore:!0,lastSendTime:Te()||H(new Date,"yyyy-MM-dd HH:mm:ss")}),we()}function _e(e){return!!fe.value&&e>Date.parse(`${fe.value} 23:59:59`)}function ke(e){return!!ge.value&&e<Date.parse(ge.value)}function Te(){return fe.value?fe.value+" 23:59:59":""}function je(e){switch(e){case"member":pe.value=[];break;case"start":ge.value=null;break;case"end":fe.value=null}}function Me(e){return i(v,null,[i("div",{style:"display: flex;align-items: center"},[i(y,{src:e.avatar,round:!0,size:"small"},null),i("span",{style:"margin-left: 10px"},[e.name])])])}return D(ce,(()=>{we()})),t([()=>pe.value,()=>ge.value,()=>fe.value],(()=>{z.visible&&be()}),{deep:!0}),t((()=>z.visible),(e=>{e?be():(me.value="",fe.value=null,ge.value=null,pe.value=[],ve.value=[])})),(a,l)=>(r(),o(n(h),{preset:"dialog",title:"","show-icon":!1,"auto-focus":!1,class:"iho-chat-dialog"},{header:s((()=>[e("div",N,[R,e("div",O,[i(n(y),{round:"",size:30,src:n(de).currentSessionItem.avatar},null,8,["src"]),e("span",null,u(n(de).currentSessionItem.name),1)])])])),default:s((()=>[e("div",W,[i(n(w),null,{default:s((()=>{var e;return[(r(),o(d((()=>[i(j,{component:M,size:18,color:"#6666"},null),pe.value.length>0?i(T,{closable:!0,bordered:!1,color:G,onClose:()=>je("member")},{default:()=>{var e,a;return[g("成员:")," ",pe.value.length>1?pe.value.length+((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.40"))||"人"):null==(a=de.currentGroupUser.find((e=>e.id===pe.value[0])))?void 0:a.name]}}):null,ge.value?i(T,{closable:!0,bordered:!1,color:G,onClose:()=>je("start")},{default:()=>[g("起始时间: "),ge.value]}):null,fe.value?i(T,{closable:!0,bordered:!1,color:G,onClose:()=>je("end")},{default:()=>[g("结束时间: "),fe.value]}):null])))),i(n(b),{placeholder:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.36"))||"搜索",value:me.value,"onUpdate:value":l[0]||(l[0]=e=>me.value=e),valueModifiers:{trim:!0},onInput:n(he)},null,8,["value","onInput"])]})),_:1}),e("div",J,[e("div",{class:"chat-record-box__content",ref_key:"recordRef",ref:ce},[ve.value.length>0?(r(!0),c(v,{key:0},m(ve.value,(a=>(r(),c("div",{class:"content-item",key:a.id},[i(n(y),{round:"",size:38,src:a.senderAvatar},null,8,["src"]),e("div",P,[e("div",X,[e("span",null,u(a.senderName),1),e("span",null,u(n(A)(a.sendTime).recordTime),1)]),e("div",$,[a.content.chatMessageType===n(x).IMAGE?(r(),c("img",{key:0,src:a.__content},null,8,q)):a.content.chatMessageType===n(x).EMOJI?(r(),c("img",{key:1,class:"emoji",src:n(U).findEmoji(a.__content)},null,8,F)):(r(),c("p",{key:2,innerHTML:a.__content},null,8,K))])])])))),128)):(r(),c("div",Q,"没有找到相关记录"))],512),e("div",V,[Y,e("div",Z,[ee,i(n(_),{value:pe.value,"onUpdate:value":l[1]||(l[1]=e=>pe.value=e),multiple:"","max-tag-count":1,"render-label":Me,options:n(de).currentGroupUser,"value-field":"id"},null,8,["value","options"])]),e("div",ae,[le,e("div",te,[i(n(k),{trigger:"click","show-arrow":!1},{trigger:s((()=>{var a;return[e("div",re,[oe,p(i(n(T),{bordered:!1,color:G,closable:"",onClose:l[2]||(l[2]=()=>je("start"))},{default:s((()=>[g(u(ge.value),1)])),_:1},512),[[f,ge.value]]),p(e("span",ne,(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.76"))||"点击选择",512),[[f,!ge.value]])])]})),default:s((()=>[i(n(B),{"formatted-value":ge.value,"onUpdate:formatted-value":l[3]||(l[3]=e=>ge.value=e),type:"date",panel:"",clearable:"","is-date-disabled":_e},null,8,["formatted-value"])])),_:1}),i(n(k),{trigger:"click","show-arrow":!1},{trigger:s((()=>{var a;return[e("div",se,[ie,p(i(n(T),{bordered:!1,color:G,closable:"",onClose:l[4]||(l[4]=()=>je("end"))},{default:s((()=>[g(u(fe.value),1)])),_:1},512),[[f,fe.value]]),p(e("span",ue,(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.76"))||"点击选择",512),[[f,!fe.value]])])]})),default:s((()=>[i(n(B),{"formatted-value":fe.value,"onUpdate:formatted-value":l[5]||(l[5]=e=>fe.value=e),type:"date",panel:"",clearable:"","is-date-disabled":ke},null,8,["formatted-value"])])),_:1})])])])])])])),_:1}))}});export{de as default};
|
@@ -1,10 +1,28 @@
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{}, {
|
2
|
-
cssVars: import("vue").ComputedRef<import("../../../../shared/types").AnyObject>;
|
3
2
|
listRef: import("vue").Ref<any>;
|
4
3
|
inputRef: import("vue").Ref<any>;
|
5
4
|
showSearch: import("vue").Ref<boolean>;
|
6
5
|
keyword: import("vue").Ref<string>;
|
7
|
-
|
6
|
+
cssVars: import("vue").ComputedRef<import("../../../../shared/types").AnyObject>;
|
7
|
+
state: {
|
8
|
+
orgId: string | number;
|
9
|
+
currentSessionItem: import("../../../../shared/types").AnyObject;
|
10
|
+
id: string;
|
11
|
+
userInfo: import("../../../../shared/types").AnyObject;
|
12
|
+
msgList: import("../../../../shared/types").AnyObject[];
|
13
|
+
currentMsg: import("../../../../shared/types").AnyObject;
|
14
|
+
isAppendMsg: boolean;
|
15
|
+
sessionList: import("../../../../shared/types").AnyObject[];
|
16
|
+
isChangeSession: boolean;
|
17
|
+
updateSessionItem: import("../../../../shared/types").AnyObject;
|
18
|
+
isUpdateSession: boolean;
|
19
|
+
currentReferenceMsg: import("../../../../shared/types").AnyObject | null;
|
20
|
+
currentReEditMsg: import("../../../../shared/types").AnyObject | null;
|
21
|
+
showVideo: boolean;
|
22
|
+
currentAVMsg: import("../../../../shared/types").AnyObject;
|
23
|
+
currentGroupUser: import("../../../../shared/types").AnyObject[];
|
24
|
+
showMultipleVideo: boolean;
|
25
|
+
};
|
8
26
|
openSession: (item: import("../../../../shared/types").AnyObject) => Promise<void>;
|
9
27
|
userList: import("vue").Ref<import("../../../../shared/types").AnyObject[]>;
|
10
28
|
handleInput: () => void;
|
@@ -1 +1 @@
|
|
1
|
-
import{defineComponent as e,ref as
|
1
|
+
import{defineComponent as e,ref as s,computed as o,watch as a,nextTick as r,openBlock as t,createBlock as l,unref as n,normalizeStyle as i,withCtx as c,createVNode as u,createTextVNode as p,createElementVNode as f,createElementBlock as d,Fragment as m,renderList as v,toDisplayString as h,withDirectives as w,vShow as g}from"vue";import{NPopover as y,NButton as k,NIcon as j,NInput as _,NAvatar as x}from"naive-ui";import{SearchOutline as C}from"@vicons/ionicons5";import{useData as L}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";import{useSearchUserList as S}from"../hooks/useSearchUserList.js";import U from"../../../default-page/index.js";const I=["onClick"],b={class:"user-info"};var z=e({__name:"ChatSearch",setup(e){const z=s(),D=s(),N=s(!1),B=s(""),{cssVars:E,state:G,openSession:T}=L(),{userList:V,handleInput:$}=S({wrapperRef:z,keywordRef:B}),q=o((()=>!V.value.length&&!!(B.value||"").replace(/^\s+|\s+$/g,"")));return a((()=>N.value),(async e=>{var s;e&&(await r(),null==(s=D.value)||s.focus())})),(e,s)=>(t(),l(n(y),{raw:"","content-class":"search-content",class:"search-wrapper",style:i(n(E)),show:N.value,"onUpdate:show":s[1]||(s[1]=e=>N.value=e),placement:"top",trigger:"click","display-directive":"show","show-arrow":!1,delay:0,overlap:""},{trigger:c((()=>[u(n(k),{color:"#ffffff4D",class:"search-trigger-btn"},{icon:c((()=>[u(n(j),{component:n(C),color:"#ffffff80"},null,8,["component"])])),default:c((()=>[p(" 搜索联系人 ")])),_:1})])),default:c((()=>{var e;return[u(n(_),{ref_key:"inputRef",ref:D,size:"small",clearable:"",autofocus:"",value:B.value,"onUpdate:value":[s[0]||(s[0]=e=>B.value=e),n($)]},{prefix:c((()=>[u(n(j),{color:"#ffffff80",component:n(C)},null,8,["component"])])),_:1},8,["value","onUpdate:value"]),f("div",{class:"user-list-wrapper",ref_key:"listRef",ref:z},[(t(!0),d(m,null,v(n(V),(e=>(t(),d("div",{class:"user-item",key:e.id,onClick:()=>async function(e){N.value=!1;const s=await R({chatType:"SINGLE",receiver:e,sender:G.userInfo.id});T(s)}(e.id)},[u(n(x),{round:"",size:32,src:e.avatar},null,8,["src"]),f("div",b,[f("span",null,h(e.name),1),f("span",null,h(e.deptName),1),f("span",null,h(e.post),1)])],8,I)))),128)),w(u(n(U),{config:{title:" ",content:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.81"))||"找不到相关的结果"},type:"5"},null,512),[[g,n(q)]])],512)]})),_:1},8,["style","show"]))}});export{z as default};
|
@@ -4,14 +4,32 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
4
4
|
attrs: {
|
5
5
|
[x: string]: unknown;
|
6
6
|
};
|
7
|
-
state:
|
7
|
+
state: {
|
8
|
+
orgId: string | number;
|
9
|
+
currentSessionItem: AnyObject;
|
10
|
+
id: string;
|
11
|
+
userInfo: AnyObject;
|
12
|
+
msgList: AnyObject[];
|
13
|
+
currentMsg: AnyObject;
|
14
|
+
isAppendMsg: boolean;
|
15
|
+
sessionList: AnyObject[];
|
16
|
+
isChangeSession: boolean;
|
17
|
+
updateSessionItem: AnyObject;
|
18
|
+
isUpdateSession: boolean;
|
19
|
+
currentReferenceMsg: AnyObject | null;
|
20
|
+
currentReEditMsg: AnyObject | null;
|
21
|
+
showVideo: boolean;
|
22
|
+
currentAVMsg: AnyObject;
|
23
|
+
currentGroupUser: AnyObject[];
|
24
|
+
showMultipleVideo: boolean;
|
25
|
+
};
|
8
26
|
setCurrentSessionItem: (item: AnyObject) => void;
|
9
27
|
isGroupChat: import("vue").ComputedRef<boolean>;
|
28
|
+
isGroupLeader: import("vue").ComputedRef<boolean>;
|
10
29
|
inputRef: import("vue").Ref<any>;
|
11
30
|
groupNameEditing: import("vue").Ref<boolean>;
|
12
31
|
groupName: import("vue").Ref<string>;
|
13
32
|
showGroupDetail: import("vue").Ref<boolean>;
|
14
|
-
isGroupLeader: import("vue").ComputedRef<boolean>;
|
15
33
|
currentGroupUserIds: import("vue").ComputedRef<any[]>;
|
16
34
|
currentGroupUser: import("vue").ComputedRef<AnyObject[]>;
|
17
35
|
handleTopping: (value: boolean) => Promise<void>;
|
@@ -60,7 +78,25 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
60
78
|
onClose?: ((...args: any[]) => any) | undefined;
|
61
79
|
}>>;
|
62
80
|
emit: (event: "close", ...args: any[]) => void;
|
63
|
-
state:
|
81
|
+
state: {
|
82
|
+
orgId: string | number;
|
83
|
+
currentSessionItem: AnyObject;
|
84
|
+
id: string;
|
85
|
+
userInfo: AnyObject;
|
86
|
+
msgList: AnyObject[];
|
87
|
+
currentMsg: AnyObject;
|
88
|
+
isAppendMsg: boolean;
|
89
|
+
sessionList: AnyObject[];
|
90
|
+
isChangeSession: boolean;
|
91
|
+
updateSessionItem: AnyObject;
|
92
|
+
isUpdateSession: boolean;
|
93
|
+
currentReferenceMsg: AnyObject | null;
|
94
|
+
currentReEditMsg: AnyObject | null;
|
95
|
+
showVideo: boolean;
|
96
|
+
currentAVMsg: AnyObject;
|
97
|
+
currentGroupUser: AnyObject[];
|
98
|
+
showMultipleVideo: boolean;
|
99
|
+
};
|
64
100
|
openSession: (item: AnyObject) => Promise<void>;
|
65
101
|
showUserDetail: import("vue").Ref<boolean>;
|
66
102
|
showLargeAvatar: import("vue").Ref<boolean>;
|
@@ -124,6 +160,10 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
124
160
|
type: import("vue").PropType<AnyObject[]>;
|
125
161
|
default: () => never[];
|
126
162
|
};
|
163
|
+
disabled: {
|
164
|
+
type: BooleanConstructor;
|
165
|
+
default: boolean;
|
166
|
+
};
|
127
167
|
}, {
|
128
168
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
129
169
|
title: {
|
@@ -145,11 +185,33 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
145
185
|
type: import("vue").PropType<AnyObject[]>;
|
146
186
|
default: () => never[];
|
147
187
|
};
|
188
|
+
disabled: {
|
189
|
+
type: BooleanConstructor;
|
190
|
+
default: boolean;
|
191
|
+
};
|
148
192
|
}>> & {
|
149
193
|
onComfirm?: ((...args: any[]) => any) | undefined;
|
150
194
|
}>>;
|
151
195
|
emit: (event: "comfirm", ...args: any[]) => void;
|
152
|
-
state:
|
196
|
+
state: {
|
197
|
+
orgId: string | number;
|
198
|
+
currentSessionItem: AnyObject;
|
199
|
+
id: string;
|
200
|
+
userInfo: AnyObject;
|
201
|
+
msgList: AnyObject[];
|
202
|
+
currentMsg: AnyObject;
|
203
|
+
isAppendMsg: boolean;
|
204
|
+
sessionList: AnyObject[];
|
205
|
+
isChangeSession: boolean;
|
206
|
+
updateSessionItem: AnyObject;
|
207
|
+
isUpdateSession: boolean;
|
208
|
+
currentReferenceMsg: AnyObject | null;
|
209
|
+
currentReEditMsg: AnyObject | null;
|
210
|
+
showVideo: boolean;
|
211
|
+
currentAVMsg: AnyObject;
|
212
|
+
currentGroupUser: AnyObject[];
|
213
|
+
showMultipleVideo: boolean;
|
214
|
+
};
|
153
215
|
setCurrentSessionItem: (item: AnyObject) => void;
|
154
216
|
listRef: import("vue").Ref<any>;
|
155
217
|
keyword: import("vue").Ref<string>;
|
@@ -209,11 +271,16 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
209
271
|
type: import("vue").PropType<AnyObject[]>;
|
210
272
|
default: () => never[];
|
211
273
|
};
|
274
|
+
disabled: {
|
275
|
+
type: BooleanConstructor;
|
276
|
+
default: boolean;
|
277
|
+
};
|
212
278
|
}>> & {
|
213
279
|
onComfirm?: ((...args: any[]) => any) | undefined;
|
214
280
|
}, {
|
215
281
|
title: string;
|
216
282
|
defaultValue: AnyObject[];
|
283
|
+
disabled: boolean;
|
217
284
|
mode: string;
|
218
285
|
disabledIds: string[];
|
219
286
|
}>;
|
@@ -1 +1 @@
|
|
1
|
-
import{
|
1
|
+
import{createElementVNode as e,defineComponent as n,useAttrs as t,ref as o,computed as i,watch as a,openBlock as l,createBlock as s,unref as r,withCtx as c,createVNode as u,createTextVNode as d,createElementBlock as m,Fragment as p,renderList as v,toDisplayString as g,createCommentVNode as w,withKeys as f,nextTick as y}from"vue";import{NDrawer as _,NDrawerContent as k,NButton as C,NIcon as h,NAvatar as b,NUpload as I,NUploadTrigger as x,NInput as L,NSpace as S,NSwitch as B,NPopconfirm as j}from"naive-ui";import{ChevronBackOutline as z,ChevronForwardOutline as U,AddOutline as G,RemoveOutline as P,Pencil as A}from"@vicons/ionicons5";import{useData as D}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{toppingSessionApi as R,groupLeaveApi as F,groupUpdateApi as K}from"../api/index.js";import"../utils/index.js";import{trim as N,isFunction as O}from"lodash-es";import"trtc-sdk-v5";import q from"./PersonProfile.vue.js";import E from"./ChatAdd.vue.js";var H,J,M,Q,T,V,W,X;const Y={key:0,class:"chat-set-wrapper"},Z={class:"item"},$={class:"name"},ee={key:0,class:"item__right",style:{color:"var(--c-primary-color)"}},ne={class:"item user-info"},te={class:"name"},oe={class:"item item-column"},ie=e("span",{class:"label"},(null==(H=window.getLanguageByCode)?void 0:H.call(window,"10010.1.85"))||"群成员",-1),ae={class:"group-box"},le={class:"group-box__item"},se={class:"name"},re={class:"group-box__item"},ce=e("span",{class:"name"},(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.86"))||"添加",-1),ue={class:"group-box__item"},de=e("span",{class:"name"},(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.88"))||"移除",-1),me=["onClick"],pe=e("span",{class:"label"},(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.90"))||"群头像",-1),ve={class:"item"},ge=e("span",{class:"label"},(null==(T=window.getLanguageByCode)?void 0:T.call(window,"10010.1.34"))||"群名称",-1),we={class:"item__right"},fe={class:"txt"},ye={class:"item"},_e=e("span",{class:"label"},(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.92"))||"置顶聊天",-1),ke={class:"item item--red"},Ce=e("span",{class:"label"},(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.93"))||"退出群聊",-1),he=e("p",{style:{width:"230px"}},"是否确认退出群聊?",-1),be={class:"item item--red"},Ie=e("span",{class:"label"},(null==(X=window.getLanguageByCode)?void 0:X.call(window,"10010.1.95"))||"解散该群",-1),xe=e("p",{style:{width:"230px"}},"是否确认解散群聊?",-1);var Le=n({__name:"ChatSet",setup(n){const H=t(),{state:J,setCurrentSessionItem:M,isGroupChat:Q,isGroupLeader:T}=D(),V=o(),W=o(!1),X=o(""),Le=o(!1),Se=i((()=>J.currentGroupUser.map((e=>e.id)))),Be=i((()=>J.currentGroupUser?T.value?J.currentGroupUser.slice(0,6):J.currentGroupUser.slice(0,7):[]));async function je(e){try{await R({id:J.currentSessionItem.id,topping:e}),M({topping:e})}catch(e){}}async function ze(e){await F({dissolution:!!e,groupId:J.currentSessionItem.receiver,operator:J.userInfo.id,memberIdSet:e?Se.value:[J.userInfo.id]})}async function Ue(){var e;X.value=J.currentSessionItem.name,W.value=!0,await y(),null==(e=V.value)||e.select()}async function Ge(e){const n=new FormData,t=Object.assign({id:J.currentSessionItem.receiver},e);for(const e in t)n.append(e,t[e]);await K(n)}async function Pe(){W.value=!1;const e=N(X.value);e&&e!==J.currentSessionItem.name&&(await Ge({name:e}),M({name:e,defaultName:e}))}async function Ae(e){const{file:n}=e.file,t=new FileReader;t.onload=function(e){var n;(null==(n=e.target)?void 0:n.result)&&M({avatar:e.target.result})},t.readAsDataURL(e.file.file),await Ge({file:n})}function De(){O(H["onUpdate:show"])&&H["onUpdate:show"](!1)}return a((()=>J.id),(e=>{De()})),(n,t)=>(l(),s(r(_),{width:320,"trap-focus":!1,"block-scroll":!1,to:".iho-chat",onAfterLeave:t[7]||(t[7]=e=>Le.value=!1)},{default:c((()=>[u(r(k),null,{header:c((()=>{var e,n;return[r(Q)&&Le.value?(l(),s(r(C),{key:0,text:"",color:"#666",onClick:t[0]||(t[0]=e=>Le.value=!1),style:{"font-size":"var(--n-title-font-size)"}},{icon:c((()=>[u(r(h),{size:20,component:r(z)},null,8,["component"])])),default:c((()=>[d(" 返回 ")])),_:1})):r(Q)?(l(),m(p,{key:1},[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.83"))||"群设置")],64)):(l(),m(p,{key:2},[d((null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.66"))||"聊天设置")],64))]})),default:c((()=>{var n;return[r(J).id?(l(),m("div",Y,[r(Q)&&Le.value?(l(!0),m(p,{key:0},v(r(J).currentGroupUser,((n,t)=>(l(),s(q,{key:n.id,"user-id":n.id,placement:"left"},{trigger:c((()=>{var o;return[e("div",Z,[u(r(b),{round:"",size:40,src:n.avatar},null,8,["src"]),e("span",$,g(n.name),1),0===t?(l(),m("span",ee,(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.84"))||"群主")):w("v-if",!0)])]})),_:2},1032,["user-id"])))),128)):(l(),m(p,{key:1},[u(q,{"user-id":r(J).currentSessionItem.receiver,onClose:De,disabled:!!r(Q),placement:"bottom-end"},{trigger:c((()=>[e("div",ne,[u(r(b),{round:"",size:40,src:r(J).currentSessionItem.avatar},null,8,["src"]),e("span",te,g(r(J).currentSessionItem.name),1),r(Q)?w("v-if",!0):(l(),s(r(h),{key:0,size:24,component:r(U),class:"item__right"},null,8,["component"]))])])),_:1},8,["user-id","disabled"]),r(Q)?(l(),m(p,{key:0},[e("div",oe,[ie,e("div",ae,[(l(!0),m(p,null,v(r(Be),(n=>(l(),s(q,{key:n.id,"user-id":n.id,placement:"left-start"},{trigger:c((()=>[e("div",le,[u(r(b),{round:"",size:40,src:n.avatar},null,8,["src"]),e("span",se,g(n.name),1)])])),_:2},1032,["user-id"])))),128)),u(E,{mode:"join",disabledIds:r(Se)},{trigger:c((()=>[e("div",re,[u(r(C),{strong:"",secondary:"",circle:""},{icon:c((()=>[u(r(h),{component:r(G)},null,8,["component"])])),_:1}),ce])])),_:1},8,["disabledIds"]),r(T)?(l(),s(E,{key:0,title:(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.87"))||"移除成员",mode:"remove",options:r(J).currentGroupUser},{trigger:c((()=>[e("div",ue,[u(r(C),{strong:"",secondary:"",circle:""},{icon:c((()=>[u(r(h),{component:r(P)},null,8,["component"])])),_:1}),de])])),_:1},8,["options"])):w("v-if",!0)]),u(r(C),{text:"","icon-placement":"right",color:"#999",onClick:t[1]||(t[1]=e=>Le.value=!0)},{icon:c((()=>[u(r(h),{component:r(U)},null,8,["component"])])),default:c((()=>[d(" 查看全部群成员 ")])),_:1})]),u(r(I),{abstract:"",multiple:"",accept:"image/*",onChange:Ae},{default:c((()=>[u(r(x),{abstract:""},{default:c((({handleClick:n})=>[e("div",{class:"item",onClick:n},[pe,u(r(h),{size:20,component:r(U),class:"item__right"},null,8,["component"])],8,me)])),_:1})])),_:1}),e("div",ve,[ge,e("div",we,[W.value?(l(),s(r(L),{key:0,ref_key:"inputRef",ref:V,value:X.value,"onUpdate:value":t[2]||(t[2]=e=>X.value=e),onBlur:Pe,onKeydown:t[3]||(t[3]=f((e=>e.target.blur()),["enter"]))},null,8,["value"])):(l(),s(r(S),{key:1,"wrap-item":!1,onClick:Ue,align:"center"},{default:c((()=>[e("span",fe,g(r(J).currentSessionItem.name),1),u(r(C),{text:"",style:{"font-size":"14px","--n-text-color":"#999"}},{default:c((()=>[u(r(h),{component:r(A)},null,8,["component"])])),_:1})])),_:1}))])])],64)):w("v-if",!0),e("div",ye,[_e,u(r(B),{value:r(J).currentSessionItem.topping,"onUpdate:value":[t[4]||(t[4]=e=>r(J).currentSessionItem.topping=e),je],class:"item__right"},null,8,["value"])]),r(Q)?(l(),m(p,{key:1},[u(r(j),{onPositiveClick:t[5]||(t[5]=()=>ze(!1))},{trigger:c((()=>[e("div",ke,[Ce,u(r(h),{size:20,component:r(U),class:"item__right"},null,8,["component"])])])),default:c((()=>[he])),_:1}),r(T)?(l(),s(r(j),{key:0,onPositiveClick:t[6]||(t[6]=()=>ze(!0))},{trigger:c((()=>[e("div",be,[Ie,u(r(h),{size:20,component:r(U),class:"item__right"},null,8,["component"])])])),default:c((()=>[xe])),_:1})):w("v-if",!0)],64)):w("v-if",!0)],64))])):w("v-if",!0)]})),_:1})])),_:1}))}});export{Le as default};
|
@@ -1,5 +1,9 @@
|
|
1
1
|
import { PropType, CSSProperties } from 'vue';
|
2
2
|
declare const _default: import("vue").DefineComponent<{
|
3
|
+
type: {
|
4
|
+
type: StringConstructor;
|
5
|
+
default: string;
|
6
|
+
};
|
3
7
|
show: {
|
4
8
|
type: BooleanConstructor;
|
5
9
|
default: boolean;
|
@@ -7,10 +11,14 @@ declare const _default: import("vue").DefineComponent<{
|
|
7
11
|
position: {
|
8
12
|
type: PropType<CSSProperties>;
|
9
13
|
};
|
10
|
-
|
14
|
+
id: {
|
11
15
|
type: StringConstructor;
|
12
16
|
};
|
13
17
|
}, () => 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<{
|
18
|
+
type: {
|
19
|
+
type: StringConstructor;
|
20
|
+
default: string;
|
21
|
+
};
|
14
22
|
show: {
|
15
23
|
type: BooleanConstructor;
|
16
24
|
default: boolean;
|
@@ -18,13 +26,14 @@ declare const _default: import("vue").DefineComponent<{
|
|
18
26
|
position: {
|
19
27
|
type: PropType<CSSProperties>;
|
20
28
|
};
|
21
|
-
|
29
|
+
id: {
|
22
30
|
type: StringConstructor;
|
23
31
|
};
|
24
32
|
}>> & {
|
25
33
|
onSelect?: ((...args: any[]) => any) | undefined;
|
26
34
|
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
27
35
|
}, {
|
36
|
+
type: string;
|
28
37
|
show: boolean;
|
29
38
|
}>;
|
30
39
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
import{defineComponent as e,ref as t,computed as
|
1
|
+
import{defineComponent as e,ref as t,computed as o,withDirectives as i,createVNode as s,vShow as n,isVNode as a}from"vue";import{NButtonGroup as l,NButton as r,NIcon as d}from"naive-ui";import{CopyOutline as c,OpenOutline as u,ChatbubbleEllipsesOutline as p,ReturnDownBack as m,DownloadOutline as w}from"@vicons/ionicons5";import{onClickOutside as g}from"@vueuse/core";import{useData as y}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as f}from"../constants/index.js";import{recallMessageApi as v}from"../api/index.js";import{isAudioOrVideoMessage as h,$message as T,downloadFile as b}from"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";import{emojis as I}from"../utils/emoji.js";import{format as j}from"date-fns";var k=e({name:"PopupMenu",inheritAttrs:!1,props:{type:{type:String,default:"message"},show:{type:Boolean,default:!1},position:{type:Object},id:{type:String}},emits:["update:show","select"],setup(e,{attrs:k,slots:M,emit:E}){var L,x,S,A,B;const{state:C,setCurrentSessionItem:D}=y(),O=[{icon:c,label:(null==(L=window.getLanguageByCode)?void 0:L.call(window,"10010.1.97"))||"复制",key:"copy"},{icon:u,label:(null==(x=window.getLanguageByCode)?void 0:x.call(window,"10010.1.45"))||"转发",key:"relay"},{icon:p,label:(null==(S=window.getLanguageByCode)?void 0:S.call(window,"10010.1.99"))||"回复",key:"reply"},{icon:m,label:(null==(A=window.getLanguageByCode)?void 0:A.call(window,"10010.1.101"))||"撤回",key:"withdraw"},{icon:w,label:(null==(B=window.getLanguageByCode)?void 0:B.call(window,"10010.1.46"))||"下载",key:"download"}],W=[{label:"置顶会话",key:"topping"},{label:"移除会话",key:"remove"}],$=t(null),H=o((()=>("message"===e.type?C.msgList:C.sessionList).find((({id:t})=>t===e.id)))),J=o((()=>{var t;if(!e.id)return[];if(!(null==H?void 0:H.value))return[];if("session"===e.type){const e=[...W];return e[0].label=(null==(t=H.value)?void 0:t.topping)?"取消置顶":"置顶会话",e}const{content:o={},sendTime:i,sender:s}=H.value,{chatMessageType:n}=o,a=[];return(s!==C.userInfo.id||n===f.TEMPLATE||s===C.userInfo.id&&Date.now()-new Date(i).getTime()>2592e5)&&a.push("withdraw"),[f.TEXT,f.EMOJI,f.BLEND].includes(n)?a.push("download"):h(o)?a.push("copy","relay","reply","download"):n===f.FILE?a.push("copy"):[f.FORWARD,f.TEMPLATE].includes(n)&&a.push("copy","download"),a.length?O.filter((e=>!a.includes(e.key))):O}));return g($,(e=>{E("update:show",!1)})),()=>{let t;return e.id&&J.value?i(s("div",{class:"contextmenu-wrapper",ref:$,style:e.position},[s(l,{vertical:!0},(o=t=J.value.map((t=>s(r,{key:t.key,onClick:()=>async function(t){E("update:show",!1);const{content:o={},sendTime:i,sender:s}=H.value||{},{chatMessageType:n}=o;switch(t){case"copy":if(!o.msg)return console.log("复制内容为空!");if(!navigator||!("clipboard"in navigator))return console.log("当前浏览器版本不支持复制!");try{if(n===f.TEXT)await navigator.clipboard.writeText(o.msg);else{let e;if([f.EMOJI,f.IMAGE].includes(n)){const t=n===f.EMOJI?I.findEmoji(o.msg):o.msg;e=`<img data-msg=${o.msg} data-type=${n} class=${n===f.EMOJI?"emoji--min":""} src=${t} />`}else e=o.msg;await navigator.clipboard.write([new window.ClipboardItem({"text/html":new Blob([e],{type:"text/html"})})])}}catch(e){console.log("复制失败!")}return;case"download":{let{fileUrl:e,msg:t}=o;return n===f.IMAGE&&(e=t,t=t.match(/\/([^\/?#]+)$/)[1]),void b(e,t)}case"withdraw":try{const t=C.msgList.findIndex((({id:t})=>t===e.id)),o=0===t;if(await v({chatType:C.currentSessionItem.chatType,messageIdSet:[e.id],receiver:C.currentSessionItem.receiver,sender:C.userInfo.id,isLastMessage:o}),C.msgList[t].status="WITHDRAWN",o){const e=j(new Date,"yyyy-MM-dd HH:mm:ss");D({lastMessageStatus:"WITHDRAWN",lastMessageSendTime:e,sortTime:e,updatedTime:e})}}catch(e){T.error("撤回失败")}return}E("select",t,H.value)}(t.key),quaternary:!0},{default:()=>t.label,icon:()=>t.icon?s(d,{component:t.icon},null):null}))),"function"==typeof o||"[object Object]"===Object.prototype.toString.call(o)&&!a(o)?t:{default:()=>[t]}))]),[[n,e.show]]):null;var o}}});export{k as default};
|
@@ -14,7 +14,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
14
14
|
}>> & {}>>;
|
15
15
|
describeBodyRef: import("vue").Ref<any>;
|
16
16
|
showMore: import("vue").Ref<boolean>;
|
17
|
-
emit: (event:
|
17
|
+
emit: (event: "template-click" | "unread-message-update" | "session-change" | "session-close", ...args: any[]) => void;
|
18
18
|
isOverflow: import("vue").ComputedRef<boolean>;
|
19
19
|
setting: import("vue").ComputedRef<any>;
|
20
20
|
serverSetting: import("vue").ComputedRef<any>;
|
@@ -1 +1 @@
|
|
1
|
-
import{defineComponent as e,ref as t,computed as l,openBlock as s,createElementBlock as
|
1
|
+
import{defineComponent as e,ref as t,computed as l,openBlock as s,createElementBlock as o,Fragment as i,unref as n,createElementVNode as a,toDisplayString as c,withModifiers as r,createBlock as d,createCommentVNode as m,renderList as p,withCtx as u,createTextVNode as v,normalizeClass as f,createVNode as g}from"vue";import{NIcon as y,NButton as k}from"naive-ui";import{ChevronForwardOutline as h,AlertCircleSharp as _}from"@vicons/ionicons5";import b from"../../../../shared/components/SvgIcon/SvgIcon.vue.js";import{useData as T}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import"../api/index.js";import"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";const j={class:"default-msg-template__header"},C={class:"title"},M={class:"default-msg-template__body"},L=["src"],E={class:"template-content"},H=["innerHTML"],N={key:0,class:"default-msg-template__btn-group"},S=a("i",{class:"chat--iconfont chat--icon-more"},null,-1),w={key:1,class:"describe-msg-template"},x={class:"describe-msg-template__header"},D={class:"title"},B={class:"txt"},O=a("i",{class:"chat--iconfont chat--icon-more"},null,-1),z={key:2,class:"system-msg-template"},F=["innerHTML"],I=["onClick"];var P=e({__name:"MessageTemplate",props:{data:{type:Object,required:!0}},setup(e){const P=e,R=t(),q=t(!0),{emit:V}=T(),W=l((()=>{if(!R.value)return!1;const{childNodes:e,clientWidth:t}=R.value;let l=0;for(let s=0;s<e.length;s++)if(e[s].nodeType===Node.ELEMENT_NODE){const t=parseFloat(window.getComputedStyle(e[s]).lineHeight);l+=e[s].scrollHeight/t}else if(e[s].nodeType===Node.TEXT_NODE){const o=e[s].nodeValue.trim();if(""!==o){const e=o.split(" "),s=Math.floor(t/parseFloat(window.getComputedStyle(R.value).fontSize));l+=Math.ceil(e.length/s)}}return l>6})),X=l((()=>P.data.content.messageTemplate.setting)),$=l((()=>X.value.serverSetting)),A=l((()=>($.value.topRightButton||[])[0])),G=l((()=>{const e=(X.value.content||"").split("##").filter((e=>e));if(!e)return[];const{dbParamsList:t}=X.value||{};return e.map((e=>{const l=/\\n|\n|\r/g;return(e||"").replace(l,"<br>").replace(/\${(.*?)}/g,((e,s)=>{if(0===(t||[]).length)return"";return(U.value[s]||"").replace(l,"<br>")}))}))})),J=l((()=>{var e;return(null==(e=$.value)?void 0:e.toolbar_button)||[]})),K=l((()=>($.value.bottomButton||[])[0])),Q=l((()=>X.value.dbParamsList)),U=l((()=>P.data.content.messageTemplateData));function Y(e){V("template-click",e,P.data)}return(e,t)=>(s(),o(i,null,[1==n(X).style.id?(s(),o("div",{key:0,class:"default-msg-template",onClick:t[2]||(t[2]=()=>Y(n($)))},[a("div",j,[a("span",C,c(n(X).title),1),n(A)?(s(),o("span",{key:0,class:"btn",onClick:t[0]||(t[0]=r((()=>Y(n(A))),["stop"]))},c(n(A).title),1)):n($).address?(s(),d(n(y),{key:1,component:n(h),color:"#969696"},null,8,["component"])):m("v-if",!0)]),a("div",M,[n(X).style.icon?(s(),d(n(b),{key:0,class:"logo","icon-class":n(X).style.icon},null,8,["icon-class"])):n(X).style.image?(s(),o("img",{key:1,class:"logo",src:n(X).style.image},null,8,L)):m("v-if",!0),a("div",E,[(s(!0),o(i,null,p(n(G),(e=>(s(),o("div",{key:e,innerHTML:e},null,8,H)))),128))])]),n(J)?(s(),o("div",N,[(s(!0),o(i,null,p(n(J),((e,t)=>(s(),d(n(k),{type:"primary",round:"",ghost:"",onClick:r((()=>Y(e)),["stop"]),key:t},{default:u((()=>[v(c(e.title),1)])),_:2},1032,["onClick"])))),128))])):m("v-if",!0),n(K)?(s(),o("div",{key:1,class:"default-msg-template__footer",onClick:t[1]||(t[1]=r((()=>Y(n(K))),["stop"]))},[v(c(n(K).title)+" ",1),S])):m("v-if",!0)])):m("v-if",!0),3==n(X).style.id?(s(),o("div",w,[a("div",x,c(n(X).title),1),a("div",{class:f(["describe-msg-template__body",n(W)&&q.value?"overflow-hidden":""]),ref_key:"describeBodyRef",ref:R},[(s(!0),o(i,null,p(n(Q),((e,t)=>(s(),o(i,{key:t},[a("div",D,c(e.desc),1),a("div",B,c(n(U)[e.p_name]),1)],64)))),128))],2),n(W)?(s(),o("div",{key:0,class:f(["describe-msg-template__footer",q.value?"":"hidden"]),onClick:t[3]||(t[3]=()=>q.value=!1)},[v(" 展开全部 "),O],2)):m("v-if",!0)])):m("v-if",!0),2==n(X).style.id?(s(),o("div",z,[g(n(y),{component:n(_),color:"#ffc200",size:18},null,8,["component"]),a("span",{innerHTML:G.value.join("<br>")},null,8,F),(s(!0),o(i,null,p(n(J),((e,t)=>(s(),o("span",{class:"btn",onClick:()=>Y(e),key:t},c(e.title),9,I)))),128))])):m("v-if",!0)],64))}});export{P as default};
|
@@ -6,7 +6,25 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
6
6
|
id: string;
|
7
7
|
name: string;
|
8
8
|
}[]>;
|
9
|
-
state:
|
9
|
+
state: {
|
10
|
+
orgId: string | number;
|
11
|
+
currentSessionItem: AnyObject;
|
12
|
+
id: string;
|
13
|
+
userInfo: AnyObject;
|
14
|
+
msgList: AnyObject[];
|
15
|
+
currentMsg: AnyObject;
|
16
|
+
isAppendMsg: boolean;
|
17
|
+
sessionList: AnyObject[];
|
18
|
+
isChangeSession: boolean;
|
19
|
+
updateSessionItem: AnyObject;
|
20
|
+
isUpdateSession: boolean;
|
21
|
+
currentReferenceMsg: AnyObject | null;
|
22
|
+
currentReEditMsg: AnyObject | null;
|
23
|
+
showVideo: boolean;
|
24
|
+
currentAVMsg: AnyObject;
|
25
|
+
currentGroupUser: AnyObject[];
|
26
|
+
showMultipleVideo: boolean;
|
27
|
+
};
|
10
28
|
sendMessage: (message: {
|
11
29
|
chatType?: string | undefined;
|
12
30
|
content: AnyObject;
|
@@ -72,6 +90,10 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
72
90
|
type: import("vue").PropType<AnyObject[]>;
|
73
91
|
default: () => never[];
|
74
92
|
};
|
93
|
+
disabled: {
|
94
|
+
type: BooleanConstructor;
|
95
|
+
default: boolean;
|
96
|
+
};
|
75
97
|
}, {
|
76
98
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
77
99
|
title: {
|
@@ -93,11 +115,33 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
93
115
|
type: import("vue").PropType<AnyObject[]>;
|
94
116
|
default: () => never[];
|
95
117
|
};
|
118
|
+
disabled: {
|
119
|
+
type: BooleanConstructor;
|
120
|
+
default: boolean;
|
121
|
+
};
|
96
122
|
}>> & {
|
97
123
|
onComfirm?: ((...args: any[]) => any) | undefined;
|
98
124
|
}>>;
|
99
125
|
emit: (event: "comfirm", ...args: any[]) => void;
|
100
|
-
state:
|
126
|
+
state: {
|
127
|
+
orgId: string | number;
|
128
|
+
currentSessionItem: AnyObject;
|
129
|
+
id: string;
|
130
|
+
userInfo: AnyObject;
|
131
|
+
msgList: AnyObject[];
|
132
|
+
currentMsg: AnyObject;
|
133
|
+
isAppendMsg: boolean;
|
134
|
+
sessionList: AnyObject[];
|
135
|
+
isChangeSession: boolean;
|
136
|
+
updateSessionItem: AnyObject;
|
137
|
+
isUpdateSession: boolean;
|
138
|
+
currentReferenceMsg: AnyObject | null;
|
139
|
+
currentReEditMsg: AnyObject | null;
|
140
|
+
showVideo: boolean;
|
141
|
+
currentAVMsg: AnyObject;
|
142
|
+
currentGroupUser: AnyObject[];
|
143
|
+
showMultipleVideo: boolean;
|
144
|
+
};
|
101
145
|
setCurrentSessionItem: (item: AnyObject) => void;
|
102
146
|
listRef: import("vue").Ref<any>;
|
103
147
|
keyword: import("vue").Ref<string>;
|
@@ -157,11 +201,16 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
157
201
|
type: import("vue").PropType<AnyObject[]>;
|
158
202
|
default: () => never[];
|
159
203
|
};
|
204
|
+
disabled: {
|
205
|
+
type: BooleanConstructor;
|
206
|
+
default: boolean;
|
207
|
+
};
|
160
208
|
}>> & {
|
161
209
|
onComfirm?: ((...args: any[]) => any) | undefined;
|
162
210
|
}, {
|
163
211
|
title: string;
|
164
212
|
defaultValue: AnyObject[];
|
213
|
+
disabled: boolean;
|
165
214
|
mode: string;
|
166
215
|
disabledIds: string[];
|
167
216
|
}>;
|
@@ -1 +1 @@
|
|
1
|
-
import{
|
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 r,unref as d,vShow as c,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"},re={class:"btn"},de=e("span",null,(null==(z=window.getLanguageByCode)?void 0:z.call(window,"10010.1.113"))||"拒接",-1),ce={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"},r(d(Ve)),513),[[c,Ae.value]]),u(d(h),{quaternary:"",circle:"",color:"#ffffffcc",onClick:xe},{icon:m((()=>[u(d(y),{component:d(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":d(H).userInfo.name},null,8,q),e("div",G,[e("div",F,[e("div",J,[u(d(h),{text:"",color:d(N)?"#fff":"#000",onClick:d(we)},{icon:m((()=>[u(d(y),{component:d(N)?d(b):d(A)},null,8,["component"])])),_:1},8,["color","onClick"]),K]),e("div",Q,[u(d(h),{text:"",color:d(ke)?"#fff":"#000",disabled:d(me),onClick:d(ye)},{icon:m((()=>[u(d(y),{component:d(ke)?d(C):d(V)},null,8,["component"])])),_:1},8,["color","disabled","onClick"]),W]),e("div",{class:"btn",onClick:xe},[u(d(h),{circle:"",color:"#f17568",class:"btn--rotate"},{icon:m((()=>[u(d(y),{component:d(M)},null,8,["component"])])),_:1}),X]),u(k,{onComfirm:Me},{trigger:m((()=>[e("div",Z,[u(d(h),{text:"",color:"#fff"},{icon:m((()=>[u(d(y),{component:d(_)},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,r(d(Ce))+((null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.108"))||"发起的")+r(d(fe))+((null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.109"))||"会议"),1),d(pe)?g("v-if",!0):(i(),a("span",ie,((null==(f=window.getLanguageByCode)?void 0:f.call(window,"10010.1.110"))||"邀请你加入")+r(d(fe))+((null==(L=window.getLanguageByCode)?void 0:L.call(window,"10010.1.109"))||"会议"),1))]),d(pe)?(i(),a("div",ae,[u(k,{onComfirm:Me,disabledIds:d(H).currentAVMsg.checkedIds},{trigger:m((()=>[u(d(h),{size:"large",circle:"",color:"#000"},{icon:m((()=>[u(d(y),{component:d(_)},null,8,["component"])])),_:1})])),_:1},8,["disabledIds"]),e("p",null,((null==(x=window.getLanguageByCode)?void 0:x.call(window,"10010.1.111"))||"已邀请共")+r(d(H).currentAVMsg.checkedIds.length)+((null==(R=window.getLanguageByCode)?void 0:R.call(window,"10010.1.40"))||"人"),1),u(d(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">\r\n\t\t\t\t\t\t<n-button color="#000" round>\r\n\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t<n-icon :component="Mic" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</n-button>\r\n\t\t\t\t\t\t<n-button color="#000" round>\r\n\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t<n-icon :component="Videocam" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</n-button>\r\n\t\t\t\t\t</div> ')])):(i(),a("div",se,[e("div",re,[u(d(h),{circle:"",color:"#f17568",class:"btn--rotate",onClick:t[0]||(t[0]=()=>d(H).showMultipleVideo=!1)},{icon:m((()=>[u(d(y),{size:"30",component:d(M)},null,8,["component"])])),_:1}),de]),e("div",ce,[u(d(h),{circle:"",color:"#2ac98b",onClick:Le},{icon:m((()=>[u(d(y),{size:"30",component:d(M)},null,8,["component"])])),_:1}),ue])]))],64))])}}});export{me as default};
|
@@ -23,7 +23,25 @@ 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:
|
26
|
+
state: {
|
27
|
+
orgId: string | number;
|
28
|
+
currentSessionItem: AnyObject;
|
29
|
+
id: string;
|
30
|
+
userInfo: AnyObject;
|
31
|
+
msgList: AnyObject[];
|
32
|
+
currentMsg: AnyObject;
|
33
|
+
isAppendMsg: boolean;
|
34
|
+
sessionList: AnyObject[];
|
35
|
+
isChangeSession: boolean;
|
36
|
+
updateSessionItem: AnyObject;
|
37
|
+
isUpdateSession: boolean;
|
38
|
+
currentReferenceMsg: AnyObject | null;
|
39
|
+
currentReEditMsg: AnyObject | null;
|
40
|
+
showVideo: boolean;
|
41
|
+
currentAVMsg: AnyObject;
|
42
|
+
currentGroupUser: AnyObject[];
|
43
|
+
showMultipleVideo: boolean;
|
44
|
+
};
|
27
45
|
openSession: (item: AnyObject) => Promise<void>;
|
28
46
|
showUserDetail: import("vue").Ref<boolean>;
|
29
47
|
showLargeAvatar: import("vue").Ref<boolean>;
|