vue2-client 1.22.50 → 1.22.52

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 (111) hide show
  1. package/.env.his +19 -19
  2. package/.history/.eslintrc_20260521171150.js +74 -0
  3. package/.history/.eslintrc_20260521171213.js +74 -0
  4. package/.history/src/base-client/components/common/HIS/HAddNativeForm/HAddNativeForm_20260601154443.vue +726 -0
  5. package/.history/src/base-client/components/common/HIS/HAddNativeForm/HAddNativeForm_20260601154700.vue +478 -0
  6. package/.history/src/base-client/components/common/HIS/HButtons/HButtons_20260611152602.vue +755 -0
  7. package/.history/src/base-client/components/common/HIS/HButtons/HButtons_20260702161223.vue +748 -0
  8. package/.history/src/base-client/components/common/HIS/HButtons/HButtons_20260702163310.vue +832 -0
  9. package/.history/src/base-client/components/common/HIS/HButtons/HButtons_20260702163324.vue +748 -0
  10. package/.history/src/base-client/components/common/HIS/HButtons/HButtons_20260702165416.vue +748 -0
  11. package/.history/src/base-client/components/common/HIS/HButtons/HButtons_20260702174939.vue +793 -0
  12. package/.history/src/base-client/components/common/HIS/HForm/HForm_20260702115430.vue +1463 -0
  13. package/.history/src/base-client/components/common/HIS/HForm/HForm_20260723174534.vue +1708 -0
  14. package/.history/src/base-client/components/common/HIS/HForm/HForm_20260724104007.vue +1708 -0
  15. package/.history/src/base-client/components/common/HIS/HForm/HForm_20260724133409.vue +2003 -0
  16. package/.history/src/base-client/components/common/HIS/HForm/HForm_20260724133723.vue +2003 -0
  17. package/.history/src/base-client/components/common/HIS/HForm/HForm_20260724135500.vue +1982 -0
  18. package/.history/src/base-client/components/common/HIS/HForm/HForm_20260724135609.vue +1972 -0
  19. package/.history/src/base-client/components/common/HIS/HFormTable/HFormTable_20260310142713.vue +512 -0
  20. package/.history/src/base-client/components/common/HIS/HFormTable/HFormTable_20260310145118.vue +511 -0
  21. package/.history/src/base-client/components/common/HIS/HFormTable/HFormTable_20260311094834.vue +696 -0
  22. package/.history/src/base-client/components/common/HIS/HFormTable/HFormTable_20260320143028.vue +693 -0
  23. package/.history/src/base-client/components/common/HIS/HFormTable/HFormTable_20260409101450.vue +677 -0
  24. package/.history/src/base-client/components/common/HIS/HTab/HTab_20260625173703.vue +767 -0
  25. package/.history/src/base-client/components/common/HIS/HTab/HTab_20260626112425.vue +803 -0
  26. package/.history/src/base-client/components/common/XAddNativeForm/XAddNativeForm_20260626173854.vue +1522 -0
  27. package/.history/src/base-client/components/common/XCollapse/XCollapse_20260703180349.vue +862 -0
  28. package/.history/src/base-client/components/common/XCollapse/XCollapse_20260703180623.vue +862 -0
  29. package/.history/src/base-client/components/common/XCollapse/XCollapse_20260703180702.vue +842 -0
  30. package/.history/src/base-client/components/common/XDatePicker/index_20260724135453.vue +438 -0
  31. package/.history/src/base-client/components/common/XDatePicker/index_20260724135500.vue +429 -0
  32. package/.history/src/base-client/components/common/XForm/XFormItem_20260703101840.vue +1621 -0
  33. package/.history/src/base-client/components/common/XMarkdownViewer/XMarkdownViewer_20260519140403.vue +643 -0
  34. package/.history/src/base-client/components/common/XMarkdownViewer/XMarkdownViewer_20260519140829.vue +628 -0
  35. package/.history/src/base-client/components/common/XMarkdownViewer/demo_20260519142824.vue +104 -0
  36. package/.history/src/base-client/components/common/XMarkdownViewer/demo_20260519143155.vue +102 -0
  37. package/.history/src/base-client/components/common/XReportGrid/XReportTrGroup_20260703180412.vue +1102 -0
  38. package/.history/src/base-client/components/common/XReportGrid/XReportTrGroup_20260703180623.vue +1093 -0
  39. package/.history/src/base-client/components/common/XReportGrid/XReport_20260309171231.vue +1241 -0
  40. package/.history/src/base-client/components/common/XReportGrid/XReport_20260309171441.vue +1223 -0
  41. package/.history/src/base-client/components/his/HAi/HAi_20260612174826.vue +472 -0
  42. package/.history/src/base-client/components/his/HAi/HAi_20260612175839.vue +538 -0
  43. package/.history/src/base-client/components/his/HAi/HAi_20260615103331.vue +650 -0
  44. package/.history/src/base-client/components/his/HAi/HAi_20260618140214.vue +1396 -0
  45. package/.history/src/base-client/components/his/HAi/HAi_20260618140556.vue +1396 -0
  46. package/.history/src/base-client/components/his/XHDescriptions/XHDescriptions_20260424134504.vue +1469 -0
  47. package/.history/src/base-client/components/his/XRadio/XRadio_20260702140351.vue +774 -0
  48. package/.history/src/base-client/components/his/XRadio/XRadio_20260702140441.vue +774 -0
  49. package/.history/src/base-client/components/his/XSidebar/XSidebar_20260610171133.vue +788 -0
  50. package/.history/src/base-client/components/his/XSidebar/XSidebar_20260610171151.vue +780 -0
  51. package/.history/src/base-client/components/his/XTransfer/XTransfer_20260511170841.vue +585 -0
  52. package/.history/src/base-client/components/his/XTransfer/XTransfer_20260511171138.vue +787 -0
  53. package/.history/src/base-client/components/his/XTransfer/XTransfer_20260512141830.vue +739 -0
  54. package/.history/src/components/STable/index_20260409155138.js +806 -0
  55. package/.history/src/components/STable/index_20260409155218.js +814 -0
  56. package/.history/src/expression/core/Expression_20260305164427.js +1371 -0
  57. package/.history/src/expression/core/Expression_20260305170258.js +1358 -0
  58. package/.history/src/expression/core/Program_20260305111830.js +944 -0
  59. package/.history/src/expression/core/Program_20260305112041.js +931 -0
  60. package/.history/src/logic/LogicRunner_20260304154306.js +170 -0
  61. package/.history/src/logic/LogicRunner_20260304155553.js +112 -0
  62. package/.history/src/logic/LogicRunner_20260305105834.js +112 -0
  63. package/.history/src/logic/LogicRunner_20260305112718.js +129 -0
  64. package/.history/src/logic/LogicRunner_20260305182436.js +133 -0
  65. package/.history/src/logic/LogicRunner_20260306151301.js +213 -0
  66. package/.history/src/logic/LogicRunner_20260306152419.js +213 -0
  67. package/.history/src/logic/plugins/common/DateTools_20260305154159.js +61 -0
  68. package/.history/src/logic/plugins/common/DateTools_20260305154217.js +44 -0
  69. package/.history/src/logic/plugins/common/DateTools_20260305161014.js +44 -0
  70. package/.history/src/logic/plugins/common/HttpTools_20260305164352.js +80 -0
  71. package/.history/src/logic/plugins/common/HttpTools_20260305170258.js +75 -0
  72. package/.history/src/logic/plugins/common/HttpTools_20260305171634.js +75 -0
  73. package/.history/src/logic/plugins/common/HttpTools_20260306152419.js +72 -0
  74. package/.history/src/services/api/restTools_20260427142149.js +245 -0
  75. package/.history/src/services/api/restTools_20260427142853.js +230 -0
  76. package/.history/src/services/api/restTools_20260519135558.js +230 -0
  77. package/.history/src/services/api/restTools_20260519140825.js +230 -0
  78. package/.history/src/services/api/restTools_20260519151223.js +230 -0
  79. package/.history/src/theme/global_20260703101634.less +370 -0
  80. package/.history/src/theme/global_20260703101840.less +337 -0
  81. package/.history/src/theme/global_20260703104511.less +337 -0
  82. package/.history/src/theme/global_20260724113706.less +337 -0
  83. package/.history/src/theme/global_20260724133409.less +337 -0
  84. package/.history/src/utils/indexedDB_20260306150918.js +593 -0
  85. package/.history/src/utils/indexedDB_20260306151301.js +586 -0
  86. package/.idea/af-vue2-client.iml +3 -2
  87. package/.idea/codeStyles/Project.xml +62 -0
  88. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  89. package/.idea/misc.xml +6 -0
  90. package/docs/XCollapse/345/261/225/345/274/200/347/251/272/347/231/275/346/216/222/346/237/245/350/256/260/345/275/225.md +153 -0
  91. package/package.json +1 -1
  92. package/preview-input-box.html +180 -0
  93. package/src/base-client/components/common/HIS/HForm/HForm.vue +280 -0
  94. package/src/base-client/components/common/HIS/HTab/HTab.vue +790 -790
  95. package/src/base-client/components/common/XMarkdownViewer/demo.vue +102 -102
  96. package/src/base-client/components/his/XHisEditor/XDocTree.vue +529 -529
  97. package/src/base-client/components/his/XTitle/XTitle.vue +1 -1
  98. package/src/base-client/components/his/XTransfer/index.md +327 -327
  99. package/.idea/inspectionProfiles/Project_Default.xml +0 -23
  100. package/1yarn.lock +0 -11850
  101. package/logs/afgit.config.log +0 -12
  102. package/logs/afgit.config.log.2026-02-27 +0 -7
  103. package/logs/afgit.config_error.log +0 -6
  104. package/logs/afgit.config_error.log.2026-02-27 +0 -3
  105. package/pnpm-workspace.yaml +0 -4
  106. package/public/his/editor/mock/bind_data_with_images.html +0 -78
  107. package/public/his/editor/mock/blank.html +0 -645
  108. package/src/assets/img/80359c35a5465167cb25ff87bab49035d041a65558b35-YJOr3x.png +0 -0
  109. package/src/assets/img/hisLogo.png +0 -0
  110. package/src/base-client/components/common/HIS/HButtons/HButtonsSuffixDemo.vue +0 -141
  111. package/src/base-client/components/his/XHisEditor/ImageReportDemo.vue +0 -156
