@logicflow/extension 2.2.0 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/README.md +16 -0
  2. package/dist/index.css +1 -1
  3. package/dist/index.min.js +1 -1
  4. package/dist/index.min.js.map +1 -1
  5. package/es/NodeResize/node/RectResize.d.ts +0 -6
  6. package/es/NodeResize/node/RectResize.js +2 -11
  7. package/es/bpmn-elements-adapter/json2xml.d.ts +2 -1
  8. package/es/bpmn-elements-adapter/json2xml.js +18 -4
  9. package/es/bpmn-elements-adapter/xml2json.js +2 -7
  10. package/es/components/control/index.d.ts +1 -0
  11. package/es/components/control/index.js +24 -11
  12. package/es/components/mini-map/index.js +1 -1
  13. package/es/dynamic-group/model.d.ts +2 -1
  14. package/es/dynamic-group/model.js +28 -11
  15. package/es/dynamic-group/node.js +1 -0
  16. package/es/index.css +1 -1
  17. package/es/index.d.ts +1 -0
  18. package/es/index.js +2 -0
  19. package/es/insert-node-in-polyline/index.js +11 -35
  20. package/es/materials/curved-edge/index.js +49 -21
  21. package/es/materials/group/GroupNode.d.ts +0 -6
  22. package/es/materials/group/GroupNode.js +1 -6
  23. package/es/pool/LaneModel.d.ts +90 -0
  24. package/es/pool/LaneModel.js +252 -0
  25. package/es/pool/LaneView.d.ts +40 -0
  26. package/es/pool/LaneView.js +202 -0
  27. package/es/pool/PoolModel.d.ts +120 -0
  28. package/es/pool/PoolModel.js +586 -0
  29. package/es/pool/PoolView.d.ts +17 -0
  30. package/es/pool/PoolView.js +76 -0
  31. package/es/pool/constant.d.ts +15 -0
  32. package/es/pool/constant.js +17 -0
  33. package/es/pool/index.d.ts +89 -0
  34. package/es/pool/index.js +524 -0
  35. package/es/pool/utils.d.ts +19 -0
  36. package/es/pool/utils.js +33 -0
  37. package/es/style/index.css +1 -1
  38. package/es/style/raw.d.ts +1 -1
  39. package/es/style/raw.js +1 -1
  40. package/es/tools/label/LabelOverlay.js +3 -3
  41. package/es/tools/label/mediumEditor.d.ts +1 -1
  42. package/es/tools/label/mediumEditor.js +89 -52
  43. package/es/tools/snapshot/index.d.ts +7 -3
  44. package/es/tools/snapshot/index.js +72 -77
  45. package/lib/NodeResize/node/RectResize.d.ts +0 -6
  46. package/lib/NodeResize/node/RectResize.js +1 -10
  47. package/lib/bpmn-elements-adapter/json2xml.d.ts +2 -1
  48. package/lib/bpmn-elements-adapter/json2xml.js +19 -4
  49. package/lib/bpmn-elements-adapter/xml2json.js +2 -7
  50. package/lib/components/control/index.d.ts +1 -0
  51. package/lib/components/control/index.js +24 -11
  52. package/lib/components/mini-map/index.js +1 -1
  53. package/lib/dynamic-group/model.d.ts +2 -1
  54. package/lib/dynamic-group/model.js +28 -11
  55. package/lib/dynamic-group/node.js +1 -0
  56. package/lib/index.css +1 -1
  57. package/lib/index.d.ts +1 -0
  58. package/lib/index.js +2 -0
  59. package/lib/insert-node-in-polyline/index.js +10 -34
  60. package/lib/materials/curved-edge/index.js +49 -21
  61. package/lib/materials/group/GroupNode.d.ts +0 -6
  62. package/lib/materials/group/GroupNode.js +1 -6
  63. package/lib/pool/LaneModel.d.ts +90 -0
  64. package/lib/pool/LaneModel.js +255 -0
  65. package/lib/pool/LaneView.d.ts +40 -0
  66. package/lib/pool/LaneView.js +205 -0
  67. package/lib/pool/PoolModel.d.ts +120 -0
  68. package/lib/pool/PoolModel.js +589 -0
  69. package/lib/pool/PoolView.d.ts +17 -0
  70. package/lib/pool/PoolView.js +79 -0
  71. package/lib/pool/constant.d.ts +15 -0
  72. package/lib/pool/constant.js +20 -0
  73. package/lib/pool/index.d.ts +89 -0
  74. package/lib/pool/index.js +527 -0
  75. package/lib/pool/utils.d.ts +19 -0
  76. package/lib/pool/utils.js +38 -0
  77. package/lib/style/index.css +1 -1
  78. package/lib/style/raw.d.ts +1 -1
  79. package/lib/style/raw.js +1 -1
  80. package/lib/tools/label/LabelOverlay.js +2 -2
  81. package/lib/tools/label/mediumEditor.d.ts +1 -1
  82. package/lib/tools/label/mediumEditor.js +91 -53
  83. package/lib/tools/snapshot/index.d.ts +7 -3
  84. package/lib/tools/snapshot/index.js +72 -77
  85. package/package.json +10 -7
  86. package/.turbo/turbo-build.log +0 -38
  87. package/CHANGELOG.md +0 -1766
  88. package/__test__/bpmn-adapter.test.js +0 -227
  89. package/es/materials/curved-edge/__test__/curved-edge.test.d.ts +0 -1
  90. package/es/materials/curved-edge/__test__/curved-edge.test.js +0 -18
  91. package/jest.config.js +0 -198
  92. package/lib/materials/curved-edge/__test__/curved-edge.test.d.ts +0 -1
  93. package/lib/materials/curved-edge/__test__/curved-edge.test.js +0 -20
  94. package/rollup.config.js +0 -52
  95. package/src/NodeResize/BasicShape/Ellipse.tsx +0 -22
  96. package/src/NodeResize/BasicShape/Polygon.tsx +0 -24
  97. package/src/NodeResize/BasicShape/Rect.tsx +0 -44
  98. package/src/NodeResize/control/Control.tsx +0 -537
  99. package/src/NodeResize/control/ControlGroup.tsx +0 -76
  100. package/src/NodeResize/control/Util.ts +0 -206
  101. package/src/NodeResize/index.ts +0 -26
  102. package/src/NodeResize/node/DiamondResize.tsx +0 -149
  103. package/src/NodeResize/node/EllipseResize.tsx +0 -140
  104. package/src/NodeResize/node/HtmlResize.tsx +0 -125
  105. package/src/NodeResize/node/RectResize.tsx +0 -146
  106. package/src/NodeResize/node/index.ts +0 -4
  107. package/src/bpmn/constant.ts +0 -56
  108. package/src/bpmn/events/EndEvent.ts +0 -73
  109. package/src/bpmn/events/StartEvent.ts +0 -52
  110. package/src/bpmn/events/index.ts +0 -2
  111. package/src/bpmn/flow/SequenceFlow.ts +0 -25
  112. package/src/bpmn/flow/index.ts +0 -1
  113. package/src/bpmn/gateways/ExclusiveGateway.ts +0 -71
  114. package/src/bpmn/gateways/index.ts +0 -1
  115. package/src/bpmn/getBpmnId.ts +0 -31
  116. package/src/bpmn/index.ts +0 -60
  117. package/src/bpmn/tasks/ServiceTask.ts +0 -63
  118. package/src/bpmn/tasks/UserTask.ts +0 -64
  119. package/src/bpmn/tasks/index.ts +0 -2
  120. package/src/bpmn-adapter/bpmnIds.ts +0 -31
  121. package/src/bpmn-adapter/index.ts +0 -835
  122. package/src/bpmn-adapter/json2xml.ts +0 -127
  123. package/src/bpmn-adapter/xml2json.ts +0 -544
  124. package/src/bpmn-elements/README.md +0 -223
  125. package/src/bpmn-elements/__tests__/definition.test.js +0 -72
  126. package/src/bpmn-elements/index.d.ts +0 -26
  127. package/src/bpmn-elements/index.ts +0 -107
  128. package/src/bpmn-elements/presets/Event/EndEventFactory.ts +0 -114
  129. package/src/bpmn-elements/presets/Event/IntermediateCatchEvent.ts +0 -108
  130. package/src/bpmn-elements/presets/Event/IntermediateThrowEvent.ts +0 -109
  131. package/src/bpmn-elements/presets/Event/StartEventFactory.ts +0 -114
  132. package/src/bpmn-elements/presets/Event/boundaryEventFactory.ts +0 -117
  133. package/src/bpmn-elements/presets/Event/index.ts +0 -14
  134. package/src/bpmn-elements/presets/Flow/flow.d.ts +0 -6
  135. package/src/bpmn-elements/presets/Flow/index.ts +0 -8
  136. package/src/bpmn-elements/presets/Flow/manhattan.ts +0 -691
  137. package/src/bpmn-elements/presets/Flow/sequenceFlow.ts +0 -65
  138. package/src/bpmn-elements/presets/Gateway/gateway.ts +0 -107
  139. package/src/bpmn-elements/presets/Gateway/index.ts +0 -23
  140. package/src/bpmn-elements/presets/Pool/Lane.ts +0 -211
  141. package/src/bpmn-elements/presets/Pool/Pool.ts +0 -284
  142. package/src/bpmn-elements/presets/Pool/index.ts +0 -89
  143. package/src/bpmn-elements/presets/Task/index.ts +0 -122
  144. package/src/bpmn-elements/presets/Task/subProcess.ts +0 -189
  145. package/src/bpmn-elements/presets/Task/task.ts +0 -193
  146. package/src/bpmn-elements/presets/icons.ts +0 -155
  147. package/src/bpmn-elements/utils.ts +0 -52
  148. package/src/bpmn-elements-adapter/README.md +0 -293
  149. package/src/bpmn-elements-adapter/__tests__/adapter_in.test.js +0 -528
  150. package/src/bpmn-elements-adapter/__tests__/adapter_out.test.js +0 -569
  151. package/src/bpmn-elements-adapter/constant.ts +0 -76
  152. package/src/bpmn-elements-adapter/index.ts +0 -1134
  153. package/src/bpmn-elements-adapter/json2xml.ts +0 -91
  154. package/src/bpmn-elements-adapter/xml2json.ts +0 -548
  155. package/src/components/context-menu/index.ts +0 -253
  156. package/src/components/control/index.ts +0 -141
  157. package/src/components/dnd-panel/index.ts +0 -137
  158. package/src/components/highlight/index.ts +0 -227
  159. package/src/components/menu/index.ts +0 -748
  160. package/src/components/mini-map/index.ts +0 -686
  161. package/src/components/selection-select/index.ts +0 -387
  162. package/src/dynamic-group/index.ts +0 -775
  163. package/src/dynamic-group/model.ts +0 -562
  164. package/src/dynamic-group/node.ts +0 -288
  165. package/src/dynamic-group/utils.ts +0 -46
  166. package/src/index.less +0 -1
  167. package/src/index.ts +0 -45
  168. package/src/insert-node-in-polyline/edge.ts +0 -175
  169. package/src/insert-node-in-polyline/index.ts +0 -187
  170. package/src/materials/curved-edge/__test__/curved-edge.test.ts +0 -46
  171. package/src/materials/curved-edge/index.ts +0 -185
  172. package/src/materials/group/GroupNode.ts +0 -442
  173. package/src/materials/group/index.ts +0 -542
  174. package/src/materials/node-selection/index.ts +0 -380
  175. package/src/mindmap/fakerRoot.ts +0 -19
  176. package/src/mindmap/index.ts +0 -328
  177. package/src/mindmap/markContent.ts +0 -81
  178. package/src/mindmap/markContentOption.ts +0 -81
  179. package/src/mindmap/markEntity.ts +0 -82
  180. package/src/mindmap/markRoot.ts +0 -83
  181. package/src/mindmap/theme.ts +0 -11
  182. package/src/rect-label-node/RectLabelNodeView.ts +0 -33
  183. package/src/rect-label-node/index.ts +0 -15
  184. package/src/style/index.less +0 -342
  185. package/src/style/raw.ts +0 -295
  186. package/src/tools/auto-layout/index.ts +0 -282
  187. package/src/tools/flow-path/index.ts +0 -233
  188. package/src/tools/label/Label.tsx +0 -357
  189. package/src/tools/label/LabelModel.ts +0 -83
  190. package/src/tools/label/LabelOverlay.tsx +0 -158
  191. package/src/tools/label/algorithm.ts +0 -42
  192. package/src/tools/label/index.ts +0 -479
  193. package/src/tools/label/mediumEditor.ts +0 -94
  194. package/src/tools/label/utils.ts +0 -395
  195. package/src/tools/proximity-connect/index.ts +0 -435
  196. package/src/tools/snapshot/README.md +0 -145
  197. package/src/tools/snapshot/index.ts +0 -718
  198. package/src/tools/snapshot/utils.ts +0 -163
  199. package/src/turbo-adapter/index.ts +0 -212
  200. package/stats.html +0 -4842
  201. package/tsconfig.json +0 -18
