cnhis-design-vue 3.3.1-release.4 → 3.3.2-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/README.md +87 -87
  2. package/es/components/audio-sdk/index.d.ts +57 -6
  3. package/es/components/audio-sdk/index.js +1 -0
  4. package/es/components/audio-sdk/src/Index.vue.d.ts +55 -6
  5. package/es/components/audio-sdk/src/Index.vue2.js +12 -4
  6. package/es/components/audio-sdk/src/audioSDK.d.ts +4 -4
  7. package/es/components/audio-sdk/src/audioSDK.js +23 -9
  8. package/es/components/audio-sdk/src/components/recording-modal.vue.d.ts +27 -3
  9. package/es/components/audio-sdk/src/components/recording.vue.d.ts +27 -3
  10. package/es/components/audio-sdk/src/components/recording.vue2.js +14 -6
  11. package/es/components/audio-sdk/src/constants/index.d.ts +1 -0
  12. package/es/components/audio-sdk/src/constants/index.js +3 -0
  13. package/es/components/audio-sdk/src/utils/recorder/fft.d.ts +4 -0
  14. package/es/components/audio-sdk/src/utils/recorder/fft.js +75 -0
  15. package/es/components/audio-sdk/src/utils/recorder/index.d.ts +3 -0
  16. package/es/components/audio-sdk/src/utils/recorder/index.js +12 -0
  17. package/es/components/audio-sdk/src/utils/recorder/mp3-engine.d.ts +4 -0
  18. package/es/components/audio-sdk/src/utils/recorder/mp3-engine.js +12435 -0
  19. package/es/components/audio-sdk/src/utils/recorder/mp3.d.ts +4 -0
  20. package/es/components/audio-sdk/src/utils/recorder/mp3.js +343 -0
  21. package/es/components/audio-sdk/src/utils/recorder/recorder.d.ts +4 -0
  22. package/es/components/audio-sdk/src/utils/recorder/recorder.js +1324 -0
  23. package/es/components/audio-sdk/src/utils/recorder/wave.d.ts +4 -0
  24. package/es/components/audio-sdk/src/utils/recorder/wave.js +258 -0
  25. package/es/components/audio-sdk/src/utils/recordingModal.js +13 -2
  26. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  27. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  28. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  29. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  30. package/es/components/callback/src/components/render/popupMaps.d.ts +17 -1
  31. package/es/components/card-render/index.d.ts +4 -4
  32. package/es/components/card-render/src/CardRender.vue.d.ts +4 -4
  33. package/es/components/card-render/src/components/index.d.ts +23 -23
  34. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  35. package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +12 -6
  36. package/es/components/field-editor/index.d.ts +4 -0
  37. package/es/components/field-editor/src/FieldEditor.vue.d.ts +4 -0
  38. package/es/components/field-set/src/FieldColor.vue.d.ts +1 -1
  39. package/es/components/field-set/src/FieldFilter.vue.d.ts +1 -1
  40. package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
  41. package/es/components/field-set/src/components/table-row.vue.d.ts +1 -1
  42. package/es/components/form-config/index.d.ts +80 -5
  43. package/es/components/form-config/src/FormConfig.vue.d.ts +80 -5
  44. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +4 -0
  45. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +57 -4
  46. package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +16 -1
  47. package/es/components/form-config/src/constants/index.d.ts +2 -1
  48. package/es/components/form-config/src/constants/index.js +1 -0
  49. package/es/components/form-config/src/hooks/useConfigurationField.js +19 -1
  50. package/es/components/form-config/src/hooks/useLocale.d.ts +1 -0
  51. package/es/components/form-config/src/hooks/useLocale.js +1 -0
  52. package/es/components/form-config/src/types/index.d.ts +1 -0
  53. package/es/components/form-render/index.d.ts +4 -0
  54. package/es/components/form-render/src/FormRender.vue.d.ts +4 -0
  55. package/es/components/form-render/src/FormRender.vue2.js +3 -2
  56. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +4 -0
  57. package/es/components/form-render/src/components/renderer/combination/combination.js +1 -1
  58. package/es/components/form-render/src/components/renderer/date.d.ts +2 -2
  59. package/es/components/form-render/src/components/renderer/input.d.ts +16 -4
  60. package/es/components/form-render/src/components/renderer/input.js +39 -7
  61. package/es/components/form-render/src/components/renderer/levelSearchCascader/index.js +3 -0
  62. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +1 -0
  63. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +1 -0
  64. package/es/components/form-render/src/components/renderer/radio_checkbox.js +9 -8
  65. package/es/components/form-render/src/components/renderer/text.js +1 -1
  66. package/es/components/form-render/src/components/renderer/textarea.d.ts +16 -1
  67. package/es/components/form-render/src/components/renderer/textarea.js +36 -8
  68. package/es/components/form-render/src/hooks/useBusinessBinding.js +1 -0
  69. package/es/components/form-render/src/hooks/useComplexOptions.js +3 -2
  70. package/es/components/form-render/src/hooks/useFieldListAdaptor.d.ts +2 -2
  71. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +4 -3
  72. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +2 -0
  73. package/es/components/form-render/src/hooks/useFormField.d.ts +2 -0
  74. package/es/components/form-render/src/hooks/useFormField.js +5 -1
  75. package/es/components/form-render/src/hooks/useFormValidator.js +1 -0
  76. package/es/components/form-render/src/hooks/usePresetScope.js +1 -0
  77. package/es/components/form-render/src/types/fieldItem.d.ts +11 -0
  78. package/es/components/form-render/src/types/index.d.ts +2 -1
  79. package/es/components/form-render/src/utils/index.js +1 -0
  80. package/es/components/form-render/src/utils/schema.js +60 -15
  81. package/es/components/guide/src/renderer.d.ts +2 -2
  82. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  83. package/es/components/iho-table/index.d.ts +13 -1
  84. package/es/components/iho-table/src/IhoTable.vue.d.ts +13 -2
  85. package/es/components/iho-table/src/IhoTable.vue2.js +27 -20
  86. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +6 -0
  87. package/es/components/index.css +1 -1
  88. package/es/components/index.d.ts +1 -2
  89. package/es/components/index.js +1 -3
  90. package/es/components/info-header/index.d.ts +13 -0
  91. package/es/components/info-header/src/InfoHeader.vue.d.ts +13 -0
  92. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +1 -0
  93. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +1 -0
  94. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +5 -0
  95. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +4 -0
  96. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  97. package/es/components/select-person/src/SelectPerson.vue2.js +21 -9
  98. package/es/components/shortcut-setter/index.d.ts +16 -1
  99. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +16 -1
  100. package/es/components/table-filter/src/components/render-widget/enums.d.ts +2 -0
  101. package/es/components/table-filter/src/components/render-widget/enums.js +2 -1
  102. package/es/components/table-filter/src/components/render-widget/helpers/dateExtraMap.js +8 -0
  103. package/es/components/table-filter/src/components/render-widget/helpers/enums.d.ts +1 -0
  104. package/es/components/table-filter/src/components/render-widget/helpers/enums.js +2 -1
  105. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +15 -13
  106. package/es/components/table-filter/src/tool/baseOptions.js +3 -0
  107. package/es/env.d.ts +25 -25
  108. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  109. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  110. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  111. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  112. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  113. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  114. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  115. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  116. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  117. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  118. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  119. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  120. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  121. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  122. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  123. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  124. package/es/shared/assets/img/failure.png.js +1 -1
  125. package/es/shared/assets/img/no-permission.png.js +1 -1
  126. package/es/shared/assets/img/nodata.png.js +1 -1
  127. package/es/shared/assets/img/notfound.png.js +1 -1
  128. package/es/shared/assets/img/qr.png.js +1 -1
  129. package/es/shared/assets/img/success.png.js +1 -1
  130. package/es/shared/assets/img/table_style_2.png.js +1 -1
  131. package/es/shared/assets/img/video.png.js +1 -1
  132. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  133. package/es/shared/assets/img/xb_big.png.js +1 -1
  134. package/es/shared/assets/img/xb_small.png.js +1 -1
  135. package/es/shared/components/CancelRadio/CancelRadio.d.ts +7 -0
  136. package/es/shared/components/CancelRadio/CancelRadio.js +6 -6
  137. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  138. package/es/shared/package.json.js +1 -1
  139. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  140. package/es/shared/utils/index.js +3 -2
  141. package/es/shared/utils/tapable/index.d.ts +139 -0
  142. package/package.json +76 -78
  143. package/es/components/ai-chat/index.d.ts +0 -680
  144. package/es/components/ai-chat/index.js +0 -10
  145. package/es/components/ai-chat/src/Index.vue.d.ts +0 -682
  146. package/es/components/ai-chat/src/Index.vue.js +0 -6
  147. package/es/components/ai-chat/src/Index.vue2.js +0 -175
  148. package/es/components/ai-chat/src/api/index.d.ts +0 -8
  149. package/es/components/ai-chat/src/api/index.js +0 -87
  150. package/es/components/ai-chat/src/components/ChatAudio.vue.d.ts +0 -38
  151. package/es/components/ai-chat/src/components/ChatAudio.vue.js +0 -6
  152. package/es/components/ai-chat/src/components/ChatAudio.vue2.js +0 -103
  153. package/es/components/ai-chat/src/components/ChatBI.vue.d.ts +0 -101
  154. package/es/components/ai-chat/src/components/ChatBI.vue.js +0 -6
  155. package/es/components/ai-chat/src/components/ChatBI.vue2.js +0 -73
  156. package/es/components/ai-chat/src/components/ChatCard.d.ts +0 -43
  157. package/es/components/ai-chat/src/components/ChatCard.js +0 -403
  158. package/es/components/ai-chat/src/components/ChatFooter.vue.d.ts +0 -203
  159. package/es/components/ai-chat/src/components/ChatFooter.vue.js +0 -6
  160. package/es/components/ai-chat/src/components/ChatFooter.vue2.js +0 -373
  161. package/es/components/ai-chat/src/components/ChatMain.d.ts +0 -2
  162. package/es/components/ai-chat/src/components/ChatMain.js +0 -350
  163. package/es/components/ai-chat/src/components/ChatMainDefault.d.ts +0 -2
  164. package/es/components/ai-chat/src/components/ChatMainDefault.js +0 -278
  165. package/es/components/ai-chat/src/components/ChatPatient.vue.d.ts +0 -59
  166. package/es/components/ai-chat/src/components/ChatPatient.vue.js +0 -6
  167. package/es/components/ai-chat/src/components/ChatPatient.vue2.js +0 -218
  168. package/es/components/ai-chat/src/components/ChatPrompt.vue.d.ts +0 -45
  169. package/es/components/ai-chat/src/components/ChatPrompt.vue.js +0 -6
  170. package/es/components/ai-chat/src/components/ChatPrompt.vue2.js +0 -143
  171. package/es/components/ai-chat/src/components/ChatRight.vue.d.ts +0 -57
  172. package/es/components/ai-chat/src/components/ChatRight.vue.js +0 -6
  173. package/es/components/ai-chat/src/components/ChatRight.vue2.js +0 -190
  174. package/es/components/ai-chat/src/components/card/JsonCard.d.ts +0 -25
  175. package/es/components/ai-chat/src/components/card/JsonCard.js +0 -574
  176. package/es/components/ai-chat/src/components/message-render/CardRender.d.ts +0 -16
  177. package/es/components/ai-chat/src/components/message-render/CardRender.js +0 -80
  178. package/es/components/ai-chat/src/components/message-render/FormRender.d.ts +0 -16
  179. package/es/components/ai-chat/src/components/message-render/FormRender.js +0 -173
  180. package/es/components/ai-chat/src/components/mobile/MobileChatAudio.vue.d.ts +0 -36
  181. package/es/components/ai-chat/src/components/mobile/MobileChatAudio.vue.js +0 -6
  182. package/es/components/ai-chat/src/components/mobile/MobileChatAudio.vue2.js +0 -96
  183. package/es/components/ai-chat/src/components/mobile/MobileChatFooter.vue.d.ts +0 -105
  184. package/es/components/ai-chat/src/components/mobile/MobileChatFooter.vue.js +0 -6
  185. package/es/components/ai-chat/src/components/mobile/MobileChatFooter.vue2.js +0 -260
  186. package/es/components/ai-chat/src/components/svgs/AddIcon.vue.js +0 -18
  187. package/es/components/ai-chat/src/components/svgs/AudioIcon.vue.js +0 -37
  188. package/es/components/ai-chat/src/components/svgs/KeyboardIcon.vue.js +0 -20
  189. package/es/components/ai-chat/src/components/svgs/MicroPhone.vue.js +0 -48
  190. package/es/components/ai-chat/src/hooks/index.d.ts +0 -2
  191. package/es/components/ai-chat/src/hooks/index.js +0 -2
  192. package/es/components/ai-chat/src/hooks/useChartAudioContext.d.ts +0 -18
  193. package/es/components/ai-chat/src/hooks/useChartAudioContext.js +0 -202
  194. package/es/components/ai-chat/src/hooks/useData.d.ts +0 -77
  195. package/es/components/ai-chat/src/hooks/useData.js +0 -289
  196. package/es/components/ai-chat/src/hooks/useFooterContext.d.ts +0 -38
  197. package/es/components/ai-chat/src/hooks/useFooterContext.js +0 -218
  198. package/es/components/ai-chat/src/hooks/useProgram.d.ts +0 -14
  199. package/es/components/ai-chat/src/hooks/useProgram.js +0 -306
  200. package/es/components/ai-chat/src/hooks/useSSE.d.ts +0 -9
  201. package/es/components/ai-chat/src/hooks/useSSE.js +0 -138
  202. package/es/components/ai-chat/src/hooks/useWebsocket.d.ts +0 -4
  203. package/es/components/ai-chat/src/hooks/useWebsocket.js +0 -66
  204. package/es/components/ai-chat/src/types/index.d.ts +0 -45
  205. package/es/components/ai-chat/src/types/index.js +0 -1
  206. package/es/components/ai-chat/src/utils/index.d.ts +0 -7
  207. package/es/components/ai-chat/src/utils/index.js +0 -41
  208. package/es/components/ai-chat/style/index.css +0 -1
  209. package/es/shared/assets/img/ai__avatar.png.js +0 -3
  210. package/es/shared/assets/img/file-emr.png.js +0 -3
  211. package/es/shared/assets/img/file.png.js +0 -3
  212. package/es/shared/assets/img/logo.png.js +0 -3
  213. package/es/shared/assets/img/use.png.js +0 -3
