cnhis-design-vue 3.1.14-beta.7.1 → 3.1.14

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 (227) hide show
  1. package/README.md +1 -1
  2. package/es/_virtual/plugin-vue_export-helper.js +9 -0
  3. package/es/node_modules/@formily/path/esm/contexts.js +22 -0
  4. package/es/node_modules/@formily/path/esm/destructor.js +124 -0
  5. package/es/node_modules/@formily/path/esm/index.js +579 -0
  6. package/es/node_modules/@formily/path/esm/matcher.js +199 -0
  7. package/es/node_modules/@formily/path/esm/parser.js +402 -0
  8. package/es/node_modules/@formily/path/esm/shared.js +73 -0
  9. package/es/node_modules/@formily/path/esm/tokenizer.js +287 -0
  10. package/es/node_modules/@formily/path/esm/tokens.js +240 -0
  11. package/es/node_modules/@formily/path/esm/types.js +17 -0
  12. package/es/packages/big-table/index.d.ts +14 -0
  13. package/es/packages/big-table/index.js +1 -2
  14. package/es/packages/big-table/src/BigTable.js +5 -3
  15. package/es/packages/big-table/src/BigTable.vue.d.ts +35 -19
  16. package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.js +50 -31
  17. package/es/packages/big-table/src/bigTableProps.d.ts +4 -0
  18. package/es/packages/big-table/src/bigTableProps.js +1 -0
  19. package/es/packages/big-table/src/components/NoData.js +73 -3
  20. package/es/packages/big-table/src/components/edit-form/edit-input.js +15 -4
  21. package/es/packages/big-table/src/components/edit-form/edit-separate.js +89 -3
  22. package/es/packages/big-table/src/components/edit-form/edit-separate.vue.d.ts +25 -8
  23. package/es/packages/big-table/src/components/edit-form/edit-time.d.ts +43 -0
  24. package/es/packages/big-table/src/components/edit-form/edit-time.js +52 -0
  25. package/es/packages/big-table/src/components/input-button.js +34 -3
  26. package/es/packages/big-table/src/components/separate.js +29 -3
  27. package/es/packages/big-table/src/components/separate.vue.d.ts +3 -4
  28. package/es/packages/big-table/src/hooks/useColumnConfigAdaptor.js +34 -5
  29. package/es/packages/big-table/src/hooks/useEdit.d.ts +67 -7
  30. package/es/packages/big-table/src/hooks/useEdit.js +4 -3
  31. package/es/packages/big-table/src/hooks/useSeparateRow.d.ts +1 -1
  32. package/es/packages/big-table/src/hooks/useSeparateRow.js +14 -10
  33. package/es/packages/big-table/src/utils.js +2 -1
  34. package/es/packages/big-table/style/index.css +145 -2
  35. package/es/packages/bpmn-workflow/index.js +1 -2
  36. package/es/packages/bpmn-workflow/src/BpmnWorkflow.js +253 -3
  37. package/es/packages/button-print/index.js +1 -2
  38. package/es/packages/button-print/src/ButtonPrint.js +5 -3
  39. package/es/packages/button-print/src/ButtonPrint.vue_vue_type_script_setup_true_lang.js +6 -7
  40. package/es/packages/button-print/src/components/IdentityVerification.js +129 -3
  41. package/es/packages/button-print/src/utils/print.d.ts +1 -1
  42. package/es/packages/button-print/src/utils/print.js +4 -4
  43. package/es/packages/chunk-upload/index.js +1 -1
  44. package/es/packages/chunk-upload/src/chunk-upload-new.js +474 -3
  45. package/es/packages/chunk-upload/src/vod-chunk-upload/index.js +2 -3
  46. package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.js +328 -3
  47. package/es/packages/chunk-upload/src/vod-upload-modal.js +3 -4
  48. package/es/packages/drag-layout/index.js +1 -2
  49. package/es/packages/drag-layout/src/DragFormLeftItem.js +123 -3
  50. package/es/packages/drag-layout/src/DragFormRightItem.js +268 -3
  51. package/es/packages/drag-layout/src/DragLayout.js +658 -3
  52. package/es/packages/fabric-chart/index.d.ts +2 -0
  53. package/es/packages/fabric-chart/index.js +1 -2
  54. package/es/packages/fabric-chart/src/FabricChart.js +315 -3
  55. package/es/packages/fabric-chart/src/FabricChart.vue.d.ts +2 -0
  56. package/es/packages/fabric-chart/src/components/PopupTip.js +33 -3
  57. package/es/packages/fabric-chart/src/hooks/useCenter.js +41 -25
  58. package/es/packages/fabric-chart/src/hooks/useDraw.js +1 -0
  59. package/es/packages/fabric-chart/src/hooks/useEvent.js +9 -7
  60. package/es/packages/fabric-chart/src/hooks/useLeft.js +28 -17
  61. package/es/packages/fabric-chart/src/hooks/useRight.js +2 -13
  62. package/es/packages/fabric-chart/src/hooks/useTop.js +9 -10
  63. package/es/packages/fabric-chart/src/interface.d.ts +4 -0
  64. package/es/packages/field-set/index.d.ts +2509 -5172
  65. package/es/packages/field-set/index.js +1 -2
  66. package/es/packages/field-set/src/FieldSet.js +346 -3
  67. package/es/packages/field-set/src/FieldSet.vue.d.ts +2494 -5176
  68. package/es/packages/form-render/index.d.ts +0 -2
  69. package/es/packages/form-render/index.js +2 -3
  70. package/es/packages/form-render/src/FormRender.js +188 -3
  71. package/es/packages/form-render/src/FormRender.vue.d.ts +0 -2
  72. package/es/packages/form-render/src/components/renderer/cascader.d.ts +6 -6
  73. package/es/packages/form-render/src/components/renderer/cascader.js +73 -85
  74. package/es/packages/form-render/src/components/renderer/combination.d.ts +6 -0
  75. package/es/packages/form-render/src/components/renderer/combination.js +55 -19
  76. package/es/packages/form-render/src/components/renderer/formItem.js +1 -1
  77. package/es/packages/form-render/src/components/renderer/input.js +5 -16
  78. package/es/packages/form-render/src/components/renderer/inputNumber.d.ts +12 -0
  79. package/es/packages/form-render/src/components/renderer/inputNumber.js +11 -4
  80. package/es/packages/form-render/src/components/renderer/radio.d.ts +12 -4
  81. package/es/packages/form-render/src/components/renderer/radio.js +23 -5
  82. package/es/packages/form-render/src/components/renderer/select.js +56 -56
  83. package/es/packages/form-render/src/components/renderer/simpleComponent.d.ts +17 -2
  84. package/es/packages/form-render/src/components/renderer/simpleComponent.js +16 -14
  85. package/es/packages/form-render/src/hooks/useAsyncQueue.d.ts +1 -1
  86. package/es/packages/form-render/src/hooks/useAsyncQueue.js +1 -1
  87. package/es/packages/form-render/src/hooks/useChangeContext.d.ts +1 -1
  88. package/es/packages/form-render/src/hooks/useChangeContext.js +1 -1
  89. package/es/packages/form-render/src/hooks/useFieldListAdaptor.js +11 -8
  90. package/es/packages/form-render/src/hooks/useFormItemDeps.d.ts +3 -2
  91. package/es/packages/form-render/src/hooks/useFormItemDeps.js +5 -6
  92. package/es/packages/form-render/src/hooks/useFormRequest.d.ts +2 -2
  93. package/es/packages/form-render/src/types/fieldItem.d.ts +123 -35
  94. package/es/packages/form-render/src/types/index.d.ts +4 -2
  95. package/es/packages/form-render/src/utils/index.d.ts +7 -4
  96. package/es/packages/form-render/src/utils/index.js +40 -14
  97. package/es/packages/form-table/index.js +1 -2
  98. package/es/packages/form-table/src/FormTable.js +475 -3
  99. package/es/packages/form-table/src/components/index.js +28 -42
  100. package/es/packages/form-table/src/components/table-age.js +232 -3
  101. package/es/packages/form-table/src/components/table-date-picker.js +176 -3
  102. package/es/packages/form-table/src/components/table-digital.js +138 -3
  103. package/es/packages/form-table/src/components/table-input-password.js +138 -3
  104. package/es/packages/form-table/src/components/table-input.js +124 -3
  105. package/es/packages/form-table/src/components/table-month-picker.js +100 -3
  106. package/es/packages/form-table/src/components/table-search-more.js +5 -3
  107. package/es/packages/form-table/src/components/table-search-more.vue_vue_type_script_setup_true_lang.js +2 -2
  108. package/es/packages/form-table/src/components/table-search.js +5 -3
  109. package/es/packages/form-table/src/components/table-search.vue_vue_type_script_setup_true_lang.js +2 -2
  110. package/es/packages/form-table/src/components/table-select-multiple.js +161 -3
  111. package/es/packages/form-table/src/components/table-select.js +156 -3
  112. package/es/packages/form-table/src/components/table-textarea.js +154 -3
  113. package/es/packages/form-table/src/components/table-time-picker.js +146 -3
  114. package/es/packages/form-table/src/components/table-tree-select.js +282 -3
  115. package/es/packages/form-table/src/components/text-over-tooltip.js +63 -3
  116. package/es/packages/index.css +148 -2
  117. package/es/packages/info-header/index.d.ts +1375 -356
  118. package/es/packages/info-header/index.js +1 -2
  119. package/es/packages/info-header/src/HiddenContent.js +65 -3
  120. package/es/packages/info-header/src/HiddenContent.vue.d.ts +689 -178
  121. package/es/packages/info-header/src/InfoEllipsis.js +43 -0
  122. package/es/packages/info-header/src/InfoEllipsis.vue.d.ts +833 -0
  123. package/es/packages/info-header/src/InfoHeader.js +229 -3
  124. package/es/packages/info-header/src/InfoHeader.vue.d.ts +1375 -356
  125. package/es/packages/info-header/style/index.css +3 -0
  126. package/es/packages/map/index.js +1 -2
  127. package/es/packages/map/src/Map.js +337 -3
  128. package/es/packages/scale-view/index.js +1 -2
  129. package/es/packages/scale-view/src/ScaleView.js +418 -3
  130. package/es/packages/scale-view/src/components/AnswerParse.js +79 -3
  131. package/es/packages/scale-view/src/components/EvaluateCountdown.js +108 -3
  132. package/es/packages/scale-view/src/components/EvaluatePage.js +140 -3
  133. package/es/packages/scale-view/src/components/LoadingCom.js +17 -5
  134. package/es/packages/scale-view/src/components/NoData.js +73 -3
  135. package/es/packages/scale-view/src/components/formitem/r-cascader.js +3 -3
  136. package/es/packages/scale-view/src/components/formitem/r-select.js +3 -3
  137. package/es/packages/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.js +78 -3
  138. package/es/packages/select-label/index.js +3 -5
  139. package/es/packages/select-label/src/LabelFormContent.js +441 -3
  140. package/es/packages/select-label/src/SelectLabel.js +5 -3
  141. package/es/packages/select-label/src/SelectLabel.vue_vue_type_script_setup_true_lang.js +5 -21
  142. package/es/packages/select-label/src/components/label-classify.js +128 -3
  143. package/es/packages/select-person/index.js +1 -2
  144. package/es/packages/select-person/src/SearchTree.js +5 -3
  145. package/es/packages/select-person/src/SearchTree.vue_vue_type_script_setup_true_lang.js +2 -2
  146. package/es/packages/select-person/src/SelectPerson.js +5 -3
  147. package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.js +4 -5
  148. package/es/packages/shortcut-provider/index.js +1 -2
  149. package/es/packages/shortcut-provider/src/ShortcutProvider.js +33 -3
  150. package/es/packages/shortcut-provider/src/types/index.d.ts +11 -9
  151. package/es/packages/shortcut-provider/src/utils/index.js +5 -5
  152. package/es/packages/shortcut-setter/index.d.ts +3247 -1486
  153. package/es/packages/shortcut-setter/index.js +1 -2
  154. package/es/packages/shortcut-setter/src/ShortcutSetter.js +42 -3
  155. package/es/packages/shortcut-setter/src/ShortcutSetter.vue.d.ts +3247 -1486
  156. package/es/packages/shortcut-setter/src/ShortcutSetterItem.js +139 -3
  157. package/es/packages/shortcut-setter/src/ShortcutSetterItem.vue.d.ts +1700 -1661
  158. package/es/packages/steps-wheel/index.js +1 -2
  159. package/es/packages/steps-wheel/src/StepsWheel.js +264 -3
  160. package/es/packages/time-line/index.js +1 -2
  161. package/es/packages/time-line/src/TimeLine.js +69 -3
  162. package/es/src/components/SelectPage/SelectPage.js +62 -3
  163. package/es/src/components/SelectPage/index.js +2 -3
  164. package/es/src/components/SlotRender/SlotRender.d.ts +3 -3
  165. package/es/src/components/SlotRender/SlotRender.js +4 -4
  166. package/es/src/components/SvgIcon/SvgIcon.js +35 -3
  167. package/es/src/components/SvgIcon/index.js +2 -3
  168. package/es/src/components/TextOverTooltip/TextOverTooltip.js +75 -3
  169. package/es/src/components/TextOverTooltip/index.js +2 -3
  170. package/es/src/components/player-vod/index.js +13 -3
  171. package/es/src/utils/anime.d.ts +1 -1
  172. package/package.json +153 -153
  173. package/es/packages/big-table/src/components/NoData.vue_vue_type_script_setup_true_lang.js +0 -72
  174. package/es/packages/big-table/src/components/edit-form/edit-separate.vue_vue_type_script_setup_true_lang.js +0 -69
  175. package/es/packages/big-table/src/components/input-button.vue_vue_type_script_setup_true_lang.js +0 -33
  176. package/es/packages/big-table/src/components/separate.vue_vue_type_script_setup_true_lang.js +0 -24
  177. package/es/packages/bpmn-workflow/src/BpmnWorkflow.vue_vue_type_script_setup_true_lang.js +0 -252
  178. package/es/packages/button-print/src/components/IdentityVerification.vue_vue_type_script_setup_true_lang.js +0 -128
  179. package/es/packages/chunk-upload/src/chunk-upload-new.vue_vue_type_script_setup_true_lang.js +0 -473
  180. package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue_vue_type_script_setup_true_lang.js +0 -327
  181. package/es/packages/drag-layout/src/DragFormLeftItem.vue_vue_type_script_setup_true_lang.js +0 -122
  182. package/es/packages/drag-layout/src/DragFormRightItem.vue_vue_type_script_setup_true_lang.js +0 -267
  183. package/es/packages/drag-layout/src/DragLayout.vue_vue_type_script_setup_true_lang.js +0 -659
  184. package/es/packages/fabric-chart/src/FabricChart.vue_vue_type_script_setup_true_lang.js +0 -305
  185. package/es/packages/fabric-chart/src/components/PopupTip.vue_vue_type_script_setup_true_lang.js +0 -32
  186. package/es/packages/field-set/src/FieldSet.vue_vue_type_script_setup_true_lang.js +0 -33
  187. package/es/packages/field-set/src/NewFieldSet.js +0 -4
  188. package/es/packages/field-set/src/NewFieldSet.vue.d.ts +0 -2608
  189. package/es/packages/field-set/src/NewFieldSet.vue_vue_type_script_setup_true_lang.js +0 -303
  190. package/es/packages/field-set/src/OldFieldSet.js +0 -4
  191. package/es/packages/field-set/src/OldFieldSet.vue.d.ts +0 -2620
  192. package/es/packages/field-set/src/OldFieldSet.vue_vue_type_script_setup_true_lang.js +0 -335
  193. package/es/packages/form-render/src/FormRender.vue_vue_type_script_setup_true_lang.js +0 -187
  194. package/es/packages/form-table/src/FormTable.vue_vue_type_script_setup_true_lang.js +0 -474
  195. package/es/packages/form-table/src/components/table-age.vue_vue_type_script_setup_true_lang.js +0 -232
  196. package/es/packages/form-table/src/components/table-date-picker.vue_vue_type_script_setup_true_lang.js +0 -175
  197. package/es/packages/form-table/src/components/table-digital.vue_vue_type_script_setup_true_lang.js +0 -138
  198. package/es/packages/form-table/src/components/table-input-password.vue_vue_type_script_setup_true_lang.js +0 -138
  199. package/es/packages/form-table/src/components/table-input.vue_vue_type_script_setup_true_lang.js +0 -124
  200. package/es/packages/form-table/src/components/table-month-picker.vue_vue_type_script_setup_true_lang.js +0 -99
  201. package/es/packages/form-table/src/components/table-select-multiple.vue_vue_type_script_setup_true_lang.js +0 -160
  202. package/es/packages/form-table/src/components/table-select.vue_vue_type_script_setup_true_lang.js +0 -155
  203. package/es/packages/form-table/src/components/table-textarea.vue_vue_type_script_setup_true_lang.js +0 -153
  204. package/es/packages/form-table/src/components/table-time-picker.vue_vue_type_script_setup_true_lang.js +0 -145
  205. package/es/packages/form-table/src/components/table-tree-select.vue_vue_type_script_setup_true_lang.js +0 -281
  206. package/es/packages/form-table/src/components/text-over-tooltip.vue_vue_type_script_setup_true_lang.js +0 -62
  207. package/es/packages/info-header/src/HiddenContent.vue_vue_type_script_setup_true_lang.js +0 -66
  208. package/es/packages/info-header/src/InfoHeader.vue_vue_type_script_setup_true_lang.js +0 -233
  209. package/es/packages/map/src/Map.vue_vue_type_script_setup_true_lang.js +0 -336
  210. package/es/packages/scale-view/src/ScaleView.vue_vue_type_script_setup_true_lang.js +0 -422
  211. package/es/packages/scale-view/src/components/AnswerParse.vue_vue_type_script_setup_true_lang.js +0 -78
  212. package/es/packages/scale-view/src/components/EvaluateCountdown.vue_vue_type_script_setup_true_lang.js +0 -107
  213. package/es/packages/scale-view/src/components/EvaluatePage.vue_vue_type_script_setup_true_lang.js +0 -139
  214. package/es/packages/scale-view/src/components/LoadingCom.vue_vue_type_template_id_413329b0_lang.js +0 -16
  215. package/es/packages/scale-view/src/components/NoData.vue_vue_type_script_setup_true_lang.js +0 -72
  216. package/es/packages/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.vue_vue_type_script_setup_true_lang.js +0 -77
  217. package/es/packages/select-label/src/LabelFormContent.vue_vue_type_script_setup_true_lang.js +0 -441
  218. package/es/packages/select-label/src/components/label-classify.vue_vue_type_script_setup_true_lang.js +0 -127
  219. package/es/packages/shortcut-provider/src/ShortcutProvider.vue_vue_type_script_setup_true_lang.js +0 -32
  220. package/es/packages/shortcut-setter/src/ShortcutSetter.vue_vue_type_script_setup_true_lang.js +0 -38
  221. package/es/packages/shortcut-setter/src/ShortcutSetterItem.vue_vue_type_script_setup_true_lang.js +0 -125
  222. package/es/packages/steps-wheel/src/StepsWheel.vue_vue_type_script_setup_true_lang.js +0 -263
  223. package/es/packages/time-line/src/TimeLine.vue_vue_type_script_setup_true_lang.js +0 -68
  224. package/es/src/components/SelectPage/SelectPage.vue_vue_type_script_setup_true_lang.js +0 -61
  225. package/es/src/components/SvgIcon/SvgIcon.vue_vue_type_script_setup_true_lang.js +0 -34
  226. package/es/src/components/TextOverTooltip/TextOverTooltip.vue_vue_type_script_setup_true_lang.js +0 -74
  227. package/es/src/components/player-vod/index.vue_vue_type_script_setup_true_lang.js +0 -12
