cnhis-design-vue 3.1.55-release.0 → 3.1.55-release.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 (193) hide show
  1. package/README.md +87 -87
  2. package/es/components/audio-sdk/index.d.ts +2 -0
  3. package/es/components/audio-sdk/index.js +1 -0
  4. package/es/components/audio-sdk/src/audioSDK.d.ts +28 -0
  5. package/es/components/audio-sdk/src/audioSDK.js +1 -0
  6. package/es/components/audio-sdk/src/components/recordingDialog.vue.d.ts +27 -0
  7. package/es/components/audio-sdk/src/components/recordingDialog.vue.js +1 -0
  8. package/es/components/audio-sdk/src/components/recordingDialog.vue2.js +1 -0
  9. package/es/components/audio-sdk/src/utils/recordingDialog.d.ts +8 -0
  10. package/es/components/audio-sdk/src/utils/recordingDialog.js +1 -0
  11. package/es/components/audio-sdk/style/index.css +1 -0
  12. package/es/components/base-search/src/index.vue2.js +1 -1
  13. package/es/components/{multi-chat → biunique-chat}/index.d.ts +2 -2
  14. package/es/components/biunique-chat/index.js +1 -0
  15. package/es/components/biunique-chat/src/BiuniqueChat.vue.js +1 -0
  16. package/es/components/biunique-chat/src/BiuniqueChat.vue2.js +1 -0
  17. package/es/components/body-select/src/hooks/renderCanvas.js +1 -1
  18. package/es/components/body-select/src/index.vue2.js +1 -1
  19. package/es/components/button-print/index.d.ts +13 -0
  20. package/es/components/button-print/src/ButtonPrint.vue.d.ts +13 -0
  21. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  22. package/es/components/callback/src/components/render/popupMaps.d.ts +26 -6
  23. package/es/components/classification/index.d.ts +486 -1
  24. package/es/components/classification/src/components/search-filter/index.vue.d.ts +473 -1
  25. package/es/components/classification/src/components/search-filter/index.vue2.js +1 -1
  26. package/es/components/classification/src/components/set-classification/index.vue.d.ts +473 -1
  27. package/es/components/classification/src/index.vue.d.ts +486 -1
  28. package/es/components/classification/src/index.vue2.js +1 -1
  29. package/es/components/classification/style/index.css +1 -1
  30. package/es/components/expand-field/src/components/form.vue2.js +1 -1
  31. package/es/components/fabric-chart/index.d.ts +1 -0
  32. package/es/components/fabric-chart/src/FabricChart.vue.d.ts +1 -0
  33. package/es/components/fabric-chart/src/FabricChart.vue2.js +1 -1
  34. package/es/components/fabric-chart/src/constants/index.d.ts +4 -0
  35. package/es/components/fabric-chart/src/constants/index.js +1 -1
  36. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
  37. package/es/components/fabric-chart/src/hooks/electrocardiogram/hooks/useDetailEvent.js +1 -1
  38. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogram.js +1 -1
  39. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.d.ts +6 -0
  40. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.js +1 -1
  41. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.js +1 -1
  42. package/es/components/fabric-chart/src/hooks/temperature/useCenter.d.ts +1 -1
  43. package/es/components/fabric-chart/src/hooks/temperature/useLeft.d.ts +1 -1
  44. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  45. package/es/components/fabric-chart/src/hooks/useCumputedPoint.d.ts +3 -3
  46. package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +1 -1
  47. package/es/components/form-config/index.d.ts +104 -57
  48. package/es/components/form-config/src/FormConfig.vue.d.ts +104 -57
  49. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +26 -6
  50. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +44 -21
  51. package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +5 -5
  52. package/es/components/form-render/index.d.ts +26 -6
  53. package/es/components/form-render/index.js +1 -1
  54. package/es/components/form-render/src/FormRender.vue.d.ts +26 -6
  55. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  56. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +26 -6
  57. package/es/components/form-render/src/components/renderer/complex.js +1 -1
  58. package/es/components/form-render/src/components/renderer/date.js +1 -1
  59. package/es/components/form-render/src/components/renderer/formItem.js +1 -1
  60. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +1 -1
  61. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue2.js +1 -1
  62. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +1 -1
  63. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  64. package/es/components/form-render/src/components/renderer/select.js +1 -1
  65. package/es/components/form-render/src/components/renderer/switch.js +1 -1
  66. package/es/components/form-render/src/components/renderer/textarea.js +1 -1
  67. package/es/components/form-render/src/constants/index.d.ts +0 -1
  68. package/es/components/form-render/src/constants/index.js +1 -1
  69. package/es/components/form-render/src/hooks/index.d.ts +20 -9
  70. package/es/components/form-render/src/hooks/index.js +1 -1
  71. package/es/components/form-render/src/hooks/useAnchor.js +1 -1
  72. package/es/components/form-render/src/hooks/useBusinessBinding.d.ts +1 -1
  73. package/es/components/form-render/src/hooks/useBusinessBinding.js +1 -1
  74. package/es/components/form-render/src/hooks/useFieldVisitor.js +1 -1
  75. package/es/components/form-render/src/hooks/useFormEvent.d.ts +14 -3
  76. package/es/components/form-render/src/hooks/useFormEvent.js +1 -1
  77. package/es/components/form-render/src/hooks/useFormItemDeps.d.ts +4 -4
  78. package/es/components/form-render/src/hooks/useFormItemDeps.js +1 -1
  79. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +11 -10
  80. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  81. package/es/components/form-render/src/hooks/useFormValidator.js +1 -1
  82. package/es/components/form-render/src/hooks/useOperationalForm.d.ts +3 -2
  83. package/es/components/form-render/src/hooks/useOperationalForm.js +1 -1
  84. package/es/components/form-render/src/hooks/usePresetScope.js +1 -1
  85. package/es/components/form-render/src/hooks/useWordbookSetting.d.ts +13 -4
  86. package/es/components/form-render/src/hooks/useWordbookSetting.js +1 -1
  87. package/es/components/form-render/src/types/fieldItem.d.ts +1 -0
  88. package/es/components/form-render/src/types/index.d.ts +10 -5
  89. package/es/components/form-render/src/utils/index.d.ts +3 -16
  90. package/es/components/form-render/src/utils/index.js +1 -1
  91. package/es/components/iho-table/src/plugins/bindEventSettingPlugin/index.js +1 -1
  92. package/es/components/iho-table/src/plugins/colorAndIconPlugin.d.ts +1 -0
  93. package/es/components/iho-table/src/plugins/colorAndIconPlugin.js +1 -0
  94. package/es/components/iho-table/src/plugins/index.js +1 -1
  95. package/es/components/iho-table/src/plugins/operationalFormPlugin/index.js +1 -1
  96. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.js +1 -1
  97. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
  98. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  99. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  100. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +7 -3
  101. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue2.js +1 -1
  102. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/defaultRendererPlugin.js +1 -1
  103. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/htmlRendererPlugin.js +1 -1
  104. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/labelRendererPlugin.js +1 -1
  105. package/es/components/iho-table/src/types/index.d.ts +2 -0
  106. package/es/components/iho-table/src/utils/index.d.ts +1 -1
  107. package/es/components/iho-table/src/utils/index.js +1 -1
  108. package/es/components/iho-table/style/index.css +1 -1
  109. package/es/components/index.css +1 -1
  110. package/es/components/index.d.ts +3 -2
  111. package/es/components/index.js +1 -1
  112. package/es/components/info-header/index.d.ts +52 -12
  113. package/es/components/info-header/src/InfoHeader.vue.d.ts +52 -12
  114. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +26 -6
  115. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +26 -6
  116. package/es/components/quick-search/style/index.css +1 -1
  117. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  118. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  119. package/es/components/select-person/src/SearchMultiple.vue.d.ts +6 -0
  120. package/es/components/shortcut-setter/index.d.ts +32 -11
  121. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +32 -11
  122. package/es/components/table-export-field/src/components/ExportModal.vue.d.ts +0 -3
  123. package/es/components/table-filter/src/components/bi-filter/ValueCfg.vue.d.ts +320 -0
  124. package/es/components/table-filter/src/components/bi-filter/ValueCfg.vue.js +1 -0
  125. package/es/components/table-filter/src/components/bi-filter/ValueCfg.vue2.js +1 -0
  126. package/es/components/table-filter/src/components/bi-filter/components/Date.vue.d.ts +127 -0
  127. package/es/components/table-filter/src/components/bi-filter/components/Date.vue.js +1 -0
  128. package/es/components/table-filter/src/components/bi-filter/components/Date.vue2.js +1 -0
  129. package/es/components/table-filter/src/components/bi-filter/components/InputFilter.vue.d.ts +41 -0
  130. package/es/components/table-filter/src/components/bi-filter/components/InputFilter.vue.js +1 -0
  131. package/es/components/table-filter/src/components/bi-filter/components/InputFilter.vue2.js +1 -0
  132. package/es/components/table-filter/src/components/bi-filter/components/InputNumber.vue.d.ts +28 -0
  133. package/es/components/table-filter/src/components/bi-filter/components/InputNumber.vue.js +1 -0
  134. package/es/components/table-filter/src/components/bi-filter/components/InputNumber.vue2.js +1 -0
  135. package/es/components/table-filter/src/components/bi-filter/components/SelectFilter.vue.d.ts +51 -0
  136. package/es/components/table-filter/src/components/bi-filter/components/SelectFilter.vue.js +1 -0
  137. package/es/components/table-filter/src/components/bi-filter/components/SelectFilter.vue2.js +1 -0
  138. package/es/components/table-filter/src/components/bi-filter/components/index.d.ts +244 -0
  139. package/es/components/table-filter/src/components/bi-filter/components/index.js +1 -0
  140. package/es/components/table-filter/src/components/bi-filter/helpers/options.d.ts +14 -0
  141. package/es/components/table-filter/src/components/bi-filter/helpers/options.js +1 -0
  142. package/es/components/table-filter/src/components/bi-filter/hooks/useBiConditions.d.ts +13 -0
  143. package/es/components/table-filter/src/components/bi-filter/hooks/useBiConditions.js +1 -0
  144. package/es/components/table-filter/src/components/bi-filter/index.vue.d.ts +474 -0
  145. package/es/components/table-filter/src/components/bi-filter/index.vue.js +1 -0
  146. package/es/components/table-filter/src/components/bi-filter/index.vue2.js +1 -0
  147. package/es/components/table-filter/src/constants/index.d.ts +1 -0
  148. package/es/components/table-filter/src/constants/index.js +1 -1
  149. package/es/env.d.ts +25 -25
  150. package/es/shared/assets/img/failure.png.js +1 -1
  151. package/es/shared/assets/img/no-permission.png.js +1 -1
  152. package/es/shared/assets/img/nodata.png.js +1 -1
  153. package/es/shared/assets/img/notfound.png.js +1 -1
  154. package/es/shared/assets/img/qr.png.js +1 -1
  155. package/es/shared/assets/img/success.png.js +1 -1
  156. package/es/shared/assets/img/video.png.js +1 -1
  157. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  158. package/es/shared/assets/img/xb_big.png.js +1 -1
  159. package/es/shared/assets/img/xb_small.png.js +1 -1
  160. package/es/shared/hooks/selectHooks/useSearchContent.js +1 -1
  161. package/es/shared/package.json.js +1 -1
  162. package/es/shared/utils/business.d.ts +1 -0
  163. package/es/shared/utils/business.js +1 -1
  164. package/es/shared/utils/index.js +1 -1
  165. package/package.json +3 -2
  166. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  167. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  168. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  169. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  170. package/es/components/multi-chat/index.js +0 -1
  171. package/es/components/multi-chat/src/MultiChat.vue.js +0 -1
  172. package/es/components/multi-chat/src/MultiChat.vue2.js +0 -1
  173. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  174. package/es/shared/utils/fabricjs/index.d.ts +0 -6823
  175. package/es/shared/utils/tapable/index.d.ts +0 -139
  176. /package/es/components/{multi-chat/src/MultiChat.vue.d.ts → biunique-chat/src/BiuniqueChat.vue.d.ts} +0 -0
  177. /package/es/components/{multi-chat → biunique-chat}/src/api/index.d.ts +0 -0
  178. /package/es/components/{multi-chat → biunique-chat}/src/api/index.js +0 -0
  179. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatFooter.vue.d.ts +0 -0
  180. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatFooter.vue.js +0 -0
  181. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatFooter.vue2.js +0 -0
  182. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatHeader.vue.d.ts +0 -0
  183. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatHeader.vue.js +0 -0
  184. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatHeader.vue2.js +0 -0
  185. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatMain.vue.d.ts +0 -0
  186. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatMain.vue.js +0 -0
  187. /package/es/components/{multi-chat → biunique-chat}/src/components/ChatMain.vue2.js +0 -0
  188. /package/es/components/{multi-chat → biunique-chat}/src/components/SiderList.vue.d.ts +0 -0
  189. /package/es/components/{multi-chat → biunique-chat}/src/components/SiderList.vue.js +0 -0
  190. /package/es/components/{multi-chat → biunique-chat}/src/components/SiderList.vue2.js +0 -0
  191. /package/es/components/{multi-chat → biunique-chat}/src/utils/chatSock.d.ts +0 -0
  192. /package/es/components/{multi-chat → biunique-chat}/src/utils/chatSock.js +0 -0
  193. /package/es/components/{multi-chat → biunique-chat}/style/index.css +0 -0