@@ -1,109 +0,0 @@
1
- import {
2
- h,
3
- CircleNode,
4
- CircleNodeModel,
5
- GraphModel,
6
- LogicFlow,
7
- } from '@logicflow/core'
8
- import { genBpmnId, groupRule } from '../../utils'
9
-
10
- import NodeConfig = LogicFlow.NodeConfig
11
-
12
- export function IntermediateThrowEventFactory(lf: any): {
13
- type: string
14
- model: any
15
- view: any
16
- } {
17
- const [definition] = lf.useDefinition()
18
-
19
- class view extends CircleNode {
20
- getAnchorStyle() {
21
- return {
22
- visibility: 'hidden',
23
- }
24
- }
25
-
26
- getShape() {
27
- // @ts-ignore
28
- const { model } = this.props
29
- const style = model.getNodeStyle()
30
- const { x, y, r, width, height, properties } = model as CircleNodeModel
31
- const { definitionType } = properties
32
- const { icon } =
33
- definition.intermediateThrowEvent?.get(definitionType) || {}
34
-
35
- const i = Array.isArray(icon)
36
- ? h(
37
- 'g',
38
- {
39
- transform: `matrix(1 0 0 1 ${x - width / 2} ${y - height / 2})`,
40
- },
41
- ...icon,
42
- )
43
- : h('path', {
44
- transform: `matrix(1 0 0 1 ${x - width / 2} ${y - height / 2})`,
45
- d: icon,
46
- style: 'fill: black',
47
- })
48
- return h(
49
- 'g',
50
- {},
51
- h('circle', {
52
- ...style,
53
- cx: x,
54
- cy: y,
55
- r,
56
- strokeWidth: 1.5,
57
- }),
58
- h('circle', {
59
- ...style,
60
- cx: x,
61
- cy: y,
62
- r: r - 3,
63
- strokeWidth: 1.5,
64
- }),
65
- i,
66
- )
67
- }
68
- }
69
-
70
- class model extends CircleNodeModel {
71
- constructor(data: NodeConfig, graphModel: GraphModel) {
72
- if (!data.id) {
73
- data.id = `Event_${genBpmnId()}`
74
- }
75
- if (!data.text) {
76
- data.text = ''
77
- }
78
- if (data.text && typeof data.text === 'string') {
79
- data.text = {
80
- value: data.text,
81
- x: data.x,
82
- y: data.y + 40,
83
- }
84
- }
85
- const { properties = {} } =
86
- definition.intermediateThrowEvent?.get(
87
- data.properties?.definitionType,
88
- ) || {}
89
- data.properties = {
90
- ...properties,
91
- ...data.properties,
92
- }
93
- data.properties?.definitionType &&
94
- (data.properties!.definitionId = `Definition_${genBpmnId()}`)
95
- super(data, graphModel)
96
- groupRule.call(this)
97
- }
98
-
99
- setAttributes(): void {
100
- this.r = 18
101
- }
102
- }
103
-
104
- return {
105
- type: 'bpmn:intermediateThrowEvent',
106
- view,
107
- model,
108
- }
109
- }
@@ -1,114 +0,0 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- import {
3
- h,
4
- CircleNode,
5
- CircleNodeModel,
6
- GraphModel,
7
- LogicFlow,
8
- } from '@logicflow/core'
9
- import { genBpmnId } from '../../utils'
10
- import NodeConfig = LogicFlow.NodeConfig
11
-
12
- export function StartEventFactory(lf: any): {
13
- type: string
14
- model: any
15
- view: any
16
- } {
17
- const [definition] = lf.useDefinition()
18
-
19
- class view extends CircleNode {
20
- getAnchorStyle() {
21
- return {
22
- visibility: 'hidden',
23
- }
24
- }
25
-
26
- getShape() {
27
- // @ts-ignore
28
- const { model } = this.props
29
- const style = model.getNodeStyle()
30
- const { x, y, r, width, height, properties } = model as CircleNodeModel
31
- const { definitionType, isInterrupting } = properties
32
- const { icon } = definition.startEvent?.get(definitionType) || {}
33
- const i = Array.isArray(icon)
34
- ? h(
35
- 'g',
36
- {
37
- transform: `matrix(1 0 0 1 ${x - width / 2} ${y - height / 2})`,
38
- },
39
- ...icon,
40
- )
41
- : h('path', {
42
- transform: `matrix(1 0 0 1 ${x - width / 2} ${y - height / 2})`,
43
- d: icon,
44
- style:
45
- 'fill: white; stroke-linecap: round; stroke-linejoin: round; stroke: rgb(34, 36, 42); stroke-width: 1px;',
46
- })
47
- return h(
48
- 'g',
49
- {},
50
- h('circle', {
51
- ...style,
52
- cx: x,
53
- cy: y,
54
- r,
55
- strokeDasharray: isInterrupting ? '5,5' : '',
56
- strokeWidth: 2,
57
- }),
58
- i,
59
- )
60
- }
61
- }
62
-
63
- class model extends CircleNodeModel {
64
- constructor(data: NodeConfig, graphModel: GraphModel) {
65
- if (!data.id) {
66
- data.id = `Event_${genBpmnId()}`
67
- }
68
- if (!data.text) {
69
- data.text = ''
70
- }
71
- if (data.text && typeof data.text === 'string') {
72
- data.text = {
73
- value: data.text,
74
- x: data.x,
75
- y: data.y + 40,
76
- }
77
- }
78
- const { properties = {} } =
79
- definition.startEvent?.get(data.properties?.definitionType) || {}
80
- data.properties = {
81
- ...properties,
82
- ...data.properties,
83
- }
84
- data.properties?.definitionType &&
85
- (data.properties!.definitionId = `Definition_${genBpmnId()}`)
86
- super(data, graphModel)
87
- }
88
-
89
- setAttributes(): void {
90
- this.r = 18
91
- }
92
-
93
- getConnectedTargetRules() {
94
- const rules = super.getConnectedTargetRules()
95
- const notAsSource = {
96
- message: '起始节点不能作为边的终点',
97
- validate: (_source: any, target: any) => {
98
- if (target === this) {
99
- return false
100
- }
101
- return true
102
- },
103
- }
104
- rules.push(notAsSource)
105
- return rules
106
- }
107
- }
108
-
109
- return {
110
- type: 'bpmn:startEvent',
111
- view,
112
- model,
113
- }
114
- }
@@ -1,117 +0,0 @@
1
- /* eslint-disable max-len */
2
- /* eslint-disable @typescript-eslint/naming-convention */
3
- import {
4
- CircleNode,
5
- CircleNodeModel,
6
- GraphModel,
7
- h,
8
- LogicFlow,
9
- } from '@logicflow/core'
10
- import { genBpmnId, groupRule } from '../../utils'
11
- import NodeConfig = LogicFlow.NodeConfig
12
-
13
- export function BoundaryEventFactory(lf: any): {
14
- type: string
15
- model: any
16
- view: any
17
- } {
18
- const [definition] = lf.useDefinition()
19
-
20
- class view extends CircleNode {
21
- getAnchorStyle() {
22
- return {
23
- visibility: 'hidden',
24
- }
25
- }
26
-
27
- getShape() {
28
- // @ts-ignore
29
- const { model } = this.props
30
- const style = model.getNodeStyle()
31
- const { x, y, r, width, height, properties } = model as CircleNodeModel
32
- const { definitionType, cancelActivity } = properties
33
- const { icon } = definition.boundaryEvent?.get(definitionType) || {}
34
- const i = Array.isArray(icon)
35
- ? h(
36
- 'g',
37
- {
38
- transform: `matrix(1 0 0 1 ${x - width / 2} ${y - height / 2})`,
39
- },
40
- ...icon,
41
- )
42
- : h('path', {
43
- transform: `matrix(1 0 0 1 ${x - width / 2} ${y - height / 2})`,
44
- d: icon,
45
- })
46
- return h(
47
- 'g',
48
- {},
49
- h('circle', {
50
- ...style,
51
- cx: x,
52
- cy: y,
53
- r,
54
- strokeDasharray: cancelActivity ? '' : '5,5',
55
- strokeWidth: 1.5,
56
- }),
57
- h('circle', {
58
- ...style,
59
- cx: x,
60
- cy: y,
61
- r: r - 3,
62
- strokeDasharray: cancelActivity ? '' : '5,5',
63
- strokeWidth: 1.5,
64
- }),
65
- i,
66
- )
67
- }
68
- }
69
-
70
- class model extends CircleNodeModel {
71
- constructor(data: NodeConfig, graphModel: GraphModel) {
72
- if (!data.id) {
73
- data.id = `Event_${genBpmnId()}`
74
- }
75
- if (!data.text) {
76
- data.text = ''
77
- }
78
- if (data.text && typeof data.text === 'string') {
79
- data.text = {
80
- value: data.text,
81
- x: data.x,
82
- y: data.y + 40,
83
- }
84
- }
85
- const { properties = {} } =
86
- definition.boundaryEvent?.get(data.properties?.definitionType) || {}
87
-
88
- data.properties = {
89
- attachedToRef: '',
90
- cancelActivity: true,
91
- ...properties,
92
- ...data.properties,
93
- }
94
- data.properties?.definitionType &&
95
- (data.properties!.definitionId = `Definition_${genBpmnId()}`)
96
- super(data, graphModel)
97
- groupRule.call(this)
98
- }
99
-
100
- initNodeData(data: any) {
101
- super.initNodeData(data)
102
- this.r = 20
103
- this.autoToFront = false // 不自动设置到最顶部,而是使用自己的zIndex
104
- this.zIndex = 99999 // 保证边界事件节点用于在最上方
105
- }
106
-
107
- setAttributes(): void {
108
- this.r = 18
109
- }
110
- }
111
-
112
- return {
113
- type: 'bpmn:boundaryEvent',
114
- view,
115
- model,
116
- }
117
- }
@@ -1,14 +0,0 @@
1
- import LogicFlow from '@logicflow/core'
2
- import { EndEventFactory } from './EndEventFactory'
3
- import { IntermediateCatchEventFactory } from './IntermediateCatchEvent'
4
- import { StartEventFactory } from './StartEventFactory'
5
- import { BoundaryEventFactory } from './boundaryEventFactory'
6
- import { IntermediateThrowEventFactory } from './IntermediateThrowEvent'
7
-
8
- export function registerEventNodes(lf: LogicFlow) {
9
- lf.register(StartEventFactory(lf))
10
- lf.register(EndEventFactory(lf))
11
- lf.register(IntermediateCatchEventFactory(lf))
12
- lf.register(IntermediateThrowEventFactory(lf))
13
- lf.register(BoundaryEventFactory(lf))
14
- }
@@ -1,6 +0,0 @@
1
- export type BBoxType = {
2
- minX: number
3
- minY: number
4
- maxX: number
5
- maxY: number
6
- }
@@ -1,8 +0,0 @@
1
- import LogicFlow from '@logicflow/core'
2
- import { sequenceFlowFactory } from './sequenceFlow'
3
-
4
- export const SequenceFlow = sequenceFlowFactory()
5
-
6
- export function registerFlows(lf: LogicFlow) {
7
- lf.register(SequenceFlow)
8
- }