@@ -1,4 +1,316 @@
1
- import script from './FabricChart.vue_vue_type_script_setup_true_lang.js';
2
- export { default } from './FabricChart.vue_vue_type_script_setup_true_lang.js';
1
+ import { defineComponent, ref, computed, reactive, onMounted, onBeforeUnmount, openBlock, createElementBlock, Fragment, createElementVNode, unref, createBlock, mergeProps, createCommentVNode } from 'vue';
2
+ import { fabric } from './utils/index.js';
3
+ import PopupTip from './components/PopupTip.js';
4
+ import PopupMenu from './components/PopupMenu.js';
5
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.js';
6
+ import { defaultBorderStyle } from './hooks/useDraw.js';
7
+ import { useTop } from './hooks/useTop.js';
8
+ import { useCenter } from './hooks/useCenter.js';
9
+ import { useLeft } from './hooks/useLeft.js';
10
+ import { useRight } from './hooks/useRight.js';
11
+ import { useBottom } from './hooks/useBottom.js';
12
+ import { useOther } from './hooks/useOther.js';
13
+ import { useEvent, useCanvasEvent } from './hooks/useEvent.js';
14
+ import { useCumputedPoint } from './hooks/useCumputedPoint.js';
3
15
 
4
- script.__file = "packages/fabric-chart/src/FabricChart.vue";
16
+ const _sfc_main = /* @__PURE__ */ defineComponent({
17
+ __name: "FabricChart",
18
+ props: {
19
+ data: null,
20
+ addRenderItem: null
21
+ },
22
+ emits: ["change", "add", "select"],
23
+ setup(__props, { expose, emit: emits }) {
24
+ const props = __props;
25
+ const defaultHeight = 15;
26
+ let select = ref();
27
+ const canvasRef = ref(null);
28
+ let canvas = ref();
29
+ const dateHeight = computed(() => {
30
+ const { top } = props.data;
31
+ return top.date.show && (top.date.height || defaultHeight) || 0;
32
+ });
33
+ const hospitalDaysHeight = computed(() => {
34
+ var _a;
35
+ const { top } = props.data;
36
+ return ((_a = top.hospitalDays) == null ? void 0 : _a.show) && (top.hospitalDays.height || defaultHeight) || 0;
37
+ });
38
+ const operationDaysHeight = computed(() => {
39
+ var _a;
40
+ const { top } = props.data;
41
+ return ((_a = top.operationDays) == null ? void 0 : _a.show) && (top.operationDays.height || defaultHeight) || 0;
42
+ });
43
+ const xScalevalueHeight = computed(() => {
44
+ var _a, _b;
45
+ const { top } = props.data;
46
+ const height = ((_a = top.xScalevalue) == null ? void 0 : _a.show) && (top.xScalevalue.height || defaultHeight) || 0;
47
+ const dayHeight = ((_b = top.xScalevalue) == null ? void 0 : _b.show) ? top.dayHeight || 0 : 0;
48
+ return height + dayHeight;
49
+ });
50
+ const breathingHeight = computed(() => {
51
+ var _a;
52
+ const { bottom } = props.data;
53
+ return ((_a = bottom == null ? void 0 : bottom.breathing) == null ? void 0 : _a.show) && (bottom.breathing.height || defaultHeight * 2) || 0;
54
+ });
55
+ const gridXNumber = computed(() => {
56
+ const { grid } = props.data;
57
+ return grid.mainXCell * grid.subXCell + grid.surplusXCell;
58
+ });
59
+ const gridYNumber = computed(() => {
60
+ const { grid } = props.data;
61
+ return grid.mainYCell * grid.subYCell + grid.surplusYCell;
62
+ });
63
+ const endX = computed(() => {
64
+ const { width, right = null, top } = props.data;
65
+ if (!right)
66
+ return width;
67
+ const endWidth = right.width || 50;
68
+ return width - endWidth;
69
+ });
70
+ const endXLimit = computed(() => {
71
+ const { grid } = props.data;
72
+ return endX.value - grid.surplusXCell * xCellWidth.value;
73
+ });
74
+ const originX = computed(() => {
75
+ const { top, left } = props.data;
76
+ const originX2 = top.titleWidth + iconsWidth.value;
77
+ return originX2;
78
+ });
79
+ const endY = computed(() => {
80
+ const { bottom = null, height } = props.data;
81
+ if (!bottom)
82
+ return height;
83
+ const endHeight = bottom.height || 30;
84
+ return height - endHeight;
85
+ });
86
+ const originY = computed(() => {
87
+ const { top } = props.data;
88
+ const dayHeight = top.xScalevalue.show && (top.dayHeight || defaultHeight) || 0;
89
+ const xScaleHeight = top.xScalevalue.show && (top.xScalevalue.height || defaultHeight) || 0;
90
+ const topHeight = dateHeight.value + dayHeight + xScaleHeight + hospitalDaysHeight.value + operationDaysHeight.value;
91
+ return topHeight;
92
+ });
93
+ const originYLimit = computed(() => {
94
+ const { grid } = props.data;
95
+ return originY.value + grid.surplusYCell * yCellHeight.value;
96
+ });
97
+ const xCellWidth = computed(() => {
98
+ return (endX.value - originX.value) / gridXNumber.value;
99
+ });
100
+ const yCellHeight = computed(() => {
101
+ return (endY.value - originY.value) / gridYNumber.value;
102
+ });
103
+ const iconsWidth = computed(() => {
104
+ var _a, _b;
105
+ const { left } = props.data;
106
+ return ((_a = left.icons) == null ? void 0 : _a.show) && (((_b = left.icons) == null ? void 0 : _b.width) || 100) || 0;
107
+ });
108
+ const xScaleList = computed(() => {
109
+ const { top } = props.data;
110
+ const dateList = top.date.list;
111
+ const times = top.xScalevalue.times;
112
+ let left = originX.value - xCellWidth.value;
113
+ function getDate(date) {
114
+ return String(date).length < 9 ? `20${date}` : date;
115
+ }
116
+ const timeList = dateList.map((item) => {
117
+ return times.map((v) => {
118
+ left += xCellWidth.value;
119
+ const start = new Date(`${getDate(item)} ${v.start}`).getTime();
120
+ const end = new Date(`${getDate(item)} ${v.end}`).getTime();
121
+ return {
122
+ start,
123
+ end,
124
+ left,
125
+ center: left + xCellWidth.value / 2,
126
+ scaleCell: (end - start) / xCellWidth.value
127
+ };
128
+ });
129
+ });
130
+ return timeList.flat();
131
+ });
132
+ const breatheYCell = computed(() => {
133
+ var _a;
134
+ const { yScaleValue, spaceGridNumber = 5 } = props.data.left;
135
+ const list = (_a = yScaleValue.find((v) => v.type === "breathe")) == null ? void 0 : _a.list;
136
+ return list ? yCellHeight.value / ((parseInt(list[1]) - parseInt(list[0])) / spaceGridNumber) : 0;
137
+ });
138
+ const pulseYCell = computed(() => {
139
+ const { yScaleValue, spaceGridNumber = 5 } = props.data.left;
140
+ const list = yScaleValue.find((v) => v.type === "pulse").list;
141
+ return yCellHeight.value / ((parseInt(list[1]) - parseInt(list[0])) / spaceGridNumber);
142
+ });
143
+ const temperatureYCell = computed(() => {
144
+ const { yScaleValue, spaceGridNumber = 5 } = props.data.left;
145
+ const list = yScaleValue.find((v) => v.type === "temperature").list;
146
+ return yCellHeight.value / ((parseInt(list[1]) - parseInt(list[0])) / spaceGridNumber);
147
+ });
148
+ const painYCell = computed(() => {
149
+ const { yScaleValue, spaceGridNumber = 5 } = props.data.left;
150
+ const item = yScaleValue.find((v) => v.type === "pain");
151
+ const list = (item == null ? void 0 : item.list) || [];
152
+ if (!list.length)
153
+ return 0;
154
+ return yCellHeight.value / ((parseInt(list[1]) - parseInt(list[0])) / item.spaceGridNumber);
155
+ });
156
+ const event = computed(() => {
157
+ var _a;
158
+ return ((_a = props.data.grid) == null ? void 0 : _a.event) || { selectable: true, evented: true };
159
+ });
160
+ const itemList = computed(() => {
161
+ const { left } = props.data;
162
+ return left.yScaleValue.map((item) => {
163
+ return item.dataList.map((v, dataIndex) => {
164
+ return {
165
+ ...v,
166
+ bigType: item.type,
167
+ unit: item.unit,
168
+ dataIndex
169
+ };
170
+ });
171
+ }).flat();
172
+ });
173
+ const painIndex = computed(() => {
174
+ const { left } = props.data;
175
+ return left.yScaleValue.findIndex((v) => v.type === "pain");
176
+ });
177
+ const painHeight = computed(() => {
178
+ const { grid } = props.data;
179
+ return painIndex.value === -1 ? 0 : yCellHeight.value * grid.subYCell;
180
+ });
181
+ const painOriginY = computed(() => {
182
+ const { left } = props.data;
183
+ let obj = {
184
+ originY: endY.value,
185
+ endY: endY.value
186
+ };
187
+ if (painIndex.value === 0) {
188
+ obj.originY = originYLimit.value;
189
+ obj.endY = originYLimit.value + painHeight.value;
190
+ } else if (painIndex.value === left.yScaleValue.length - 1) {
191
+ obj.originY = endY.value - painHeight.value;
192
+ obj.endY = endY.value;
193
+ }
194
+ return obj;
195
+ });
196
+ const vitalSignsOriginY = computed(() => {
197
+ const { left } = props.data;
198
+ let obj = {
199
+ originY: originY.value,
200
+ endY: endY.value
201
+ };
202
+ if (painIndex.value === 0) {
203
+ obj.originY = originYLimit.value + painHeight.value;
204
+ obj.endY = endY.value;
205
+ } else if (painIndex.value === left.yScaleValue.length - 1) {
206
+ obj.originY = originYLimit.value;
207
+ obj.endY = endY.value - painHeight.value;
208
+ }
209
+ return obj;
210
+ });
211
+ const topList = computed(() => {
212
+ const { top } = props.data;
213
+ let topList2 = [];
214
+ for (let i in top) {
215
+ if (top[i].show) {
216
+ topList2.push({
217
+ ...top[i],
218
+ key: i
219
+ });
220
+ }
221
+ }
222
+ return topList2.sort((a, b) => a.seq - b.seq);
223
+ });
224
+ const propItems = reactive({
225
+ canvasWidth: props.data.width,
226
+ canvasHeight: props.data.height,
227
+ borderStyle: props.data.borderStyle || defaultBorderStyle,
228
+ selectionStyle: props.data.selectionStyle || {},
229
+ dateHeight: dateHeight.value,
230
+ hospitalDaysHeight: hospitalDaysHeight.value,
231
+ operationDaysHeight: operationDaysHeight.value,
232
+ xScalevalueHeight: xScalevalueHeight.value,
233
+ topList: topList.value,
234
+ breathingHeight: breathingHeight.value,
235
+ grid: props.data.grid,
236
+ top: props.data.top,
237
+ left: props.data.left,
238
+ right: props.data.right,
239
+ bottom: props.data.bottom,
240
+ other: props.data.other,
241
+ painIndex: painIndex.value,
242
+ painHeight: painHeight.value,
243
+ painOriginY: painOriginY.value,
244
+ vitalSignsOriginY: vitalSignsOriginY.value,
245
+ gridXNumber: gridXNumber.value,
246
+ gridYNumber: gridYNumber.value,
247
+ iconsWidth: iconsWidth.value,
248
+ originX: originX.value,
249
+ originY: originY.value,
250
+ originYLimit: originYLimit.value,
251
+ endX: endX.value,
252
+ endXLimit: endXLimit.value,
253
+ endY: endY.value,
254
+ xCellWidth: xCellWidth.value,
255
+ yCellHeight: yCellHeight.value,
256
+ xScaleList: xScaleList.value,
257
+ breatheYCell: breatheYCell.value,
258
+ pulseYCell: pulseYCell.value,
259
+ temperatureYCell: temperatureYCell.value,
260
+ painYCell: painYCell.value,
261
+ event: event.value,
262
+ itemList: itemList.value
263
+ });
264
+ const { cumputedX, cumputedY, getXValue, getYValue } = useCumputedPoint(propItems);
265
+ useTop(canvas, propItems);
266
+ const { pointTipProps, pointMenuProps, clickMenu, setPopup, getEqualXTypes } = useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, getYValue, props.addRenderItem);
267
+ useLeft(canvas, propItems, emits, setPopup, pointTipProps, getXValue, getYValue, getEqualXTypes);
268
+ useRight(canvas, propItems);
269
+ useBottom(canvas, propItems);
270
+ useOther(canvas, propItems, cumputedX);
271
+ onMounted(() => {
272
+ canvas.value = new fabric.Canvas(canvasRef.value, {
273
+ width: propItems.canvasWidth,
274
+ height: propItems.canvasHeight,
275
+ backgroundColor: "#fff",
276
+ selection: false,
277
+ containerClass: "c-fabric-chart",
278
+ fireRightClick: true
279
+ });
280
+ useEvent(canvasRef.value);
281
+ const { select: selectFunc } = useCanvasEvent(canvas, propItems, emits);
282
+ select.value = selectFunc;
283
+ });
284
+ onBeforeUnmount(() => {
285
+ canvas.value.clear();
286
+ canvas.value = null;
287
+ });
288
+ expose({
289
+ select,
290
+ canvas
291
+ });
292
+ return (_ctx, _cache) => {
293
+ return openBlock(), createElementBlock(Fragment, null, [
294
+ createElementVNode("canvas", {
295
+ ref_key: "canvasRef",
296
+ ref: canvasRef
297
+ }, null, 512),
298
+ unref(canvas) ? (openBlock(), createBlock(PopupTip, mergeProps({
299
+ key: 0,
300
+ propItems
301
+ }, unref(pointTipProps)), null, 16, ["propItems"])) : createCommentVNode("v-if", true),
302
+ unref(canvas) ? (openBlock(), createBlock(unref(PopupMenu), mergeProps({
303
+ key: 1,
304
+ propItems
305
+ }, unref(pointMenuProps), {
306
+ show: unref(pointMenuProps).show,
307
+ "onUpdate:show": _cache[0] || (_cache[0] = ($event) => unref(pointMenuProps).show = $event),
308
+ onClickMenu: unref(clickMenu)
309
+ }), null, 16, ["propItems", "show", "onClickMenu"])) : createCommentVNode("v-if", true)
310
+ ], 64);
311
+ };
312
+ }
313
+ });
314
+ var script = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "FabricChart.vue"]]);
315
+
316
+ export { script as default };
@@ -26,9 +26,11 @@ declare const _default: import("vue").DefineComponent<{
26
26
  gridXNumber: import("vue").ComputedRef<number>;
27
27
  gridYNumber: import("vue").ComputedRef<number>;
28
28
  endX: import("vue").ComputedRef<number>;
29
+ endXLimit: import("vue").ComputedRef<number>;
29
30
  originX: import("vue").ComputedRef<any>;
30
31
  endY: import("vue").ComputedRef<number>;
31
32
  originY: import("vue").ComputedRef<number>;
33
+ originYLimit: import("vue").ComputedRef<number>;
32
34
  xCellWidth: import("vue").ComputedRef<number>;
33
35
  yCellHeight: import("vue").ComputedRef<number>;
34
36
  iconsWidth: import("vue").ComputedRef<any>;
@@ -1,4 +1,34 @@
1
- import script from './PopupTip.vue_vue_type_script_setup_true_lang.js';
2
- export { default } from './PopupTip.vue_vue_type_script_setup_true_lang.js';
1
+ import { defineComponent, openBlock, createBlock, Teleport, withDirectives, createElementVNode, normalizeStyle, unref, createElementBlock, Fragment, renderList, toDisplayString, vShow } from 'vue';
2
+ import useStyle from './useStyle.js';
3
+ import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.js';
3
4
 
4
- script.__file = "packages/fabric-chart/src/components/PopupTip.vue";
5
+ const _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "PopupTip",
7
+ props: {
8
+ show: { type: Boolean, default: false },
9
+ point: null,
10
+ list: { default: () => [] },
11
+ propItems: null
12
+ },
13
+ setup(__props) {
14
+ const props = __props;
15
+ const pointStyle = useStyle(props);
16
+ return (_ctx, _cache) => {
17
+ return openBlock(), createBlock(Teleport, { to: ".c-fabric-chart" }, [
18
+ withDirectives(createElementVNode("ul", {
19
+ class: "c-fabric-chart-popup-tip",
20
+ style: normalizeStyle(unref(pointStyle))
21
+ }, [
22
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.list, (item) => {
23
+ return openBlock(), createElementBlock("li", null, toDisplayString(item), 1);
24
+ }), 256))
25
+ ], 4), [
26
+ [vShow, __props.show]
27
+ ])
28
+ ]);
29
+ };
30
+ }
31
+ });
32
+ var PopupTip = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "PopupTip.vue"]]);
33
+
34
+ export { PopupTip as default };
@@ -38,6 +38,7 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
38
38
  const shadowLinesCache = /* @__PURE__ */ new Set();
