@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,380 +0,0 @@
1
- import { get } from 'lodash-es'
2
- import LogicFlow, {
3
- BaseNodeModel,
4
- h,
5
- PolygonNode,
6
- PolygonNodeModel,
7
- } from '@logicflow/core'
8
- import { ResizeControl } from '@logicflow/core/lib/view/Control'
9
-
10
- export type INodeSelectionProperties = {
11
- strokeColor?: string | 'none'
12
- node_selection_ids?: string[]
13
- }
14
-
15
- class NodeSelectionView extends PolygonNode {
16
- getLabelShape(): h.JSX.Element {
17
- const { id, x, y, width, height, properties } = this.props.model
18
- const style = this.props.model.getNodeStyle()
19
- return h(
20
- 'svg',
21
- {
22
- x: x - width / 2,
23
- y: y - height / 2,
24
- width: 50,
25
- height: 24,
26
- style: 'z-index: 0; background: none; overflow: auto;',
27
- },
28
- [
29
- properties.labelText
30
- ? h(
31
- 'text',
32
- {
33
- x: 0,
34
- y: -5,
35
- fontSize: '16px',
36
- fill: style.stroke,
37
- },
38
- properties.labelText,
39
- )
40
- : '',
41
- properties.disabledDelete
42
- ? ''
43
- : h(
44
- 'text',
45
- {
46
- x: properties.labelText ? 50 : 0,
47
- y: -5,
48
- fontSize: '24px',
49
- cursor: 'pointer',
50
- fill: style.stroke,
51
- onclick: this.handleCustomDeleteIconClick.bind(this, id),
52
- },
53
- 'x',
54
- ),
55
- ],
56
- )
57
- }
58
-
59
- getShape(): h.JSX.Element {
60
- const { x, y, width, height, id } = this.props.model
61
- const style = this.props.model.getNodeStyle()
62
-
63
- return h('g', {}, [
64
- h('rect', {
65
- ...style,
66
- x: x - width / 2,
67
- y: y - height / 2,
68
- width,
69
- height,
70
- id,
71
- }),
72
- this.getLabelShape(),
73
- ])
74
- }
75
- // 避免点击时,该节点置于最高层,挡住内部节点
76
- toFront() {}
77
-
78
- /**
79
- * 点击删除
80
- * @param id
81
- */
82
- handleCustomDeleteIconClick(id) {
83
- const { graphModel } = this.props
84
- graphModel.deleteNode(id)
85
- }
86
- }
87
-
88
- class NodeSelectionModel extends PolygonNodeModel<INodeSelectionProperties> {
89
- d = 10
90
-
91
- initNodeData(data) {
92
- data.text = {
93
- value: '',
94
- x: data.x,
95
- y: data.y,
96
- draggable: false,
97
- editable: false,
98
- }
99
- super.initNodeData(data)
100
- this.zIndex = 0
101
- this.draggable = true
102
- }
103
-
104
- setAttributes() {
105
- // 默认不显示
106
- this.points = []
107
-
108
- // 图render的时候,会把所有nodes数据实例化,全部实例化完成后,放到nodesMap里。
109
- // 节点的setAttributes在实例化的时候执行第一次
110
- // updatePointsByNodes中的getNodeModelById方法,是从nodesMap取的数据,第一次就拿不到,所以要加setTimeout
111
- if ((this.properties?.node_selection_ids as string[]).length > 1) {
112
- setTimeout(() => {
113
- this.updatePointsByNodes(this.properties?.node_selection_ids || [])
114
- })
115
- }
116
- }
117
-
118
- getNodeStyle() {
119
- const style = super.getNodeStyle()
120
- style.stroke = this.properties.strokeColor || '#008000'
121
- style.strokeDasharray = '10 5'
122
- return style
123
- }
124
-
125
- getDefaultAnchor() {
126
- return []
127
- }
128
-
129
- /**
130
- * 更新points - 多边形顶点坐标集合
131
- * @param points
132
- */
133
- updatePoints(points: [number, number][]) {
134
- this.points = points
135
- }
136
-
137
- /**
138
- * 更新x y - 多边形中点坐标
139
- */
140
- updateCoordinate({ x, y }) {
141
- this.x = x
142
- this.y = y
143
- }
144
-
145
- /**
146
- * 计算新的 points 和 x y
147
- */
148
- updatePointsByNodes(nodesIds: string[]) {
149
- const points: [number, number][] = []
150
- let minX = Infinity
151
- let minY = Infinity
152
- let maxX = -Infinity
153
- let maxY = -Infinity
154
-
155
- nodesIds.forEach((id) => {
156
- const model = this.graphModel.getNodeModelById(id)
157
- if (!model) return
158
- const { width, height, x, y } = model
159
- minX = Math.min(minX, x - width / 2 - this.d)
160
- minY = Math.min(minY, y - height / 2 - this.d)
161
- maxX = Math.max(maxX, x + width / 2 + this.d)
162
- maxY = Math.max(maxY, y + height / 2 + this.d)
163
- })
164
- points.push([minX, minY], [maxX, minY], [maxX, maxY], [minX, maxY])
165
-
166
- if ([minX, minY, maxX, maxY].some((n) => Math.abs(n) === Infinity)) return
167
-
168
- this.updatePoints(points)
169
- this.updateCoordinate({
170
- x: (maxX + minX) / 2,
171
- y: (maxY + minY) / 2,
172
- })
173
- }
174
-
175
- isResize = false
176
- override resize(
177
- resizeInfo: ResizeControl.ResizeInfo,
178
- ): ResizeControl.ResizeNodeData {
179
- this.isResize = true
180
- const { width, height } = resizeInfo
181
- const scale = {
182
- x: width / this.width,
183
- y: height / this.height,
184
- }
185
- const childIds = (this.properties.node_selection_ids || []).slice()
186
- const childModels: BaseNodeModel[] = []
187
- const usedGroupId = new Set<string>()
188
- while (childIds.length) {
189
- const id = childIds.shift()!
190
- const node = this.graphModel.nodesMap[id]?.model
191
- if (!node) {
192
- continue
193
- }
194
- if (!isNodeSelectionModel(node)) {
195
- childModels.push(node)
196
- continue
197
- }
198
- // 跳出循环引用
199
- if (usedGroupId.has(node.id)) {
200
- continue
201
- }
202
- usedGroupId.add(node.id)
203
- childIds.push(...(node.properties.node_selection_ids || []))
204
- }
205
-
206
- const begin = {
207
- x: this.x - this.width / 2,
208
- y: this.y - this.height / 2,
209
- }
210
-
211
- const res = super.resize(resizeInfo)
212
-
213
- const end = {
214
- x: this.x - this.width / 2,
215
- y: this.y - this.height / 2,
216
- }
217
-
218
- childModels.forEach((node) => {
219
- node.width = node.width * scale.x
220
- node.height = node.height * scale.y
221
- const deltaX = (node.x - begin.x) * scale.x + end.x - node.x
222
- const deltaY = (node.y - begin.y) * scale.y + end.y - node.y
223
- node.move(deltaX, deltaY, true)
224
- })
225
- this.isResize = false
226
- return res
227
- }
228
- }
229
-
230
- const NODE_SELECTION_TYPE = 'node-selection'
231
- class NodeSelection {
232
- static pluginName = 'node-selection'
233
- lf: LogicFlow // lf 实例
234
- selectNodes: any[] = [] // 选择的nodes
235
- currentClickNode // 当前点击的节点,选中的节点是无序的
236
- d = 10
237
-
238
- constructor({ lf }: LogicFlow.IExtensionProps) {
239
- this.lf = lf
240
- lf.register({
241
- type: NODE_SELECTION_TYPE,
242
- view: NodeSelectionView,
243
- model: NodeSelectionModel,
244
- })
245
- }
246
-
247
- /**
248
- * 获取所选node的id数组
249
- */
250
- get selectNodesIds(): string[] {
251
- return this.selectNodes.map((node) => node.id)
252
- }
253
-
254
- /**
255
- * 新建node-selection节点
256
- */
257
- addNodeSelection() {
258
- const node = this.lf.addNode({
259
- type: 'node-selection',
260
- text: '',
261
- properties: {
262
- node_selection_ids: this.selectNodesIds,
263
- },
264
- x: 0,
265
- y: 0,
266
- })
267
- node.updatePointsByNodes(this.selectNodesIds)
268
- }
269
-
270
- /**
271
- * 更新node-selection节点
272
- */
273
- updateNodeSelection() {
274
- const nodeSelection = this.getNodeSelection()
275
- if (!nodeSelection) return
276
- this.lf.setProperties(nodeSelection.id, {
277
- node_selection_ids: this.selectNodesIds,
278
- })
279
-
280
- this.lf
281
- .getNodeModelById(nodeSelection.id)
282
- ?.updatePointsByNodes(this.selectNodesIds)
283
- }
284
-
285
- /**
286
- * 获取所属的node-selection
287
- */
288
- getNodeSelection() {
289
- const ids = this.selectNodesIds
290
- const rawData = this.lf.getGraphRawData()
291
-
292
- const oldIds = ids.filter((id) => id !== this.currentClickNode.id)
293
- return rawData.nodes.find((node) => {
294
- if (node.type === 'node-selection') {
295
- const nodeSelectionIds = get(
296
- node,
297
- 'properties.node_selection_ids',
298
- [],
299
- ) as string[]
300
- return oldIds.every((id) => nodeSelectionIds.includes(id))
301
- }
302
- return false
303
- })
304
- }
305
-
306
- protected onNodeChange(lf: LogicFlow, model: BaseNodeModel) {
307
- const connectedSelections = lf.graphModel.nodes.filter((node) => {
308
- if (!isNodeSelectionModel(node)) {
309
- return false
310
- }
311
- const childIds: string[] = node.properties.node_selection_ids || []
312
- return childIds.includes(model.id)
313
- })
314
-
315
- Promise.resolve().then(() => {
316
- connectedSelections.forEach((node) => {
317
- node.updatePointsByNodes(node.properties.node_selection_ids || [])
318
- })
319
- })
320
- }
321
-
322
- render(lf: LogicFlow) {
323
- this.lf = lf
324
-
325
- lf.on('node:click', (val) => {
326
- if (!val.e.shiftKey || val.data.type === NODE_SELECTION_TYPE) return
327
- this.currentClickNode = val.data
328
-
329
- // 如果selectNodesIds中已存在此节点,则取消选中此节点
330
- let hasExists = false
331
- if (this.selectNodesIds.includes(val.data.id)) {
332
- this.lf.getNodeModelById(val.data.id)?.setSelected(false)
333
- hasExists = true
334
- }
335
-
336
- // 获取所有被选中的节点,获取到的数组是无序的
337
- const { nodes } = lf.getSelectElements(true)
338
- this.selectNodes = nodes
339
- if (this.selectNodes.length === 1) {
340
- if (!hasExists) {
341
- this.addNodeSelection()
342
- } else {
343
- this.updateNodeSelection()
344
- }
345
- } else if (this.selectNodes.length > 1) {
346
- this.updateNodeSelection()
347
- }
348
- })
349
- lf.graphModel.addNodeMoveRules((model, deltaX, deltaY) => {
350
- this.onNodeChange(lf, model)
351
- /**
352
- * 如果移动的是分组,那么分组的子节点也跟着移动。
353
- * 忽略来自分组resize导致的move
354
- */
355
- if (isNodeSelectionModel(model) && !model.isResize) {
356
- const nodeIds = model.properties.node_selection_ids || []
357
- lf.graphModel.moveNodes(nodeIds, deltaX, deltaY, true)
358
- return true
359
- }
360
- return true
361
- })
362
-
363
- lf.graphModel.addNodeResizeRules((model) => {
364
- if (!isNodeSelectionModel(model)) {
365
- this.onNodeChange(lf, model)
366
- }
367
- return true
368
- })
369
- }
370
- }
371
-
372
- const isNodeSelectionModel = (
373
- node: BaseNodeModel,
374
- ): node is NodeSelectionModel => {
375
- return !!(node && (node.type as string) === NODE_SELECTION_TYPE)
376
- }
377
-
378
- export default NodeSelection
379
-
380
- export { NodeSelection }
@@ -1,19 +0,0 @@
1
- import { BaseNode, RectNodeModel } from '@logicflow/core'
2
-
3
- class MarkRootModel extends RectNodeModel {
4
- static extendKey = 'MarkRootModel'
5
- }
6
-
7
- class MarkRootView extends BaseNode<any> {
8
- getShape() {
9
- return null
10
- }
11
- }
12
-
13
- const MarkRoot = {
14
- type: 'faker:root',
15
- view: MarkRootView,
16
- model: MarkRootModel,
17
- }
18
-
19
- export default MarkRoot