@@ -1,350 +0,0 @@
1
- import { defineComponent, ref, computed, watch, createVNode, createTextVNode, nextTick, isVNode } from 'vue';
2
- import { NSpin, NAvatar, NSpace, NButton } from 'naive-ui';
3
- import aiAvatar from '../../../../shared/assets/img/ai__avatar.png.js';
4
- import logo from '../../../../shared/assets/img/logo.png.js';
5
- import { isArray, isFunction, has } from 'lodash-es';
6
- import { uuidGenerator } from '../../../../shared/utils/index.js';
7
- import '@vueuse/core';
8
- import 'date-fns';
9
- import '@vue/shared';
10
- import '@vueuse/shared';
11
- import '../../../../shared/hooks/selectHooks/useSearchContent.js';
12
- import '@vicons/ionicons5';
13
- import { useScrollLoading } from '../../../../shared/hooks/useScrollLoading.js';
14
- import ChatCard from './ChatCard.js';
15
- import { isValidJSON } from '../utils/index.js';
16
- import ChatBI from './ChatBI.vue.js';
17
- import { useData } from '../hooks/useData.js';
18
-
19
- function _isSlot(s) {
20
- return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
21
- }
22
- var ChatMain = /* @__PURE__ */ defineComponent({
23
- name: "ChatMain",
24
- inheritAttrs: false,
25
- setup(props, {
26
- attrs,
27
- slots,
28
- emit: _emit
29
- }) {
30
- const {
31
- state,
32
- queryData,
33
- queryRecord,
34
- defaultShortcutList,
35
- hideInput,
36
- isSmall,
37
- emit
38
- } = useData();
39
- const chatMainRef = ref(null);
40
- const record = ref([]);
41
- const noRecord = ref(false);
42
- const showBIMore = ref(false);
43
- const biData = ref();
44
- const sysAvatar = computed(() => isSmall.value ? logo : aiAvatar);
45
- const pageInfo = {
46
- page: 0,
47
- hasMore: true
48
- };
49
- useScrollLoading(chatMainRef, () => {
50
- fetchList();
51
- }, hideInput.value ? "bottom" : "top");
52
- fetchList(true);
53
- async function fetchList(first = false) {
54
- if (!pageInfo.hasMore)
55
- return;
56
- pageInfo.page++;
57
- if (pageInfo.page == 1) {
58
- record.value = [];
59
- }
60
- const {
61
- records,
62
- rows
63
- } = await queryRecord.value({
64
- page: pageInfo.page
65
- });
66
- if (!isArray(rows))
67
- return;
68
- if (record.value.length <= +records) {
69
- record.value = pageInfo.page > 1 ? [...record.value, ...rows] : rows;
70
- setAllMsgDisable();
71
- if (record.value.length >= +records) {
72
- if (first)
73
- noRecord.value = true;
74
- pageInfo.hasMore = false;
75
- console.log("\u6CA1\u6709\u66F4\u591A\u6D88\u606F\u4E86");
76
- }
77
- }
78
- }
79
- function pushMessage(data) {
80
- var _a;
81
- if (!has(data, "msgId")) {
82
- data.msgId = uuidGenerator();
83
- }
84
- record.value.unshift(data);
85
- (_a = chatMainRef.value) == null ? void 0 : _a.scrollTo({
86
- top: 0,
87
- behavior: "auto"
88
- });
89
- state.loading = false;
90
- }
91
- watch(() => state.externalData, (externalData) => {
92
- if (externalData) {
93
- pushMessage(externalData);
94
- state.externalData = null;
95
- }
96
- });
97
- async function handleMessage() {
98
- var _a, _b;
99
- record.value.unshift({
100
- msgId: uuidGenerator(),
101
- contents: [{
102
- role: "user",
103
- content: state.sendContent
104
- }]
105
- });
106
- (_a = chatMainRef.value) == null ? void 0 : _a.scrollTo({
107
- top: 0,
108
- behavior: "auto"
109
- });
110
- setAllMsgDisable();
111
- const command = state.selectedCommand;
112
- const prompt = state.selectedPrompt;
113
- state.selectedCommand = null;
114
- state.selectedPrompt = null;
115
- const data = await queryData.value({
116
- content: state.sendContent,
117
- contentType: "text",
118
- command,
119
- prompt,
120
- patient: state.selectedPatient
121
- });
122
- if (isArray(data == null ? void 0 : data.contents)) {
123
- record.value.unshift(data);
124
- await nextTick();
125
- (_b = chatMainRef.value) == null ? void 0 : _b.scrollTo({
126
- top: 0,
127
- behavior: "auto"
128
- });
129
- }
130
- state.selectedPatientLabel = "";
131
- state.selectedPatientForm = null;
132
- state.sending = false;
133
- state.loading = false;
134
- state.sendContent = "";
135
- }
136
- watch(() => state.sending, (sending) => {
137
- var _a, _b, _c, _d, _e, _f, _g;
138
- if (sending) {
139
- if (record.value.length > 0 && [((_a = window.getLanguageByCode) == null ? void 0 : _a.call(window, "10010.1.428")) || "\u786E\u8BA4", ((_b = window.getLanguageByCode) == null ? void 0 : _b.call(window, "10010.1.27")) || "\u786E\u5B9A"].includes(state.sendContent)) {
140
- const newMsg = (_e = (_c = record.value[0]) == null ? void 0 : _c.contents) == null ? void 0 : _e[((_d = record.value[0].contents) == null ? void 0 : _d.length) - 1];
141
- if (((_f = newMsg.content) == null ? void 0 : _f.body) && !newMsg.disabled) {
142
- (_g = document.getElementById(record.value[0].msgId)) == null ? void 0 : _g.click();
143
- setTimeout(() => {
144
- record.value.unshift({
145
- msgId: uuidGenerator(),
146
- contents: [{
147
- role: "user",
148
- content: state.sendContent
149
- }]
150
- });
151
- state.selectedCommand = null;
152
- state.selectedPrompt = null;
153
- state.sending = false;
154
- state.sendContent = "";
155
- });
156
- return;
157
- }
158
- handleMessage();
159
- return;
160
- }
161
- handleMessage();
162
- }
163
- });
164
- function findNodeByType(tree, type, foundNodes) {
165
- if (tree.type === type) {
166
- foundNodes.push(tree);
167
- return;
168
- }
169
- if (tree.childrens && tree.childrens.length) {
170
- for (let i = 0; i < tree.childrens.length; i++) {
171
- findNodeByType(tree.childrens[i], type, foundNodes);
172
- }
173
- }
174
- }
175
- function setAllMsgDisable() {
176
- record.value.forEach((_item) => {
177
- _item.contents.forEach((msgItem) => {
178
- var _a;
179
- if (!Reflect.has(msgItem, "disabled")) {
180
- msgItem.disabled = true;
181
- }
182
- if (msgItem.contentType === "json" && typeof msgItem.content !== "string") {
183
- const {
184
- settings,
185
- data,
186
- needConfirms
187
- } = msgItem.content;
188
- if (needConfirms || !(settings == null ? void 0 : settings.setting) || !isValidJSON(settings == null ? void 0 : settings.setting) || !((_a = data == null ? void 0 : data.buttonList) == null ? void 0 : _a.length))
189
- return;
190
- const {
191
- templates = []
192
- } = JSON.parse(settings.setting);
193
- const foundNodes = [];
194
- templates.forEach((template) => {
195
- findNodeByType(template, "BUTTON", foundNodes);
196
- });
197
- foundNodes.forEach((template) => {
198
- const {
199
- buttonList
200
- } = template.setting;
201
- buttonList.forEach((button) => {
202
- var _a2;
203
- const {
204
- conditions = []
205
- } = ((_a2 = button == null ? void 0 : button.advancedConfig) == null ? void 0 : _a2.disabled) || {};
206
- if (conditions.length) {
207
- data[button.id + "Disabled"] = "1";
208
- }
209
- });
210
- });
211
- }
212
- });
213
- });
214
- }
215
- function handleComfirm(option) {
216
- var _a;
217
- const {
218
- item,
219
- msgItem,
220
- showMore
221
- } = option;
222
- if (showMore) {
223
- biData.value = {
224
- item,
225
- msgItem
226
- };
227
- showBIMore.value = true;
228
- return;
229
- }
230
- if (msgItem) {
231
- emit("button-click", option);
232
- msgItem.disabled = true;
233
- return;
234
- }
235
- if (item.link)
236
- return;
237
- state.sendContent = ((_a = window.getLanguageByCode) == null ? void 0 : _a.call(window, "10010.1.27")) || "\u786E\u5B9A";
238
- state.sending = true;
239
- state.loading = true;
240
- }
241
- function cardRender(item, msgItem, configs, msgId) {
242
- const {
243
- contentType,
244
- content
245
- } = msgItem;
246
- if (contentType !== "json" || !content)
247
- return null;
248
- return createVNode(ChatCard, {
249
- "selectParams": {
250
- taskId: item.taskId,
251
- instructionId: item.instructionId
252
- },
253
- "msgItem": msgItem,
254
- "configs": configs,
255
- "msgId": msgId,
256
- "onButton-click": (param = {}) => handleComfirm({
257
- item,
258
- msgItem,
259
- ...param
260
- })
261
- }, null);
262
- }
263
- function contentRender(item, idx) {
264
- const {
265
- contents = [],
266
- buttonType = "",
267
- configs = {},
268
- msgId = ""
269
- } = item;
270
- const _cardRender = cardRender(item, contents[idx], configs, msgId);
271
- if (_cardRender)
272
- return _cardRender;
273
- const _contents = contents[idx].content.replace(/\\n|\n|\r\n/g, "<br>").split("<br>");
274
- const textRender = _contents.filter((str) => !!str).map((str, i, arr) => [str, i === arr.length - 1 ? null : createVNode("br", null, null)]);
275
- return [textRender];
276
- }
277
- function isMe({
278
- role = ""
279
- }) {
280
- return role === "user";
281
- }
282
- function defaultRender() {
283
- var _a, _b;
284
- let _slot;
285
- return createVNode("div", {
286
- "class": "message-item"
287
- }, [createVNode(NAvatar, {
288
- "round": true,
289
- "size": isSmall.value ? 64 : 40,
290
- "src": sysAvatar.value
291
- }, null), createVNode("div", {
292
- "class": "content-box"
293
- }, [createVNode("div", {
294
- "class": "content fillet-10 default"
295
- }, [createVNode("h2", null, [createTextVNode(((_a = window.getLanguageByCode) == null ? void 0 : _a.call(window, "10010.1.192")) || "Hi\uFF0C\u6211\u662F\u4F60\u7684AI\u52A9\u7406")]), createVNode("p", null, [createTextVNode("\u6211\u6C47\u96C6\u4E86\u533B\u751F\u7AD9/\u62A4\u58EB\u7AD9\u5404\u9879\u667A\u80FD\u670D\u52A1\uFF0C\u53EF\u4EE5\u5411\u6211\u8FDB\u884C\u63D0\u95EE\u54E6 ~ "), createVNode("br", null, null), createTextVNode("\u4F60\u7684\u53CD\u9988\u52A9\u6211\u6210\u957F\uFF0C\u671F\u5F85\u6211\u4EEC\u4E00\u8D77\u63A2\u7D22\u672A\u6765\uFF01\u4E0B\u6B21\u53EF\u4EE5\u5728\u9996\u9875\u548C\u5E94\u7528\u9875\u627E\u5230\u6211~")]), isArray(defaultShortcutList.value) && defaultShortcutList.value.length > 0 ? [createVNode("p", {
296
- "style": "margin: 5px 0 5px"
297
- }, [createTextVNode(((_b = window.getLanguageByCode) == null ? void 0 : _b.call(window, "10010.1.195")) || "\u4F60\u53EF\u4EE5\u8BD5\u7740\u95EE\u6211\uFF1A")]), createVNode(NSpace, {
298
- "wrap-item": false
299
- }, _isSlot(_slot = defaultShortcutList.value.map((s) => createVNode(NButton, {
300
- "size": "large",
301
- "secondary": true,
302
- "onClick": () => state.sendContent = s,
303
- "disabled": state.loading
304
- }, _isSlot(s) ? s : {
305
- default: () => [s]
306
- }))) ? _slot : {
307
- default: () => [_slot]
308
- })] : null])])]);
309
- }
310
- return () => [createVNode("section", {
311
- "class": "chat-main-wrapper",
312
- "ref": chatMainRef
313
- }, [createVNode("div", {
314
- "class": "chat-main-box"
315
- }, [createVNode("div", {
316
- "class": "chat-main",
317
- "style": {
318
- "flex-direction": hideInput.value ? "column" : "column-reverse"
319
- }
320
- }, [[state.loading ? createVNode("div", {
321
- "class": "message-item"
322
- }, [[createVNode("div", {
323
- "class": "content-box"
324
- }, [createVNode("div", {
325
- "class": "content loading"
326
- }, [createVNode(NSpin, {
327
- "size": 22,
328
- "stroke": "#4170EE"
329
- }, null), createVNode("span", null, [createTextVNode("\u6B63\u5728\u52A0\u8F7D\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...")])])])]]) : null, record.value.map((item) => {
330
- return item.contents.map((message, idx) => {
331
- return createVNode("div", {
332
- "class": "message-item",
333
- "key": item.msgId + idx
334
- }, [[
335
- createVNode("div", {
336
- "class": ["content-box", isMe(message) ? "mine" : ""]
337
- }, [createVNode("div", {
338
- "class": "content"
339
- }, [isFunction(message.render) ? message.render() : contentRender(item, idx)])])
340
- ]]);
341
- });
342
- }), noRecord.value ? defaultRender() : null]]), createVNode(ChatBI, {
343
- "show": showBIMore.value,
344
- "onUpdate:show": ($event) => showBIMore.value = $event,
345
- "data": biData.value
346
- }, null)])])];
347
- }
348
- });
349
-
350
- export { ChatMain as default };
@@ -1,2 +0,0 @@
1
- declare const _default: 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<{}>>, {}>;
2
- export default _default;
@@ -1,278 +0,0 @@
1
- import { defineComponent, ref, watch, createVNode } from 'vue';
2
- import '../../../../shared/utils/index.js';
3
- import { NTooltip, NButton, NIcon } from 'naive-ui';
4
- import '@vueuse/core';
5
- import 'date-fns';
6
- import { isArray, isFunction, isString } from 'lodash-es';
7
- import '@vue/shared';
8
- import '@vueuse/shared';
9
- import '../../../../shared/hooks/selectHooks/useSearchContent.js';
10
- import { SyncOutline, ChevronUp, ChevronDown } from '@vicons/ionicons5';
11
- import { useScrollLoading } from '../../../../shared/hooks/useScrollLoading.js';
12
- import markdownIt from 'markdown-it';
13
- import { getSessionMsgApi, getHistoryRecordApi } from '../api/index.js';
14
- import { useData } from '../hooks/useData.js';
15
- import '../utils/index.js';
16
- import JsonCard from './card/JsonCard.js';
17
- import CardRender from './message-render/CardRender.js';
18
- import FormRender from './message-render/FormRender.js';
19
-
20
- const md2html = markdownIt({
21
- html: true
22
- });
23
- var ChatMainDefault = /* @__PURE__ */ defineComponent({
24
- name: "ChatMain",
25
- inheritAttrs: false,
26
- setup(props, {
27
- attrs,
28
- slots,
29
- emit: _emit
30
- }) {
31
- const {
32
- state,
33
- sessionId,
34
- sendMessage,
35
- appCode,
36
- isStreamingOutput,
37
- prologue,
38
- bpmnProcessIdAndStartToken,
39
- formatProcessInfo
40
- } = useData();
41
- const chatMainRef = ref(null);
42
- const noRecord = ref(false);
43
- const pageInfo = {
44
- page: 0,
45
- hasMore: true
46
- };
47
- useScrollLoading(chatMainRef, () => {
48
- fetchList();
49
- }, "top");
50
- async function fetchList() {
51
- if (!pageInfo.hasMore || !sessionId.value)
52
- return;
53
- pageInfo.page++;
54
- if (pageInfo.page == 1) {
55
- state.record = [];
56
- }
57
- const data = isStreamingOutput.value ? await getSessionMsgApi({
58
- appCode: appCode.value,
59
- sessionId: sessionId.value,
60
- page: pageInfo.page,
61
- pageSize: 20
62
- }) : await getHistoryRecordApi({
63
- sessionId: sessionId.value,
64
- page: pageInfo.page,
65
- pageSize: 20
66
- });
67
- const {
68
- rows,
69
- query = {}
70
- } = data || {};
71
- if (!isArray(rows))
72
- return;
73
- rows.forEach((row) => {
74
- if (isArray(row.contents) && row.contents.length > 1) {
75
- row.cntents.forEach((i) => {
76
- if (fromAi(i || {})) {
77
- i.__showMore = true;
78
- }
79
- if ((i == null ? void 0 : i.messageType) === "form") {
80
- i.disabled = true;
81
- }
82
- });
83
- row.contents.reverse();
84
- }
85
- });
86
- if (state.record.length <= +query.records) {
87
- state.record = pageInfo.page > 1 ? [...state.record, ...rows] : rows;
88
- if (state.record.length >= +query.records) {
89
- pageInfo.hasMore = false;
90
- console.log("\u6CA1\u6709\u66F4\u591A\u6D88\u606F\u4E86");
91
- }
92
- }
93
- }
94
- watch(() => sessionId.value, async (value) => {
95
- var _a;
96
- state.loading = false;
97
- noRecord.value = false;
98
- state.showRight = false;
99
- state.showRightSlot = false;
100
- state.record = [];
101
- pageInfo.page = 0;
102
- pageInfo.hasMore = true;
103
- await fetchList();
104
- if (!((_a = state.record) == null ? void 0 : _a.length)) {
105
- noRecord.value = true;
106
- }
107
- formatProcessInfo(bpmnProcessIdAndStartToken.value);
108
- }, {
109
- immediate: true
110
- });
111
- function jsonRender(item, contentObj) {
112
- return createVNode(JsonCard, {
113
- "item": item,
114
- "messageItem": contentObj
115
- }, null);
116
- }
117
- function isJsonContentType(item, idx) {
118
- var _a;
119
- const {
120
- contentType,
121
- messageType
122
- } = ((_a = item == null ? void 0 : item.contents) == null ? void 0 : _a[idx]) || {};
123
- return contentType === "json" && messageType !== "retry_inquiry";
124
- }
125
- function reTry(audioText) {
126
- state.loadingText = "\u7CFB\u7EDF\u6B63\u5728\u5BF9\u60A8\u7684\u5BF9\u8BDD\u5185\u5BB9\u8FDB\u884C\u68B3\u7406\u6574\u5408\uFF0C\u8F6C\u5316\u4E3A\u89C4\u8303\u7684\u7ED3\u6784\u5316\u95EE\u8BCA\u8BB0\u5F55";
127
- sendMessage({
128
- contents: [{
129
- content: audioText,
130
- contentType: "text",
131
- role: "user"
132
- }],
133
- opType: "create_inquiry"
134
- });
135
- }
136
- function getTextRender(content) {
137
- if (!isString(content) || !content)
138
- return null;
139
- return [createVNode("div", {
140
- "class": "ai-chat__markdown",
141
- "innerHTML": replaceNewlinesExceptTable(md2html.render(content))
142
- }, null)];
143
- function replaceNewlinesExceptTable(html) {
144
- const tableContents = [];
145
- const replacedHtml = html.replace(/<table[^>]*>([\s\S]*?)<\/table>/g, (match, tableContent) => {
146
- tableContents.push(tableContent);
147
- return `<table>TABLE_PLACEHOLDER_${tableContents.length - 1}</table>`;
148
- });
149
- const newHtml = replacedHtml.replace(/(\\n|\r|\n)/g, '<div style="height:4px"></div>').replace(/<div style="height:4px"><\/div>$/, "");
150
- return newHtml.replace(/<table>TABLE_PLACEHOLDER_(\d+)<\/table>/g, (match, index) => {
151
- return `<table>${tableContents[index]}</table>`;
152
- });
153
- }
154
- }
155
- function contentRender(item, idx) {
156
- var _a;
157
- const {
158
- contents = [],
159
- msgId = ""
160
- } = item;
161
- const {
162
- countTime,
163
- __showMore,
164
- contentType = "",
165
- messageType = "",
166
- content = ""
167
- } = contents[idx] || {};
168
- if (contentType === "json") {
169
- if (messageType === "retry_inquiry") {
170
- return [getTextRender((content == null ? void 0 : content.errorMsg) || ""), createVNode(NTooltip, {
171
- "trigger": "hover"
172
- }, {
173
- default: () => "\u91CD\u65B0\u751F\u6210",
174
- trigger: () => createVNode(NButton, {
175
- "style": "position: relative;top: 3px;margin-left: 8px",
176
- "type": "primary",
177
- "text": true,
178
- "onClick": () => reTry(content == null ? void 0 : content.audioText)
179
- }, {
180
- icon: () => createVNode(NIcon, {
181
- "component": SyncOutline
182
- }, null)
183
- })
184
- })];
185
- }
186
- if (messageType === "form") {
187
- return createVNode(FormRender, {
188
- "msg-item": contents[idx]
189
- }, null);
190
- }
191
- if (messageType === "card") {
192
- return createVNode(CardRender, {
193
- "msg-item": contents[idx]
194
- }, null);
195
- }
196
- return jsonRender(item, contents[idx]);
197
- }
198
- const textRender = getTextRender(((_a = contents[idx]) == null ? void 0 : _a.content) || "");
199
- if (textRender && fromAi(contents[idx] || {})) {
200
- const tip = createVNode("div", {
201
- "style": "cursor: pointer; border-top: 1px solid #e5e5e5;",
202
- "onClick": () => {
203
- var _a2;
204
- return contents[idx].__showMore = !((_a2 = contents[idx]) == null ? void 0 : _a2.__showMore);
205
- }
206
- }, [[`\u5DF2\u6DF1\u5EA6\u5206\u6790\uFF08\u7528\u65F6${countTime != null ? countTime : 0}\u79D2\uFF09`, createVNode(NIcon, {
207
- "style": "position: relative;top: 4px",
208
- "size": 18,
209
- "component": __showMore ? ChevronUp : ChevronDown
210
- }, null)]]);
211
- return [createVNode("div", {
212
- "style": {
213
- display: __showMore ? "none" : "unset"
214
- }
215
- }, [textRender]), tip];
216
- }
217
- return textRender;
218
- }
219
- function isMe({
220
- role = ""
221
- }) {
222
- return role === "user";
223
- }
224
- function fromAi({
225
- msgSource = ""
226
- }) {
227
- return msgSource === "assistant";
228
- }
229
- function defaultRender() {
230
- const textRender = getTextRender(prologue.value);
231
- if (!textRender)
232
- return null;
233
- return createVNode("div", {
234
- "class": "message-item"
235
- }, [createVNode("div", {
236
- "class": "content-box"
237
- }, [createVNode("div", {
238
- "class": "content fillet-10 default"
239
- }, [textRender])])]);
240
- }
241
- return () => [createVNode("section", {
242
- "class": "chat-main-wrapper",
243
- "ref": chatMainRef
244
- }, [createVNode("div", {
245
- "class": "chat-main-box"
246
- }, [createVNode("div", {
247
- "class": "chat-main",
248
- "style": "column-reverse"
249
- }, [[state.loading ? createVNode("div", {
250
- "class": "message-item"
251
- }, [createVNode("div", {
252
- "class": "content-box"
253
- }, [createVNode("div", {
254
- "class": "content loading"
255
- }, [createVNode("span", {
256
- "class": "ai-chat__loading-icon"
257
- }, null), createVNode("span", null, [state.loadingText || "\u5206\u6790\u4E2D..."])])])]) : null, state.record.map((item) => {
258
- if (!isArray(item.contents))
259
- return null;
260
- return item.contents.map((message, idx) => {
261
- if (!contentRender(item, idx))
262
- return null;
263
- return createVNode("div", {
264
- "class": "message-item",
265
- "key": item.msgId + idx
266
- }, [createVNode("div", {
267
- "class": ["content-box", isMe(message) ? "mine" : ""]
268
- }, [createVNode("div", {
269
- "class": ["content", {
270
- "content-json": !isFunction(message.render) && isJsonContentType(item, idx)
271
- }]
272
- }, [isFunction(message.render) ? message.render() : contentRender(item, idx)])])]);
273
- });
274
- }), noRecord.value ? defaultRender() : null]])])])];
275
- }
276
- });
277
-
278
- export { ChatMainDefault as default };
@@ -1,59 +0,0 @@
1
- import { SelectOption } from 'naive-ui';
2
- import { AnyObject } from '../../../../shared/types';
3
- declare const _default: import("vue").DefineComponent<{
4
- show: {
5
- type: BooleanConstructor;
6
- };
7
- }, {
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: AnyObject;
17
- patientInfo: import("vue").Ref<any>;
18
- formValue: {
19
- businessType: string;
20
- vaa01: null;
21
- bck03a: string;
22
- };
23
- rules: {
24
- businessType: {
25
- required: boolean;
26
- trigger: string;
27
- message: string;
28
- };
29
- vaa01: {
30
- required: boolean;
31
- trigger: string[];
32
- message: string;
33
- };
34
- };
35
- options: import("vue").Ref<AnyObject[]>;
36
- formRef: import("vue").Ref<any>;
37
- renderLabel: (option: AnyObject) => string;
38
- handleUpdateValue: (value: string, option: SelectOption) => void;
39
- handleSearch: (keyword: string) => Promise<void>;
40
- handleBusinessTypeUpdate: () => void;
41
- handleValidateClick: (e: MouseEvent) => void;
42
- NDrawer: any;
43
- NDrawerContent: any;
44
- NForm: any;
45
- NFormItem: any;
46
- NButton: any;
47
- NRadioGroup: any;
48
- NRadio: any;
49
- NSelect: any;
50
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:show"[], "update:show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
51
- show: {
52
- type: BooleanConstructor;
53
- };
54
- }>> & {
55
- "onUpdate:show"?: ((...args: any[]) => any) | undefined;
56
- }, {
57
- show: boolean;
58
- }>;
59
- export default _default;
@@ -1,6 +0,0 @@
1
- import _sfc_main from './ChatPatient.vue2.js';
2
- import _export_sfc from '../../../../_virtual/_plugin-vue_export-helper.js';
3
-
4
- var ChatPatient = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "ChatPatient.vue"]]);
5
-
6
- export { ChatPatient as default };