39
39
  const maiboPoints = /* @__PURE__ */ new Set();
40
40
  const otherPoints = /* @__PURE__ */ new Set();
41
+ const prevLines = /* @__PURE__ */ new Set();
41
42
  onMounted(() => {
42
43
  nextTick(() => {
43
44
  init();
@@ -47,6 +48,7 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
47
48
  drawShaDow();
48
49
  maiboPoints.clear();
49
50
  otherPoints.clear();
51
+ prevLines.clear();
50
52
  left.yScaleValue.forEach((scaleValue) => {
51
53
  drawPositionLine(scaleValue);
52
54
  scaleValue.dataList.forEach((item, dataIndex) => {
@@ -94,12 +96,11 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
94
96
  y: item.y
95
97
  };
96
98
  }
97
- if (isEffectiveNode(item) && isLimit(item.time)) {
98
- let y = cumputedY(pulseObj.type, pulseObj.list, item.value);
99
- y = y < vitalSignsOriginY.originY ? vitalSignsOriginY.originY : y > vitalSignsOriginY.endY ? vitalSignsOriginY.endY : y;
99
+ const point = getPointer(item, pulseObj);
100
+ if (point == null ? void 0 : point.length) {
100
101
  return {
101
- x: cumputedX(item.time),
102
- y
102
+ x: point[0],
103
+ y: point[1]
103
104
  };
104
105
  }
105
106
  };
@@ -278,24 +279,10 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
278
279
  const lineList = [];
279
280
  const otherList = [];
280
281
  item.list.forEach((v, index) => {
281
- const newY = scaleValue.type === "pain" ? painOriginY : vitalSignsOriginY;
282
- let points = null;
283
- if (isEffectiveNode(v)) {
284
- const x = cumputedX(v.time);
285
- const y = cumputedY(scaleValue.type, scaleValue.list, v.value);
286
- if (isLimit(v.time)) {
287
- points = [x, y < newY.originY ? newY.originY : y > newY.endY ? newY.endY : y];
288
- }
289
- }
282
+ var _a;
283
+ const points = getPointer(v, scaleValue);
290
284
  const nextV = item.list[index + 1];
291
- let nextPoint = null;
292
- if (isEffectiveNode(nextV)) {
293
- const nextX = cumputedX(nextV.time);
294
- const nextY = cumputedY(scaleValue.type, scaleValue.list, nextV.value);
295
- if (isLimit(nextV.time)) {
296
- nextPoint = [nextX, nextY < newY.originY ? newY.originY : nextY > newY.endY ? newY.endY : nextY];
297
- }
298
- }
285
+ const nextPoint = getPointer(nextV, scaleValue);
299
286
  let coolLine, coolPoint, noRiseText, arrowGroup, verifiedText;
300
287
  if (points && scaleValue.type === "temperature") {
301
288
  if (v.noRise) {
@@ -357,9 +344,22 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
357
344
  }
358
345
  }
359
346
  let point;
360
- const line = points && nextPoint && !v.breakpoint ? drawLine([...points, ...nextPoint], {
361
- ...lineAttr
362
- }) : null;
347
+ let line;
348
+ if (points && nextPoint && !v.breakpoint) {
349
+ line = drawLine([...points, ...nextPoint], {
350
+ ...lineAttr
351
+ });
352
+ } else if (points && !nextPoint && !v.breakpoint && scaleValue.type === "temperature" && dataIndex < scaleValue.dataList.length - 1 && index === item.list.length - 1) {
353
+ const nextV2 = (_a = scaleValue.dataList[dataIndex + 1].list) == null ? void 0 : _a[0];
354
+ const nextLinePoint = getPointer(nextV2, scaleValue);
355
+ line = nextLinePoint ? drawLine([...points, ...nextLinePoint], {
356
+ ...lineAttr
357
+ }) : null;
358
+ nextLinePoint && prevLines.add({
359
+ dataIndex,
360
+ line
361
+ });
362
+ }
363
363
  const previousLine = lineList[index - 1];
364
364
  const pointAttrNew = {
365
365
  origin: {
@@ -390,6 +390,12 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
390
390
  } else {
391
391
  if (points) {
392
392
  pointAttrNew.leftLine = null;
393
+ if (scaleValue.type === "temperature" && index === 0) {
394
+ const objLine = [...prevLines].find((v2) => v2.dataIndex === dataIndex - 1);
395
+ if (objLine) {
396
+ pointAttrNew.leftLine = objLine.line;
397
+ }
398
+ }
393
399
  point = drawPoint(type, {
394
400
  left: points[0],
395
401
  top: points[1],
@@ -521,6 +527,16 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
521
527
  const getTime = new Date(time).getTime();
522
528
  return getTime >= minMinute && getTime <= maxMinute;
523
529
  }
530
+ function getPointer(v, scaleValue) {
531
+ let points;
532
+ const objOriginY = scaleValue.type === "pain" ? painOriginY : vitalSignsOriginY;
533
+ if (isEffectiveNode(v) && isLimit(v.time)) {
534
+ const x = cumputedX(v.time);
535
+ const y = cumputedY(scaleValue.type, scaleValue.list, v.value);
536
+ points = [x, y < objOriginY.originY ? objOriginY.originY : y > objOriginY.endY ? objOriginY.endY : y];
537
+ }
538
+ return points;
539
+ }
524
540
  function clickMenu({ item, target }) {
525
541
  if (!target) {
526
542
  emits("add", {
@@ -62,6 +62,7 @@ function drawPoint(type = "circle", style) {
62
62
  originY: "center",
63
63
  hasControls: false,
64
64
  hasBorders: false,
65
+ hoverCursor: "pointer",
65
66
  ...style
66
67
  };
67
68
  const createCircleBorder = () => {
@@ -23,6 +23,7 @@ function useCanvasEvent(canvas, propItems, emits) {
23
23
  lockMovementX: true,
24
24
  lockMovementY: true,
25
25
  transparentCorners: false,
26
+ hasControls: false,
26
27
  ...selectionStyle
27
28
  });
28
29
  canvas.value.add(rect);
@@ -37,9 +38,9 @@ function useCanvasEvent(canvas, propItems, emits) {
37
38
  const selections2 = [];
38
39
  selections2.push(drawRect({
39
40
  left: iconsWidth,
40
- top: originY,
41
+ top: originY + 1,
41
42
  width: originX - iconsWidth,
42
- height: endY
43
+ height: endY - originY - 3
43
44
  }, "left"));
44
45
  let topY = 0;
45
46
  topList.forEach((item, index) => {
@@ -48,16 +49,16 @@ function useCanvasEvent(canvas, propItems, emits) {
48
49
  }
49
50
  selections2.push(drawRect({
50
51
  left: iconsWidth,
51
- top: topY,
52
+ top: topY + 1,
52
53
  width: endX - iconsWidth,
53
- height: propItems[`${item.key}Height`]
54
+ height: propItems[`${item.key}Height`] - 1
54
55
  }, item.key));
55
56
  });
56
57
  selections2.push(drawRect({
57
58
  left: originX,
58
- top: originY,
59
+ top: originY + 1,
59
60
  width: endX - originX,
60
- height: endY - originY
61
+ height: endY - originY - 3
61
62
  }, "grid"));
62
63
  canvas.value.renderAll();
63
64
  return selections2;
@@ -65,8 +66,9 @@ function useCanvasEvent(canvas, propItems, emits) {
65
66
  const selections = initSelection();
66
67
  function select(key) {
67
68
  canvas.value.discardActiveObject();
69
+ canvas.value.renderAll();
68
70
  const obj = selections == null ? void 0 : selections.find((obj2) => obj2.key === key);
69
- obj && obj.bringToFront();
71
+ obj == null ? void 0 : obj.bringToFront();
70
72
  obj && canvas.value.setActiveObject(obj);
71
73
  }
72
74
  return { select };
@@ -9,13 +9,15 @@ function useLeft(canvas, propItems, emits, setPopup, pointTipProps, getXValue, g
9
9
  originX,
10
10
  endX,
11
11
  yCellHeight,
12
- borderStyle,
13
12
  left,
14
13
  vitalSignsOriginY,
15
14
  painOriginY,
16
15
  painHeight,
17
16
  iconsWidth,
18
- itemList
17
+ itemList,
18
+ painIndex,
19
+ canvasWidth,
20
+ canvasHeight
19
21
  } = propItems;
20
22
  const mainScaleWidth = 9;
21
23
  const subScaleWidth = 5;
@@ -56,7 +58,7 @@ function useLeft(canvas, propItems, emits, setPopup, pointTipProps, getXValue, g
56
58
  value: `${item.title.slice(0, 2)}
57
59
  ${item.title.slice(-2)}`,
58
60
  ...defaultTextStyle,
59
- ...item.titleStyle || {}
61
+ ...item.style || {}
60
62
  }, {
61
63
  left: iconsWidth,
62
64
  top: painOriginY.originY
@@ -86,7 +88,7 @@ ${item.title.slice(-2)}`,
86
88
  title.sendToBack();
87
89
  }
88
90
  function drawScaleValue() {
89
- let groupList = [];
91
+ const groupList = [];
90
92
  const column = !painHeight ? left.yScaleValue.length : left.yScaleValue.length - 1;
91
93
  const colWidth = (originX - iconsWidth) / column;
92
94
  const residue = (originX - iconsWidth) % column;
@@ -96,10 +98,17 @@ ${item.title.slice(-2)}`,
96
98
  drwaPainScaleValue(item);
97
99
  return;
98
100
  }
99
- let list = [];
101
+ const list = [];
102
+ function createLine(points) {
103
+ const line2 = new fabric.Line(points, {
104
+ ...defaultBorderStyle,
105
+ ...item.style
106
+ });
107
+ list.push(line2);
108
+ }
100
109
  const rectWidth = index === 0 ? firstColWidth : colWidth;
101
110
  const rectLeft = index === 0 ? iconsWidth : firstColWidth + iconsWidth + (index - 1) * colWidth;
102
- const line = index > 0 ? new fabric.Line([rectLeft, vitalSignsOriginY.originY, rectLeft, vitalSignsOriginY.endY], {
111
+ const line = index > 0 ? new fabric.Line([rectLeft, painIndex == 0 ? vitalSignsOriginY.originY : originY, rectLeft, vitalSignsOriginY.endY], {
103
112
  ...defaultBorderStyle
104
113
  }) : null;
105
114
  line && list.push(line);
@@ -118,13 +127,6 @@ ${item.title.slice(-2)}`,
118
127
  if (item.showScale && i !== item.list.length - 1) {
119
128
  for (let j = 0; j < 5; j++) {
120
129
  if (j > 0 || !item.showNumber || position !== "center") {
121
- let createLine = function(points) {
122
- const line2 = new fabric.Line(points, {
123
- ...defaultBorderStyle,
124
- ...item.style
125
- });
126
- list.push(line2);
127
- };
128
130
  const x1 = j == 0 ? lineXMain[0] : lineXSub[0];
129
131
  const x2 = j == 0 ? lineXMain[1] : lineXSub[1];
130
132
  const y = top - j * spaceScale;
@@ -164,10 +166,10 @@ ${item.title.slice(-2)}`,
164
166
  group && group.sendToBack();
165
167
  }
166
168
  function drawIcons() {
167
- let list = JSON.parse(JSON.stringify(itemList));
169
+ const list = JSON.parse(JSON.stringify(itemList));
168
170
  let topY = endY;
169
- let leftX = iconsWidth - left.icons.marginRight;
170
- list.reverse().forEach((item, index) => {
171
+ const leftX = iconsWidth - left.icons.marginRight;
172
+ list.reverse().forEach((item) => {
171
173
  topY -= 10;
172
174
  let title = item.title.replace(/(.{2})/g, "$1\n");
173
175
  if (title.endsWith("\n")) {
@@ -194,7 +196,9 @@ ${item.title.slice(-2)}`,
194
196
  unit: item.unit,
195
197
  type: item.bigType,
196
198
  dataIndex: item.dataIndex
197
- }
199
+ },
200
+ originLeft: leftX,
201
+ originTop: topY - (text.height || 30) / 2
198
202
  });
199
203
  topY -= text.height || 30;
200
204
  setPointEvent(icon);
@@ -226,9 +230,16 @@ ${item.title.slice(-2)}`,
226
230
  });
227
231
  } else {
228
232
  console.log("\u5F53\u524D\u65F6\u95F4\u6BB5\u5185\u65E0\u53EF\u65B0\u589E\u8282\u70B9");
233
+ setRestore();
229
234
  }
235
+ } else {
236
+ setRestore();
230
237
  }
231
238
  }
239
+ function setRestore() {
240
+ point.setCoords();
241
+ point.set({ left: point.originLeft, top: point.originTop });
242
+ }
232
243
  });
233
244
  }
234
245
  onMounted(() => {
@@ -3,25 +3,14 @@ import { fabric } from '../utils/index.js';
3
3
  import { defaultBorderStyle, defaultRectStyle, defaultStyle } from './useDraw.js';
4
4
 
5
5
  function useRight(canvas, propItems) {
6
- const {
7
- endX,
8
- endY,
9
- temperatureYCell,
10
- canvasWidth,
11
- canvasHeight,
12
- left,
13
- right,
14
- breathingHeight,
15
- vitalSignsOriginY,
16
- painOriginY
17
- } = propItems;
6
+ const { endX, endY, temperatureYCell, canvasWidth, canvasHeight, left, right, breathingHeight, vitalSignsOriginY } = propItems;
18
7
  function drawScaleValue() {
19
8
  var _a, _b, _c;
20
9
  if (!right) {
21
10
  canvas.value.add(new fabric.Line([canvasWidth - 1, 0, canvasWidth - 1, canvasHeight], defaultBorderStyle));
22
11
  return false;
23
12
  }
24
- let list = [];
13
+ const list = [];
25
14
  list.push(new fabric.Rect({
26
15
  ...defaultRectStyle,
27
16
  width: canvasWidth - endX - 1,