workflow-editor 0.0.81-up-tmp8 → 0.0.81-up-tmp10

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 (424) hide show
  1. package/dist/index.full.min.js +142 -138
  2. package/es/index.mjs +13 -15
  3. package/es/src/i18n/i18n.mjs +7 -0
  4. package/es/src/i18n/langs/cn.mjs +4 -0
  5. package/es/src/i18n/langs/en.mjs +4 -0
  6. package/es/style.css +153 -153
  7. package/es/workflow-editor/index.mjs +10 -0
  8. package/es/workflow-editor/src/api.mjs +6 -0
  9. package/es/workflow-editor/src/assets/wf-editor-icons.mjs +43 -0
  10. package/es/workflow-editor/src/json-object-templates/auto-task.mjs +7 -0
  11. package/es/workflow-editor/src/json-object-templates/copy-task.mjs +7 -0
  12. package/es/workflow-editor/src/json-object-templates/decision.mjs +7 -0
  13. package/es/workflow-editor/src/json-object-templates/end.mjs +7 -0
  14. package/es/workflow-editor/src/json-object-templates/fork.mjs +7 -0
  15. package/es/workflow-editor/src/json-object-templates/human-decision.mjs +7 -0
  16. package/es/workflow-editor/src/json-object-templates/human-task.mjs +7 -0
  17. package/es/workflow-editor/src/json-object-templates/join.mjs +7 -0
  18. package/es/workflow-editor/src/json-object-templates/process.mjs +9 -0
  19. package/es/workflow-editor/src/json-object-templates/start.mjs +7 -0
  20. package/es/workflow-editor/src/json-object-templates/subprocess.mjs +7 -0
  21. package/es/workflow-editor/src/json-object-templates/transition.mjs +6 -0
  22. package/es/workflow-editor/src/main/admin-save-dialog.vue.mjs +13 -0
  23. package/es/workflow-editor/src/main/canvas.vue.mjs +130 -0
  24. package/es/workflow-editor/src/main/canvas.vue2.mjs +4 -0
  25. package/es/workflow-editor/src/main/context-menu.vue.mjs +33 -0
  26. package/es/workflow-editor/src/main/context-menu.vue2.mjs +4 -0
  27. package/es/workflow-editor/src/main/icon-svg.vue.mjs +12 -0
  28. package/es/workflow-editor/src/main/icon-svg.vue2.mjs +4 -0
  29. package/es/workflow-editor/src/main/selection-region.vue.mjs +17 -0
  30. package/es/workflow-editor/src/main/selection-region.vue2.mjs +4 -0
  31. package/es/workflow-editor/src/main/tache-history-tooltip.vue.mjs +10 -0
  32. package/es/workflow-editor/src/main/tache-history-tooltip.vue2.mjs +4 -0
  33. package/es/workflow-editor/src/main/tache-subprocess-history-dialog.vue.mjs +11 -0
  34. package/es/workflow-editor/src/main/tache-subprocess-history-dialog.vue2.mjs +4 -0
  35. package/es/workflow-editor/src/main/toolbox.vue.mjs +16 -0
  36. package/es/workflow-editor/src/main/toolbox.vue2.mjs +4 -0
  37. package/es/workflow-editor/src/main/wf-history-canvas.vue.mjs +86 -0
  38. package/es/workflow-editor/src/main/wf-history-canvas.vue2.mjs +4 -0
  39. package/es/workflow-editor/src/process-service.mjs +21 -0
  40. package/es/workflow-editor/src/properties-editors/auto-task/basic-properties.vue.mjs +25 -0
  41. package/es/workflow-editor/src/properties-editors/auto-task/basic-properties.vue2.mjs +4 -0
  42. package/es/workflow-editor/src/properties-editors/auto-task.vue.mjs +22 -0
  43. package/es/workflow-editor/src/properties-editors/auto-task.vue2.mjs +4 -0
  44. package/es/workflow-editor/src/properties-editors/common/additional-condition-utils.mjs +125 -0
  45. package/es/workflow-editor/src/properties-editors/common/additional-condition.vue.mjs +60 -0
  46. package/es/workflow-editor/src/properties-editors/common/auto-filled-fields-utils.mjs +5 -0
  47. package/es/workflow-editor/src/properties-editors/common/auto-filled-fields.vue.mjs +72 -0
  48. package/es/workflow-editor/src/properties-editors/common/common-notice-tool.vue.mjs +18 -0
  49. package/es/workflow-editor/src/properties-editors/common/common-user-condition.vue.mjs +55 -0
  50. package/es/workflow-editor/src/properties-editors/common/form-fields-utils.mjs +14 -0
  51. package/es/workflow-editor/src/properties-editors/common/form-fields.vue.mjs +20 -0
  52. package/es/workflow-editor/src/properties-editors/common/form-fields.vue2.mjs +4 -0
  53. package/es/workflow-editor/src/properties-editors/common/i18n-input.vue.mjs +25 -0
  54. package/es/workflow-editor/src/properties-editors/common/i18n-set-dialog.vue.mjs +36 -0
  55. package/es/workflow-editor/src/properties-editors/common/notice-reminder.vue.mjs +27 -0
  56. package/es/workflow-editor/src/properties-editors/common/notice-reminder.vue2.mjs +4 -0
  57. package/es/workflow-editor/src/properties-editors/common/notice.vue.mjs +31 -0
  58. package/es/workflow-editor/src/properties-editors/common/reminder.vue.mjs +36 -0
  59. package/es/workflow-editor/src/properties-editors/common/reminder.vue2.mjs +4 -0
  60. package/es/workflow-editor/src/properties-editors/common/select-mail-template.vue.mjs +20 -0
  61. package/es/workflow-editor/src/properties-editors/common/system-role-tree-inline.vue.mjs +95 -0
  62. package/es/workflow-editor/src/properties-editors/common/system-role-tree-inline.vue2.mjs +4 -0
  63. package/es/workflow-editor/src/properties-editors/common/system-role-tree.vue.mjs +16 -0
  64. package/es/workflow-editor/src/properties-editors/common/system-role-tree.vue2.mjs +4 -0
  65. package/es/workflow-editor/src/properties-editors/common/task-title.vue.mjs +46 -0
  66. package/es/workflow-editor/src/properties-editors/common/task-title.vue2.mjs +4 -0
  67. package/es/workflow-editor/src/properties-editors/common/transactor-settings.vue.mjs +43 -0
  68. package/es/workflow-editor/src/properties-editors/common/user-selection.vue.mjs +116 -0
  69. package/es/workflow-editor/src/properties-editors/common/value-selection-dialog.vue.mjs +60 -0
  70. package/es/workflow-editor/src/properties-editors/common/value-selection-dialog.vue2.mjs +4 -0
  71. package/es/workflow-editor/src/properties-editors/common/variables.vue.mjs +41 -0
  72. package/es/workflow-editor/src/properties-editors/copy-task/basic-properties.vue.mjs +25 -0
  73. package/es/workflow-editor/src/properties-editors/copy-task/basic-properties.vue2.mjs +4 -0
  74. package/es/workflow-editor/src/properties-editors/copy-task/permission-settings.vue.mjs +30 -0
  75. package/es/workflow-editor/src/properties-editors/copy-task/permission-settings.vue2.mjs +4 -0
  76. package/es/workflow-editor/src/properties-editors/copy-task.vue.mjs +26 -0
  77. package/es/workflow-editor/src/properties-editors/copy-task.vue2.mjs +4 -0
  78. package/es/workflow-editor/src/properties-editors/decision.vue.mjs +24 -0
  79. package/es/workflow-editor/src/properties-editors/fork.vue.mjs +21 -0
  80. package/es/workflow-editor/src/properties-editors/human-decision.vue.mjs +15 -0
  81. package/es/workflow-editor/src/properties-editors/human-task/additional-condition-dialog.vue.mjs +16 -0
  82. package/es/workflow-editor/src/properties-editors/human-task/basic-properties.vue.mjs +38 -0
  83. package/es/workflow-editor/src/properties-editors/human-task/basic-properties.vue2.mjs +4 -0
  84. package/es/workflow-editor/src/properties-editors/human-task/componentsConfigUtil.mjs +84 -0
  85. package/es/workflow-editor/src/properties-editors/human-task/custom-actions.vue.mjs +62 -0
  86. package/es/workflow-editor/src/properties-editors/human-task/editable-child-field-setting.vue.mjs +80 -0
  87. package/es/workflow-editor/src/properties-editors/human-task/editable-child-fields.vue.mjs +86 -0
  88. package/es/workflow-editor/src/properties-editors/human-task/editable-field-selection.vue.mjs +43 -0
  89. package/es/workflow-editor/src/properties-editors/human-task/editable-field-selection.vue2.mjs +4 -0
  90. package/es/workflow-editor/src/properties-editors/human-task/editable-fields.vue.mjs +67 -0
  91. package/es/workflow-editor/src/properties-editors/human-task/events.vue.mjs +18 -0
  92. package/es/workflow-editor/src/properties-editors/human-task/permission-settings.vue.mjs +33 -0
  93. package/es/workflow-editor/src/properties-editors/human-task/permission-settings.vue2.mjs +4 -0
  94. package/es/workflow-editor/src/properties-editors/human-task/selection-conditions.vue.mjs +56 -0
  95. package/es/workflow-editor/src/properties-editors/human-task.vue.mjs +28 -0
  96. package/es/workflow-editor/src/properties-editors/human-task.vue2.mjs +4 -0
  97. package/es/workflow-editor/src/properties-editors/join.vue.mjs +15 -0
  98. package/es/workflow-editor/src/properties-editors/process/basic-properties.vue.mjs +88 -0
  99. package/es/workflow-editor/src/properties-editors/process/events.vue.mjs +21 -0
  100. package/es/workflow-editor/src/properties-editors/process/notice-settings.vue.mjs +25 -0
  101. package/es/workflow-editor/src/properties-editors/process/parameter-settings.vue.mjs +17 -0
  102. package/es/workflow-editor/src/properties-editors/process/permission-settings.vue.mjs +10 -0
  103. package/es/workflow-editor/src/properties-editors/process/selectPage.vue.mjs +28 -0
  104. package/es/workflow-editor/src/properties-editors/process.vue.mjs +34 -0
  105. package/es/workflow-editor/src/properties-editors/subprocess/basic-properties.vue.mjs +64 -0
  106. package/es/workflow-editor/src/properties-editors/subprocess/events.vue.mjs +9 -0
  107. package/es/workflow-editor/src/properties-editors/subprocess/field-mappings.vue.mjs +55 -0
  108. package/es/workflow-editor/src/properties-editors/subprocess/transactor-settings.vue.mjs +20 -0
  109. package/es/workflow-editor/src/properties-editors/subprocess.vue.mjs +22 -0
  110. package/es/workflow-editor/src/properties-editors/subprocess.vue2.mjs +4 -0
  111. package/es/workflow-editor/src/properties-editors/transition/basic-properties.vue.mjs +14 -0
  112. package/es/workflow-editor/src/properties-editors/transition.vue.mjs +17 -0
  113. package/es/workflow-editor/src/properties-editors/transition.vue2.mjs +4 -0
  114. package/es/workflow-editor/src/properties-editors/user-condition.mjs +49 -0
  115. package/es/workflow-editor/src/store/getters.mjs +4 -0
  116. package/es/workflow-editor/src/store/workflow-editor.mjs +73 -0
  117. package/es/workflow-editor/src/taches/auto-task.vue.mjs +25 -0
  118. package/es/workflow-editor/src/taches/common-methods.mjs +13 -0
  119. package/es/workflow-editor/src/taches/copy-task.vue.mjs +25 -0
  120. package/es/workflow-editor/src/taches/custom-task.vue.mjs +16 -0
  121. package/es/workflow-editor/src/taches/decision.vue.mjs +25 -0
  122. package/es/workflow-editor/src/taches/decision.vue2.mjs +4 -0
  123. package/es/workflow-editor/src/taches/end.vue.mjs +14 -0
  124. package/es/workflow-editor/src/taches/end.vue2.mjs +4 -0
  125. package/es/workflow-editor/src/taches/fork.vue.mjs +25 -0
  126. package/es/workflow-editor/src/taches/fork.vue2.mjs +4 -0
  127. package/es/workflow-editor/src/taches/human-decision.vue.mjs +25 -0
  128. package/es/workflow-editor/src/taches/human-decision.vue2.mjs +4 -0
  129. package/es/workflow-editor/src/taches/human-task.vue.mjs +25 -0
  130. package/es/workflow-editor/src/taches/join.vue.mjs +16 -0
  131. package/es/workflow-editor/src/taches/join.vue2.mjs +4 -0
  132. package/es/workflow-editor/src/taches/joint.vue.mjs +54 -0
  133. package/es/workflow-editor/src/taches/joint.vue2.mjs +4 -0
  134. package/es/workflow-editor/src/taches/start.vue.mjs +14 -0
  135. package/es/workflow-editor/src/taches/start.vue2.mjs +4 -0
  136. package/es/workflow-editor/src/taches/subprocess.vue.mjs +25 -0
  137. package/es/workflow-editor/src/taches/tache-resizer.vue.mjs +30 -0
  138. package/es/workflow-editor/src/taches/tache-resizer.vue2.mjs +4 -0
  139. package/es/workflow-editor/src/transitions/broken-line.vue.mjs +32 -0
  140. package/es/workflow-editor/src/transitions/broken-line.vue2.mjs +4 -0
  141. package/es/workflow-editor/src/transitions/curve-line.vue.mjs +33 -0
  142. package/es/workflow-editor/src/transitions/curve-line.vue2.mjs +4 -0
  143. package/es/workflow-editor/src/transitions/straight-line.vue.mjs +13 -0
  144. package/es/workflow-editor/src/transitions/transition.vue.mjs +70 -0
  145. package/es/workflow-editor/src/transitions/transition.vue2.mjs +4 -0
  146. package/es/workflow-editor/src/transitions/virtual-transition.vue.mjs +17 -0
  147. package/es/workflow-editor/src/transitions/virtual-transition.vue2.mjs +4 -0
  148. package/es/workflow-editor/src/util.mjs +180 -0
  149. package/es/workflow-editor/src/workflow-editor.vue.mjs +205 -0
  150. package/es/workflow-editor/src/workflow-editor.vue2.mjs +4 -0
  151. package/es/workflow-editor/src/workflow-history.vue.mjs +35 -0
  152. package/es/workflow-editor/src/workflow-history.vue2.mjs +4 -0
  153. package/lib/index.cjs +4 -4
  154. package/lib/src/i18n/i18n.cjs +3 -0
  155. package/lib/src/i18n/langs/cn.cjs +2 -0
  156. package/lib/src/i18n/langs/en.cjs +2 -0
  157. package/lib/style.css +110 -110
  158. package/lib/workflow-editor/index.cjs +7 -0
  159. package/lib/workflow-editor/src/api.cjs +5 -0
  160. package/lib/workflow-editor/src/assets/wf-editor-icons.cjs +44 -0
  161. package/lib/workflow-editor/src/json-object-templates/auto-task.cjs +5 -0
  162. package/lib/workflow-editor/src/json-object-templates/copy-task.cjs +5 -0
  163. package/lib/workflow-editor/src/json-object-templates/decision.cjs +5 -0
  164. package/lib/workflow-editor/src/json-object-templates/end.cjs +5 -0
  165. package/lib/workflow-editor/src/json-object-templates/fork.cjs +5 -0
  166. package/lib/workflow-editor/src/json-object-templates/human-decision.cjs +5 -0
  167. package/lib/workflow-editor/src/json-object-templates/human-task.cjs +5 -0
  168. package/lib/workflow-editor/src/json-object-templates/join.cjs +5 -0
  169. package/lib/workflow-editor/src/json-object-templates/process.cjs +6 -0
  170. package/lib/workflow-editor/src/json-object-templates/start.cjs +5 -0
  171. package/lib/workflow-editor/src/json-object-templates/subprocess.cjs +5 -0
  172. package/lib/workflow-editor/src/json-object-templates/transition.cjs +4 -0
  173. package/lib/workflow-editor/src/main/admin-save-dialog.vue.cjs +11 -0
  174. package/lib/workflow-editor/src/main/canvas.vue.cjs +101 -0
  175. package/lib/workflow-editor/src/main/canvas.vue2.cjs +2 -0
  176. package/lib/workflow-editor/src/main/context-menu.vue.cjs +29 -0
  177. package/lib/workflow-editor/src/main/context-menu.vue2.cjs +2 -0
  178. package/lib/workflow-editor/src/main/icon-svg.vue.cjs +10 -0
  179. package/lib/workflow-editor/src/main/icon-svg.vue2.cjs +2 -0
  180. package/lib/workflow-editor/src/main/selection-region.vue.cjs +13 -0
  181. package/lib/workflow-editor/src/main/selection-region.vue2.cjs +2 -0
  182. package/lib/workflow-editor/src/main/tache-history-tooltip.vue.cjs +8 -0
  183. package/lib/workflow-editor/src/main/tache-history-tooltip.vue2.cjs +2 -0
  184. package/lib/workflow-editor/src/main/tache-subprocess-history-dialog.vue.cjs +9 -0
  185. package/lib/workflow-editor/src/main/tache-subprocess-history-dialog.vue2.cjs +2 -0
  186. package/lib/workflow-editor/src/main/toolbox.vue.cjs +11 -0
  187. package/lib/workflow-editor/src/main/toolbox.vue2.cjs +2 -0
  188. package/lib/workflow-editor/src/main/wf-history-canvas.vue.cjs +67 -0
  189. package/lib/workflow-editor/src/main/wf-history-canvas.vue2.cjs +2 -0
  190. package/lib/workflow-editor/src/process-service.cjs +20 -0
  191. package/lib/workflow-editor/src/properties-editors/auto-task/basic-properties.vue.cjs +20 -0
  192. package/lib/workflow-editor/src/properties-editors/auto-task/basic-properties.vue2.cjs +2 -0
  193. package/lib/workflow-editor/src/properties-editors/auto-task.vue.cjs +19 -0
  194. package/lib/workflow-editor/src/properties-editors/auto-task.vue2.cjs +2 -0
  195. package/lib/workflow-editor/src/properties-editors/common/additional-condition-utils.cjs +94 -0
  196. package/lib/workflow-editor/src/properties-editors/common/additional-condition.vue.cjs +54 -0
  197. package/lib/workflow-editor/src/properties-editors/common/auto-filled-fields-utils.cjs +4 -0
  198. package/lib/workflow-editor/src/properties-editors/common/auto-filled-fields.vue.cjs +67 -0
  199. package/lib/workflow-editor/src/properties-editors/common/common-notice-tool.vue.cjs +16 -0
  200. package/lib/workflow-editor/src/properties-editors/common/common-user-condition.vue.cjs +50 -0
  201. package/lib/workflow-editor/src/properties-editors/common/form-fields-utils.cjs +11 -0
  202. package/lib/workflow-editor/src/properties-editors/common/form-fields.vue.cjs +17 -0
  203. package/lib/workflow-editor/src/properties-editors/common/form-fields.vue2.cjs +2 -0
  204. package/lib/workflow-editor/src/properties-editors/common/i18n-input.vue.cjs +20 -0
  205. package/lib/workflow-editor/src/properties-editors/common/i18n-set-dialog.vue.cjs +31 -0
  206. package/lib/workflow-editor/src/properties-editors/common/notice-reminder.vue.cjs +22 -0
  207. package/lib/workflow-editor/src/properties-editors/common/notice-reminder.vue2.cjs +2 -0
  208. package/lib/workflow-editor/src/properties-editors/common/notice.vue.cjs +25 -0
  209. package/lib/workflow-editor/src/properties-editors/common/reminder.vue.cjs +31 -0
  210. package/lib/workflow-editor/src/properties-editors/common/reminder.vue2.cjs +2 -0
  211. package/lib/workflow-editor/src/properties-editors/common/select-mail-template.vue.cjs +17 -0
  212. package/lib/workflow-editor/src/properties-editors/common/system-role-tree-inline.vue.cjs +93 -0
  213. package/lib/workflow-editor/src/properties-editors/common/system-role-tree-inline.vue2.cjs +2 -0
  214. package/lib/workflow-editor/src/properties-editors/common/system-role-tree.vue.cjs +13 -0
  215. package/lib/workflow-editor/src/properties-editors/common/system-role-tree.vue2.cjs +2 -0
  216. package/lib/workflow-editor/src/properties-editors/common/task-title.vue.cjs +42 -0
  217. package/lib/workflow-editor/src/properties-editors/common/task-title.vue2.cjs +2 -0
  218. package/lib/workflow-editor/src/properties-editors/common/transactor-settings.vue.cjs +37 -0
  219. package/lib/workflow-editor/src/properties-editors/common/user-selection.vue.cjs +110 -0
  220. package/lib/workflow-editor/src/properties-editors/common/value-selection-dialog.vue.cjs +55 -0
  221. package/lib/workflow-editor/src/properties-editors/common/value-selection-dialog.vue2.cjs +2 -0
  222. package/lib/workflow-editor/src/properties-editors/common/variables.vue.cjs +39 -0
  223. package/lib/workflow-editor/src/properties-editors/copy-task/basic-properties.vue.cjs +20 -0
  224. package/lib/workflow-editor/src/properties-editors/copy-task/basic-properties.vue2.cjs +2 -0
  225. package/lib/workflow-editor/src/properties-editors/copy-task/permission-settings.vue.cjs +26 -0
  226. package/lib/workflow-editor/src/properties-editors/copy-task/permission-settings.vue2.cjs +2 -0
  227. package/lib/workflow-editor/src/properties-editors/copy-task.vue.cjs +19 -0
  228. package/lib/workflow-editor/src/properties-editors/copy-task.vue2.cjs +2 -0
  229. package/lib/workflow-editor/src/properties-editors/decision.vue.cjs +20 -0
  230. package/lib/workflow-editor/src/properties-editors/fork.vue.cjs +18 -0
  231. package/lib/workflow-editor/src/properties-editors/human-decision.vue.cjs +13 -0
  232. package/lib/workflow-editor/src/properties-editors/human-task/additional-condition-dialog.vue.cjs +13 -0
  233. package/lib/workflow-editor/src/properties-editors/human-task/basic-properties.vue.cjs +31 -0
  234. package/lib/workflow-editor/src/properties-editors/human-task/basic-properties.vue2.cjs +2 -0
  235. package/lib/workflow-editor/src/properties-editors/human-task/componentsConfigUtil.cjs +82 -0
  236. package/lib/workflow-editor/src/properties-editors/human-task/custom-actions.vue.cjs +56 -0
  237. package/lib/workflow-editor/src/properties-editors/human-task/editable-child-field-setting.vue.cjs +75 -0
  238. package/lib/workflow-editor/src/properties-editors/human-task/editable-child-fields.vue.cjs +80 -0
  239. package/lib/workflow-editor/src/properties-editors/human-task/editable-field-selection.vue.cjs +39 -0
  240. package/lib/workflow-editor/src/properties-editors/human-task/editable-field-selection.vue2.cjs +2 -0
  241. package/lib/workflow-editor/src/properties-editors/human-task/editable-fields.vue.cjs +60 -0
  242. package/lib/workflow-editor/src/properties-editors/human-task/events.vue.cjs +15 -0
  243. package/lib/workflow-editor/src/properties-editors/human-task/permission-settings.vue.cjs +26 -0
  244. package/lib/workflow-editor/src/properties-editors/human-task/permission-settings.vue2.cjs +2 -0
  245. package/lib/workflow-editor/src/properties-editors/human-task/selection-conditions.vue.cjs +49 -0
  246. package/lib/workflow-editor/src/properties-editors/human-task.vue.cjs +19 -0
  247. package/lib/workflow-editor/src/properties-editors/human-task.vue2.cjs +2 -0
  248. package/lib/workflow-editor/src/properties-editors/join.vue.cjs +13 -0
  249. package/lib/workflow-editor/src/properties-editors/process/basic-properties.vue.cjs +81 -0
  250. package/lib/workflow-editor/src/properties-editors/process/events.vue.cjs +18 -0
  251. package/lib/workflow-editor/src/properties-editors/process/notice-settings.vue.cjs +21 -0
  252. package/lib/workflow-editor/src/properties-editors/process/parameter-settings.vue.cjs +13 -0
  253. package/lib/workflow-editor/src/properties-editors/process/permission-settings.vue.cjs +7 -0
  254. package/lib/workflow-editor/src/properties-editors/process/selectPage.vue.cjs +23 -0
  255. package/lib/workflow-editor/src/properties-editors/process.vue.cjs +24 -0
  256. package/lib/workflow-editor/src/properties-editors/subprocess/basic-properties.vue.cjs +57 -0
  257. package/lib/workflow-editor/src/properties-editors/subprocess/events.vue.cjs +7 -0
  258. package/lib/workflow-editor/src/properties-editors/subprocess/field-mappings.vue.cjs +50 -0
  259. package/lib/workflow-editor/src/properties-editors/subprocess/transactor-settings.vue.cjs +16 -0
  260. package/lib/workflow-editor/src/properties-editors/subprocess.vue.cjs +17 -0
  261. package/lib/workflow-editor/src/properties-editors/subprocess.vue2.cjs +2 -0
  262. package/lib/workflow-editor/src/properties-editors/transition/basic-properties.vue.cjs +10 -0
  263. package/lib/workflow-editor/src/properties-editors/transition.vue.cjs +12 -0
  264. package/lib/workflow-editor/src/properties-editors/transition.vue2.cjs +2 -0
  265. package/lib/workflow-editor/src/properties-editors/user-condition.cjs +33 -0
  266. package/lib/workflow-editor/src/store/getters.cjs +2 -0
  267. package/lib/workflow-editor/src/store/workflow-editor.cjs +71 -0
  268. package/lib/workflow-editor/src/taches/auto-task.vue.cjs +17 -0
  269. package/lib/workflow-editor/src/taches/common-methods.cjs +11 -0
  270. package/lib/workflow-editor/src/taches/copy-task.vue.cjs +17 -0
  271. package/lib/workflow-editor/src/taches/custom-task.vue.cjs +9 -0
  272. package/lib/workflow-editor/src/taches/decision.vue.cjs +19 -0
  273. package/lib/workflow-editor/src/taches/decision.vue2.cjs +2 -0
  274. package/lib/workflow-editor/src/taches/end.vue.cjs +9 -0
  275. package/lib/workflow-editor/src/taches/end.vue2.cjs +2 -0
  276. package/lib/workflow-editor/src/taches/fork.vue.cjs +19 -0
  277. package/lib/workflow-editor/src/taches/fork.vue2.cjs +2 -0
  278. package/lib/workflow-editor/src/taches/human-decision.vue.cjs +19 -0
  279. package/lib/workflow-editor/src/taches/human-decision.vue2.cjs +2 -0
  280. package/lib/workflow-editor/src/taches/human-task.vue.cjs +17 -0
  281. package/lib/workflow-editor/src/taches/join.vue.cjs +11 -0
  282. package/lib/workflow-editor/src/taches/join.vue2.cjs +2 -0
  283. package/lib/workflow-editor/src/taches/joint.vue.cjs +50 -0
  284. package/lib/workflow-editor/src/taches/joint.vue2.cjs +2 -0
  285. package/lib/workflow-editor/src/taches/start.vue.cjs +9 -0
  286. package/lib/workflow-editor/src/taches/start.vue2.cjs +2 -0
  287. package/lib/workflow-editor/src/taches/subprocess.vue.cjs +17 -0
  288. package/lib/workflow-editor/src/taches/tache-resizer.vue.cjs +27 -0
  289. package/lib/workflow-editor/src/taches/tache-resizer.vue2.cjs +2 -0
  290. package/lib/workflow-editor/src/transitions/broken-line.vue.cjs +28 -0
  291. package/lib/workflow-editor/src/transitions/broken-line.vue2.cjs +2 -0
  292. package/lib/workflow-editor/src/transitions/curve-line.vue.cjs +29 -0
  293. package/lib/workflow-editor/src/transitions/curve-line.vue2.cjs +2 -0
  294. package/lib/workflow-editor/src/transitions/straight-line.vue.cjs +9 -0
  295. package/lib/workflow-editor/src/transitions/transition.vue.cjs +63 -0
  296. package/lib/workflow-editor/src/transitions/transition.vue2.cjs +2 -0
  297. package/lib/workflow-editor/src/transitions/virtual-transition.vue.cjs +13 -0
  298. package/lib/workflow-editor/src/transitions/virtual-transition.vue2.cjs +2 -0
  299. package/lib/workflow-editor/src/util.cjs +139 -0
  300. package/lib/workflow-editor/src/workflow-editor.vue.cjs +191 -0
  301. package/lib/workflow-editor/src/workflow-editor.vue2.cjs +2 -0
  302. package/lib/workflow-editor/src/workflow-history.vue.cjs +28 -0
  303. package/lib/workflow-editor/src/workflow-history.vue2.cjs +2 -0
  304. package/package.json +1 -1
  305. package/packages/index.js +50 -0
  306. package/packages/plugins/formValidatorUtil.js +723 -0
  307. package/packages/plugins/index.js +8 -0
  308. package/packages/workflow-editor/index.js +14 -0
  309. package/packages/workflow-editor/src/api.js +7 -0
  310. package/packages/workflow-editor/src/assets/tab-select.png +0 -0
  311. package/packages/workflow-editor/src/assets/tab-selectWhite.png +0 -0
  312. package/packages/workflow-editor/src/assets/wf-editor-icons.js +2 -0
  313. package/packages/workflow-editor/src/constant.js +8 -0
  314. package/packages/workflow-editor/src/json-object-templates/auto-task.js +70 -0
  315. package/packages/workflow-editor/src/json-object-templates/copy-task.js +72 -0
  316. package/packages/workflow-editor/src/json-object-templates/decision.js +11 -0
  317. package/packages/workflow-editor/src/json-object-templates/end.js +14 -0
  318. package/packages/workflow-editor/src/json-object-templates/fork.js +10 -0
  319. package/packages/workflow-editor/src/json-object-templates/human-decision.js +9 -0
  320. package/packages/workflow-editor/src/json-object-templates/human-task.js +208 -0
  321. package/packages/workflow-editor/src/json-object-templates/join.js +10 -0
  322. package/packages/workflow-editor/src/json-object-templates/process.js +99 -0
  323. package/packages/workflow-editor/src/json-object-templates/start.js +13 -0
  324. package/packages/workflow-editor/src/json-object-templates/subprocess.js +31 -0
  325. package/packages/workflow-editor/src/json-object-templates/transition.js +26 -0
  326. package/packages/workflow-editor/src/main/admin-save-dialog.vue +67 -0
  327. package/packages/workflow-editor/src/main/canvas.vue +493 -0
  328. package/packages/workflow-editor/src/main/context-menu.vue +147 -0
  329. package/packages/workflow-editor/src/main/icon-svg.vue +32 -0
  330. package/packages/workflow-editor/src/main/selection-region.vue +66 -0
  331. package/packages/workflow-editor/src/main/tache-history-tooltip.vue +38 -0
  332. package/packages/workflow-editor/src/main/tache-name-input.vue +19 -0
  333. package/packages/workflow-editor/src/main/tache-subprocess-history-dialog.vue +40 -0
  334. package/packages/workflow-editor/src/main/toolbox.vue +60 -0
  335. package/packages/workflow-editor/src/main/wf-history-canvas.vue +309 -0
  336. package/packages/workflow-editor/src/process-json.js +624 -0
  337. package/packages/workflow-editor/src/process-service.js +68 -0
  338. package/packages/workflow-editor/src/properties-editors/auto-task/basic-properties.vue +81 -0
  339. package/packages/workflow-editor/src/properties-editors/auto-task/permission-settings.vue +155 -0
  340. package/packages/workflow-editor/src/properties-editors/auto-task.vue +74 -0
  341. package/packages/workflow-editor/src/properties-editors/common/additional-condition-utils.js +568 -0
  342. package/packages/workflow-editor/src/properties-editors/common/additional-condition.vue +320 -0
  343. package/packages/workflow-editor/src/properties-editors/common/auto-filled-fields-utils.js +34 -0
  344. package/packages/workflow-editor/src/properties-editors/common/auto-filled-fields.vue +268 -0
  345. package/packages/workflow-editor/src/properties-editors/common/common-notice-tool.vue +81 -0
  346. package/packages/workflow-editor/src/properties-editors/common/common-user-condition.vue +242 -0
  347. package/packages/workflow-editor/src/properties-editors/common/form-fields-utils.js +23 -0
  348. package/packages/workflow-editor/src/properties-editors/common/form-fields.vue +117 -0
  349. package/packages/workflow-editor/src/properties-editors/common/i18n-input.vue +88 -0
  350. package/packages/workflow-editor/src/properties-editors/common/i18n-set-dialog.vue +143 -0
  351. package/packages/workflow-editor/src/properties-editors/common/notice-reminder.vue +149 -0
  352. package/packages/workflow-editor/src/properties-editors/common/notice.vue +108 -0
  353. package/packages/workflow-editor/src/properties-editors/common/reminder.vue +272 -0
  354. package/packages/workflow-editor/src/properties-editors/common/select-mail-template.vue +92 -0
  355. package/packages/workflow-editor/src/properties-editors/common/standard-fields.vue +66 -0
  356. package/packages/workflow-editor/src/properties-editors/common/system-role-tree-inline.vue +354 -0
  357. package/packages/workflow-editor/src/properties-editors/common/system-role-tree.vue +68 -0
  358. package/packages/workflow-editor/src/properties-editors/common/task-title.vue +165 -0
  359. package/packages/workflow-editor/src/properties-editors/common/transactor-settings.vue +275 -0
  360. package/packages/workflow-editor/src/properties-editors/common/user-selection.vue +426 -0
  361. package/packages/workflow-editor/src/properties-editors/common/value-selection-dialog.vue +272 -0
  362. package/packages/workflow-editor/src/properties-editors/common/variables.vue +139 -0
  363. package/packages/workflow-editor/src/properties-editors/copy-task/basic-properties.vue +90 -0
  364. package/packages/workflow-editor/src/properties-editors/copy-task/permission-settings.vue +155 -0
  365. package/packages/workflow-editor/src/properties-editors/copy-task.vue +95 -0
  366. package/packages/workflow-editor/src/properties-editors/decision.vue +95 -0
  367. package/packages/workflow-editor/src/properties-editors/fork.vue +77 -0
  368. package/packages/workflow-editor/src/properties-editors/human-decision.vue +49 -0
  369. package/packages/workflow-editor/src/properties-editors/human-task/additional-condition-dialog.vue +62 -0
  370. package/packages/workflow-editor/src/properties-editors/human-task/basic-properties.vue +184 -0
  371. package/packages/workflow-editor/src/properties-editors/human-task/componentsConfigUtil.js +359 -0
  372. package/packages/workflow-editor/src/properties-editors/human-task/custom-actions.vue +256 -0
  373. package/packages/workflow-editor/src/properties-editors/human-task/editable-child-field-setting.vue +405 -0
  374. package/packages/workflow-editor/src/properties-editors/human-task/editable-child-fields.vue +257 -0
  375. package/packages/workflow-editor/src/properties-editors/human-task/editable-field-selection.vue +430 -0
  376. package/packages/workflow-editor/src/properties-editors/human-task/editable-fields.vue +206 -0
  377. package/packages/workflow-editor/src/properties-editors/human-task/events.vue +60 -0
  378. package/packages/workflow-editor/src/properties-editors/human-task/permission-settings.vue +224 -0
  379. package/packages/workflow-editor/src/properties-editors/human-task/selection-conditions.vue +499 -0
  380. package/packages/workflow-editor/src/properties-editors/human-task.vue +107 -0
  381. package/packages/workflow-editor/src/properties-editors/join.vue +49 -0
  382. package/packages/workflow-editor/src/properties-editors/process/basic-properties.vue +336 -0
  383. package/packages/workflow-editor/src/properties-editors/process/events.vue +79 -0
  384. package/packages/workflow-editor/src/properties-editors/process/notice-settings.vue +68 -0
  385. package/packages/workflow-editor/src/properties-editors/process/parameter-settings.vue +106 -0
  386. package/packages/workflow-editor/src/properties-editors/process/permission-settings.vue +28 -0
  387. package/packages/workflow-editor/src/properties-editors/process/selectPage.vue +88 -0
  388. package/packages/workflow-editor/src/properties-editors/process.vue +115 -0
  389. package/packages/workflow-editor/src/properties-editors/subprocess/basic-properties.vue +201 -0
  390. package/packages/workflow-editor/src/properties-editors/subprocess/events.vue +26 -0
  391. package/packages/workflow-editor/src/properties-editors/subprocess/field-mappings.vue +216 -0
  392. package/packages/workflow-editor/src/properties-editors/subprocess/transactor-settings.vue +66 -0
  393. package/packages/workflow-editor/src/properties-editors/subprocess.vue +80 -0
  394. package/packages/workflow-editor/src/properties-editors/transition/basic-properties.vue +53 -0
  395. package/packages/workflow-editor/src/properties-editors/transition.vue +75 -0
  396. package/packages/workflow-editor/src/properties-editors/user-condition.js +183 -0
  397. package/packages/workflow-editor/src/store/getters.js +33 -0
  398. package/packages/workflow-editor/src/store/workflow-editor.js +153 -0
  399. package/packages/workflow-editor/src/taches/auto-task.vue +99 -0
  400. package/packages/workflow-editor/src/taches/common-methods.js +21 -0
  401. package/packages/workflow-editor/src/taches/copy-task.vue +99 -0
  402. package/packages/workflow-editor/src/taches/custom-task.vue +88 -0
  403. package/packages/workflow-editor/src/taches/decision.vue +102 -0
  404. package/packages/workflow-editor/src/taches/end.vue +76 -0
  405. package/packages/workflow-editor/src/taches/fork.vue +102 -0
  406. package/packages/workflow-editor/src/taches/human-decision.vue +102 -0
  407. package/packages/workflow-editor/src/taches/human-task.vue +113 -0
  408. package/packages/workflow-editor/src/taches/join.vue +91 -0
  409. package/packages/workflow-editor/src/taches/joint.vue +177 -0
  410. package/packages/workflow-editor/src/taches/start.vue +76 -0
  411. package/packages/workflow-editor/src/taches/subprocess.vue +99 -0
  412. package/packages/workflow-editor/src/taches/tache-resizer.vue +80 -0
  413. package/packages/workflow-editor/src/transitions/broken-line.vue +91 -0
  414. package/packages/workflow-editor/src/transitions/curve-line.vue +91 -0
  415. package/packages/workflow-editor/src/transitions/straight-line.vue +26 -0
  416. package/packages/workflow-editor/src/transitions/transition.vue +209 -0
  417. package/packages/workflow-editor/src/transitions/virtual-transition.vue +43 -0
  418. package/packages/workflow-editor/src/util.js +499 -0
  419. package/packages/workflow-editor/src/workflow-editor.vue +852 -0
  420. package/packages/workflow-editor/src/workflow-history.vue +153 -0
  421. package/src/i18n/i18n.js +16 -0
  422. package/src/i18n/langs/cn.js +521 -0
  423. package/src/i18n/langs/en.js +529 -0
  424. package/.vscode/extensions.json +0 -3