package/README.md CHANGED
@@ -1,87 +1,87 @@
1
- # 安装
2
-
3
- ```shell
4
- npm i cnhis-design-vue@[版本号]
5
- # or
6
- yarn add cnhis-design-vue@[版本号] #推荐
7
- ```
8
-
9
- ## 1.全局引入
10
-
11
- ```typescript
12
- // main.ts
13
- import { createApp } from 'vue';
14
- import App from './App.vue';
15
- import 'cnhis-design-vue/es/packages/index.css';
16
- import cui from 'cnhis-design-vue';
17
-
18
- const app = createApp(App);
19
- app.use(cui).mount('#app');
20
- ```
21
-
22
- ## 2. 按需引入
23
-
24
- 组件现在支持了自动按需引入, 但是样式文件需要额外的处理
25
-
26
- ### 2.1 样式处理方式1 (按需引入样式)
27
-
28
- ```shell
29
- # 安装自动导入样式的插件
30
- npm i -d vite-plugin-style-import
31
- ```
32
-
33
- ```typescript
34
- // vite.config.ts
35
- import { defineConfig } from 'vite';
36
- import { createStyleImportPlugin } from 'vite-plugin-style-import';
37
-
38
- export default defineConfig({
39
- plugins: [
40
- // ...otherPlugins
41
- createStyleImportPlugin({
42
- libs: [
43
- {
44
- libraryName: 'cnhis-design-vue',
45
- esModule: true,
46
- ensureStyleFile: true,
47
- resolveStyle: name => {
48
- return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
49
- }
50
- }
51
- ]
52
- })
53
- ]
54
- });
55
- ```
56
-
57
- ### 2.2 样式处理方式2 (全局引入样式)
58
-
59
- ```typescript
60
- // main.ts
61
- import 'cnhis-design-vue/es/components/index.css';
62
- ```
63
-
64
- ## 3.FAQ
65
-
66
- ### 3.1 项目打包后样式丢失
67
-
68
- 处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
69
-
70
- ```typescript
71
- // vite.config.ts
72
- import { defineConfig } from 'vite';
73
-
74
- export default defineConfig({
75
- build: {
76
- rollupOptions: {
77
- // ..otherOptions
78
- output: {
79
- dir: './dist',
80
- manualChunks: {
81
- 'cnhis-vendor': ['cnhis-design-vue']
82
- }
83
- }
84
- }
85
- }
86
- });
87
- ```
1
+ # 安装
2
+
3
+ ```shell
4
+ npm i cnhis-design-vue@[版本号]
5
+ # or
6
+ yarn add cnhis-design-vue@[版本号] #推荐
7
+ ```
8
+
9
+ ## 1.全局引入
10
+
11
+ ```typescript
12
+ // main.ts
13
+ import { createApp } from 'vue';
14
+ import App from './App.vue';
15
+ import 'cnhis-design-vue/es/packages/index.css';
16
+ import cui from 'cnhis-design-vue';
17
+
18
+ const app = createApp(App);
19
+ app.use(cui).mount('#app');
20
+ ```
21
+
22
+ ## 2. 按需引入
23
+
24
+ 组件现在支持了自动按需引入, 但是样式文件需要额外的处理
25
+
26
+ ### 2.1 样式处理方式1 (按需引入样式)
27
+
28
+ ```shell
29
+ # 安装自动导入样式的插件
30
+ npm i -d vite-plugin-style-import
31
+ ```
32
+
33
+ ```typescript
34
+ // vite.config.ts
35
+ import { defineConfig } from 'vite';
36
+ import { createStyleImportPlugin } from 'vite-plugin-style-import';
37
+
38
+ export default defineConfig({
39
+ plugins: [
40
+ // ...otherPlugins
41
+ createStyleImportPlugin({
42
+ libs: [
43
+ {
44
+ libraryName: 'cnhis-design-vue',
45
+ esModule: true,
46
+ ensureStyleFile: true,
47
+ resolveStyle: name => {
48
+ return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
49
+ }
50
+ }
51
+ ]
52
+ })
53
+ ]
54
+ });
55
+ ```
56
+
57
+ ### 2.2 样式处理方式2 (全局引入样式)
58
+
59
+ ```typescript
60
+ // main.ts
61
+ import 'cnhis-design-vue/es/components/index.css';
62
+ ```
63
+
64
+ ## 3.FAQ
65
+
66
+ ### 3.1 项目打包后样式丢失
67
+
68
+ 处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
69
+
70
+ ```typescript
71
+ // vite.config.ts
72
+ import { defineConfig } from 'vite';
73
+
74
+ export default defineConfig({
75
+ build: {
76
+ rollupOptions: {
77
+ // ..otherOptions
78
+ output: {
79
+ dir: './dist',
80
+ manualChunks: {
81
+ 'cnhis-vendor': ['cnhis-design-vue']
82
+ }
83
+ }
84
+ }
85
+ }
86
+ });
87
+ ```
@@ -0,0 +1,2 @@
1
+ import audioSDK from './src/audioSDK';
2
+ export { audioSDK as CAudioSDK };
@@ -0,0 +1 @@
1
+ export{default as CAudioSDK}from"./src/audioSDK.js";
@@ -0,0 +1,28 @@
1
+ import { ComponentInternalInstance } from 'vue';
2
+ import 'recorder-core/src/engine/mp3';
3
+ import 'recorder-core/src/engine/mp3-engine';
4
+ import { AnyObject } from '../../../../es/shared/types';
5
+ export default class AudioSDK {
6
+ private recorder;
7
+ private recordingDialog;
8
+ private onProcess;
9
+ static instance: AudioSDK | null;
10
+ static serverUrl: string;
11
+ constructor();
12
+ static create(option?: AnyObject): AudioSDK;
13
+ private initRecorder;
14
+ private recorderOpen;
15
+ recorderStart(instance: ComponentInternalInstance, afterLeave: Function): Promise<{
16
+ result: string;
17
+ }>;
18
+ recorderStop({ isRecognition, allowPunctuationMark }: {
19
+ isRecognition?: boolean | undefined;
20
+ allowPunctuationMark?: boolean | undefined;
21
+ }): Promise<AnyObject>;
22
+ destroy(): void;
23
+ static audioRecognition(params: FormData): Promise<import("axios").AxiosResponse<any, any>>;
24
+ static audioRevise(params: {
25
+ file_id: string;
26
+ audio_txt: string;
27
+ }): Promise<import("axios").AxiosResponse<any, any>>;
28
+ }
@@ -0,0 +1 @@
1
+ import r from"axios";import e from"recorder-core";import"recorder-core/src/engine/mp3";import"recorder-core/src/engine/mp3-engine";import{uuidGenerator as t}from"../../../shared/utils/index.js";import{useThrottleFn as s}from"@vueuse/core";import{RecordingDialog as i}from"./utils/recordingDialog.js";const o=class{constructor(){if(this.recorder=null,this.recordingDialog=new i,this.onProcess=s(((r,e)=>{if(!this.recordingDialog.target)return;const t=this.recordingDialog.target.querySelector(".animation");if(t){const r="translateX(-50%) translateY(-50%)";if(e>.5){const s=1+.01*e;t.style.transform=r+" scale("+s+")"}else t.style.transform=r+" scale(1)"}}),200),o.instance)return o.instance;this.initRecorder(),o.instance=this}static create(r){return(null==r?void 0:r.serverUrl)&&(this.serverUrl=r.serverUrl),new o}initRecorder(){this.recorder=e({type:"mp3",sampleRate:16e3,bitRate:16,onProcess:this.onProcess})}async recorderOpen(){return this.recorder||this.initRecorder(),new Promise(((r,e)=>{this.recorder.open((()=>{r({})}),((r,t)=>{e({result:"fail",msg:r,isUserNotAllow:t})}))}))}async recorderStart(r,e){try{return await this.recorderOpen(),this.recorder.start(),await this.recordingDialog.show(r,e),Promise.resolve({result:"success"})}catch(r){return Promise.reject(r)}}recorderStop({isRecognition:r=!0,allowPunctuationMark:e=!0}){return this.recorder?(this.recordingDialog.hide(),new Promise(((s,i)=>{this.recorder.stop((async(a,n)=>{var c;const l=new File([a],`${t()}.mp3`,{type:a.type});try{let t;if(r){const r=new FormData;r.append("audio",l);const{data:s}=await o.audioRecognition(r);t=s,!e&&"success"===t.msg&&(null==(c=t.data)?void 0:c.text)&&(t.data.text=t.data.text.replace(/[??,。,.\s]/g,""))}s({result:"success",file:l,duration:n,...t?{data:t}:{}})}catch(r){i({result:"fail",msg:r})}}),(r=>{i({result:"fail",msg:r})}))}))):Promise.reject({result:"fail",msg:"请先打开麦克风录音"})}destroy(){var r;null==(r=this.recorder)||r.close(),this.recorder=null}static async audioRecognition(e){return await r.post(`${this.serverUrl}/audio/recognition`,e,{headers:{"Content-Type":"multipart/form-data"}})}static async audioRevise(e){return await r.post(`${this.serverUrl}/audio/revise`,e)}};let a=o;a.serverUrl="";export{a as default};
@@ -0,0 +1,27 @@
1
+ declare const _default: import("vue").DefineComponent<{
2
+ visible: {
3
+ type: BooleanConstructor;
4
+ default: boolean;
5
+ };
6
+ }, {
7
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
8
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
9
+ visible: {
10
+ type: BooleanConstructor;
11
+ default: boolean;
12
+ };
13
+ }>> & {}>>;
14
+ showModal: import("vue").Ref<boolean>;
15
+ close: () => void;
16
+ NModal: any;
17
+ NIcon: any;
18
+ Mic: 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<{}>>, {}>;
19
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
20
+ visible: {
21
+ type: BooleanConstructor;
22
+ default: boolean;
23
+ };
24
+ }>>, {
25
+ visible: boolean;
26
+ }>;
27
+ export default _default;
@@ -0,0 +1 @@
1
+ import r from"./recordingDialog.vue2.js";import e from"../../../../_virtual/_plugin-vue_export-helper.js";var o=e(r,[["__file","recordingDialog.vue"]]);export{o as default};
@@ -0,0 +1 @@
1
+ import{defineComponent as o,ref as e,watch as s,openBlock as i,createBlock as r,unref as t,withCtx as a,createElementVNode as n,normalizeStyle as l,createVNode as u}from"vue";import{NModal as p,NIcon as m}from"naive-ui";import{Mic as c}from"@vicons/ionicons5";import{useTheme as d}from"../../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import"lodash-es";import"@vue/shared";import"../../../../shared/utils/index.js";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";const v=n("div",{class:"animation"},null,-1);var h=o({__name:"recordingDialog",props:{visible:{type:Boolean,default:!1}},setup(o){const h=o,f=d(),k=e(!0);function w(){k.value=!1}return s((()=>h.visible),(o=>{k.value=o})),(o,e)=>(i(),r(t(p),{show:k.value,"onUpdate:show":e[0]||(e[0]=o=>k.value=o)},{default:a((()=>[n("div",{class:"c-recording-wrapper",style:l(t(f))},[v,n("div",{class:"icon-box",onClick:w},[u(t(m),{size:"60",color:"#fff",component:t(c)},null,8,["component"])])],4)])),_:1},8,["show"]))}});export{h as default};
@@ -0,0 +1,8 @@
1
+ import { ComponentInternalInstance } from 'vue';
2
+ export declare class RecordingDialog {
3
+ rendered: boolean;
4
+ target: HTMLElement | null;
5
+ static createMsg(message: string): string;
6
+ show(instance: ComponentInternalInstance, afterLeave: Function): Promise<string>;
7
+ hide(): void;
8
+ }
@@ -0,0 +1 @@
1
+ import{ref as e,render as t,createVNode as r,withCtx as n,nextTick as i}from"vue";import{createProviderWrapper as s}from"../../../../shared/utils/index.js";import o from"../components/recordingDialog.vue.js";class a{constructor(){this.rendered=!1,this.target=null}static createMsg(e){return`[PreviewDialog] ${e}`}show(l,d){return this.rendered?Promise.reject(a.createMsg("请勿重复打开弹窗")):new Promise(((a,u)=>{this.rendered=!0;const c=document.createElement("div"),m=e(!1),h=s(l);t(r(h,null,{default:n((()=>r(o,{to:c,visible:m.value,onAfterLeave:()=>function(e){if(!e.parentElement)return;v.rendered=!1,v.hide(),d(),a("success")}(c)},null)),l)}),c);const v=this;var g;g=c,document.body.appendChild(g),v.target=g,i((()=>m.value=!0))}))}hide(){var e;(null==(e=this.target)?void 0:e.parentElement)&&(this.target.parentElement.removeChild(this.target),this.target=null)}}export{a as RecordingDialog};
@@ -0,0 +1 @@
1
+ .c-recording-wrapper{align-items:center;background-color:#fff;border-radius:10px;bottom:100px;display:flex;height:350px;justify-content:center;left:calc(50% - 250px);position:fixed;width:500px}.c-recording-wrapper .animation{background-color:var(--c-primary-color-opacity2);left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) scale(1);z-index:-1}.c-recording-wrapper .animation,.c-recording-wrapper .icon-box{align-items:center;border-radius:50%;display:flex;height:90px;justify-content:center;width:90px}.c-recording-wrapper .icon-box{background-color:var(--c-primary-color);cursor:pointer}
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,provide as a,computed as i,watch as l,openBlock as n,createElementBlock as r,createElementVNode as s,createCommentVNode as o,renderSlot as c,unref as u,createVNode as f,withCtx as d,createTextVNode as m,toDisplayString as h,Fragment as p,renderList as v}from"vue";import g from"../../table-filter/src/components/render-widget/index.vue.js";import b from"../../table-filter/src/hooks/useMixins.js";import y from"../../table-filter/src/hooks/useAdvanced.js";import C from"../../table-filter/src/hooks/useRenderWidget.js";import{NButton as k,NIcon as j}from"naive-ui";import{Search as A}from"@vicons/ionicons5";import{isObject as S,cloneDeep as O}from"lodash-es";import{InjectionFilterApiConfig as x,InjectionFilterSearchConfig as F}from"../../table-filter/src/constants/index.js";const q={class:"base-search-block"},R={class:"base-container"},V={class:"bease-left"},Q={class:"base-ul"},N={key:0,class:"baseli showQuickBtn"},_=s("i",{class:"iconfont-table-filter icon-table-filter-shaixuan",style:{color:"inherit","margin-right":"6px"}},null,-1),w={key:0,class:"qqConObjCount"},E={key:1,class:"baseli"},I={key:2,class:"baseli"},P=s("i",{class:"iconfont-table-filter icon-table-filter-reset",style:{"margin-right":"6px"}},null,-1);var B=e({__name:"index",props:{showSettings:{type:Object,default:()=>({hideQuickSearch:0,hideResetBtn:0})},searchFieldList:{type:Array,default:()=>[]},qqConObjCount:{type:Number,default:0},filterApiConfig:{type:Object},appendValueConfig:{type:Object,default:()=>({})}},emits:["foldQuickSearch","onFilterSearch","handleReset","getFilterParam"],setup(e,{expose:B,emit:L}){const U=e,{outQuickSearchFn:D}=b(),{isRender:W,getRenderSearchConObj:$,isExistDefValByRenderWidget:z,resetRenderWidgetValue:M}=C(),{transformData:T,transformParams:G}=y(),H=t([]),J=t(!1),K=t([]),X=t([]);a(x,U.filterApiConfig),a(F,K);const Y=i((()=>ee("hideQuickSearch"))),Z=i((()=>ee("hideResetBtn")));function ee(e){return 0==U.showSettings[e]}function te(){L("foldQuickSearch",!0)}function ae(e={}){const t=ie()||[];!function(e,t,a=!1,i={}){let l=[];K.value.length>0&&(l=O(K.value));L("onFilterSearch",e,t,a,l,i)}(t,G(t),!0,e)}function ie(){return function(e){if(!Array.isArray(e))return[];let t=[];for(let a=0;a<e.length;a++){let i=e[a];const l=$(i);l&&t.push(l)}return t.filter((e=>e.value||Object.keys(e).includes("isAccurateSearch")))}(K.value)}function le(){!function(e){if(!Array.isArray(e))return;e.forEach((e=>{M(e)})),D.handlerInitSearchItem(e)}(K.value),L("handleReset",{targetType:"outQuickSearchReset"})}return l((()=>U.searchFieldList),(e=>{e&&e.length>0&&function(){K.value=[];let e=O(T(U.searchFieldList,{_filterApiConfig:U.filterApiConfig})).filter((e=>1==e.isShowSearch&&1==e.filterExplicit));K.value=e,D.handlerInitSearchItem(K.value),K.value.some((e=>W(e)?z(e):!!e.explicitDefaultVal))}()}),{immediate:!0,deep:!0}),l((()=>U.qqConObjCount),(e=>{const t=H.value.length||0;J.value=t+Number(e)>0&&Z.value}),{immediate:!0}),l((()=>K),(()=>{H.value=ie()||[];const e=G(H.value);J.value=H.value.length+Number(U.qqConObjCount)>0&&Z.value,L("getFilterParam",H.value,e),X.value.forEach((t=>t(e)))}),{immediate:!0,deep:!0}),l((()=>U.appendValueConfig),(e=>{if(S(e)&&Object.keys(e).length>0){const t=Object.keys(e);K.value.forEach((a=>{t.includes(a.columnName)&&(a.value=e[a.columnName])}))}}),{immediate:!0,deep:!0}),B({handleReset:le,getFilterParams:function(){const e=ie()||[];return G(e)},setFilterParams:function(e){const t=e?Object.keys(e):[];t.length>0&&K.value.forEach((a=>{var i;if(W(a)&&t.includes(a.columnName)){const t=e[a.columnName];a.value=Array.isArray(t)&&!1===(null==(i=a.widgetCfg)?void 0:i.multiple)?t[0]:t}}))},getOriginalConfig:function(){return U.searchFieldList},onFilterChange:function(e){X.value.push(e)}}),(t,a)=>(n(),r("div",q,[s("div",R,[s("div",V,[s("ul",Q,[o(" 筛选分类插槽 "),c(t.$slots,"classification"),u(Y)?(n(),r("li",N,[f(u(k),{class:"search-default",type:"default",onClick:te},{default:d((()=>[_,m(" 筛选"),e.qqConObjCount?(n(),r("span",w,"("+h(e.qqConObjCount)+")",1)):o("v-if",!0)])),_:1})])):o("v-if",!0),o(" start--筛选外显--start "),(n(!0),r(p,null,v(K.value,(e=>(n(),r(p,null,[e.isRender?(n(),r("li",{class:"baseli outQuickSearch-li",key:e._frontId},[f(g,{cfg:e,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,isAccurate:e.isAccurateSearchVal,"onUpdate:isAccurate":t=>e.isAccurateSearchVal=t,onOutFilterChange:ae},null,8,["cfg","modelValue","onUpdate:modelValue","isAccurate","onUpdate:isAccurate"])])):o("v-if",!0)],64)))),256)),o(" end--筛选外显--end "),o(" 查询按钮 "),K.value&&K.value.length>0?(n(),r("li",E,[f(u(k),{type:"primary",onClick:ae},{default:d((()=>[f(u(j),{component:u(A),size:"16",style:{"margin-right":"6px"}},null,8,["component"]),m(" 查询 ")])),_:1})])):o("v-if",!0),o(" 重置按钮 "),J.value?(n(),r("li",I,[f(u(k),{onClick:le},{default:d((()=>[P,m(" 重置 ")])),_:1})])):o("v-if",!0),o(" 业务按钮插槽 "),c(t.$slots,"buttons")])])])]))}});export{B as default};
1
+ import{defineComponent as e,ref as t,provide as a,computed as i,watch as l,openBlock as n,createElementBlock as r,createElementVNode as s,createCommentVNode as o,renderSlot as c,unref as u,createVNode as f,withCtx as d,createTextVNode as m,toDisplayString as h,Fragment as p,renderList as v}from"vue";import g from"../../table-filter/src/components/render-widget/index.vue.js";import b from"../../table-filter/src/hooks/useMixins.js";import y from"../../table-filter/src/hooks/useAdvanced.js";import C from"../../table-filter/src/hooks/useRenderWidget.js";import{NButton as k,NIcon as j}from"naive-ui";import{Search as A}from"@vicons/ionicons5";import{isObject as S,cloneDeep as O}from"lodash-es";import{InjectionFilterApiConfig as x,InjectionFilterSearchConfig as F}from"../../table-filter/src/constants/index.js";const q={class:"base-search-block"},R={class:"base-container"},V={class:"bease-left"},Q={class:"base-ul"},N={key:0,class:"baseli showQuickBtn"},_=s("i",{class:"iconfont-table-filter icon-table-filter-shaixuan",style:{color:"inherit","margin-right":"6px"}},null,-1),w={key:0,class:"qqConObjCount"},E={class:"baseli"},I={key:1,class:"baseli"},P={key:2,class:"baseli"},B=s("i",{class:"iconfont-table-filter icon-table-filter-reset",style:{"margin-right":"6px"}},null,-1);var L=e({__name:"index",props:{showSettings:{type:Object,default:()=>({hideQuickSearch:0,hideResetBtn:0})},searchFieldList:{type:Array,default:()=>[]},qqConObjCount:{type:Number,default:0},filterApiConfig:{type:Object},appendValueConfig:{type:Object,default:()=>({})}},emits:["foldQuickSearch","onFilterSearch","handleReset","getFilterParam"],setup(e,{expose:L,emit:U}){const D=e,{outQuickSearchFn:W}=b(),{isRender:$,getRenderSearchConObj:z,isExistDefValByRenderWidget:M,resetRenderWidgetValue:T}=C(),{transformData:G,transformParams:H}=y(),J=t([]),K=t(!1),X=t([]),Y=t([]);a(x,D.filterApiConfig),a(F,X);const Z=i((()=>te("hideQuickSearch"))),ee=i((()=>te("hideResetBtn")));function te(e){return 0==D.showSettings[e]}function ae(){U("foldQuickSearch",!0)}function ie(e={}){const t=le()||[];!function(e,t,a=!1,i={}){let l=[];X.value.length>0&&(l=O(X.value));U("onFilterSearch",e,t,a,l,i)}(t,H(t),!0,e)}function le(){return function(e){if(!Array.isArray(e))return[];let t=[];for(let a=0;a<e.length;a++){let i=e[a];const l=z(i);l&&t.push(l)}return t.filter((e=>e.value||Object.keys(e).includes("isAccurateSearch")))}(X.value)}function ne(){!function(e){if(!Array.isArray(e))return;e.forEach((e=>{T(e)})),W.handlerInitSearchItem(e)}(X.value),U("handleReset",{targetType:"outQuickSearchReset"})}return l((()=>D.searchFieldList),(e=>{e&&e.length>0&&function(){X.value=[];let e=O(G(D.searchFieldList,{_filterApiConfig:D.filterApiConfig})).filter((e=>1==e.isShowSearch&&1==e.filterExplicit));X.value=e,W.handlerInitSearchItem(X.value),X.value.some((e=>$(e)?M(e):!!e.explicitDefaultVal))}()}),{immediate:!0,deep:!0}),l((()=>D.qqConObjCount),(e=>{const t=J.value.length||0;K.value=t+Number(e)>0&&ee.value}),{immediate:!0}),l((()=>X),(()=>{J.value=le()||[];const e=H(J.value);K.value=J.value.length+Number(D.qqConObjCount)>0&&ee.value,U("getFilterParam",J.value,e),Y.value.forEach((t=>t(e)))}),{immediate:!0,deep:!0}),l((()=>D.appendValueConfig),(e=>{if(S(e)&&Object.keys(e).length>0){const t=Object.keys(e);X.value.forEach((a=>{t.includes(a.columnName)&&(a.value=e[a.columnName])}))}}),{immediate:!0,deep:!0}),L({handleReset:ne,getFilterParams:function(){const e=le()||[];return H(e)},setFilterParams:function(e){const t=e?Object.keys(e):[];t.length>0&&X.value.forEach((a=>{var i;if($(a)&&t.includes(a.columnName)){const t=e[a.columnName];a.value=Array.isArray(t)&&!1===(null==(i=a.widgetCfg)?void 0:i.multiple)?t[0]:t}}))},getOriginalConfig:function(){return D.searchFieldList},onFilterChange:function(e){Y.value.push(e)}}),(t,a)=>(n(),r("div",q,[s("div",R,[s("div",V,[s("ul",Q,[o(" 筛选分类插槽 "),c(t.$slots,"classification"),u(Z)?(n(),r("li",N,[f(u(k),{class:"search-default",type:"default",onClick:ae},{default:d((()=>[_,m(" 筛选"),e.qqConObjCount?(n(),r("span",w,"("+h(e.qqConObjCount)+")",1)):o("v-if",!0)])),_:1})])):o("v-if",!0),o(" start--筛选外显--start "),(n(!0),r(p,null,v(X.value,(e=>(n(),r(p,null,[e.isRender?(n(),r("li",{class:"baseli outQuickSearch-li",key:e._frontId},[f(g,{cfg:e,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,isAccurate:e.isAccurateSearchVal,"onUpdate:isAccurate":t=>e.isAccurateSearchVal=t,onOutFilterChange:ie},null,8,["cfg","modelValue","onUpdate:modelValue","isAccurate","onUpdate:isAccurate"])])):o("v-if",!0)],64)))),256)),o(" end--筛选外显--end "),s("div",E,[o(" 业务组件插槽 "),c(t.$slots,"modules")]),o(" 查询按钮 "),X.value&&X.value.length>0?(n(),r("li",I,[f(u(k),{type:"primary",onClick:ie},{default:d((()=>[f(u(j),{component:u(A),size:"16",style:{"margin-right":"6px"}},null,8,["component"]),m(" 查询 ")])),_:1})])):o("v-if",!0),o(" 重置按钮 "),K.value?(n(),r("li",P,[f(u(k),{onClick:ne},{default:d((()=>[B,m(" 重置 ")])),_:1})])):o("v-if",!0),o(" 业务按钮插槽 "),c(t.$slots,"buttons")])])])]))}});export{L as default};
@@ -1,5 +1,5 @@
1
1
  import { SFCWithInstall } from '../../../es/shared/types';