@@ -0,0 +1,104 @@
1
+ <template>
2
+ <div style="padding: 16px">
3
+ <h2>XMarkdownViewer Demo</h2>
4
+
5
+ <div style="margin: 12px 0; padding: 12px; background: #f5f5f5; border-radius: 4px">
6
+ <h4 style="margin: 0 0 8px 0">流式 AI 调用示例</h4>
7
+ <div style="margin-bottom: 8px">
8
+ <input
9
+ v-model="userMessage"
10
+ type="text"
11
+ placeholder="输入消息"
12
+ style="width: 300px; padding: 6px 8px; border: 1px solid #ddd; border-radius: 4px"
13
+ @keyup.enter="sendMessage"
14
+ >
15
+ <button
16
+ type="button"
17
+ style="margin-left: 8px; padding: 6px 16px; background: #1890ff; color: #fff; border: none; border-radius: 4px; cursor: pointer"
18
+ @click="sendMessage"
19
+ >
20
+ 发送
21
+ </button>
22
+ <button
23
+ v-if="isStreaming"
24
+ type="button"
25
+ style="margin-left: 8px; padding: 6px 16px; background: #ff4d4f; color: #fff; border: none; border-radius: 4px; cursor: pointer"
26
+ @click="stopMessage"
27
+ >
28
+ 停止
29
+ </button>
30
+ </div>
31
+ <div v-if="isStreaming" style="color: #1890ff; font-size: 12px">AI 正在思考中...</div>
32
+ </div>
33
+
34
+ <div style="margin: 8px 0; color: #666; font-size: 12px">
35
+ <span v-if="fileName">当前文件:{{ fileName }}({{ md.length }} 字符)</span>
36
+ <span v-else-if="md">当前内容:流式响应({{ md.length }} 字符)</span>
37
+ <span v-else>请输入消息并点击发送</span>
38
+ </div>
39
+
40
+ <x-markdown-viewer ref="viewer" :markdown="md" />
41
+ </div>
42
+ </template>
43
+
44
+ <script>
45
+ import XMarkdownViewer from './XMarkdownViewer.vue'
46
+
47
+ export default {
48
+ name: 'XMarkdownViewerDemo',
49
+ components: {
50
+ XMarkdownViewer
51
+ },
52
+ data () {
53
+ return {
54
+ md: '',
55
+ fileName: '',
56
+ userMessage: '',
57
+ isStreaming: false,
58
+ currentStream: null
59
+ }
60
+ },
61
+ methods: {
62
+ async sendMessage () {
63
+ const message = this.userMessage.trim()
64
+ if (!message) return
65
+
66
+ const viewer = this.$refs.viewer
67
+ if (!viewer || typeof viewer.callAiStream !== 'function') {
68
+ console.warn('[Demo] viewer 不存在或没有 callAiStream 方法')
69
+ return
70
+ }
71
+
72
+ // 开始时显示提示
73
+ viewer.receiveMarkdownString('### 思考中,请稍后...\n')
74
+ this.isStreaming = true
75
+
76
+ // 调用流式接口
77
+ const stream = viewer.callAiStream(message, {
78
+ onChunk: (text) => {
79
+ // 注意:callAiStream 内部已经会更新 internalMarkdown,
80
+ // 这里只需要做额外的处理(如日志),不要重复设置 internalMarkdown
81
+ console.log('[Demo] 收到 chunk, 长度:', text.length)
82
+ },
83
+ onEnd: (fullContent) => {
84
+ viewer.receiveMarkdownString(fullContent)
85
+ this.isStreaming = false
86
+ },
87
+ onError: (error) => {
88
+ viewer.receiveMarkdownString('### 抱歉,发生了错误\n\n' + error)
89
+ this.isStreaming = false
90
+ }
91
+ })
92
+
93
+ this.currentStream = stream
94
+ },
95
+ stopMessage () {
96
+ if (this.currentStream && typeof this.currentStream.stop === 'function') {
97
+ this.currentStream.stop()
98
+ this.isStreaming = false
99
+ }
100
+ }
101
+ }
102
+ }
103
+ </script>
104
+
@@ -0,0 +1,102 @@
1
+ <template>
2
+ <div style="padding: 16px">
3
+ <h2>XMarkdownViewer Demo</h2>
4
+
5
+ <div style="margin: 12px 0; padding: 12px; background: #f5f5f5; border-radius: 4px">
6
+ <h4 style="margin: 0 0 8px 0">流式 AI 调用示例</h4>
7
+ <div style="margin-bottom: 8px">
8
+ <input
9
+ v-model="userMessage"
10
+ type="text"
11
+ placeholder="输入消息"
12
+ style="width: 300px; padding: 6px 8px; border: 1px solid #ddd; border-radius: 4px"
13
+ @keyup.enter="sendMessage"
14
+ >
15
+ <button
16
+ type="button"
17
+ style="margin-left: 8px; padding: 6px 16px; background: #1890ff; color: #fff; border: none; border-radius: 4px; cursor: pointer"
18
+ @click="sendMessage"
19
+ >
20
+ 发送
21
+ </button>
22
+ <button
23
+ v-if="isStreaming"
24
+ type="button"
25
+ style="margin-left: 8px; padding: 6px 16px; background: #ff4d4f; color: #fff; border: none; border-radius: 4px; cursor: pointer"
26
+ @click="stopMessage"
27
+ >
28
+ 停止
29
+ </button>
30
+ </div>
31
+ <div v-if="isStreaming" style="color: #1890ff; font-size: 12px">AI 正在思考中...</div>
32
+ </div>
33
+
34
+ <div style="margin: 8px 0; color: #666; font-size: 12px">
35
+ <span v-if="fileName">当前文件:{{ fileName }}({{ md.length }} 字符)</span>
36
+ <span v-else-if="md">当前内容:流式响应({{ md.length }} 字符)</span>
37
+ <span v-else>请输入消息并点击发送</span>
38
+ </div>
39
+
40
+ <x-markdown-viewer ref="viewer" :markdown="md" />
41
+ </div>
42
+ </template>
43
+
44
+ <script>
45
+ import XMarkdownViewer from './XMarkdownViewer.vue'
46
+
47
+ export default {
48
+ name: 'XMarkdownViewerDemo',
49
+ components: {
50
+ XMarkdownViewer
51
+ },
52
+ data () {
53
+ return {
54
+ md: '',
55
+ fileName: '',
56
+ userMessage: '',
57
+ isStreaming: false,
58
+ currentStream: null
59
+ }
60
+ },
61
+ methods: {
62
+ async sendMessage () {
63
+ const message = this.userMessage.trim()
64
+ if (!message) return
65
+
66
+ const viewer = this.$refs.viewer
67
+ if (!viewer || typeof viewer.callAiStream !== 'function') {
68
+ console.warn('[Demo] viewer 不存在或没有 callAiStream 方法')
69
+ return
70
+ }
71
+
72
+ // 开始时显示提示
73
+ viewer.receiveMarkdownString('### 思考中,请稍后...\n')
74
+ this.isStreaming = true
75
+
76
+ // 调用流式接口
77
+ const stream = viewer.callAiStream(message, {
78
+ onChunk: (text) => {
79
+ viewer.receiveMarkdownString('### 思考中,请稍后...\n\n' + viewer.getStreamContent())
80
+ },
81
+ onEnd: (fullContent) => {
82
+ viewer.receiveMarkdownString(fullContent)
83
+ this.isStreaming = false
84
+ },
85
+ onError: (error) => {
86
+ viewer.receiveMarkdownString('### 抱歉,发生了错误\n\n' + error)
87
+ this.isStreaming = false
88
+ }
89
+ })
90
+
91
+ this.currentStream = stream
92
+ },
93
+ stopMessage () {
94
+ if (this.currentStream && typeof this.currentStream.stop === 'function') {
95
+ this.currentStream.stop()
96
+ this.isStreaming = false
97
+ }
98
+ }
99
+ }
100
+ }
101
+ </script>
102
+