@@ -0,0 +1,26 @@
1
+ export default function newTransition() {
2
+ return {
3
+ attr: {
4
+ id: '',
5
+ from: '',
6
+ to: ''
7
+ },
8
+ g: {},
9
+
10
+ basicProperties: {
11
+ remark: '',
12
+ isOriginalUser: false,
13
+ condition: ''
14
+ },
15
+ inform: {
16
+ informType: 'mail',
17
+ userCondition: '',
18
+ subject: '',
19
+ content: ''
20
+ },
21
+ autoFilledFields: {
22
+ field: []
23
+ },
24
+ onTransit: false // 触发流过事件
25
+ }
26
+ }
@@ -0,0 +1,67 @@
1
+ <template>
2
+ <el-dialog
3
+ model-value
4
+ :title="$t('workflowEditorPublicModel.tipTitle')"
5
+ :center="true"
6
+ top="10vh"
7
+ append-to-body
8
+ @open="$emit('open')"
9
+ @opend="$emit('opend')"
10
+ @close="$emit('close')"
11
+ @closed="$emit('closed')"
12
+ >
13
+ <div>
14
+ {{ $t('workflowEditorMessage.adminSaveTip') }}
15
+ </div>
16
+ <ul>
17
+ <li>
18
+ {{ $t('workflowEditorMessage.adminSaveTip1') }}
19
+ </li>
20
+ <li>
21
+ {{ $t('workflowEditorMessage.adminSaveTip2') }}
22
+ </li>
23
+ <li>
24
+ {{ $t('workflowEditorMessage.adminSaveTip3') }}
25
+ </li>
26
+ <li>
27
+ {{ $t('workflowEditorMessage.adminSaveTip4') }}
28
+ </li>
29
+ </ul>
30
+ <div>
31
+ {{ $t('workflowEditorMessage.adminSaveTip5') }}
32
+ </div>
33
+ <template #footer>
34
+ <el-button @click="updateWfVersion">
35
+ {{ $t('workflowEditorMessage.updateVersion') }}
36
+ </el-button>
37
+ <el-button type="primary" @click="addWfVersion">
38
+ {{ $t('workflowEditorMessage.addVersion') }}
39
+ </el-button>
40
+ <el-button @click="$emit('close')">
41
+ {{ $t('workflowEditorPublicModel.cancel') }}
42
+ </el-button>
43
+ </template>
44
+ </el-dialog>
45
+ </template>
46
+
47
+ <script>
48
+
49
+ export default {
50
+ name: 'AdminSaveDialog',
51
+ data() {
52
+ return {
53
+ dialogVisible: true
54
+
55
+ }
56
+ },
57
+ methods: {
58
+ updateWfVersion() {
59
+ this.$emit('update')
60
+ },
61
+ addWfVersion() {
62
+ this.$emit('add')
63
+ }
64
+ }
65
+ }
66
+ </script>
67
+
@@ -0,0 +1,493 @@
1
+ <template>
2
+ <div ref="svgContainer" style="position:relative">
3
+ <svg
4
+ id="svg"
5
+ width="2000"
6
+ height="2000"
7
+ @mousedown="mousedown"
8
+ @mousemove="mousemove"
9
+ @mouseup="mouseup"
10
+ @mouseleave="mouseleave"
11
+ @dblclick="setPropertiesEditorFor('Process')"
12
+ >
13
+ <defs>
14
+ <marker id="arrow" markerWidth="10" markerHeight="10" refX="6" refY="2" orient="auto" markerUnits="strokeWidth">
15
+ <path d="M0,0 L0,4 L6,2 z" fill="#666" />
16
+ </marker>
17
+ </defs>
18
+ <component
19
+ :is="tache.type"
20
+ v-for="tache in taches"
21
+ :key="tache.id"
22
+ :model="tache"
23
+ @mouseenter.native="showTacheHistoryTooltip"
24
+ @mouseleave.native="hideTacheHistoryTooltip"
25
+ @mousemove.native="updateTacheHistoryTooltipPosition"
26
+ />
27
+ <!-- <transition
28
+ v-for="transition in transitions"
29
+ :key="transition.id"
30
+ :model="transition"
31
+ /> -->
32
+ <!--必须这样写,否则线条不显示-->
33
+ <component :is="'transition'"
34
+ v-for="transition in transitions"
35
+ :key="transition.id"
36
+ :model="transition"/>
37
+ <virtual-transition :toPosition="currentPosition" />
38
+ <selection-region :region="region" />
39
+ </svg>
40
+ <component
41
+ :is="propertiesEditorFor+'PropertiesEditor'"
42
+ v-if="!showHistory&&propertiesEditorFor"
43
+ :model="selectedTaches[0]||selectedTransition||process"
44
+ @close="setPropertiesEditorFor('')"
45
+ />
46
+ <tache-history-tooltip v-if="showHistory&&showTacheHistory" :style="tooltipPosition" />
47
+ </div>
48
+ </template>
49
+
50
+ <script>
51
+ import Start from '../taches/start'
52
+ import End from '../taches/end'
53
+ import HumanTask from '../taches/human-task'
54
+ import Decision from '../taches/decision'
55
+ import Subprocess from '../taches/subprocess'
56
+ import CustomTask from '../taches/custom-task'
57
+ import Fork from '../taches/fork'
58
+ import Join from '../taches/join'
59
+ import HumanDecision from '../taches/human-decision'
60
+ import CopyTask from '../taches/copy-task'
61
+ import AutoTask from '../taches/auto-task'
62
+ import Transition from '../transitions/transition'
63
+ import VirtualTransition from '../transitions/virtual-transition'
64
+ import SelectionRegion from './selection-region'
65
+ import HumanTaskPropertiesEditor from '../properties-editors/human-task'
66
+ import ProcessPropertiesEditor from '../properties-editors/process'
67
+ import DecisionPropertiesEditor from '../properties-editors/decision'
68
+ import TransitionPropertiesEditor from '../properties-editors/transition'
69
+ import ForkPropertiesEditor from '../properties-editors/fork'
70
+ import JoinPropertiesEditor from '../properties-editors/join'
71
+ import HumanDecisionPropertiesEditor from '../properties-editors/human-decision'
72
+ import CopyTaskPropertiesEditor from '../properties-editors/copy-task'
73
+ import AutoTaskPropertiesEditor from '../properties-editors/auto-task'
74
+ import SubprocessPropertiesEditor from '../properties-editors/subprocess'
75
+ import TacheHistoryTooltip from './tache-history-tooltip'
76
+ import { mapGetters, mapMutations } from 'vuex'
77
+ import { getMousePosition, getVirtualRegion, getRealRegion, clearAllSelectedComponents } from '../util'
78
+
79
+ export default {
80
+ name: 'Canvas',
81
+ components: {
82
+ Start,
83
+ End,
84
+ HumanTask,
85
+ Decision,
86
+ Subprocess,
87
+ CustomTask,
88
+ Fork,
89
+ Join,
90
+ HumanDecision,
91
+ CopyTask,
92
+ Transition,
93
+ VirtualTransition,
94
+ SelectionRegion,
95
+ HumanTaskPropertiesEditor,
96
+ ProcessPropertiesEditor,
97
+ DecisionPropertiesEditor,
98
+ TransitionPropertiesEditor,
99
+ ForkPropertiesEditor,
100
+ JoinPropertiesEditor,
101
+ HumanDecisionPropertiesEditor,
102
+ CopyTaskPropertiesEditor,
103
+ SubprocessPropertiesEditor,
104
+ TacheHistoryTooltip,
105
+ AutoTask,
106
+ AutoTaskPropertiesEditor
107
+ },
108
+ props: {
109
+ process: {
110
+ type: Object,
111
+ default: null
112
+ },
113
+ showHistory: {
114
+ type: Boolean,
115
+ default: false
116
+ }
117
+ },
118
+ data: function() {
119
+ return {
120
+ inputArea: null,
121
+ currentPosition: null,
122
+ originPosition: null,
123
+ offset: null,
124
+ startPoint: null,
125
+ region: null,
126
+ endPoint: null,
127
+ transitionsInRegion: [],
128
+ showTacheHistory: false,
129
+ tooltipPosition: null
130
+ }
131
+ },
132
+ computed: {
133
+ ...mapGetters('wfEditor', [
134
+ 'taches',
135
+ 'transitions',
136
+ 'isMovingTache',
137
+ 'mouseDownPosition',
138
+ 'startJoint',
139
+ 'endJoint',
140
+ 'isDrawingRegion',
141
+ 'isMovingRegion',
142
+ 'selectedTransition',
143
+ 'selectedTaches',
144
+ 'resizerToMove',
145
+ 'draggerToMove',
146
+ 'controlPointToMove',
147
+ 'propertiesEditorFor',
148
+ 'contextMenuVisible'
149
+ ])
150
+ },
151
+ watch:{
152
+ propertiesEditorFor(newValue,oldVal){
153
+ console.log('wathch----propertiesEditorFor----newValue=',newValue,'oldVal=',oldVal)
154
+ }
155
+ },
156
+ mounted: function() {
157
+ },
158
+ methods: {
159
+ ...mapMutations('wfEditor', [
160
+ 'setTaches',
161
+ 'setTransitions',
162
+ 'resetState',
163
+ 'setMovingTache',
164
+ 'stopDrawingLine',
165
+ 'setSelectedTaches',
166
+ 'setDrawingRegion',
167
+ 'setResizerToMove',
168
+ 'setDraggerToMove',
169
+ 'setControlPointToMove',
170
+ 'setPropertiesEditorFor'
171
+ ]),
172
+ forbidSelection() {
173
+ return false
174
+ },
175
+ add: function() {
176
+ // const tache = new TacheUI(this.snap, 50, 50)
177
+ // tache.draw()
178
+ },
179
+ // 各个组件上的mousedown,组件会自行处理,不会传播到canvas上来,这里发生的mousedown表示点击了canvas的空白区域
180
+ mousedown(event) {
181
+ console.log('mousedown')
182
+ // 鼠标按下时先清除上次选中的环节
183
+ this.unselectAll()
184
+
185
+ // 准备画新的选择区域
186
+ // isDrawingRegion标识是否可以开始画选择区域了,当mouseup时会重置
187
+ this.setDrawingRegion(true)
188
+ // startPoint和endPoint记录选择区域的起点和终点,当mouseup的时候如果有选中的tache则保留值,没有选中则清空值
189
+ this.startPoint = getMousePosition(event)
190
+ },
191
+ mousemove(event) {
192
+ // console.log('mousemove')
193
+ // 显示流转历史的时候不需要拖动环节
194
+ if (this.showHistory) return
195
+ // 给起始位置附上初始值,这个起始位置是个相对概念,每次mousemove后,这个值就变成最新的鼠标位置,作为下一次mousemove的起点
196
+ if (!this.originPosition && this.mouseDownPosition) {
197
+ this.originPosition = this.mouseDownPosition
198
+ }
199
+ this.currentPosition = getMousePosition(event)
200
+ if (this.isMovingTache) {
201
+ this.moveTache(this.selectedTaches[0])
202
+ }
203
+ this.drawVirtualSelectionRegion()
204
+
205
+ this.moveSelectionRegion()
206
+
207
+ this.resizeSelectedTache()
208
+
209
+ this.moveTransition()
210
+
211
+ this.adjustCurveLine()
212
+
213
+ this.originPosition = this.currentPosition
214
+ },
215
+ // 有些组件上的mouseup,会传播到canvas上来
216
+ mouseup(event) {
217
+ console.log('mouseup')
218
+ if (this.isMovingTache) {
219
+ this.setMovingTache(false)
220
+ }
221
+ // 在画布的空白地方mouseup时,停止画虚拟的流向,此时没有找到任何endJoint(在joint上mouseup才会设置endJoint)
222
+ if (this.startJoint) {
223
+ this.stopDrawingLine()
224
+ }
225
+ // 鼠标起来时,需要判断是否选中了tache,并显示选择区域
226
+ this.drawRegionWhenNeeded()
227
+
228
+ // tache变到最小时,继续移动鼠标会从resizer上移出去,如果此时松开鼠标就不会触发resizer的mouseup
229
+ if (this.resizerToMove) {
230
+ this.setResizerToMove(null)
231
+ }
232
+
233
+ this.resetMovedTransition()
234
+ },
235
+ mouseleave(event) {
236
+ this.drawRegionWhenNeeded()
237
+
238
+ this.resetMovedTransition()
239
+
240
+ this.resetState()
241
+ },
242
+ drawRegionWhenNeeded() {
243
+ if (this.isDrawingRegion) {
244
+ this.selectComponents()
245
+ this.drawRealSelectionRegion()
246
+ this.setDrawingRegion(false)
247
+ }
248
+ },
249
+ resetMovedTransition() {
250
+ // 如果正在移动transition,那么要清除掉状态,并还原transition的位置
251
+ if (this.draggerToMove) {
252
+ this.draggerToMove.owner.startJoint = this.draggerToMove.originStartJoint
253
+ this.draggerToMove.owner.endJoint = this.draggerToMove.originEndJoint
254
+ this.setDraggerToMove(null)
255
+ }
256
+ },
257
+ unselectAll() {
258
+ clearAllSelectedComponents()
259
+ // 选中的线也清除掉,此时线的状态并不是selected,这个只是为了移动控制点而增加的组件变量
260
+ this.transitionsInRegion = []
261
+ this.startPoint = null
262
+ this.region = null
263
+ },
264
+ selectComponents() {
265
+ // 如果选择区域缺少起点或终点,那么不需要选中任何东西,同时清除已有起点或者终点信息
266
+ if (!this.startPoint || !this.region) {
267
+ this.startPoint = null
268
+ this.region = null
269
+ return
270
+ }
271
+ // 判断环节是否在选择区域里面,如果在就选中
272
+ for (const tache of this.taches) {
273
+ if (this.isInsideSelectionRegion(tache)) {
274
+ tache.isSelected = true
275
+ this.selectedTaches.push(tache)
276
+ }
277
+ }
278
+
279
+ for (const transition of this.transitions) {
280
+ if (transition.startJoint.parent.isSelected && transition.endJoint.parent.isSelected) {
281
+ this.transitionsInRegion.push(transition)
282
+ }
283
+ }
284
+ },
285
+ isInsideSelectionRegion(tache) {
286
+ const isLeftTopCornerInside = (tache.x >= this.region.x && tache.y >= this.region.y)
287
+ const isRightDownCornerInside = ((tache.x + tache.width) <= (this.region.x + this.region.width) && (tache.y + tache.height) <= (this.region.y + this.region.height))
288
+ return isLeftTopCornerInside && isRightDownCornerInside
289
+ },
290
+ moveTache(tache) {
291
+ const x = this.currentPosition.x - this.originPosition.x
292
+ const y = this.currentPosition.y - this.originPosition.y
293
+ tache.x += x
294
+ tache.y += y
295
+ if (tache.x < 0) {
296
+ tache.x = 2
297
+ }
298
+ if (tache.y < 0) {
299
+ tache.y = 2
300
+ }
301
+ },
302
+
303
+ drawVirtualSelectionRegion() {
304
+ if (this.isDrawingRegion && this.startPoint) {
305
+ this.region = getVirtualRegion(this.startPoint, this.currentPosition)
306
+ }
307
+ },
308
+ drawRealSelectionRegion() {
309
+ // 如果只选中了一个环节,那么选择区域也不需要显示了,这时把起点和region也重置了
310
+ if (this.selectedTaches.length <= 1) {
311
+ this.startPoint = null
312
+ this.region = null
313
+ return
314
+ }
315
+
316
+ this.region = getRealRegion(this.selectedTaches)
317
+ // this.startPoint = area.startPoint
318
+ },
319
+ moveSelectionRegion() {
320
+ if (!this.isMovingRegion) {
321
+ return
322
+ }
323
+ // 移动选择区域
324
+ let dx = this.currentPosition.x - this.originPosition.x
325
+ let dy = this.currentPosition.y - this.originPosition.y
326
+ // 控制不能移出canvas的边界,保留2像素的间距
327
+ if (this.region.x + dx < 0) {
328
+ dx = 2 - this.region.x
329
+ }
330
+ if (this.region.y + dy < 0) {
331
+ dy = 2 - this.region.y
332
+ }
333
+ this.region.x = this.region.x + dx
334
+ this.region.y = this.region.y + dy
335
+
336
+ this.moveTachesInRegion(dx, dy)
337
+ this.moveTransitionControlPoints(dx, dy)
338
+ },
339
+ moveTachesInRegion(dx, dy) {
340
+ for (const tache of this.selectedTaches) {
341
+ tache.x += dx
342
+ tache.y += dy
343
+ }
344
+ },
345
+ moveTransitionControlPoints(dx, dy) {
346
+ for (const transition of this.transitionsInRegion) {
347
+ if (transition.lineInfo.type === 'CurveLine') {
348
+ transition.lineInfo.controlPoint.x += dx
349
+ transition.lineInfo.controlPoint.y += dy
350
+ } else if (transition.lineInfo.type === 'BrokenLine') {
351
+ transition.lineInfo.controlPoint.forEach(point => {
352
+ point.x += dx
353
+ point.y += dy
354
+ })
355
+ }
356
+ }
357
+ },
358
+ resizeSelectedTache() {
359
+ if (!this.resizerToMove) {
360
+ return
361
+ }
362
+ let dx = this.currentPosition.x - this.originPosition.x
363
+ let dy = this.currentPosition.y - this.originPosition.y
364
+ const tache = this.resizerToMove.owner
365
+ /**
366
+ * 1.拖动某个resizer时,对角线上的另一个resizer是不动的
367
+ * 2.拖动不同的resizer时,dx,dy即使出现负数时也可能是变大,这个时候就得做减法了
368
+ */
369
+ switch (this.resizerToMove.position) {
370
+ case 'NW':
371
+ if (tache.width - dx < 80) {
372
+ dx = tache.width - 80
373
+ }
374
+ if (tache.height - dy < 40) {
375
+ dy = tache.height - 40
376
+ }
377
+ tache.width -= dx
378
+ tache.height -= dy
379
+ tache.x += dx
380
+ tache.y += dy
381
+ break
382
+ case 'NE':
383
+ if (tache.width + dx < 80) {
384
+ dx = 80 - tache.width
385
+ }
386
+ if (tache.height - dy < 40) {
387
+ dy = tache.height - 40
388
+ }
389
+ tache.width += dx
390
+ tache.height -= dy
391
+ tache.y += dy
392
+ break
393
+ case 'SW':
394
+ if (tache.width - dx < 80) {
395
+ dx = tache.width - 80
396
+ }
397
+ if (tache.height + dy < 40) {
398
+ dy = 40 - tache.height
399
+ }
400
+ tache.width -= dx
401
+ tache.height += dy
402
+ tache.x += dx
403
+ break
404
+ case 'SE':
405
+ if (tache.width + dx < 80) {
406
+ dx = 80 - tache.width
407
+ }
408
+ if (tache.height + dy < 40) {
409
+ dy = 40 - tache.height
410
+ }
411
+ tache.width += dx
412
+ tache.height += dy
413
+ break
414
+ }
415
+ },
416
+ moveTransition() {
417
+ if (!this.draggerToMove) {
418
+ return
419
+ }
420
+ const transition = this.draggerToMove.owner
421
+ const position = this.draggerToMove.position
422
+ const virtualJoint = { parent: this.currentPosition, position: '' }
423
+ if (position === 'start') {
424
+ transition.startJoint = virtualJoint
425
+ } else {
426
+ transition.endJoint = virtualJoint
427
+ }
428
+ },
429
+ adjustCurveLine() {
430
+ if (!this.controlPointToMove) {
431
+ return
432
+ }
433
+ const transition = this.controlPointToMove.owner
434
+ if (transition.lineInfo && transition.lineInfo.type === 'CurveLine') {
435
+ transition.lineInfo.controlPoint = this.currentPosition
436
+ } else if (transition.lineInfo && transition.lineInfo.type === 'BrokenLine') {
437
+ const pointIndex = this.controlPointToMove.pointIndex
438
+ const controlPoints = transition.lineInfo.controlPoint
439
+ controlPoints[pointIndex] = this.currentPosition
440
+ // this.$set(controlPoints, pointIndex, this.currentPosition)
441
+ }
442
+ },
443
+ endDrag(event) {
444
+
445
+ },
446
+ showTacheHistoryTooltip(event) {
447
+ this.showTacheHistory = true
448
+ },
449
+ hideTacheHistoryTooltip() {
450
+ this.showTacheHistory = false
451
+ },
452
+ updateTacheHistoryTooltipPosition(event) {
453
+ const position = getMousePosition(event)
454
+ this.tooltipPosition = {
455
+ left: position.x + 'px',
456
+ top: position.y + 'px'
457
+ }
458
+ }
459
+ }
460
+ }
461
+ </script>
462
+ <style>
463
+ #svg{
464
+ /* border:1px solid red; */
465
+ background: white;
466
+ background-image:
467
+ linear-gradient(rgba(242,242,242,.7) 1px, transparent 0),
468
+ linear-gradient(90deg, rgba(242,242,242,.7) 1px, transparent 0),
469
+ linear-gradient(#e5e5e5 1px, transparent 0),
470
+ linear-gradient(90deg,#e5e5e5 1px, transparent 0);
471
+ background-size:
472
+ 15px 15px,
473
+ 15px 15px,
474
+ 75px 75px,
475
+ 75px 75px;
476
+ }
477
+ g{
478
+ font-size: 16px;
479
+ }
480
+ g text{
481
+ dominant-baseline: middle;
482
+ }
483
+ .selected{
484
+ fill: #fff;
485
+ stroke: #f00;
486
+ stroke-width: 2;
487
+ }
488
+ .task-tache{
489
+ fill: #fff;
490
+ stroke: #666;
491
+ stroke-width: 2;
492
+ }
493
+ </style>