cnhis-design-vue 3.3.1-beta.1 → 3.3.1-beta.3
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/index.d.ts +147 -17
- package/es/components/ai-chat/src/Index.vue.d.ts +147 -17
- package/es/components/ai-chat/src/Index.vue2.js +1 -1
- package/es/components/ai-chat/src/api/index.d.ts +6 -0
- package/es/components/ai-chat/src/api/index.js +1 -0
- package/es/components/ai-chat/src/components/ChatAudio.vue.d.ts +44 -0
- package/es/components/ai-chat/src/components/ChatAudio.vue.js +1 -0
- package/es/components/ai-chat/src/components/ChatAudio.vue2.js +1 -0
- package/es/components/ai-chat/src/components/ChatCard.js +1 -1
- package/es/components/ai-chat/src/components/ChatFooter.vue.d.ts +55 -2
- package/es/components/ai-chat/src/components/ChatFooter.vue2.js +1 -1
- package/es/components/ai-chat/src/components/ChatMain.d.ts +1 -7
- package/es/components/ai-chat/src/components/ChatMain.js +1 -1
- package/es/components/ai-chat/src/components/ChatMainInner.d.ts +2 -0
- package/es/components/ai-chat/src/components/ChatMainInner.js +1 -0
- package/es/components/ai-chat/src/components/ChatRight.vue.d.ts +56 -0
- package/es/components/ai-chat/src/components/ChatRight.vue.js +1 -0
- package/es/components/ai-chat/src/components/ChatRight.vue2.js +1 -0
- package/es/components/ai-chat/src/components/card/JsonCard.d.ts +25 -0
- package/es/components/ai-chat/src/components/card/JsonCard.js +1 -0
- package/es/components/ai-chat/src/components/card/SelectIcon.d.ts +14 -0
- package/es/components/ai-chat/src/components/card/SelectIcon.js +1 -0
- package/es/components/ai-chat/src/hooks/useProgram.d.ts +6 -0
- package/es/components/ai-chat/src/hooks/useProgram.js +1 -0
- package/es/components/ai-chat/src/hooks/useWebsocket.d.ts +2 -0
- package/es/components/ai-chat/src/hooks/useWebsocket.js +1 -0
- package/es/components/ai-chat/src/utils/index.d.ts +1 -0
- package/es/components/ai-chat/src/utils/index.js +1 -1
- package/es/components/ai-chat/style/index.css +1 -1
- package/es/components/audio-sdk/src/audioSDK.d.ts +6 -7
- package/es/components/audio-sdk/src/audioSDK.js +1 -1
- package/es/components/audio-sdk/src/utils/recordingModal.d.ts +2 -1
- package/es/components/audio-sdk/src/utils/recordingModal.js +1 -1
- package/es/components/callback/src/components/render/popupMaps.d.ts +1 -7
- package/es/components/date-picker/src/DatePicker.vue2.js +1 -1
- package/es/components/editor/src/Editor.js +1 -1
- package/es/components/editor/style/index.css +1 -0
- package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
- package/es/components/field-editor/index.d.ts +1 -7
- package/es/components/field-editor/src/FieldEditor.vue.d.ts +1 -7
- package/es/components/form-config/index.d.ts +3 -33
- package/es/components/form-config/src/FormConfig.vue.d.ts +4 -34
- package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +1 -7
- package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +1 -13
- package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +1 -7
- package/es/components/form-render/index.d.ts +1 -7
- package/es/components/form-render/index.js +1 -1
- package/es/components/form-render/src/FormRender.vue.d.ts +1 -7
- package/es/components/form-render/src/FormRender.vue2.js +1 -1
- package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +1 -7
- package/es/components/form-render/src/components/renderer/date.d.ts +0 -2
- package/es/components/form-render/src/components/renderer/date.js +1 -1
- package/es/components/form-render/src/components/renderer/input.d.ts +0 -5
- package/es/components/form-render/src/components/renderer/input.js +1 -1
- package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +0 -2
- package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +0 -2
- package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
- package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +0 -4
- package/es/components/form-render/src/types/index.d.ts +0 -2
- package/es/components/form-render/src/utils/index.d.ts +0 -1
- package/es/components/form-render/src/utils/index.js +1 -1
- package/es/components/form-render/style/index.css +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.d.ts +0 -7
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.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/selectRendererPlugin/selectUtils.d.ts +2 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/widgets/checkRendererPlugin.js +1 -1
- package/es/components/iho-table/src/types/index.d.ts +0 -1
- package/es/components/index.css +1 -1
- package/es/components/index.js +1 -1
- package/es/components/info-header/index.d.ts +2 -24
- package/es/components/info-header/src/InfoHeader.vue.d.ts +2 -24
- package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +0 -2
- package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +0 -2
- package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +1 -9
- package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +1 -7
- package/es/components/shortcut-setter/index.d.ts +1 -7
- package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +1 -7
- package/es/shared/assets/img/file-emr.png.js +1 -0
- package/es/shared/assets/img/file.png.js +1 -0
- package/es/shared/assets/img/use.png.js +1 -0
- package/es/shared/package.json.js +1 -1
- package/package.json +2 -2
- package/es/shared/components/DateIcon/DateIcon.vue.js +0 -1
- package/es/shared/components/DateIcon/index.d.ts +0 -2
- package/es/shared/components/DateIcon/index.js +0 -1
@@ -15,17 +15,16 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
15
15
|
};
|
16
16
|
queryData: {
|
17
17
|
type: import("vue").PropType<import("./src/types").QueryData>;
|
18
|
-
reuired: boolean;
|
19
18
|
};
|
20
19
|
queryRecord: {
|
21
20
|
type: import("vue").PropType<import("./src/types").QueryRecord>;
|
22
|
-
reuired: boolean;
|
23
21
|
};
|
24
22
|
hideInput: {
|
25
23
|
type: BooleanConstructor;
|
26
24
|
};
|
27
25
|
uiStyle: {
|
28
26
|
type: StringConstructor;
|
27
|
+
default: string;
|
29
28
|
};
|
30
29
|
audioTimed: {
|
31
30
|
type: NumberConstructor;
|
@@ -49,6 +48,16 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
49
48
|
appId: {
|
50
49
|
type: StringConstructor;
|
51
50
|
};
|
51
|
+
orgId: {
|
52
|
+
type: StringConstructor;
|
53
|
+
};
|
54
|
+
userId: {
|
55
|
+
type: StringConstructor;
|
56
|
+
};
|
57
|
+
immediatelyRecording: {
|
58
|
+
type: BooleanConstructor;
|
59
|
+
default: boolean;
|
60
|
+
};
|
52
61
|
}, {
|
53
62
|
cssVars: import("vue").ComputedRef<import("../../shared/types").AnyObject>;
|
54
63
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
@@ -67,17 +76,16 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
67
76
|
};
|
68
77
|
queryData: {
|
69
78
|
type: import("vue").PropType<import("./src/types").QueryData>;
|
70
|
-
reuired: boolean;
|
71
79
|
};
|
72
80
|
queryRecord: {
|
73
81
|
type: import("vue").PropType<import("./src/types").QueryRecord>;
|
74
|
-
reuired: boolean;
|
75
82
|
};
|
76
83
|
hideInput: {
|
77
84
|
type: BooleanConstructor;
|
78
85
|
};
|
79
86
|
uiStyle: {
|
80
87
|
type: StringConstructor;
|
88
|
+
default: string;
|
81
89
|
};
|
82
90
|
audioTimed: {
|
83
91
|
type: NumberConstructor;
|
@@ -101,21 +109,30 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
101
109
|
appId: {
|
102
110
|
type: StringConstructor;
|
103
111
|
};
|
112
|
+
orgId: {
|
113
|
+
type: StringConstructor;
|
114
|
+
};
|
115
|
+
userId: {
|
116
|
+
type: StringConstructor;
|
117
|
+
};
|
118
|
+
immediatelyRecording: {
|
119
|
+
type: BooleanConstructor;
|
120
|
+
default: boolean;
|
121
|
+
};
|
104
122
|
}>> & {
|
105
123
|
"onButton-click"?: ((...args: any[]) => any) | undefined;
|
106
124
|
}>>;
|
107
|
-
axiosInstance: import("axios").AxiosInstance;
|
108
125
|
emit: (event: "button-click", ...args: any[]) => void;
|
126
|
+
showSmallStyle: import("vue").ComputedRef<boolean>;
|
109
127
|
state: import("../../shared/types").AnyObject;
|
110
|
-
|
111
|
-
ChatMain: import("vue").DefineComponent<Readonly<import("vue").ComponentPropsOptions<{
|
112
|
-
[x: string]: unknown;
|
113
|
-
}>>, () => JSX.Element[], unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, never[], never, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<readonly string[] | import("vue").ExtractPropTypes<Readonly<import("vue").ComponentObjectPropsOptions<{
|
114
|
-
[x: string]: unknown;
|
115
|
-
}>>>> & {}, {
|
116
|
-
readonly [x: number]: string;
|
117
|
-
} | {}>;
|
128
|
+
ChatMain: import("vue").DefineComponent<{}, () => JSX.Element[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
118
129
|
ChatFooter: import("vue").DefineComponent<{}, {
|
130
|
+
innerDefaultShortcutList: {
|
131
|
+
key: string;
|
132
|
+
value: string;
|
133
|
+
}[];
|
134
|
+
programMethod: (bpmnProcessId: string, params: import("../../shared/types").AnyObject) => Promise<any>;
|
135
|
+
MedicalOrderId: string;
|
119
136
|
cssVars: import("vue").ComputedRef<import("../../shared/types").AnyObject>;
|
120
137
|
audioSdk: import("..").CAudioSDK;
|
121
138
|
emit: (event: string, ...args: any[]) => void;
|
@@ -124,6 +141,8 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
124
141
|
isSmall: any;
|
125
142
|
audioTimed: any;
|
126
143
|
commandList: any;
|
144
|
+
isInner: any;
|
145
|
+
patientInfo: any;
|
127
146
|
inputRef: import("vue").Ref<any>;
|
128
147
|
showPopover: import("vue").Ref<boolean>;
|
129
148
|
breadcrumb: import("vue").Ref<{
|
@@ -143,13 +162,16 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
143
162
|
showPrompt: import("vue").Ref<boolean>;
|
144
163
|
currentShortcutId: import("vue").Ref<string>;
|
145
164
|
showPatient: import("vue").Ref<boolean>;
|
146
|
-
|
165
|
+
showAudio: import("vue").Ref<boolean>;
|
166
|
+
placeholder: import("vue").ComputedRef<"请向我提问,Shift+Enter换行" | "请向我提问或输入\"/\"查看指令" | "请向我提问或输入\"/\"查看指令,Shift+Enter换行">;
|
147
167
|
btnDisabled: import("vue").ComputedRef<any>;
|
148
168
|
showMagicWand: import("vue").ComputedRef<boolean>;
|
149
169
|
patient: import("vue").ComputedRef<string>;
|
170
|
+
currentShortcutList: import("vue").ComputedRef<any>;
|
171
|
+
isAllDisabled: import("vue").ComputedRef<any>;
|
150
172
|
recorderStart: () => Promise<void>;
|
151
173
|
getShortcutName: (item: string | import("../../shared/types").AnyObject) => any;
|
152
|
-
handleShortcut: (item: string | import("../../shared/types").AnyObject) => void
|
174
|
+
handleShortcut: (item: string | import("../../shared/types").AnyObject) => Promise<void>;
|
153
175
|
resetCurrentCommand: () => void;
|
154
176
|
handleKeyDown: (event: KeyboardEvent) => void;
|
155
177
|
isWrap: (event: KeyboardEvent) => boolean;
|
@@ -269,6 +291,103 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
269
291
|
}, {
|
270
292
|
show: boolean;
|
271
293
|
}>;
|
294
|
+
ChatAudio: import("vue").DefineComponent<{
|
295
|
+
show: {
|
296
|
+
type: BooleanConstructor;
|
297
|
+
};
|
298
|
+
}, {
|
299
|
+
audioSdk: import("..").CAudioSDK;
|
300
|
+
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
301
|
+
show: {
|
302
|
+
type: BooleanConstructor;
|
303
|
+
};
|
304
|
+
}>> & {
|
305
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
306
|
+
}>>;
|
307
|
+
emit: (event: "update:show", ...args: any[]) => void;
|
308
|
+
state: any;
|
309
|
+
vaa07: any;
|
310
|
+
immediatelyRecording: any;
|
311
|
+
time: import("vue").Ref<number>;
|
312
|
+
endType: string;
|
313
|
+
pause: import("@vueuse/shared").Fn;
|
314
|
+
resume: import("@vueuse/shared").Fn;
|
315
|
+
isActive: import("vue").Ref<boolean>;
|
316
|
+
tip: import("vue").ComputedRef<"正在录音中..." | "录音已暂停">;
|
317
|
+
formattedTime: import("vue").ComputedRef<string>;
|
318
|
+
checkEnvironment: () => boolean;
|
319
|
+
start: () => Promise<void>;
|
320
|
+
handlePause: () => void;
|
321
|
+
handlePlay: () => void;
|
322
|
+
handleEnd: (trigger?: string | undefined) => Promise<void>;
|
323
|
+
NSpace: any;
|
324
|
+
NButton: any;
|
325
|
+
NIcon: any;
|
326
|
+
StopCircleOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
327
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:show"[], "update:show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
328
|
+
show: {
|
329
|
+
type: BooleanConstructor;
|
330
|
+
};
|
331
|
+
}>> & {
|
332
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
333
|
+
}, {
|
334
|
+
show: boolean;
|
335
|
+
}>;
|
336
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
337
|
+
ChatMainInner: import("vue").DefineComponent<{}, () => JSX.Element[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
338
|
+
ChatRight: import("vue").DefineComponent<{}, {
|
339
|
+
medicalLabel: {
|
340
|
+
key: string;
|
341
|
+
title: string;
|
342
|
+
}[];
|
343
|
+
state: any;
|
344
|
+
patientInfo: any;
|
345
|
+
toolbarConfig: {
|
346
|
+
toolbarKeys: never[];
|
347
|
+
};
|
348
|
+
content: import("vue").Ref<string>;
|
349
|
+
key: import("vue").Ref<string>;
|
350
|
+
handleSave: () => Promise<void>;
|
351
|
+
createMedicalRecord: () => void;
|
352
|
+
extractContentByTitle: () => import("../../shared/types").AnyObject;
|
353
|
+
NIcon: any;
|
354
|
+
NSpace: any;
|
355
|
+
NButton: any;
|
356
|
+
Editor: SFCWithInstall<import("vue").DefineComponent<{
|
357
|
+
editorConfig: {
|
358
|
+
type: ObjectConstructor;
|
359
|
+
};
|
360
|
+
toolbarConfig: {
|
361
|
+
type: ObjectConstructor;
|
362
|
+
};
|
363
|
+
uploadImgUrl: {
|
364
|
+
type: StringConstructor;
|
365
|
+
};
|
366
|
+
isDisabled: {
|
367
|
+
type: BooleanConstructor;
|
368
|
+
default: boolean;
|
369
|
+
};
|
370
|
+
}, {
|
371
|
+
editorRef: import("vue").ShallowRef<any>;
|
372
|
+
renderVN: () => JSX.Element;
|
373
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, never[], never, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
374
|
+
editorConfig: {
|
375
|
+
type: ObjectConstructor;
|
376
|
+
};
|
377
|
+
toolbarConfig: {
|
378
|
+
type: ObjectConstructor;
|
379
|
+
};
|
380
|
+
uploadImgUrl: {
|
381
|
+
type: StringConstructor;
|
382
|
+
};
|
383
|
+
isDisabled: {
|
384
|
+
type: BooleanConstructor;
|
385
|
+
default: boolean;
|
386
|
+
};
|
387
|
+
}>> & {}, {
|
388
|
+
isDisabled: boolean;
|
389
|
+
}>>;
|
390
|
+
CloseOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
272
391
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
273
392
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "button-click"[], "button-click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
274
393
|
token: {
|
@@ -286,17 +405,16 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
286
405
|
};
|
287
406
|
queryData: {
|
288
407
|
type: import("vue").PropType<import("./src/types").QueryData>;
|
289
|
-
reuired: boolean;
|
290
408
|
};
|
291
409
|
queryRecord: {
|
292
410
|
type: import("vue").PropType<import("./src/types").QueryRecord>;
|
293
|
-
reuired: boolean;
|
294
411
|
};
|
295
412
|
hideInput: {
|
296
413
|
type: BooleanConstructor;
|
297
414
|
};
|
298
415
|
uiStyle: {
|
299
416
|
type: StringConstructor;
|
417
|
+
default: string;
|
300
418
|
};
|
301
419
|
audioTimed: {
|
302
420
|
type: NumberConstructor;
|
@@ -320,10 +438,22 @@ declare const AiChat: SFCWithInstall<import("vue").DefineComponent<{
|
|
320
438
|
appId: {
|
321
439
|
type: StringConstructor;
|
322
440
|
};
|
441
|
+
orgId: {
|
442
|
+
type: StringConstructor;
|
443
|
+
};
|
444
|
+
userId: {
|
445
|
+
type: StringConstructor;
|
446
|
+
};
|
447
|
+
immediatelyRecording: {
|
448
|
+
type: BooleanConstructor;
|
449
|
+
default: boolean;
|
450
|
+
};
|
323
451
|
}>> & {
|
324
452
|
"onButton-click"?: ((...args: any[]) => any) | undefined;
|
325
453
|
}, {
|
326
454
|
hideInput: boolean;
|
455
|
+
uiStyle: string;
|
327
456
|
audioTimed: number;
|
457
|
+
immediatelyRecording: boolean;
|
328
458
|
}>>;
|
329
459
|
export default AiChat;
|
@@ -17,17 +17,16 @@ declare const _default: import("vue").DefineComponent<{
|
|
17
17
|
};
|
18
18
|
queryData: {
|
19
19
|
type: PropType<QueryData>;
|
20
|
-
reuired: boolean;
|
21
20
|
};
|
22
21
|
queryRecord: {
|
23
22
|
type: PropType<QueryRecord>;
|
24
|
-
reuired: boolean;
|
25
23
|
};
|
26
24
|
hideInput: {
|
27
25
|
type: BooleanConstructor;
|
28
26
|
};
|
29
27
|
uiStyle: {
|
30
28
|
type: StringConstructor;
|
29
|
+
default: string;
|
31
30
|
};
|
32
31
|
audioTimed: {
|
33
32
|
type: NumberConstructor;
|
@@ -51,6 +50,16 @@ declare const _default: import("vue").DefineComponent<{
|
|
51
50
|
appId: {
|
52
51
|
type: StringConstructor;
|
53
52
|
};
|
53
|
+
orgId: {
|
54
|
+
type: StringConstructor;
|
55
|
+
};
|
56
|
+
userId: {
|
57
|
+
type: StringConstructor;
|
58
|
+
};
|
59
|
+
immediatelyRecording: {
|
60
|
+
type: BooleanConstructor;
|
61
|
+
default: boolean;
|
62
|
+
};
|
54
63
|
}, {
|
55
64
|
cssVars: import("vue").ComputedRef<AnyObject>;
|
56
65
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
@@ -69,17 +78,16 @@ declare const _default: import("vue").DefineComponent<{
|
|
69
78
|
};
|
70
79
|
queryData: {
|
71
80
|
type: PropType<QueryData>;
|
72
|
-
reuired: boolean;
|
73
81
|
};
|
74
82
|
queryRecord: {
|
75
83
|
type: PropType<QueryRecord>;
|
76
|
-
reuired: boolean;
|
77
84
|
};
|
78
85
|
hideInput: {
|
79
86
|
type: BooleanConstructor;
|
80
87
|
};
|
81
88
|
uiStyle: {
|
82
89
|
type: StringConstructor;
|
90
|
+
default: string;
|
83
91
|
};
|
84
92
|
audioTimed: {
|
85
93
|
type: NumberConstructor;
|
@@ -103,21 +111,30 @@ declare const _default: import("vue").DefineComponent<{
|
|
103
111
|
appId: {
|
104
112
|
type: StringConstructor;
|
105
113
|
};
|
114
|
+
orgId: {
|
115
|
+
type: StringConstructor;
|
116
|
+
};
|
117
|
+
userId: {
|
118
|
+
type: StringConstructor;
|
119
|
+
};
|
120
|
+
immediatelyRecording: {
|
121
|
+
type: BooleanConstructor;
|
122
|
+
default: boolean;
|
123
|
+
};
|
106
124
|
}>> & {
|
107
125
|
"onButton-click"?: ((...args: any[]) => any) | undefined;
|
108
126
|
}>>;
|
109
|
-
axiosInstance: import("axios").AxiosInstance;
|
110
127
|
emit: (event: "button-click", ...args: any[]) => void;
|
128
|
+
showSmallStyle: import("vue").ComputedRef<boolean>;
|
111
129
|
state: AnyObject;
|
112
|
-
|
113
|
-
ChatMain: import("vue").DefineComponent<Readonly<import("vue").ComponentPropsOptions<{
|
114
|
-
[x: string]: unknown;
|
115
|
-
}>>, () => JSX.Element[], unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, never[], never, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<readonly string[] | import("vue").ExtractPropTypes<Readonly<import("vue").ComponentObjectPropsOptions<{
|
116
|
-
[x: string]: unknown;
|
117
|
-
}>>>> & {}, {
|
118
|
-
readonly [x: number]: string;
|
119
|
-
} | {}>;
|
130
|
+
ChatMain: import("vue").DefineComponent<{}, () => JSX.Element[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
120
131
|
ChatFooter: import("vue").DefineComponent<{}, {
|
132
|
+
innerDefaultShortcutList: {
|
133
|
+
key: string;
|
134
|
+
value: string;
|
135
|
+
}[];
|
136
|
+
programMethod: (bpmnProcessId: string, params: AnyObject) => Promise<any>;
|
137
|
+
MedicalOrderId: string;
|
121
138
|
cssVars: import("vue").ComputedRef<AnyObject>;
|
122
139
|
audioSdk: import("../..").CAudioSDK;
|
123
140
|
emit: (event: string, ...args: any[]) => void;
|
@@ -126,6 +143,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
126
143
|
isSmall: any;
|
127
144
|
audioTimed: any;
|
128
145
|
commandList: any;
|
146
|
+
isInner: any;
|
147
|
+
patientInfo: any;
|
129
148
|
inputRef: import("vue").Ref<any>;
|
130
149
|
showPopover: import("vue").Ref<boolean>;
|
131
150
|
breadcrumb: import("vue").Ref<{
|
@@ -145,13 +164,16 @@ declare const _default: import("vue").DefineComponent<{
|
|
145
164
|
showPrompt: import("vue").Ref<boolean>;
|
146
165
|
currentShortcutId: import("vue").Ref<string>;
|
147
166
|
showPatient: import("vue").Ref<boolean>;
|
148
|
-
|
167
|
+
showAudio: import("vue").Ref<boolean>;
|
168
|
+
placeholder: import("vue").ComputedRef<"请向我提问,Shift+Enter换行" | "请向我提问或输入\"/\"查看指令" | "请向我提问或输入\"/\"查看指令,Shift+Enter换行">;
|
149
169
|
btnDisabled: import("vue").ComputedRef<any>;
|
150
170
|
showMagicWand: import("vue").ComputedRef<boolean>;
|
151
171
|
patient: import("vue").ComputedRef<string>;
|
172
|
+
currentShortcutList: import("vue").ComputedRef<any>;
|
173
|
+
isAllDisabled: import("vue").ComputedRef<any>;
|
152
174
|
recorderStart: () => Promise<void>;
|
153
175
|
getShortcutName: (item: string | AnyObject) => any;
|
154
|
-
handleShortcut: (item: string | AnyObject) => void
|
176
|
+
handleShortcut: (item: string | AnyObject) => Promise<void>;
|
155
177
|
resetCurrentCommand: () => void;
|
156
178
|
handleKeyDown: (event: KeyboardEvent) => void;
|
157
179
|
isWrap: (event: KeyboardEvent) => boolean;
|
@@ -271,6 +293,103 @@ declare const _default: import("vue").DefineComponent<{
|
|
271
293
|
}, {
|
272
294
|
show: boolean;
|
273
295
|
}>;
|
296
|
+
ChatAudio: import("vue").DefineComponent<{
|
297
|
+
show: {
|
298
|
+
type: BooleanConstructor;
|
299
|
+
};
|
300
|
+
}, {
|
301
|
+
audioSdk: import("../..").CAudioSDK;
|
302
|
+
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
303
|
+
show: {
|
304
|
+
type: BooleanConstructor;
|
305
|
+
};
|
306
|
+
}>> & {
|
307
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
308
|
+
}>>;
|
309
|
+
emit: (event: "update:show", ...args: any[]) => void;
|
310
|
+
state: any;
|
311
|
+
vaa07: any;
|
312
|
+
immediatelyRecording: any;
|
313
|
+
time: import("vue").Ref<number>;
|
314
|
+
endType: string;
|
315
|
+
pause: import("@vueuse/shared").Fn;
|
316
|
+
resume: import("@vueuse/shared").Fn;
|
317
|
+
isActive: import("vue").Ref<boolean>;
|
318
|
+
tip: import("vue").ComputedRef<"正在录音中..." | "录音已暂停">;
|
319
|
+
formattedTime: import("vue").ComputedRef<string>;
|
320
|
+
checkEnvironment: () => boolean;
|
321
|
+
start: () => Promise<void>;
|
322
|
+
handlePause: () => void;
|
323
|
+
handlePlay: () => void;
|
324
|
+
handleEnd: (trigger?: string | undefined) => Promise<void>;
|
325
|
+
NSpace: any;
|
326
|
+
NButton: any;
|
327
|
+
NIcon: any;
|
328
|
+
StopCircleOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
329
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:show"[], "update:show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
330
|
+
show: {
|
331
|
+
type: BooleanConstructor;
|
332
|
+
};
|
333
|
+
}>> & {
|
334
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
335
|
+
}, {
|
336
|
+
show: boolean;
|
337
|
+
}>;
|
338
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
339
|
+
ChatMainInner: import("vue").DefineComponent<{}, () => JSX.Element[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
340
|
+
ChatRight: import("vue").DefineComponent<{}, {
|
341
|
+
medicalLabel: {
|
342
|
+
key: string;
|
343
|
+
title: string;
|
344
|
+
}[];
|
345
|
+
state: any;
|
346
|
+
patientInfo: any;
|
347
|
+
toolbarConfig: {
|
348
|
+
toolbarKeys: never[];
|
349
|
+
};
|
350
|
+
content: import("vue").Ref<string>;
|
351
|
+
key: import("vue").Ref<string>;
|
352
|
+
handleSave: () => Promise<void>;
|
353
|
+
createMedicalRecord: () => void;
|
354
|
+
extractContentByTitle: () => AnyObject;
|
355
|
+
NIcon: any;
|
356
|
+
NSpace: any;
|
357
|
+
NButton: any;
|
358
|
+
Editor: import("../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
|
359
|
+
editorConfig: {
|
360
|
+
type: ObjectConstructor;
|
361
|
+
};
|
362
|
+
toolbarConfig: {
|
363
|
+
type: ObjectConstructor;
|
364
|
+
};
|
365
|
+
uploadImgUrl: {
|
366
|
+
type: StringConstructor;
|
367
|
+
};
|
368
|
+
isDisabled: {
|
369
|
+
type: BooleanConstructor;
|
370
|
+
default: boolean;
|
371
|
+
};
|
372
|
+
}, {
|
373
|
+
editorRef: import("vue").ShallowRef<any>;
|
374
|
+
renderVN: () => JSX.Element;
|
375
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, never[], never, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
376
|
+
editorConfig: {
|
377
|
+
type: ObjectConstructor;
|
378
|
+
};
|
379
|
+
toolbarConfig: {
|
380
|
+
type: ObjectConstructor;
|
381
|
+
};
|
382
|
+
uploadImgUrl: {
|
383
|
+
type: StringConstructor;
|
384
|
+
};
|
385
|
+
isDisabled: {
|
386
|
+
type: BooleanConstructor;
|
387
|
+
default: boolean;
|
388
|
+
};
|
389
|
+
}>> & {}, {
|
390
|
+
isDisabled: boolean;
|
391
|
+
}>>;
|
392
|
+
CloseOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
274
393
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
275
394
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "button-click"[], "button-click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
276
395
|
token: {
|
@@ -288,17 +407,16 @@ declare const _default: import("vue").DefineComponent<{
|
|
288
407
|
};
|
289
408
|
queryData: {
|
290
409
|
type: PropType<QueryData>;
|
291
|
-
reuired: boolean;
|
292
410
|
};
|
293
411
|
queryRecord: {
|
294
412
|
type: PropType<QueryRecord>;
|
295
|
-
reuired: boolean;
|
296
413
|
};
|
297
414
|
hideInput: {
|
298
415
|
type: BooleanConstructor;
|
299
416
|
};
|
300
417
|
uiStyle: {
|
301
418
|
type: StringConstructor;
|
419
|
+
default: string;
|
302
420
|
};
|
303
421
|
audioTimed: {
|
304
422
|
type: NumberConstructor;
|
@@ -322,10 +440,22 @@ declare const _default: import("vue").DefineComponent<{
|
|
322
440
|
appId: {
|
323
441
|
type: StringConstructor;
|
324
442
|
};
|
443
|
+
orgId: {
|
444
|
+
type: StringConstructor;
|
445
|
+
};
|
446
|
+
userId: {
|
447
|
+
type: StringConstructor;
|
448
|
+
};
|
449
|
+
immediatelyRecording: {
|
450
|
+
type: BooleanConstructor;
|
451
|
+
default: boolean;
|
452
|
+
};
|
325
453
|
}>> & {
|
326
454
|
"onButton-click"?: ((...args: any[]) => any) | undefined;
|
327
455
|
}, {
|
328
456
|
hideInput: boolean;
|
457
|
+
uiStyle: string;
|
329
458
|
audioTimed: number;
|
459
|
+
immediatelyRecording: boolean;
|
330
460
|
}>;
|
331
461
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
import{defineComponent as e,
|
1
|
+
import{defineComponent as e,computed as t,reactive as o,provide as i,toRefs as n,openBlock as r,createElementBlock as a,normalizeStyle as s,unref as l,createElementVNode as u,normalizeClass as d,createBlock as p,createCommentVNode as m}from"vue";import c from"./components/ChatMain.js";import y from"./components/ChatFooter.vue.js";import h from"./components/ChatMainInner.js";import f from"./components/ChatRight.vue.js";import{useTheme as v}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import"lodash-es";import"@vue/shared";import{uuidGenerator as S}from"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import"naive-ui";import"../../../shared/hooks/useScrollLoading.js";import{InjectionAIChat as g,InjectionAIChatEmits as k}from"./types/index.js";import{instanceAxios as j}from"./api/index.js";import{useWebsocket as I}from"./hooks/useWebsocket.js";const x=["id"];var C=e({__name:"Index",props:{token:{type:String,required:!0},userAvatar:{type:String},defaultShortcutList:{type:Array},shortcutList:{type:Array},queryData:{type:Function},queryRecord:{type:Function},hideInput:{type:Boolean},uiStyle:{type:String,default:"big"},audioTimed:{type:Number,default:10},commandList:{type:Array},queryPrompt:{type:Function},patientInfo:{type:Object},appId:{type:String},orgId:{type:String},userId:{type:String},immediatelyRecording:{type:Boolean,default:!1}},emits:["button-click"],setup(e,{expose:C,emit:P}){const _=e,b=v();j.defaults.headers.Authorization="bearer "+_.token,"inner"!==_.uiStyle&&(j.defaults.timeout=5e3,j.interceptors.response.use((e=>{var t;return(null==(t=e.data)?void 0:t.success)?e.data:{success:!1,data:[]}})));const A=t((()=>["small","inner"].includes(_.uiStyle))),F=o({id:"ai-chat-doctor-"+S(),loading:!1,loadingText:"",sending:!1,sendContent:"",selectedCommand:null,selectedPrompt:null,externalData:null,selectedPatient:null,selectedPatientLabel:"",selectedPatientForm:null,showPatient:!1,showRight:!1,consultationContent:null,params:{},reportContent:null,refreshMedical:!1});return i(g,{...n(_),state:F,isSmall:t((()=>"small"===_.uiStyle)),isInner:t((()=>"inner"===_.uiStyle)),vaa07:t((()=>{var e,t;return null==(t=null==(e=_.patientInfo)?void 0:e.info)?void 0:t.vaa07}))}),i(k,P),"inner"===_.uiStyle&&I(_,F),C({pushMessage:e=>{F.externalData=e},updatePatientInfo:e=>{F.selectedPatient=e}}),(t,o)=>(r(),a("div",{class:"ai-chat-doctor",style:s(l(b))},[u("div",{id:F.id,class:d(["ai-chat-doctor__main",l(A)?"ai-chat-doctor__main--small":"","inner"===e.uiStyle?"ai-chat-doctor__main--inner":""])},["inner"===e.uiStyle?(r(),p(l(h),{key:0})):(r(),p(l(c),{key:1})),e.hideInput?m("v-if",!0):(r(),p(y,{key:2}))],10,x),"inner"===e.uiStyle?(r(),p(f,{key:0})):m("v-if",!0)],4))}});export{C as default};
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { AnyObject } from '../../../../shared/types';
|
2
|
+
export declare const instanceAxios: import("axios").AxiosInstance;
|
3
|
+
export declare function uploadFileApi(params: FormData): import("axios").AxiosPromise<any>;
|
4
|
+
export declare function conversationApi(params: AnyObject): import("axios").AxiosPromise<any>;
|
5
|
+
export declare function saveApi(params: AnyObject): import("axios").AxiosPromise<any>;
|
6
|
+
export declare function getHistoryRecordApi(params: AnyObject): import("axios").AxiosPromise<any>;
|
@@ -0,0 +1 @@
|
|
1
|
+
import e from"axios";import{$message as t}from"../utils/index.js";const r=e.create({withCredentials:!0,timeout:1e4});function o(e){return r({headers:{"Content-Type":"multipart/form-data"},method:"post",url:"/storage-service/storage/uploadFile",data:e})}function a(e){return r({method:"post",url:"/flow/api/opd/conversation",data:e})}function s(e){return r({method:"put",url:"/flow/api/opd/message",data:e})}function i(e){return r({method:"get",url:`/flow/api/dialog/${e.sessionId}/messages`,params:{page:e.page||1,pageSize:e.pageSize||20}})}r.interceptors.request.use((e=>{var t;if(null==(t=e.url)?void 0:t.includes("/conversation")){const t={...e};return delete t.timeout,t}return e})),r.interceptors.response.use((e=>{var r,o,a;if(null==(r=e.data)?void 0:r.success)return null==(o=e.data)?void 0:o.data;500==(null==(a=e.data)?void 0:a.code)&&e.data.msg&&t.error(e.data.msg)}));export{a as conversationApi,i as getHistoryRecordApi,r as instanceAxios,s as saveApi,o as uploadFileApi};
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import { CAudioSDK } from '../../../../components/audio-sdk';
|
2
|
+
declare const _default: import("vue").DefineComponent<{
|
3
|
+
show: {
|
4
|
+
type: BooleanConstructor;
|
5
|
+
};
|
6
|
+
}, {
|
7
|
+
audioSdk: CAudioSDK;
|
8
|
+
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
9
|
+
show: {
|
10
|
+
type: BooleanConstructor;
|
11
|
+
};
|
12
|
+
}>> & {
|
13
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
14
|
+
}>>;
|
15
|
+
emit: (event: "update:show", ...args: any[]) => void;
|
16
|
+
state: any;
|
17
|
+
vaa07: any;
|
18
|
+
immediatelyRecording: any;
|
19
|
+
time: import("vue").Ref<number>;
|
20
|
+
endType: string;
|
21
|
+
pause: import("@vueuse/shared").Fn;
|
22
|
+
resume: import("@vueuse/shared").Fn;
|
23
|
+
isActive: import("vue").Ref<boolean>;
|
24
|
+
tip: import("vue").ComputedRef<"正在录音中..." | "录音已暂停">;
|
25
|
+
formattedTime: import("vue").ComputedRef<string>;
|
26
|
+
checkEnvironment: () => boolean;
|
27
|
+
start: () => Promise<void>;
|
28
|
+
handlePause: () => void;
|
29
|
+
handlePlay: () => void;
|
30
|
+
handleEnd: (trigger?: string) => Promise<void>;
|
31
|
+
NSpace: any;
|
32
|
+
NButton: any;
|
33
|
+
NIcon: any;
|
34
|
+
StopCircleOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
35
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:show"[], "update:show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
36
|
+
show: {
|
37
|
+
type: BooleanConstructor;
|
38
|
+
};
|
39
|
+
}>> & {
|
40
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
41
|
+
}, {
|
42
|
+
show: boolean;
|
43
|
+
}>;
|
44
|
+
export default _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
import e from"./ChatAudio.vue2.js";import r from"../../../../_virtual/_plugin-vue_export-helper.js";var o=r(e,[["__file","ChatAudio.vue"]]);export{o as default};
|
@@ -0,0 +1 @@
|
|
1
|
+
import{defineComponent as o,inject as e,ref as t,computed as i,watch as a,onBeforeUnmount as n,withDirectives as r,openBlock as s,createElementBlock as l,unref as u,createBlock as d,createCommentVNode as c,createElementVNode as p,toDisplayString as m,normalizeStyle as f,createVNode as v,withCtx as w,createTextVNode as h,vShow as g}from"vue";import{NIcon as y,NSpace as _,NButton as F}from"naive-ui";import{StopCircleOutline as S}from"@vicons/ionicons5";import{InjectionAIChat as k}from"../types/index.js";import{useIntervalFn as x,promiseTimeout as C}from"@vueuse/core";import $ from"../../../audio-sdk/src/audioSDK.js";import{uploadFileApi as j}from"../api/index.js";import{uuidGenerator as M}from"../../../../shared/utils/index.js";import{$message as z}from"../utils/index.js";const A={class:"ai-chat-doctor__audio"};var I=o({__name:"ChatAudio",props:{show:{type:Boolean}},emits:["update:show"],setup(o,{emit:I}){const B=o,D=$.create(),{state:T,vaa07:b,immediatelyRecording:q}=e(k),K=t(0);let L="";const{pause:N,resume:O,isActive:R}=x((()=>{K.value++}),1e3,{immediate:!1}),U=i((()=>R.value?"正在录音中...":"录音已暂停")),E=i((()=>{const o=Math.floor(K.value/3600),e=Math.floor(K.value%3600/60),t=K.value%60,i=e.toString().padStart(2,"0"),a=t.toString().padStart(2,"0");if(o>0){return`${o.toString().padStart(2,"0")}:${i}:${a}`}return`${i}:${a}`}));async function G(){try{if((null==(o=null==navigator?void 0:navigator.userAgent)?void 0:o.includes("Chrome"))&&!(null==window?void 0:window.isSecureContext)&&(I("update:show",!1),z.warning("当前使用的http协议默认不支持麦克风权限,需要用户开启浏览器麦克风权限"),1))return;const e=await D.start(void 0,{timed:1800,recognizable:!1,showModal:!1});if(I("update:show",!1),"click"!==L)return;const{result:t,data:i}=e||{};if("success"!==t)return;if(i){const o=new File([i],`${M()}.mp3`,{type:i.type}),e=new FormData;e.append("file",o),e.append("channelId","MINIO");const t=await j(e),a=(null==t?void 0:t.path)||"";console.log("音频地址 ==>",a),T.params={audioUrl:a,opType:"create_inquiry"},T.sending=!0,T.loading=!0,T.loadingText="系统正在对您的对话内容进行梳理整合,转化为规范的结构化问诊记录"}}catch(o){console.log(o),I("update:show",!1),"fail"===(null==o?void 0:o.result)&&o.msg&&z.warning(o.msg)}var o}function H(){N(),D.pause()}function J(){O(),D.resume()}async function P(o){L=o||"",null==D||D.stop(),I("update:show",!1)}return a((()=>B.show),(o=>{o?(L="",K.value=0,O(),G()):N()}),{immediate:!0}),a((()=>b.value),(async o=>{const e=B.show;B.show&&P(),q.value&&(e&&await C(10),I("update:show",!0))}),{immediate:!0}),n((()=>{$.destroy()})),(e,t)=>r((s(),l("div",A,[u(R)?c("v-if",!0):(s(),d(u(y),{key:0,size:"42",color:"#FF1818",component:u(S)},null,8,["component"])),p("p",null,m(u(U)),1),p("h3",{style:f(u(R)?"":"color: #FF1818")},m(u(E)),5),v(u(_),{"wrap-item":!1,size:15},{default:w((()=>[r(v(u(F),{round:"",onClick:H},{default:w((()=>[h("暂停")])),_:1},512),[[g,u(R)]]),r(v(u(F),{round:"",onClick:J},{default:w((()=>[h("继续")])),_:1},512),[[g,!u(R)]]),v(u(F),{round:"",color:"#FF1818",onClick:t[0]||(t[0]=()=>P("click"))},{default:w((()=>{var o;return[h((null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.77"))||"结束")]})),_:1})])),_:1})],512)),[[g,o.show]])}});export{I as default};
|