2
- declare const MultiChat: SFCWithInstall<import("vue").DefineComponent<{
2
+ declare const BiuniqueChat: SFCWithInstall<import("vue").DefineComponent<{
3
3
  data: {
4
4
  type: import("vue").PropType<{
5
5
  chatType: string | number;
@@ -1020,4 +1020,4 @@ declare const MultiChat: SFCWithInstall<import("vue").DefineComponent<{
1020
1020
  source: string | number;
1021
1021
  };
1022
1022
  }>>;
1023
- export default MultiChat;
1023
+ export default BiuniqueChat;
@@ -0,0 +1 @@
1
+ import{COMPONENT_NAMESPACE as i}from"../../shared/global/variable.js";import{safeComponentRegister as r}from"../../shared/utils/index.js";import t from"./src/BiuniqueChat.vue.js";const a=t;a.install=function(t){r(t,a,i+"BiuniqueChat")};export{a as default};
@@ -0,0 +1 @@
1
+ import e from"./BiuniqueChat.vue2.js";import u from"../../../_virtual/_plugin-vue_export-helper.js";var i=u(e,[["__file","BiuniqueChat.vue"]]);export{i as default};
@@ -0,0 +1 @@
1
+ import{defineComponent as e,ref as s,reactive as t,provide as n,openBlock as o,createBlock as r,unref as i,withCtx as a,createVNode as c}from"vue";import{NSpin as u,NLayout as d,NLayoutSider as m,NLayoutContent as l}from"naive-ui";import f from"./components/SiderList.vue.js";import p from"./components/ChatHeader.vue.js";import g from"./components/ChatMain.vue.js";import S from"./components/ChatFooter.vue.js";import{promiseTimeout as I}from"@vueuse/shared";import{ChatSock as h}from"./utils/chatSock.js";import{accessApi as b,readMessageApi as y}from"./api/index.js";import{format as v}from"date-fns";var C=e({__name:"BiuniqueChat",props:{data:{type:Object,default:()=>({})},baseURL:{type:String,defalut:"/"}},setup(e){const C=e,_=s(!1),w=s(!1);let M;const L=t({reConnention:0,currentSessionItem:{},currentSessionId:"",userInfo:{},msgList:[],currentMsg:{},isAppendMsg:!1,sessionList:[],isChangeSession:!1,updateSessionItem:{},isUpdateSession:!1});function j(){const e={heartbeatFn:()=>{try{null==M||M.send("test")}catch(e){null==M||M.disconnect(),j()}},connectCb:()=>{console.log("连接成功"),L.reConnention>0&&(L.reConnention=0),M.subscribe(`/user/${L.userInfo.username}/message`,(e=>{try{const s=JSON.parse(e.body),{body:t,from:n,id:o,fromName:r,readStatus:i,createdTime:a,sessionId:c}=s;if(c!==L.currentSessionId)return;N({createdTime:a,readStatus:i,content:t,fromId:n,id:o,fromName:r,senderFlag:1}),O(!0),async function(){await y({sessionId:L.currentSessionId,from:L.userInfo.username,id:L.currentMsg.id})}()}catch(e){console.log(e)}})),M.subscribe(`/user/${L.userInfo.username}/sessionList`,(e=>{var s;try{const t=JSON.parse(e.body),n={__time:v(new Date(t.sendTime),"MM/dd HH:mm"),__lastContent:(null==(s=t.lastContent)?void 0:s.content)||"",id:t.sessionId};if(0==t.opt){const e=t.name||t.fromName||t.toName;U([{...t,name:e,__name:e.slice(-2),...n},...L.sessionList])}else 1==t.opt&&(L.updateSessionItem={...t,...n},k(!0))}catch(e){console.log(e)}})),M.subscribe(`/user/${L.userInfo.username}/msgReadStatus`,(e=>{try{if(!L.currentSessionId)return;const s=JSON.parse(e.body);if(s.sessionId!==L.currentSessionId)return;const t=(null==s?void 0:s.readStatus)||{};if(Object.keys(t).length<1)return}catch(e){console.log(e)}}))},errorCb:(e,s)=>{L.reConnention=s,console.log("断线了,正在重连...")}};M=new h(`${C.baseURL}/stomp`,e)}function N(e){L.currentMsg=e}function O(e){L.isAppendMsg=e}function U(e){L.sessionList=e}function k(e){L.isUpdateSession=e}async function H(e){e||await I(300),_.value=e}return n("state",L),n("setCurrentSessionItem",(function(e){if(Object.assign(L.currentSessionItem,e),L.currentSessionId===L.currentSessionItem.id)return;L.currentSessionId=L.currentSessionItem.id,L.msgList=[]})),n("setMsgList",(function(e=[]){L.msgList=e.map((e=>{var s;return{...e,__time:v(new Date(e.createdTime),"MM/dd HH:mm"),__content:null==(s=e.content)?void 0:s.content,__left:1==e.senderFlag}}))})),n("setCurrentMsg",N),n("setIsAppendMsg",O),n("setSessionList",U),n("setIsChangeSession",(function(e){L.isChangeSession=e})),n("setIsUpdateSession",k),async function(){await async function(){if(Object.values(C.data).some((e=>!String(e))))return console.log("缺少参数");try{w.value=!0;const e=await b(C.data);L.userInfo=e}catch(e){console.log(e)}finally{w.value=!1}}(),j()}(),(e,s)=>w.value?(o(),r(i(u),{key:0,stroke:"#5585f5"})):(o(),r(i(d),{key:1,class:"c-multi-chat","has-sider":""},{default:a((()=>[c(i(m),{"collapse-mode":"width","collapsed-width":100,width:300,"show-trigger":"arrow-circle","content-style":"padding: 20px;",bordered:"","onUpdate:collapsed":H},{default:a((()=>[c(f,{collapsed:_.value},null,8,["collapsed"])])),_:1}),c(i(l),{class:"chat-wrapper"},{default:a((()=>[c(p),c(g),c(S)])),_:1})])),_:1}))}});export{C as default};
@@ -1 +1 @@
1
- import{ref as e}from"vue";import{fabric as t}from"../../../../shared/utils/fabricjs/index.js";function o(o,n,r,{props:l,emits:s}){const c=e({});return function(){if(o){const e=[];Object.keys(n).forEach((o=>{!function(e,o){const n=new t.Path(o,{fill:"",stroke:"#333",strokeWidth:2,hoverCursor:"default",evented:!0,selectable:!1,name:e});n.isSelectMode=!1,c.value[e]=n}(o,n[o]),e.push(c.value[o])}));const u=new t.Group(e,{originX:"left",originY:"top",left:0,scaleX:r,scaleY:r,evented:!0,selectable:!1,hoverCursor:"default",subTargetCheck:!0});return u.forEachObject((e=>{e.on("mouseover",(function(){e.set("fill",l.fillColor),o.renderAll()})),e.on("mouseout",(function(){e.isSelectMode||(e.set("fill",""),o.renderAll())})),e.on("mousedown",(function(){const t=!e.isSelectMode;s("select",e.name,t)}))})),o.add(u),o.centerObject(u),{canvas:o,data:c.value}}return null}()}export{o as default};
1
+ import{ref as e}from"vue";import{fabric as t}from"../../../../shared/utils/fabricjs/index.js";function o(o,l,n,{props:r,emits:s}){const i=e({}),c={};return function(){if(o){const e=[];Object.keys(l).forEach((o=>{!function(e,o){const l=new t.Path(o,{fill:"",stroke:"#333",strokeWidth:2,hoverCursor:"pointer",evented:!0,selectable:!1,name:e});l.isSelectMode=!1,i.value[e]=l}(o,l[o]),e.push(i.value[o])}));const u=new t.Group(e,{originX:"left",originY:"top",left:0,scaleX:n,scaleY:n,evented:!0,selectable:!1,hoverCursor:"pointer",subTargetCheck:!0});return u.forEachObject((e=>{e.on("mouseover",(function(){e.set("fill",r.fillColor),c[e.name]=e,setTimeout((()=>{var t,l;t=c,l=e.name,Object.keys(t).filter((e=>!t[e].isSelectMode&&t[e].name!==l)).forEach((e=>{t[e].set("fill",""),delete t[e]})),o.requestRenderAll()}),10)})),e.on("mouseout",(function(){e.fill&&(e.isSelectMode||(e.set("fill",""),delete c[e.name],o.requestRenderAll()))})),e.on("mousedown",(function(){const t=!e.isSelectMode;s("select",e.name,t)}))})),u.on("mouseout",(function(){Object.keys(c).filter((e=>!c[e].isSelectMode)).forEach((e=>{c[e].fill&&(c[e].set("fill",""),delete c[e])})),o.requestRenderAll()})),o.add(u),o.centerObject(u),{canvas:o,data:i.value}}return null}()}export{o as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as a,watch as l,onMounted as s,onBeforeUnmount as t,openBlock as n,createElementBlock as c,createElementVNode as o}from"vue";import{isObject as r}from"lodash-es";import{fabric as i}from"../../../shared/utils/fabricjs/index.js";import{frontCanvasParams as u,palmCanvasParams as v,backCanvasParams as f}from"./config/index.js";import d from"./hooks/renderCanvas.js";const m={class:"c-body-select"},p={class:"canvas-module"},h=o("span",null,"正面",-1),g={class:"canvas-module"},b=o("span",null,"手",-1),k={class:"canvas-module"},j=o("span",null,"背面",-1);var y=e({__name:"index",props:{setting:{type:Object,default:()=>({})},fillColor:{type:String,default:"#E5E5E5"},canvasWidth:{type:Number,default:920}},emits:["select"],setup(e,{emit:y}){const w=e,C=a(null),O=a(),S=a(null),x=a(),E=a(null),_=a(),R=a([]),F=Number((w.canvasWidth/920).toFixed(2));function M(e,a){R.value.forEach((l=>{const s=l.data,t=Object.keys(s),n=Object.keys(e);t.forEach((l=>{a&&a(s,l),s[l].set("fill",""),s[l].set("isSelectMode",!1),n.includes(l)&&e[l]&&(s[l].set("fill",w.fillColor),s[l].set("isSelectMode",!0))})),l.canvas.renderAll()}))}return l((()=>w.setting),(e=>{e&&r(e)&&M(e)}),{deep:!0}),s((async()=>{const e={props:w,emits:y};O.value=new i.Canvas(C.value,{width:360*F,height:700*F,backgroundColor:"#fff",selection:!1,preserveObjectStacking:!0}),_.value=new i.Canvas(E.value,{width:200*F,height:150*F,backgroundColor:"#fff",selection:!1,preserveObjectStacking:!0}),x.value=new i.Canvas(S.value,{width:360*F,height:700*F,backgroundColor:"#fff",selection:!1,preserveObjectStacking:!0});const a=await d(O.value,u,F,e),l=await d(_.value,v,F,e),s=await d(x.value,f,F,e);a&&s&&l&&(R.value=[a,l,s],M(w.setting,((e,a)=>{["1","4","8","22","18"].includes(a)&&e[a].moveTo(100)})))})),t((()=>{O.value.clear(),x.value.clear(),_.value.clear()})),(e,a)=>(n(),c("div",m,[o("div",p,[o("canvas",{ref_key:"canvasFrontRef",ref:C},null,512),h]),o("div",g,[o("canvas",{ref_key:"canvasPalmsRef",ref:E},null,512),b]),o("div",k,[o("canvas",{ref_key:"canvasBackRef",ref:S},null,512),j])]))}});export{y as default};
1
+ import{defineComponent as e,ref as a,watch as l,onMounted as s,onBeforeUnmount as t,openBlock as n,createElementBlock as c,createElementVNode as o}from"vue";import{isObject as r}from"lodash-es";import{fabric as i}from"../../../shared/utils/fabricjs/index.js";import{frontCanvasParams as u,palmCanvasParams as v,backCanvasParams as f}from"./config/index.js";import d from"./hooks/renderCanvas.js";const m={class:"c-body-select"},p={class:"canvas-module"},h=o("span",null,"正面",-1),g={class:"canvas-module"},b=o("span",null,"手",-1),k={class:"canvas-module"},j=o("span",null,"背面",-1);var y=e({__name:"index",props:{setting:{type:Object,default:()=>({})},fillColor:{type:String,default:"#E5E5E5"},canvasWidth:{type:Number,default:920}},emits:["select"],setup(e,{emit:y}){const w=e,C=a(null),O=a(),S=a(null),x=a(),E=a(null),_=a(),R=a([]),F=Number((w.canvasWidth/920).toFixed(2));function M(e,a){R.value.forEach((l=>{const s=l.data,t=Object.keys(s),n=Object.keys(e);t.forEach((l=>{a&&a(s,l),s[l].set("fill",""),s[l].set("isSelectMode",!1),n.includes(l)&&e[l]&&(s[l].set("fill",w.fillColor),s[l].set("isSelectMode",!0))})),l.canvas.requestRenderAll()}))}return l((()=>w.setting),(e=>{e&&r(e)&&M(e)}),{deep:!0}),s((async()=>{const e={props:w,emits:y};O.value=new i.Canvas(C.value,{width:360*F,height:700*F,backgroundColor:"#fff",selection:!1,preserveObjectStacking:!0}),_.value=new i.Canvas(E.value,{width:200*F,height:150*F,backgroundColor:"#fff",selection:!1,preserveObjectStacking:!0}),x.value=new i.Canvas(S.value,{width:360*F,height:700*F,backgroundColor:"#fff",selection:!1,preserveObjectStacking:!0});const a=await d(O.value,u,F,e),l=await d(_.value,v,F,e),s=await d(x.value,f,F,e);a&&s&&l&&(R.value=[a,l,s],M(w.setting,((e,a)=>{["1","4","8","22","18"].includes(a)&&e[a].moveTo(100)})))})),t((()=>{O.value.clear(),x.value.clear(),_.value.clear()})),(e,a)=>(n(),c("div",m,[o("div",p,[o("canvas",{ref_key:"canvasFrontRef",ref:C},null,512),h]),o("div",g,[o("canvas",{ref_key:"canvasPalmsRef",ref:E},null,512),b]),o("div",k,[o("canvas",{ref_key:"canvasBackRef",ref:S},null,512),j])]))}});export{y as default};
@@ -78,6 +78,10 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
78
78
  signature: {
79
79
  type: StringConstructor;
80
80
  };
81
+ showLoading: {
82
+ type: BooleanConstructor;
83
+ default: boolean;
84
+ };
81
85
  }, {
82
86
  $message: import("naive-ui").MessageApi;
83
87
  printInstance: import("./src/utils").Print | null;
@@ -158,6 +162,10 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
158
162
  signature: {
159
163
  type: StringConstructor;
160
164
  };
165
+ showLoading: {
166
+ type: BooleanConstructor;
167
+ default: boolean;
168
+ };
161
169
  }>> & {
162
170
  onError?: ((...args: any[]) => any) | undefined;
163
171
  onSuccess?: ((...args: any[]) => any) | undefined;
@@ -1923,6 +1931,10 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
1923
1931
  signature: {
1924
1932
  type: StringConstructor;
1925
1933
  };
1934
+ showLoading: {
1935
+ type: BooleanConstructor;
1936
+ default: boolean;
1937
+ };
1926
1938
  }>> & {
1927
1939
  onError?: ((...args: any[]) => any) | undefined;
1928
1940
  onSuccess?: ((...args: any[]) => any) | undefined;
@@ -1947,5 +1959,6 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
1947
1959
  options: import("../../../es/shared/types").AnyObject[];
1948
1960
  onSelect: (key: string | number, option: import("../../../es/shared/types").AnyObject) => void;
1949
1961
  }>;
1962
+ showLoading: boolean;
1950
1963
  }>>;
1951
1964
  export default ButtonPrint;
@@ -82,6 +82,10 @@ declare const _default: import("vue").DefineComponent<{
82
82
  signature: {
83
83
  type: StringConstructor;
84
84
  };
85
+ showLoading: {
86
+ type: BooleanConstructor;
87
+ default: boolean;
88
+ };
85
89
  }, {
86
90
  $message: import("naive-ui").MessageApi;
87
91
  printInstance: Print | null;
@@ -165,6 +169,10 @@ declare const _default: import("vue").DefineComponent<{
165
169
  signature: {
166
170
  type: StringConstructor;
167
171
  };
172
+ showLoading: {
173
+ type: BooleanConstructor;
174
+ default: boolean;
175
+ };
168
176
  }>> & {
169
177
  onError?: ((...args: any[]) => any) | undefined;
170
178
  onSuccess?: ((...args: any[]) => any) | undefined;
@@ -1933,6 +1941,10 @@ declare const _default: import("vue").DefineComponent<{
1933
1941
  signature: {
1934
1942
  type: StringConstructor;
1935
1943
  };
1944
+ showLoading: {
1945
+ type: BooleanConstructor;
1946
+ default: boolean;
1947
+ };
1936
1948
  }>> & {
1937
1949
  onError?: ((...args: any[]) => any) | undefined;
1938
1950
  onSuccess?: ((...args: any[]) => any) | undefined;
@@ -1957,5 +1969,6 @@ declare const _default: import("vue").DefineComponent<{
1957
1969
  options: AnyObject[];
1958
1970
  onSelect: (key: string | number, option: AnyObject) => void;
1959
1971
  }>;
1972
+ showLoading: boolean;
1960
1973
  }>;
1961
1974
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as t,reactive as e,computed as r,onMounted as a,watch as n,openBlock as i,createElementBlock as s,Fragment as o,createVNode as l,unref as m,withCtx as p,renderSlot as d,withModifiers as u,createTextVNode as c,toDisplayString as f,mergeProps as v}from"vue";import{isObject as y}from"@vue/shared";import{useMessage as b,NDropdown as g,NButton as I,NIcon as P}from"naive-ui";import{ChevronDown as w}from"@vicons/ionicons5";import{Print as h}from"./utils/print.js";import{isIReport as F}from"./utils/browserPrint.js";import k from"./components/IdentityVerification.vue.js";import{format as T}from"date-fns";import{savePrivateFormatApi as x,getPrivateFormatApi as S}from"./api.js";var D=t({__name:"ButtonPrint",props:{printParams:{type:Array},params:{default:()=>[],type:Array},btnText:{default:"打印",type:String},printText:{default:"直接打印",type:String},previewText:{default:"打印预览",type:String},pdfLoadText:{default:"下载pdf",type:String},formatEditText:{default:"格式编辑",type:String},prevFn:{default:()=>Promise.resolve(),type:Function},queryPrintFormatByNumber:{default:()=>Promise.resolve({}),type:Function},queryTemplateParams:{default:()=>Promise.resolve({}),type:Function},strategy:{default:"MULTI",type:String},clickPrevFn:{default:()=>Promise.resolve(!0),type:Function},noDataMsg:{default:"请选中需要打印的数据",type:String},token:{type:String},printdlgshow:{default:"0",type:String},btnprint:{type:String,default:"1"},directPrint:{type:Boolean,default:!1},externalOptionConfig:{type:Object,default:()=>({})},signature:{type:String}},emits:["success","error","clickoutside"],setup(t,{expose:D,emit:O}){var j;const E=t,L=b();let M;const N={},V=e({spinning:!1,visible:!1,formatList:[],templateParams:{},printParams:[],currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null}),C=e([{label:E.printText,key:"printText"},{label:E.previewText,key:"previewText"},{label:E.pdfLoadText,key:"downloadPdf"},{label:E.formatEditText,key:"formatEditText"},...(null==(j=E.externalOptionConfig)?void 0:j.options)||[]]),Y=r((()=>{if(!V.currentFormatId)return{};let t=V.currentFormatId;return V.formatList.find((e=>e.id===t))})),J=r((()=>{var t;return(null==(t=Y.value)?void 0:t.name)||"格式选择"})),U=r((()=>{let t=V.formatList.find((t=>t.id===V.currentFormatId));return null==t?void 0:t.templateId})),A=async t=>{if(E.directPrint){if(V.spinning)return;return"button"===t?void await nt():et()}return et()},B=t=>l("span",{class:{active:t.key===V.currentFormatId}},[t.label]),q=(t,e)=>{let r={type:e,formatId:V.currentFormatId,templateId:U.value};O("success",t,r)},R=t=>{O("error",t),y(t)&&"notInstalledApp"===t.type&&L.error(t.message)},_=t=>{O("error",{message:"前置条件执行错误",type:t,preExecution:!0})},z=(t=0)=>{var e;const r=(null==(e=E.printParams)?void 0:e.length)?E.printParams[t]:V.printParams[t];return JSON.stringify({...r||{},...E.token?{token:E.token}:{}})},H=()=>{var t,e;let r={},a={};if(null==(t=V.templateParams.customizeDataset)?void 0:t.length){const t=(null==(e=Object.keys(V.printParams[0].datasetData||{}))?void 0:e[0])||"",r=JSON.stringify(V.printParams.map((e=>JSON.parse(e.datasetData[t]))));a={datasetData:{}},a.datasetData[t]=r}else Object.keys(V.printParams[0]).forEach((t=>{a[t]=[],V.printParams.forEach((e=>{a[t].push(e[t])})),a[t]=a[t].join(",")}));return r=Object.assign({},JSON.parse(z(0)),a),JSON.stringify(r)},$=()=>{let t=V.printParams.length;const e=async e=>{try{--t<=0&&q(e,"print")}catch(t){console.log("error",t)}};E.prevFn("print").then((()=>{const t={formatId:V.currentFormatId,templateId:U.value,printdlgshow:E.printdlgshow,signature:E.signature};if("MULTI"===E.strategy)for(let r=0;r<V.printParams.length;r++)r>0&&(t.printdlgshow="0"),M.printDirect({...t,params:z(r)},e,R);else M.printDirect({...t,params:H()},(t=>{q(t,"print")}),R)})).catch((()=>{_("print")})).finally((()=>{V.visible=!1}))},G=async(t,e)=>{var r,a;switch(t){case"printText":$();break;case"previewText":(async()=>{E.prevFn("preview").then((()=>{const t="MULTI"===E.strategy?z():H(),e={formatId:V.currentFormatId,templateId:U.value,params:t,btnprint:E.btnprint,signature:E.signature};M.preview(e,(t=>{q(t,"preview")}),R)})).catch((()=>{_("preview")})).finally((()=>{V.visible=!1}))})();break;case"formatEditText":E.prevFn("edit").then((()=>{V.identityVerification.visible=!0})).catch((()=>{_("edit")})).finally((()=>{V.visible=!1}));break;case"downloadPdf":(async()=>{E.prevFn("download").then((()=>{const t="MULTI"===E.strategy?z():H(),e={formatId:V.currentFormatId,templateId:U.value,print:{print:"1",type:"1"},params:t,signature:E.signature};M.downloadPDF(e,(t=>q(t,"preview")),R)})).catch((()=>{_("download")})).finally((()=>{V.visible=!1}))})();break;default:{V.visible=!1;const n=V.formatList.find((e=>e.id===t))||{};if(Object.keys(n).length>0){V.currentFormatId=t;const[e]=C;e.label=(null==n?void 0:n.name)||e.label,await x({formatForms:[{...n}],name:N.name||n.templateName,number:N.number||n.number,templateId:N.templateId||n.templateId,...N.id?{id:N.id}:{}},{token:E.token})}else null==(a=null==(r=E.externalOptionConfig)?void 0:r.onSelect)||a.call(r,t,e);break}}},K=()=>{V.visible=!1,O("clickoutside")},Q=()=>(V.isInited=!1,V.spinning=!1,setTimeout((()=>{V.visible=!1}),0),!1),W=(t,e,r)=>{const a={};return e.forEach((e=>{let n=((t,e)=>{const r={DATE:"YYYY-MM-DD",DATETIME:"YYYY-MM-DD HH:mm:ss"};let a=e;return Object.keys(r).includes(t.type)&&e&&(a=T(e,r[t.type])),(null==t?void 0:t.defaultValue)||a})(e,t[e[r]]);t[e[r]]&&n&&(a[e[r]]=n)})),a},X=({customizeDataset:t=[],param:e=[]},r=[])=>r.map((r=>{let a={};return t.forEach((t=>{const e=t.dataSetting[0].selectFieldList;a.datasetData={[t.name]:JSON.stringify(W(r,e,"fieldName"))}})),a=Object.assign({},a,W(r,e,"key")),a})),Z=async t=>{var e;if(V.formatList=t?(t=>{let e=[];return t&&t.forEach((t=>{if(!t.format)return!1;e.push(...t.format.map((e=>Object.assign({},e,{templateName:t.name}))))})),e})(t.obj):[],V.currentFormatId=await(async(t,e)=>{var r;if(!(null==t?void 0:t.length))return"";const{data:a}=await S({templateId:t[0].templateId},{token:E.token});if("SUCCESS"===a.result){const{formatForms:e=[]}=a.map||{};Object.assign(N,a.map||{});const n=null==(r=null==e?void 0:e[0])?void 0:r.id;if(n&&t.map((t=>t.id)).includes(n))return n}const n=t.find((t=>1==t[e]));return(null==n?void 0:n.id)||t[0].id})(V.formatList,"defaultFlag"),!V.currentFormatId)return L.error("获取打印格式失败,请联系管理员!"),Q();(()=>{const t=V.formatList.map((t=>({label:t.name,key:t.id})));C.unshift({label:J.value,key:"format",children:t})})();let r=null==(e=await E.queryTemplateParams())?void 0:e.obj;if(!r||!U.value)return L.error("获取打印模板失败,请联系管理员!"),Q();V.templateParams=r,V.printParams=X(V.templateParams,E.params)},tt=async()=>{if(V.isInited)return!0;V.isInited=!0,V.spinning=!0,(()=>{if(M)return!1;M=new h})();const t=await E.queryPrintFormatByNumber();return await Z(t),V.spinning=!1,!0},et=async(t=!0)=>{var e;if(await E.clickPrevFn())if(null==(e=E.params)?void 0:e.length){if(!V.visible){if(!await tt())return!1}t&&(V.visible=!V.visible)}else L.warning(E.noDataMsg)},rt=()=>{V.watchPrintParamsReformatFn&&V.watchPrintParamsReformatFn(),V.isInited?V.printParams=X(V.templateParams,E.params):V.watchPrintParamsReformatFn=()=>n((()=>V.isInited),(t=>{if(!t)return!1;rt()}))},at=t=>{if(V.identityVerification.visible=!1,F(V.currentFormatId))return q(null,"edit");const e={formatId:V.currentFormatId,templateId:U.value,params:z(),token:t};M.editPrintFormat(e,(t=>{q(t,"edit")}),R)};async function nt(){await et(!1),$()}return a((()=>{V.isInited=!1})),n((()=>E.params),(t=>{if(!(null==t?void 0:t.length))return!1;rt()}),{deep:!0}),D({directPrint:nt}),(e,r)=>(i(),s(o,null,[l(m(g),{class:"c-dropdown",placement:"bottom-start",trigger:"click",show:V.visible,onClickoutside:K,options:C,onSelect:G,"render-label":B},{default:p((()=>[d(e.$slots,"button",{handleClickPrintBtn:et,printSpinning:V.spinning,printbtnText:t.btnText,printVisible:V.visible},(()=>[l(m(I),{class:"dropdown-button",onClick:r[1]||(r[1]=u((()=>A("button")),["stop"]))},{default:p((()=>[c(f(t.btnText)+" ",1),l(m(P),{component:m(w),style:{"margin-left":"5px"},onClick:r[0]||(r[0]=u((()=>A("icon")),["stop"]))},null,8,["component"])])),_:1})]))])),_:3},8,["show","options"]),l(k,v(e.$attrs,{modelValue:V.identityVerification.visible,"onUpdate:modelValue":r[2]||(r[2]=t=>V.identityVerification.visible=t),formatId:V.currentFormatId,templateId:m(U),onSuccess:at}),null,16,["modelValue","formatId","templateId"])],64))}});export{D as default};
1
+ import{defineComponent as t,reactive as e,computed as n,onMounted as i,watch as r,openBlock as a,createElementBlock as s,Fragment as o,createVNode as l,unref as p,withCtx as d,renderSlot as m,withModifiers as u,createTextVNode as c,toDisplayString as f,mergeProps as g}from"vue";import{isObject as y}from"@vue/shared";import{useMessage as v,NDropdown as b,NButton as I,NIcon as P}from"naive-ui";import{ChevronDown as h}from"@vicons/ionicons5";import{Print as w}from"./utils/print.js";import{isIReport as F}from"./utils/browserPrint.js";import k from"./components/IdentityVerification.vue.js";import{format as T}from"date-fns";import{savePrivateFormatApi as x,getPrivateFormatApi as S}from"./api.js";var L=t({__name:"ButtonPrint",props:{printParams:{type:Array},params:{default:()=>[],type:Array},btnText:{default:"打印",type:String},printText:{default:"直接打印",type:String},previewText:{default:"打印预览",type:String},pdfLoadText:{default:"下载pdf",type:String},formatEditText:{default:"格式编辑",type:String},prevFn:{default:()=>Promise.resolve(),type:Function},queryPrintFormatByNumber:{default:()=>Promise.resolve({}),type:Function},queryTemplateParams:{default:()=>Promise.resolve({}),type:Function},strategy:{default:"MULTI",type:String},clickPrevFn:{default:()=>Promise.resolve(!0),type:Function},noDataMsg:{default:"请选中需要打印的数据",type:String},token:{type:String},printdlgshow:{default:"0",type:String},btnprint:{type:String,default:"1"},directPrint:{type:Boolean,default:!1},externalOptionConfig:{type:Object,default:()=>({})},signature:{type:String},showLoading:{type:Boolean,default:!0}},emits:["success","error","clickoutside"],setup(t,{expose:L,emit:O}){var j;const D=t,E=v();let M;const N={},V=e({spinning:!1,visible:!1,formatList:[],templateParams:{},printParams:[],currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null}),C=e([{label:D.printText,key:"printText"},{label:D.previewText,key:"previewText"},{label:D.pdfLoadText,key:"downloadPdf"},{label:D.formatEditText,key:"formatEditText"},...(null==(j=D.externalOptionConfig)?void 0:j.options)||[]]),B=n((()=>{if(!V.currentFormatId)return{};let t=V.currentFormatId;return V.formatList.find((e=>e.id===t))})),J=n((()=>{var t;return(null==(t=B.value)?void 0:t.name)||"格式选择"})),U=n((()=>{let t=V.formatList.find((t=>t.id===V.currentFormatId));return null==t?void 0:t.templateId})),A=async t=>{if(D.directPrint){if(V.spinning)return;return"button"===t?void await rt():et()}return et()},q=t=>l("span",{class:{active:t.key===V.currentFormatId}},[t.label]),R=(t,e)=>{V.spinning=!1;let n={type:e,formatId:V.currentFormatId,templateId:U.value};O("success",t,n)},_=t=>{V.spinning=!1,O("error",t),y(t)&&"notInstalledApp"===t.type&&E.error(t.message)},z=t=>{O("error",{message:"前置条件执行错误",type:t,preExecution:!0})},H=(t=0)=>{var e;const n=(null==(e=D.printParams)?void 0:e.length)?D.printParams[t]:V.printParams[t];return JSON.stringify({...n||{},...D.token?{token:D.token}:{}})},$=()=>{var t,e;let n={},i={};if(null==(t=V.templateParams.customizeDataset)?void 0:t.length){const t=(null==(e=Object.keys(V.printParams[0].datasetData||{}))?void 0:e[0])||"",n=JSON.stringify(V.printParams.map((e=>JSON.parse(e.datasetData[t]))));i={datasetData:{}},i.datasetData[t]=n}else Object.keys(V.printParams[0]).forEach((t=>{i[t]=[],V.printParams.forEach((e=>{i[t].includes(e[t])||i[t].push(e[t])})),i[t]=i[t].join(",")}));return n=Object.assign({},JSON.parse(H(0)),i),JSON.stringify(n)},G=()=>{let t=V.printParams.length;const e=async e=>{try{--t<=0&&R(e,"print")}catch(t){console.log("error",t)}};D.showLoading&&V.spinning||(V.spinning=!0,D.prevFn("print").then((()=>{const t={formatId:V.currentFormatId,templateId:U.value,printdlgshow:D.printdlgshow,signature:D.signature};if("MULTI"===D.strategy)for(let n=0;n<V.printParams.length;n++)n>0&&(t.printdlgshow="0"),M.printDirect({...t,params:H(n)},e,_);else M.printDirect({...t,params:$()},(t=>{R(t,"print")}),_)})).catch((()=>{z("print"),V.spinning=!1})).finally((()=>{V.visible=!1})))},K=async(t,e)=>{var n,i;switch(t){case"printText":G();break;case"previewText":(async()=>{D.showLoading&&V.spinning||(V.spinning=!0,D.prevFn("preview").then((()=>{const t="MULTI"===D.strategy?H():$(),e={formatId:V.currentFormatId,templateId:U.value,params:t,btnprint:D.btnprint,signature:D.signature};M.preview(e,(t=>{R(t,"preview")}),_)})).catch((()=>{z("preview"),V.spinning=!1})).finally((()=>{V.visible=!1})))})();break;case"formatEditText":D.showLoading&&V.spinning||(V.spinning=!0,D.prevFn("edit").then((()=>{V.identityVerification.visible=!0})).catch((()=>{z("edit")})).finally((()=>{V.visible=!1,V.spinning=!1})));break;case"downloadPdf":(async()=>{D.showLoading&&V.spinning||(V.spinning=!0,D.prevFn("download").then((()=>{const t="MULTI"===D.strategy?H():$(),e={formatId:V.currentFormatId,templateId:U.value,print:{print:"1",type:"1"},params:t,signature:D.signature};M.downloadPDF(e,(t=>R(t,"preview")),_)})).catch((()=>{z("download"),V.spinning=!1})).finally((()=>{V.visible=!1})))})();break;default:{V.visible=!1;const r=V.formatList.find((e=>e.id===t))||{};if(Object.keys(r).length>0){V.currentFormatId=t;const[e]=C;e.label=(null==r?void 0:r.name)||e.label,await x({formatForms:[{...r}],name:N.name||r.templateName,number:N.number||r.number,templateId:N.templateId||r.templateId,...N.id?{id:N.id}:{}},{token:D.token})}else null==(i=null==(n=D.externalOptionConfig)?void 0:n.onSelect)||i.call(n,t,e);break}}},Q=()=>{V.visible=!1,O("clickoutside")},W=()=>(V.isInited=!1,V.spinning=!1,setTimeout((()=>{V.visible=!1}),0),!1),X=(t,e,n)=>{const i={};return e.forEach((e=>{let r=((t,e)=>{const n={DATE:"yyyy-MM-dd",DATETIME:"yyyy-MM-dd HH:mm:ss"};let i=e;return Object.keys(n).includes(t.type)&&e&&e instanceof Date&&(i=T(e,n[t.type])),(null==t?void 0:t.defaultValue)||i})(e,t[e[n]]);t[e[n]]&&r&&(i[e[n]]=r)})),i},Y=({customizeDataset:t=[],param:e=[]},n=[])=>n.map((n=>{let i={};return t.forEach((t=>{const e=t.dataSetting[0].selectFieldList;i.datasetData={[t.name]:JSON.stringify(X(n,e,"fieldName"))}})),i=Object.assign({},i,X(n,e,"key")),i})),Z=async t=>{var e;if(V.formatList=t?(t=>{let e=[];return t&&t.forEach((t=>{if(!t.format)return!1;e.push(...t.format.map((e=>Object.assign({},e,{templateName:t.name}))))})),e})(t.obj):[],V.currentFormatId=await(async(t,e)=>{var n;if(!(null==t?void 0:t.length))return"";const{data:i}=await S({templateId:t[0].templateId},{token:D.token});if("SUCCESS"===i.result){const{formatForms:e=[]}=i.map||{};Object.assign(N,i.map||{});const r=null==(n=null==e?void 0:e[0])?void 0:n.id;if(r&&t.map((t=>t.id)).includes(r))return r}const r=t.find((t=>1==t[e]));return(null==r?void 0:r.id)||t[0].id})(V.formatList,"defaultFlag"),!V.currentFormatId)return E.error("获取打印格式失败,请联系管理员!"),W();(()=>{const t=V.formatList.map((t=>({label:t.name,key:t.id})));C.unshift({label:J.value,key:"format",children:t})})();let n=null==(e=await D.queryTemplateParams())?void 0:e.obj;if(!n||!U.value)return E.error("获取打印模板失败,请联系管理员!"),W();V.templateParams=n,V.printParams=Y(V.templateParams,D.params)},tt=async()=>{if(V.isInited)return!0;V.isInited=!0,V.spinning=!0,(()=>{if(M)return!1;M=new w})();const t=await D.queryPrintFormatByNumber();return await Z(t),V.spinning=!1,!0},et=async(t=!0)=>{var e,n;if(await D.clickPrevFn())if((null==(e=D.params)?void 0:e.length)||(null==(n=D.printParams)?void 0:n.length)){if(!V.visible){if(!await tt())return!1}t&&(V.visible=!V.visible)}else E.warning(D.noDataMsg)},nt=()=>{V.watchPrintParamsReformatFn&&V.watchPrintParamsReformatFn(),V.isInited?V.printParams=Y(V.templateParams,D.params):V.watchPrintParamsReformatFn=()=>r((()=>V.isInited),(t=>{if(!t)return!1;nt()}))},it=t=>{if(V.identityVerification.visible=!1,F(V.currentFormatId))return R(null,"edit");const e={formatId:V.currentFormatId,templateId:U.value,params:H(),token:t};M.editPrintFormat(e,(t=>{R(t,"edit")}),_)};async function rt(){await et(!1),G()}return i((()=>{V.isInited=!1})),r((()=>D.params),(t=>{if(!(null==t?void 0:t.length))return!1;nt()}),{deep:!0}),L({directPrint:rt}),(e,n)=>(a(),s(o,null,[l(p(b),{class:"c-dropdown",placement:"bottom-start",trigger:"click",show:V.visible,onClickoutside:Q,options:C,onSelect:K,"render-label":q},{default:d((()=>[m(e.$slots,"button",{handleClickPrintBtn:et,printSpinning:V.spinning,printbtnText:t.btnText,printVisible:V.visible},(()=>[l(p(I),{class:"dropdown-button",loading:t.showLoading&&V.spinning,onClick:n[1]||(n[1]=u((()=>A("button")),["stop"]))},{default:d((()=>[c(f(t.btnText)+" ",1),l(p(P),{component:p(h),style:{"margin-left":"5px"},onClick:n[0]||(n[0]=u((()=>A("icon")),["stop"]))},null,8,["component"])])),_:1},8,["loading"])]))])),_:3},8,["show","options"]),l(k,g(e.$attrs,{modelValue:V.identityVerification.visible,"onUpdate:modelValue":n[2]||(n[2]=t=>V.identityVerification.visible=t),formatId:V.currentFormatId,templateId:p(U),onSuccess:it}),null,16,["modelValue","formatId","templateId"])],64))}});export{L as default};
@@ -140,6 +140,10 @@ export declare const CallbackMaps: Map<string, {
140
140
  dateOperationalForm: {
141
141
  type: import("vue").PropType<import("../../../..").LowCodeTypes.dateOperationalConfig[]>;
142
142
  };
143
+ operationalFormInit: {
144
+ type: BooleanConstructor;
145
+ default: boolean;
146
+ };
143
147
  linebarAutoHidden: {
144
148
  type: BooleanConstructor;
145
149
  };
@@ -292,6 +296,10 @@ export declare const CallbackMaps: Map<string, {
292
296
  dateOperationalForm: {
293
297
  type: import("vue").PropType<import("../../../..").LowCodeTypes.dateOperationalConfig[]>;
294
298
  };
299
+ operationalFormInit: {
300
+ type: BooleanConstructor;
301
+ default: boolean;
302
+ };
295
303
  linebarAutoHidden: {
296
304
  type: BooleanConstructor;
297
305
  };
@@ -372,12 +380,12 @@ export declare const CallbackMaps: Map<string, {
372
380
  }>;
373
381
  lowCodeReactionsHandler: (field: string) => void;
374
382
  triggerAllReactionsHandler: () => void;
375
- operationalFormHandler: (fieldKey: string) => void;
376
- triggerAllOperationalFormHandler: () => void;
377
- wordbookSettingHandler: {
378
- trigger: (fieldKey: string, value: unknown) => void;
379
- setDisabled: (value: boolean) => void;
383
+ operationalFormHandler: {
384
+ trigger(fieldKey: string): void;
385
+ triggerAll(): void;
386
+ triggerDisabled: string | boolean;
380
387
  };
388
+ wordbookSettingHandler: import("../../../../../../es/components/form-render").wordbookSettingHandler;
381
389
  schemaAdaptor: (fieldList: import("../../../../../../es/components/form-render").FieldItem[], options?: Partial<{
382
390
  fieldList: import("../../../../../../es/components/form-render").FieldItem[];
383
391
  initialData: import("../../../..").AnyObject;
@@ -590,7 +598,14 @@ export declare const CallbackMaps: Map<string, {
590
598
  force?: boolean | undefined;
591
599
  }): Promise<void>;
592
600
  getFormValues(needCombineExtendKey?: boolean): any;
593
- setFormValues(values: import("../../../..").AnyObject, needSplitExtendKey?: boolean, overwrite?: boolean): void;
601
+ setFormValues(values: import("../../../..").AnyObject, options?: boolean | {
602
+ needSplitExtendKey?: boolean | undefined;
603
+ avoidBusinessConnection?: string | boolean | undefined;
604
+ avoidDependKeyConnection?: string | boolean | undefined;
605
+ avoidWordbookSettingConnection?: string | boolean | undefined;
606
+ avoidOperationalFormConnection?: string | boolean | undefined;
607
+ overwrite?: boolean | undefined;
608
+ }, avoidBusinessConnection?: string | boolean, overwrite?: boolean): Promise<void>;
594
609
  setFieldState(path: string, setter: (field: Partial<Pick<import("@formily/core").Field<any, any, any, any>, import("@formily/core").NonFunctionPropertyNames<{
595
610
  match: (pattern: import("@formily/path").Pattern) => boolean;
596
611
  validate: (triggerType?: import("@formily/validator").ValidatorTriggerType | undefined) => any;
@@ -887,6 +902,10 @@ export declare const CallbackMaps: Map<string, {
887
902
  dateOperationalForm: {
888
903
  type: import("vue").PropType<import("../../../..").LowCodeTypes.dateOperationalConfig[]>;
889
904
  };
905
+ operationalFormInit: {
906
+ type: BooleanConstructor;
907
+ default: boolean;
908
+ };
890
909
  linebarAutoHidden: {
891
910
  type: BooleanConstructor;
892
911
  };
@@ -922,6 +941,7 @@ export declare const CallbackMaps: Map<string, {
922
941
  bordered: string | boolean;
923
942
  uniqueCacheData: boolean;
924
943
  outBordered: boolean;
944
+ operationalFormInit: boolean;
925
945
  }>;
926
946
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>>;
927
947
  props: {