@next-bricks/diagram 0.68.5 → 0.68.6

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 (43) hide show
  1. package/dist/bricks.json +4 -4
  2. package/dist/chunks/{3171.444b8224.js → 3171.77fcc3d5.js} +2 -2
  3. package/dist/chunks/{5552.27c9068d.js.map → 3171.77fcc3d5.js.map} +1 -1
  4. package/dist/chunks/3654.485b2ee1.js +3 -0
  5. package/dist/chunks/{3654.1ca3854c.js.map → 3654.485b2ee1.js.map} +1 -1
  6. package/dist/chunks/3746.f01acf89.js +2 -0
  7. package/dist/chunks/{3746.3c082d43.js.map → 3746.f01acf89.js.map} +1 -1
  8. package/dist/chunks/{4765.f9d9b831.js → 4765.09fa27a9.js} +2 -2
  9. package/dist/chunks/{4765.f9d9b831.js.map → 4765.09fa27a9.js.map} +1 -1
  10. package/dist/chunks/4837.23693f19.js +2 -0
  11. package/dist/chunks/{7218.ada67ae3.js.map → 4837.23693f19.js.map} +1 -1
  12. package/dist/chunks/{5552.27c9068d.js → 5552.a03dc5df.js} +2 -2
  13. package/dist/chunks/{3171.444b8224.js.map → 5552.a03dc5df.js.map} +1 -1
  14. package/dist/chunks/{577.be8fdde1.js → 577.8a00080d.js} +2 -2
  15. package/dist/chunks/{577.be8fdde1.js.map → 577.8a00080d.js.map} +1 -1
  16. package/dist/chunks/{7146.e003b717.js → 7146.a40fefdc.js} +2 -2
  17. package/dist/chunks/{7146.e003b717.js.map → 7146.a40fefdc.js.map} +1 -1
  18. package/dist/chunks/7218.ae373a36.js +2 -0
  19. package/dist/chunks/{4837.dc48ee7d.js.map → 7218.ae373a36.js.map} +1 -1
  20. package/dist/chunks/{3440.4132cdb6.js → 7470.28763ed7.js} +2 -2
  21. package/dist/chunks/{3440.4132cdb6.js.map → 7470.28763ed7.js.map} +1 -1
  22. package/dist/chunks/948.48c4319a.js +3 -0
  23. package/dist/chunks/948.48c4319a.js.map +1 -0
  24. package/dist/chunks/{eo-draw-canvas.580045be.js → eo-draw-canvas.80ff662d.js} +2 -2
  25. package/dist/chunks/{eo-draw-canvas.580045be.js.map → eo-draw-canvas.80ff662d.js.map} +1 -1
  26. package/dist/chunks/main.16deb8ab.js +2 -0
  27. package/dist/chunks/{main.a4e99faa.js.map → main.16deb8ab.js.map} +1 -1
  28. package/dist/examples.json +5 -5
  29. package/dist/index.e2b7a362.js +2 -0
  30. package/dist/{index.680276ff.js.map → index.e2b7a362.js.map} +1 -1
  31. package/dist/manifest.json +175 -175
  32. package/dist/types.json +74 -74
  33. package/package.json +2 -2
  34. package/dist/chunks/3654.1ca3854c.js +0 -3
  35. package/dist/chunks/3746.3c082d43.js +0 -2
  36. package/dist/chunks/4837.dc48ee7d.js +0 -2
  37. package/dist/chunks/7218.ada67ae3.js +0 -2
  38. package/dist/chunks/948.9cb41d7c.js +0 -3
  39. package/dist/chunks/948.9cb41d7c.js.map +0 -1
  40. package/dist/chunks/main.a4e99faa.js +0 -2
  41. package/dist/index.680276ff.js +0 -2
  42. /package/dist/chunks/{3654.1ca3854c.js.LICENSE.txt → 3654.485b2ee1.js.LICENSE.txt} +0 -0
  43. /package/dist/chunks/{948.9cb41d7c.js.LICENSE.txt → 948.48c4319a.js.LICENSE.txt} +0 -0
@@ -3,6 +3,141 @@
3
3
  "package": "@next-bricks/diagram",
4
4
  "name": "diagram",
5
5
  "bricks": [
6
+ {
7
+ "name": "eo-diagram",
8
+ "properties": [
9
+ {
10
+ "name": "layout",
11
+ "description": "",
12
+ "required": true,
13
+ "type": "\"dagre\" | \"force\""
14
+ },
15
+ {
16
+ "name": "nodes",
17
+ "attribute": false,
18
+ "type": "DiagramNode[]"
19
+ },
20
+ {
21
+ "name": "edges",
22
+ "attribute": false,
23
+ "type": "DiagramEdge[]"
24
+ },
25
+ {
26
+ "name": "nodeBricks",
27
+ "attribute": false,
28
+ "type": "NodeBrickConf[]"
29
+ },
30
+ {
31
+ "name": "lines",
32
+ "attribute": false,
33
+ "type": "LineConf[]"
34
+ },
35
+ {
36
+ "name": "layoutOptions",
37
+ "attribute": false,
38
+ "type": "LayoutOptions"
39
+ },
40
+ {
41
+ "name": "activeTarget",
42
+ "attribute": false,
43
+ "type": "ActiveTarget | null"
44
+ },
45
+ {
46
+ "name": "disableKeyboardAction",
47
+ "type": "boolean"
48
+ },
49
+ {
50
+ "name": "connectNodes",
51
+ "attribute": false,
52
+ "type": "ConnectNodesOptions"
53
+ },
54
+ {
55
+ "name": "dragNodes",
56
+ "attribute": false,
57
+ "type": "DragNodesOptions"
58
+ },
59
+ {
60
+ "name": "zoomable",
61
+ "type": "boolean",
62
+ "default": "true"
63
+ },
64
+ {
65
+ "name": "scrollable",
66
+ "type": "boolean",
67
+ "default": "true"
68
+ },
69
+ {
70
+ "name": "pannable",
71
+ "type": "boolean",
72
+ "default": "true"
73
+ },
74
+ {
75
+ "name": "scaleRange",
76
+ "attribute": false,
77
+ "type": "RangeTuple"
78
+ }
79
+ ],
80
+ "events": [
81
+ {
82
+ "name": "activeTarget.change",
83
+ "detail": {
84
+ "type": "ActiveTarget | null"
85
+ }
86
+ },
87
+ {
88
+ "name": "node.delete",
89
+ "detail": {
90
+ "type": "DiagramNode"
91
+ }
92
+ },
93
+ {
94
+ "name": "edge.delete",
95
+ "detail": {
96
+ "type": "DiagramEdge"
97
+ }
98
+ },
99
+ {
100
+ "name": "line.click",
101
+ "detail": {
102
+ "type": "LineTarget"
103
+ }
104
+ },
105
+ {
106
+ "name": "line.dblclick",
107
+ "detail": {
108
+ "type": "LineTarget"
109
+ }
110
+ },
111
+ {
112
+ "name": "nodes.connect",
113
+ "detail": {
114
+ "type": "ConnectLineDetail"
115
+ }
116
+ }
117
+ ],
118
+ "slots": [],
119
+ "methods": [
120
+ {
121
+ "name": "callOnLineLabel",
122
+ "params": [
123
+ {
124
+ "name": "id",
125
+ "type": "string"
126
+ },
127
+ {
128
+ "name": "method",
129
+ "type": "string"
130
+ },
131
+ {
132
+ "name": "param_3",
133
+ "type": "unknown[]"
134
+ }
135
+ ]
136
+ }
137
+ ],
138
+ "parts": [],
139
+ "description": "构件 `eo-diagram`"
140
+ },
6
141
  {
7
142
  "name": "eo-draw-canvas",
8
143
  "properties": [
@@ -387,181 +522,6 @@
387
522
  "parts": [],
388
523
  "description": "用于手工绘图的画布。\n\n注意:将配套另外一个用于展示的画布构件。"
389
524
  },
390
- {
391
- "name": "eo-diagram",
392
- "properties": [
393
- {
394
- "name": "layout",
395
- "description": "",
396
- "required": true,
397
- "type": "\"dagre\" | \"force\""
398
- },
399
- {
400
- "name": "nodes",
401
- "attribute": false,
402
- "type": "DiagramNode[]"
403
- },
404
- {
405
- "name": "edges",
406
- "attribute": false,
407
- "type": "DiagramEdge[]"
408
- },
409
- {
410
- "name": "nodeBricks",
411
- "attribute": false,
412
- "type": "NodeBrickConf[]"
413
- },
414
- {
415
- "name": "lines",
416
- "attribute": false,
417
- "type": "LineConf[]"
418
- },
419
- {
420
- "name": "layoutOptions",
421
- "attribute": false,
422
- "type": "LayoutOptions"
423
- },
424
- {
425
- "name": "activeTarget",
426
- "attribute": false,
427
- "type": "ActiveTarget | null"
428
- },
429
- {
430
- "name": "disableKeyboardAction",
431
- "type": "boolean"
432
- },
433
- {
434
- "name": "connectNodes",
435
- "attribute": false,
436
- "type": "ConnectNodesOptions"
437
- },
438
- {
439
- "name": "dragNodes",
440
- "attribute": false,
441
- "type": "DragNodesOptions"
442
- },
443
- {
444
- "name": "zoomable",
445
- "type": "boolean",
446
- "default": "true"
447
- },
448
- {
449
- "name": "scrollable",
450
- "type": "boolean",
451
- "default": "true"
452
- },
453
- {
454
- "name": "pannable",
455
- "type": "boolean",
456
- "default": "true"
457
- },
458
- {
459
- "name": "scaleRange",
460
- "attribute": false,
461
- "type": "RangeTuple"
462
- }
463
- ],
464
- "events": [
465
- {
466
- "name": "activeTarget.change",
467
- "detail": {
468
- "type": "ActiveTarget | null"
469
- }
470
- },
471
- {
472
- "name": "node.delete",
473
- "detail": {
474
- "type": "DiagramNode"
475
- }
476
- },
477
- {
478
- "name": "edge.delete",
479
- "detail": {
480
- "type": "DiagramEdge"
481
- }
482
- },
483
- {
484
- "name": "line.click",
485
- "detail": {
486
- "type": "LineTarget"
487
- }
488
- },
489
- {
490
- "name": "line.dblclick",
491
- "detail": {
492
- "type": "LineTarget"
493
- }
494
- },
495
- {
496
- "name": "nodes.connect",
497
- "detail": {
498
- "type": "ConnectLineDetail"
499
- }
500
- }
501
- ],
502
- "slots": [],
503
- "methods": [
504
- {
505
- "name": "callOnLineLabel",
506
- "params": [
507
- {
508
- "name": "id",
509
- "type": "string"
510
- },
511
- {
512
- "name": "method",
513
- "type": "string"
514
- },
515
- {
516
- "name": "param_3",
517
- "type": "unknown[]"
518
- }
519
- ]
520
- }
521
- ],
522
- "parts": [],
523
- "description": "构件 `eo-diagram`"
524
- },
525
- {
526
- "name": "diagram.editable-label",
527
- "properties": [
528
- {
529
- "name": "label",
530
- "type": "string"
531
- },
532
- {
533
- "name": "type",
534
- "type": "LabelType"
535
- },
536
- {
537
- "name": "readOnly",
538
- "type": "boolean"
539
- }
540
- ],
541
- "events": [
542
- {
543
- "name": "label.editing.change",
544
- "detail": {
545
- "type": "boolean"
546
- }
547
- },
548
- {
549
- "name": "label.change",
550
- "detail": {
551
- "type": "string"
552
- }
553
- }
554
- ],
555
- "slots": [],
556
- "methods": [
557
- {
558
- "name": "enableEditing",
559
- "params": []
560
- }
561
- ],
562
- "parts": [],
563
- "description": "构件 `diagram.editable-label`"
564
- },
565
525
  {
566
526
  "name": "diagram.experimental-node",
567
527
  "properties": [
@@ -741,6 +701,46 @@
741
701
  ],
742
702
  "parts": [],
743
703
  "description": "用于展示查看的画布。"
704
+ },
705
+ {
706
+ "name": "diagram.editable-label",
707
+ "properties": [
708
+ {
709
+ "name": "label",
710
+ "type": "string"
711
+ },
712
+ {
713
+ "name": "type",
714
+ "type": "LabelType"
715
+ },
716
+ {
717
+ "name": "readOnly",
718
+ "type": "boolean"
719
+ }
720
+ ],
721
+ "events": [
722
+ {
723
+ "name": "label.editing.change",
724
+ "detail": {
725
+ "type": "boolean"
726
+ }
727
+ },
728
+ {
729
+ "name": "label.change",
730
+ "detail": {
731
+ "type": "string"
732
+ }
733
+ }
734
+ ],
735
+ "slots": [],
736
+ "methods": [
737
+ {
738
+ "name": "enableEditing",
739
+ "params": []
740
+ }
741
+ ],
742
+ "parts": [],
743
+ "description": "构件 `diagram.editable-label`"
744
744
  }
745
745
  ],
746
746
  "providers": []
package/dist/types.json CHANGED
@@ -1,78 +1,4 @@
1
1
  {
2
- "diagram.editable-label": {
3
- "properties": [
4
- {
5
- "name": "label",
6
- "annotation": {
7
- "type": "keyword",
8
- "value": "string"
9
- }
10
- },
11
- {
12
- "name": "type",
13
- "annotation": {
14
- "type": "reference",
15
- "typeName": {
16
- "type": "identifier",
17
- "name": "LabelType"
18
- }
19
- }
20
- },
21
- {
22
- "name": "readOnly",
23
- "annotation": {
24
- "type": "keyword",
25
- "value": "boolean"
26
- }
27
- }
28
- ],
29
- "events": [
30
- {
31
- "name": "label.editing.change",
32
- "detail": {
33
- "annotation": {
34
- "type": "keyword",
35
- "value": "boolean"
36
- }
37
- }
38
- },
39
- {
40
- "name": "label.change",
41
- "detail": {
42
- "annotation": {
43
- "type": "keyword",
44
- "value": "string"
45
- }
46
- }
47
- }
48
- ],
49
- "methods": [
50
- {
51
- "name": "enableEditing",
52
- "params": [],
53
- "returns": {}
54
- }
55
- ],
56
- "types": [
57
- {
58
- "type": "typeAlias",
59
- "name": "LabelType",
60
- "annotation": {
61
- "type": "union",
62
- "types": [
63
- {
64
- "type": "jsLiteral",
65
- "value": "line"
66
- },
67
- {
68
- "type": "jsLiteral",
69
- "value": "default"
70
- }
71
- ]
72
- }
73
- }
74
- ]
75
- },
76
2
  "diagram.experimental-node": {
77
3
  "properties": [
78
4
  {
@@ -250,6 +176,80 @@
250
176
  }
251
177
  ]
252
178
  },
179
+ "diagram.editable-label": {
180
+ "properties": [
181
+ {
182
+ "name": "label",
183
+ "annotation": {
184
+ "type": "keyword",
185
+ "value": "string"
186
+ }
187
+ },
188
+ {
189
+ "name": "type",
190
+ "annotation": {
191
+ "type": "reference",
192
+ "typeName": {
193
+ "type": "identifier",
194
+ "name": "LabelType"
195
+ }
196
+ }
197
+ },
198
+ {
199
+ "name": "readOnly",
200
+ "annotation": {
201
+ "type": "keyword",
202
+ "value": "boolean"
203
+ }
204
+ }
205
+ ],
206
+ "events": [
207
+ {
208
+ "name": "label.editing.change",
209
+ "detail": {
210
+ "annotation": {
211
+ "type": "keyword",
212
+ "value": "boolean"
213
+ }
214
+ }
215
+ },
216
+ {
217
+ "name": "label.change",
218
+ "detail": {
219
+ "annotation": {
220
+ "type": "keyword",
221
+ "value": "string"
222
+ }
223
+ }
224
+ }
225
+ ],
226
+ "methods": [
227
+ {
228
+ "name": "enableEditing",
229
+ "params": [],
230
+ "returns": {}
231
+ }
232
+ ],
233
+ "types": [
234
+ {
235
+ "type": "typeAlias",
236
+ "name": "LabelType",
237
+ "annotation": {
238
+ "type": "union",
239
+ "types": [
240
+ {
241
+ "type": "jsLiteral",
242
+ "value": "line"
243
+ },
244
+ {
245
+ "type": "jsLiteral",
246
+ "value": "default"
247
+ }
248
+ ]
249
+ }
250
+ }
251
+ ]
252
+ },
253
253
  "eo-display-canvas": {
254
254
  "properties": [
255
255
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-bricks/diagram",
3
- "version": "0.68.5",
3
+ "version": "0.68.6",
4
4
  "homepage": "https://github.com/easyops-cn/next-advanced-bricks/tree/master/bricks/diagram",
5
5
  "repository": {
6
6
  "type": "git",
@@ -41,5 +41,5 @@
41
41
  "peerDependencies": {
42
42
  "@next-bricks/basic": "*"
43
43
  },
44
- "gitHead": "336c6c2a05081e58823ac5283ea5171ed79f120a"
44
+ "gitHead": "92d114b51e52f53f6ee4acc8322ad2caebbb3667"
45
45
  }
@@ -1,3 +0,0 @@
1
- /*! For license information please see 3654.1ca3854c.js.LICENSE.txt */
2
- "use strict";(globalThis.webpackChunk_next_bricks_diagram=globalThis.webpackChunk_next_bricks_diagram||[]).push([[3654],{790:(e,t,n)=>{n.d(t,{y:()=>i});var o=n(8769),a=n.n(o);function i(e){let{lineId:t,rects:n,maskPrefix:o,renderedLineLabels:i}=e;const l=i.find((e=>e.lineId===t&&"center"===e.placement));if(!l)return null;const{lineRect:r}=l,s=(c=1e3,{left:(d=r).left-c,top:d.top-c,width:d.width+2e3,height:d.height+2e3});var d,c;return a().createElement("mask",{id:`${o}${t}`,x:s.left,y:s.top,width:s.width,height:s.height},a().createElement("rect",{x:s.left,y:s.top,width:s.width,height:s.height,fill:"white"}),n.map(((e,t)=>a().createElement("rect",{key:t,x:e.left,y:e.top,width:e.width,height:e.height,fill:"black"}))))}},821:(e,t,n)=>{n.d(t,{A:()=>r});var o=n(6758),a=n.n(o),i=n(935),l=n.n(i)()(a());l.push([e.id,":host{display:block;width:100%;height:100%;overflow:hidden}:host([hidden]){display:none}*{box-sizing:border-box}.diagram{width:100%;height:100%;position:relative;opacity:0}.diagram:focus{outline:none}.lines,\n.line-labels,\n.nodes{position:absolute;top:0;left:0}.line-labels{opacity:0}.ready{opacity:1}.diagram.ready.pannable{cursor:grab}.diagram.pannable.grabbing{cursor:grabbing}.nodes,\n.lines{transform-origin:0 0}.node,\n.line-label{position:absolute;visibility:hidden}.line-label{transform:translate(-50%,-50%);white-space:pre-line;width:max-content;text-align:center;line-height:1}.lines{pointer-events:none}.line.interactable{pointer-events:auto;cursor:default}.connect-line{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none}.connect-line:not(.connecting){display:none}.line:not(.active) .active-bg{display:none}",""]);const r=l.toString()},1014:(e,t,n)=>{n.d(t,{m:()=>r});var o=n(8769),a=n.n(o),i=n(3373),l=n.n(i);function r(e){var t,n;let{line:{line:o,edge:i,d:r,markers:s},linePaths:d,lineMaskRects:c,maskPrefix:u,markerPrefix:f,activeLineMarkerPrefix:p,active:m,activeRelated:h,onLineClick:v,onLineDoubleClick:g}=e;const y=c.has(o.$id)?`url(#${u}${o.$id})`:void 0,{strokeColor:k,strokeWidth:b,interactStrokeWidth:w}={...o,...m?null===(t=o.overrides)||void 0===t?void 0:t.active:h?null===(n=o.overrides)||void 0===n?void 0:n.activeRelated:null},x=m?"active":h?"active-related":"default";let M,R;for(const e of s)e.variant===x&&("start"===e.placement?M=`url(#${f}${e.index})`:R=`url(#${f}${e.index})`);return a().createElement("g",{className:l()("line",{interactable:o.interactable,active:m,"active-related":h}),onClick:o.interactable?()=>{null==v||v({id:o.$id,edge:i})}:void 0,onDoubleClick:o.interactable?e=>{e.preventDefault(),e.stopPropagation(),null==g||g({id:o.$id,edge:i})}:void 0,style:{cursor:o.cursor}},o.interactable&&a().createElement("path",{d:r,fill:"none",stroke:"transparent",strokeWidth:w}),a().createElement("path",{ref:e=>d.set(o.$id,e),stroke:k,strokeWidth:b,d:r,fill:"none",markerStart:M,markerEnd:R,mask:y}),a().createElement("path",{stroke:"var(--palette-blue-3)",strokeWidth:b,d:r,fill:"none",className:"active-bg",markerStart:`url(#${p}start)`,markerEnd:`url(#${p}end)`,mask:y}))}},1553:(e,t,n)=>{n.d(t,{t:()=>r});var o=n(1030),a=n(1921);function i(e,t){return!!t&&(t.edgeType?[].concat(t.edgeType).includes(e.type):(0,a.checkIfByTransform)(t,{edge:e}))}var l=n(5222);function r(e,t){const n=[],r=new WeakMap,d=[];for(const v of null!=e?e:[]){var c,u;const{label:e,...g}=null!==(c=null==t?void 0:t.find((e=>i(v,e))))&&void 0!==c?c:{},y=a.__secret_internals.legacyDoTransform({edge:v},g);if(!1===(null==y?void 0:y.draw))continue;const k=(0,o.uniqueId)("line-"),b={strokeColor:l.mF,strokeWidth:l.VO,curveType:"polyline"===(null==y?void 0:y.type)?"curveLinear":l.KP,interactStrokeWidth:l.Ie,type:"auto",...y,label:e,$id:k};r.set(v,k);const w=[],x=null!==(u=b.markers)&&void 0!==u?u:b.arrow?[{placement:"end",type:"arrow"}]:[];for(const e of x){var f,p,m,h;const{placement:t,type:n}=e,o=null!=t?t:"end";let a,i;switch(n){case"0..1":case"0..N":i=21,a=n;break;default:i=1,a="arrow"}const l=i*b.strokeWidth,r=s({type:a,strokeColor:b.strokeColor},d);w.push({index:r,placement:o,type:a,variant:"default",offset:l});const c=s({type:a,strokeColor:null!==(f=null===(p=b.overrides)||void 0===p||null===(p=p.active)||void 0===p?void 0:p.strokeColor)&&void 0!==f?f:b.strokeColor},d);w.push({index:c,placement:o,type:a,variant:"active",offset:l});const u=s({type:a,strokeColor:null!==(m=null===(h=b.overrides)||void 0===h||null===(h=h.activeRelated)||void 0===h?void 0:h.strokeColor)&&void 0!==m?m:b.strokeColor},d);w.push({index:u,placement:o,type:a,variant:"active-related",offset:l})}n.push({line:b,markers:w,edge:v})}return{normalizedLines:n,normalizedLinesMap:r,markers:d}}function s(e,t){let n=(0,o.findIndex)(t,e);return-1===n&&(n=t.push(e)-1),n}},2579:(e,t,n)=>{n.d(t,{_:()=>u});var o=n(8769),a=n(1921),i=n(6330),l=n(1361),r=function(){var e=(0,i.A)((function*(e,t,n){return(yield l.http.post("api/gateway/cmdb.instance.PostSearchV3/v3/object/".concat(e,"/instance/_search"),t,n)).data}));return function(t,n,o){return e.apply(this,arguments)}}(),s=function(){var e=(0,i.A)((function*(e,t,n,o){return(yield l.http.put("api/gateway/cmdb.instance.UpdateInstanceV2/v2/object/".concat(e,"/instance/").concat(t),n,o)).data}));return function(t,n,o,a){return e.apply(this,arguments)}}(),d=function(){var e=(0,i.A)((function*(e,t,n){return(yield l.http.post("api/gateway/cmdb.instance.CreateInstance/v2/object/".concat(e,"/instance"),t,n)).data}));return function(t,n,o){return e.apply(this,arguments)}}();const c="GRAPH_USER_VIEW@EASYOPS";function u(e){const[t,n]=(0,o.useState)(!e),i=(0,o.useRef)(),[l,u]=(0,o.useState)(null),f=(0,o.useMemo)((()=>function(){let e=!1;const t=[];return async function(n){if(t.push(n),!e){let n;for(e=!0;n=t.shift();)try{await n()}catch(e){console.error(e)}e=!1}}}()),[]);return(0,o.useEffect)((()=>{!async function(){if(!e)return void n(!0);const{namespace:t,key:o}=e;if(!t||!o)return console.error("Namespace and key are required to save graph user view"),void n(!0);try{const e=(await r(c,{fields:["nodes"],query:{namespace:{$eq:t},key:{$eq:o}},page:1,page_size:30})).list;if(e.length>0){var l;const t=e[0],n=new Map(null===(l=t.nodes)||void 0===l?void 0:l.map((e=>[e.id,e])));i.current=t.instanceId,u(n)}else u(null)}catch(e){(0,a.handleHttpError)(e)}finally{n(!0)}}()}),[e]),{userViewReady:t,userViewNodesMap:l,saveUserView:(0,o.useCallback)((t=>{const{namespace:n,key:o}=null!=e?e:{};n&&o&&f((async()=>{const e={namespace:n,key:o,nodes:t};try{if(i.current)await s(c,i.current,e,{interceptorParams:{ignoreLoadingBar:!0}});else{const t=await d(c,e,{interceptorParams:{ignoreLoadingBar:!0}});i.current=t.instanceId}}catch(e){(0,a.handleHttpError)(e)}}))}),[e,f])}}},3402:(e,t,n)=>{function o(e,t){return e?!!t&&e.type===t.type&&("node"===e.type?e.nodeId===t.nodeId:e.edge.source===t.edge.source&&e.edge.target===t.edge.target):!t}n.d(t,{c:()=>o})},3984:(e,t,n)=>{function o(e,t){const n=new Map;for(const{id:o,lineId:a,placement:i}of e){if(!t||"center"!==i)continue;const e=t.get(o);if(!e)continue;const{offsetWidth:l,offsetHeight:r}=e;if(0===l||0===r)continue;const s=3;n.set(a,[{left:e.offsetLeft-l/2-s,top:e.offsetTop-r/2-s,width:l+2*s,height:r+2*s}])}return n}n.d(t,{G:()=>o})},4567:(e,t,n)=>{function o(e,t){for(const{id:n,position:o,placement:a,angle:i,size:l}of e){const e=t.get(n);if(e&&(e.style.left=`${o[0]}px`,e.style.top=`${o[1]}px`,e.style.visibility="visible","center"!==a&&void 0!==i)){const[t,n]=null!=l?l:[0,0],o=Math.floor((i<0?2*Math.PI+i:i)/Math.PI*4),r="start"===a?o:(o+4)%8,s=Math.tan(i),d=i+("start"===a?1:-1)*Math.PI/2,c=2,u=Math.sin(d)*c,f=Math.cos(d)*c;let p;switch(r){case 0:p=`translate(0,${t*s+u}px)`;break;case 1:p=`translate(${n/s-f}px,0)`;break;case 2:p=`translate(calc(${n/s+f}px - 100%),0)`;break;case 3:p=`translate(-100%,${-t*s-u}px)`;break;case 4:p=`translate(-100%,calc(${-t*s+u}px - 100%))`;break;case 5:p=`translate(calc(${-n/s-f}px - 100%),-100%)`;break;case 6:p=`translate(${-n/s+f}px,-100%)`;break;default:p=`translate(0,calc(${t*s-u}px - 100%))`}e.style.transform=p}}}n.d(t,{F:()=>o})},5222:(e,t,n)=>{n.d(t,{Ie:()=>l,KP:()=>i,VO:()=>a,Yt:()=>s,mF:()=>o,sS:()=>r});const o="var(--palette-gray-5)",a=1,i="curveBasis",l=20,r=.5,s=2},5305:(e,t,n)=>{n.d(t,{R:()=>r});var o=n(9698),a=n(883),i=n(4928),l=n(3016);function r(e,t,n){const r=new WeakMap,c=new Map,u=new Map;for(const e of t)c.set(e.id,e);for(const t of e){const{data:e}=t;r.set(e,t)}let f=!1;return n.map((t=>{var n,p,m,h;let{line:v,edge:g,markers:y,...k}=t;const b=r.get(g);if(!b)return;const w=null!==(n=null===(p=y.find((e=>"default"===e.variant&&"start"===e.placement)))||void 0===p?void 0:p.offset)&&void 0!==n?n:0,x=null!==(m=null===(h=y.find((e=>"default"===e.variant&&"end"===e.placement)))||void 0===h?void 0:h.offset)&&void 0!==m?m:0;let M,{points:R}=b;if(!R){const t=c.get(g.source),n=c.get(g.target);if(t&&n&&t!==n){if("polyline"===v.type){if(!(0,l.w)(t,n,w,x)){var E,L;(()=>{if(f)return;f=!0;const t=(e,t)=>{let n=u.get(e);n||u.set(e,n=new Set);const o=c.get(t);o&&n.add(o)};for(const{data:{source:n,target:o}}of e)n!==o&&(t(n,o),t(o,n))})();const o=s(t,n,w),a=s(n,t,x),l=d(null!==(E=u.get(g.source))&&void 0!==E?E:[],t,o,w),r=d(null!==(L=u.get(g.target))&&void 0!==L?L:[],n,a,x),p=(l.indexOf(n)+1)/(l.length+1),m=(r.indexOf(t)+1)/(r.length+1);R=(0,i.o)(t,n,o,a,p,m)}}else R=(0,a.h)(t,n);if(R){const e=R[0],t=R[R.length-1];M=Math.atan2(t.y-e.y,t.x-e.x)}}}return{...k,markers:y,line:v,edge:g,d:(0,o.S)(R,v.curveType,w,x),angle:M,labelSize:b.labelSize}})).filter(Boolean)}function s(e,t,n){const o=Math.atan2(e.height+2*n,e.width+2*n),{x:a,y:i}=e,{x:l,y:r}=t,s=Math.atan2(r-i,l-a),d=s<0?2*Math.PI+s:s;switch(Math.floor(d/Math.PI*2)){case 0:return d<o?"right":"bottom";case 1:return d<Math.PI-o?"bottom":"left";case 2:return d<Math.PI+o?"left":"top";default:return d<2*Math.PI-o?"top":"right"}}function d(e,t,n,o){return[...e].filter((e=>s(t,e,o)===n)).sort(((e,t)=>{const{x:o,y:a}=e,{x:i,y:l}=t;return"top"===n||"bottom"===n?o-i:a-l}))}},6155:(e,t,n)=>{n.d(t,{p:()=>r});var o=n(8769),a=n.n(o),i=n(9711),l=n(1921);function r(e){let{nodes:t,nodeBricks:n,onRendered:i}=e;const[l,r]=(0,o.useState)(!1),[d,c]=(0,o.useState)([]),u=(0,o.useMemo)((()=>new Map),[]),f=(0,o.useCallback)(((e,t)=>{t&&u.set(e,t),c((t=>t.includes(e)?t:t.concat(e)))}),[u]),p=(0,o.useCallback)((e=>{c((t=>{const n=t.indexOf(e);return-1===n?t:t.slice(0,n).concat(t.slice(n+1))})),u.delete(e)}),[u]);return(0,o.useEffect)((()=>{r(!(null!=t&&t.some((e=>!d.includes(e.id)))))}),[t,d]),(0,o.useEffect)((()=>{null==i||i(l?u:null)}),[u,l]),a().createElement(a().Fragment,null,null==t?void 0:t.map((e=>a().createElement("div",{key:e.id,className:"node"},a().createElement(s,{nodeBricks:n,node:e,onRendered:f,onUnmount:p})))))}function s(e){let{node:t,nodeBricks:n,onRendered:r,onUnmount:s}=e;const d=(0,o.useMemo)((()=>{var e;return null===(e=function(e,t){return null==t?void 0:t.find((t=>t.nodeType?[].concat(t.nodeType).includes(e.type):(0,l.checkIfByTransform)(t,{node:e})))}(t,n))||void 0===e?void 0:e.useBrick}),[t,n]),c=(0,o.useMemo)((()=>({node:t})),[t]);(0,o.useEffect)((()=>{d||setTimeout((()=>{null==r||r(t.id,null)}))}),[t.id,r,d]),(0,o.useEffect)((()=>()=>{null==s||s(t.id)}),[]);const u=(0,o.useCallback)((e=>{e&&setTimeout((()=>{null==r||r(t.id,e)}))}),[t.id,r]),f=(0,o.useCallback)((()=>{setTimeout((()=>{null==r||r(t.id,null)}))}),[t.id,r]);return d?a().createElement(i.ReactUseBrick,{refCallback:u,ignoredCallback:f,useBrick:d,data:c}):null}},6884:(e,t,n)=>{n.d(t,{w:()=>s});var o=n(8769),a=n.n(o),i=n(3373),l=n.n(i),r=n(5078);function s(e){let{connectLineState:t,connectLineTo:n,markerPrefix:o}=e;return a().createElement("svg",{width:"100%",height:"100%",className:l()("connect-line",{connecting:!!t&&(n[0]-t.from[0])**2+(n[1]-t.from[1])**2>25})},a().createElement("defs",null,a().createElement(r.c,{type:"arrow",id:`${o}connect-line`,strokeColor:null==t?void 0:t.options.strokeColor})),a().createElement("path",{d:t?`M${t.from.join(" ")}L${n.join(" ")}`:"",fill:"none",stroke:null==t?void 0:t.options.strokeColor,strokeWidth:null==t?void 0:t.options.strokeWidth,markerEnd:null!=t&&t.options.arrow?`url(#${o}connect-line)`:void 0}))}},7467:(e,t,n)=>{n.d(t,{P:()=>i});var o=n(1921),a=n(5222);function i(e,t){let{nodes:n,nodesRefRepository:i,connectNodes:l,dragNodes:r,scale:s,setConnectLineState:d,setConnectLineTo:c,setManualLayoutStatus:u,setNodeMovement:f,onSwitchActiveTarget:p,onNodesConnect:m}=t;function h(e){if(i)for(const[t,o]of i)if(e(o))return null==n?void 0:n.find((e=>e.id===t))}if(!l&&!r)return;const v=h((t=>t.contains(e.target)));if(!v)return;if(!function(e,t){return e.sourceType?[].concat(e.sourceType).includes(t.type):(0,o.checkIfByTransform)(e,{source:t})}(l||r,v))return;e.stopPropagation();const g=[e.clientX,e.clientY];if(l){d({from:g,options:{strokeColor:a.mF,strokeWidth:a.VO,...o.__secret_internals.legacyDoTransform({source:v},l)}}),c(g),null==p||p({type:"node",nodeId:v.id});const e=e=>{c([e.clientX,e.clientY])},t=n=>{document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t),d(null);const o=n.composedPath(),a=h((e=>o.includes(e)));a&&v!==a&&(null==m||m({source:v,target:a}))};return document.addEventListener("mousemove",e),void document.addEventListener("mouseup",t)}null==p||p({type:"node",nodeId:v.id});let y=!1;const k=e=>{const t=[(e.clientX-g[0])/s,(e.clientY-g[1])/s];y||(y=t[0]**2+t[1]**2>=9,y&&u("started")),y&&f({id:v.id,move:t})},b=()=>{y=!1,document.removeEventListener("mousemove",k),document.removeEventListener("mouseup",b),f(null),u("finished")};document.addEventListener("mousemove",k),document.addEventListener("mouseup",b)}},7971:(e,t,n)=>{n.d(t,{o:()=>k});var o=n(8769),a=n(7586),i=n.n(a),l=n(1030);function r(e,t,n){for(const i of e){var o,a;const e=t.get(i.id);i.width=Math.max(null!==(o=null==e?void 0:e.offsetWidth)&&void 0!==o?o:0,10)+n[1]+n[3],i.height=Math.max(null!==(a=null==e?void 0:e.offsetHeight)&&void 0!==a?a:0,10)+n[0]+n[2]}}function s(e,t,n){for(const a of e){var o;const e=a.x-a.width/2+n[3],i=a.y-a.height/2+n[0],l=null===(o=t.get(a.id))||void 0===o?void 0:o.parentElement;l&&(l.style.left=`${e}px`,l.style.top=`${i}px`,l.style.visibility="visible")}}var d=n(4487),c=n(6149),u=n(4842),f=n(1945),p=n(9418),m=n(3854),h=n(7931);function v(e,t){var n;let{normalizedLinesMap:o,lineLabelsRefRepository:a}=t;return null!==(n=null==e?void 0:e.map((e=>{const t=o.get(e),n={};if(t)for(const e of["start","end"]){const o=a.get(`${t}-${e}`);o&&(n[e]=[o.offsetWidth,o.offsetHeight])}return{data:e,labelSize:n}})))&&void 0!==n?n:[]}function g(e,t){return new Array(t).fill(null).map(((t,n)=>({dummy:!0,id:`$dummy-${e.source}-${e.target}-${n}`})))}function y(e,t){return new Array(t+1).fill(null).map(((n,o)=>({dummy:!0,source:0===o?e.source:`$dummy-${e.source}-${e.target}-${o-1}`,target:o===t?e.target:`$dummy-${e.source}-${e.target}-${o}`})))}function k(e){let{layout:t,nodes:n,edges:a,manualLayoutStatus:k,userViewReady:b,userViewNodesMap:w,nodeMovement:x,nodesRefRepository:M,lineLabelsRefRepository:R,normalizedLinesMap:E,nodesRenderId:L,lineLabelsRenderId:$,layoutOptions:C}=e;const P="initial"===k?t:"manual",[S,I]=(0,o.useState)(null),[T,N]=(0,o.useState)({nodes:[],edges:[]});return(0,o.useEffect)((()=>{b&&I((e=>"dagre"===P?function(e,t,n,o){const{nodePadding:a,...c}={nodePadding:0,rankdir:"TB",ranksep:50,edgesep:10,nodesep:50,...(0,l.pick)(o,["nodePadding","rankdir","ranksep","edgesep","nodesep","align"])},u=(0,d.D)(a),f=new(i().graphlib.Graph);f.setGraph(c),f.setDefaultEdgeLabel((function(){return{}}));for(const n of null!=t?t:[]){const t=null==e?void 0:e.getNode(n.id);f.setNode(n.id,(null==t?void 0:t.data)===n?t:{id:n.id,data:n})}for(const e of null!=n?n:[])f.setEdge(e.source,e.target,{data:e});return{layout:"dagre",getNode:e=>f.node(e),applyLayout(e){let{nodesRefRepository:t,lineLabelsRefRepository:n,normalizedLinesMap:o}=e;const a=[];for(const e of f.nodes()){const t=f.node(e);t?a.push(t):console.error("Diagram node not found: %s",e)}if(0===a.length)return null;r(a,t,u);const l=f.edges().map((e=>f.edge(e)));for(const e of l){const t=o.get(e.data);if(t)for(const o of["center","start","end"]){const a=n.get(`${t}-${o}`);if(a){var d;const{offsetWidth:t,offsetHeight:n}=a;"center"===o&&(e.labelpos="c",e.width=t,e.height=n),null!==(d=e.labelSize)&&void 0!==d||(e.labelSize={}),e.labelSize[o]=[t,n]}}}return i().layout(f),s(a,t,u),{nodes:a,edges:l}}}}(e,n,a,C):"force"===P?function(e,t,n,o,a){const{nodePadding:i,dummyNodesOnEdges:k,collide:b}={nodePadding:0,dummyNodesOnEdges:0,...(0,l.pick)(a,["nodePadding","dummyNodesOnEdges"]),collide:!1!==(null==a?void 0:a.collide)&&{dummyRadius:1,radiusDiff:5,strength:1,iterations:1,...!0===(null==a?void 0:a.collide)?null:null==a?void 0:a.collide}},w=(0,d.D)(i),x=[];for(const n of null!=t?t:[]){const t=null==e?void 0:e.getNode(n.id);if((null==t?void 0:t.data)===n)x.push(t);else{const e={id:n.id,data:n},t=null==o?void 0:o.get(n.id);t&&(e.fx=t.x,e.fy=t.y),x.push(e)}}return{layout:"force",getNode:function(e){return x.find((t=>t.data.id===e))},applyLayout(e){let{nodesRefRepository:t,lineLabelsRefRepository:o,normalizedLinesMap:a}=e;if(0===x.length)return null;r(x,t,w);const i=x.slice(),l=[];for(const e of null!=n?n:[])l.push({...e}),k>0&&(i.push(...g(e,k)),l.push(...y(e,k)));const d=(0,c.A)(l).id((e=>e.id));k>0&&d.distance((e=>e.dummy?30/(k+1):30)).strength((e=>e.dummy?.5:1));const M=(0,u.A)(i).force("link",d).force("x",(0,f.A)()).force("y",(0,p.A)()).force("charge",(0,m.A)());b&&M.force("collide",(0,h.A)().radius((e=>e.dummy?b.dummyRadius:Math.sqrt(e.width**2+e.height**2)/2+b.radiusDiff)).strength(b.strength).iterations(b.iterations)),M.stop(),function(e){e.tick(Math.ceil(Math.log(e.alphaMin())/Math.log(1-e.alphaDecay())))}(M),s(x,t,w);const R=v(n,{normalizedLinesMap:a,lineLabelsRefRepository:o});return{nodes:x,edges:R}}}}(e,n,a,w,C):"manual"===P?function(e,t,n,o){const{nodePadding:a}={nodePadding:0,...(0,l.pick)(o,["nodePadding"])},i=(0,d.D)(a),c=[];for(const n of null!=t?t:[]){const t=null==e?void 0:e.getNode(n.id);(null==t?void 0:t.data)===n?(c.push(t),t.x0=t.x,t.y0=t.y):c.push({id:n.id,data:n})}let u;return{layout:"manual",getNode:function(e){return c.find((t=>t.data.id===e))},applyLayout(e){let{manualLayoutStatus:t,nodesRefRepository:o,lineLabelsRefRepository:a,normalizedLinesMap:l,nodeMovement:d}=e;if(0===c.length)return null;var f,p;r(c,o,i),d&&(u=c.find((e=>e.id===d.id)),u&&(u.x=(null!==(f=u.x0)&&void 0!==f?f:0)+d.move[0],u.y=(null!==(p=u.y0)&&void 0!==p?p:0)+d.move[1])),"finished"===t&&u&&(u.x0=u.x,u.y0=u.y),s(c,o,i);const m=v(n,{normalizedLinesMap:l,lineLabelsRefRepository:a});return{nodes:c,edges:m}}}}(e,n,a,C):null))}),[a,n,P,C,b,w]),(0,o.useEffect)((()=>{if(!M||!R||P!==(null==S?void 0:S.layout))return;const e=null==S?void 0:S.applyLayout({manualLayoutStatus:k,nodesRefRepository:M,lineLabelsRefRepository:R,normalizedLinesMap:E,nodeMovement:x});e&&N(e)}),[P,k,S,x,M,R,L,$,E]),T}},8166:(e,t,n)=>{n.d(t,{a:()=>a});var o=n(1030);function a(e,t){let{renderedNodes:n,activeTarget:o}=t;const a="node"===(null==o?void 0:o.type)?n.find((e=>e.id===o.nodeId)):void 0,l="edge"===(null==o?void 0:o.type)?o.edge:void 0;if(!a&&!l)return;const r=e.key||e.keyCode||e.which;let s,d,c;switch(r){case"Backspace":case 8:case"Delete":case 46:a?(s="delete-node",d=a):(s="delete-edge",c=l);break;default:if(!a)return;switch(r){case"ArrowLeft":case 37:d=i("x",n,a,-1),s="switch-active-node";break;case"ArrowUp":case 38:d=i("y",n,a,-1),s="switch-active-node";break;case"ArrowRight":case 39:d=i("x",n,a,1),s="switch-active-node";break;case"ArrowDown":case 40:d=i("y",n,a,1),s="switch-active-node"}}var u;return s?(e.preventDefault(),e.stopPropagation(),{action:s,node:null===(u=d)||void 0===u?void 0:u.data,edge:c}):void 0}function i(e,t,n,a){const i="x"===e?"y":"x";let l;const r=t.filter((t=>t!==n&&(l=(t[e]-n[e])*a,l>0)&&l>Math.abs(n[i]-t[i])));return(0,o.minBy)(r,(t=>(n[i]-t[i])**2+(n[e]-t[e])**2))}},8265:(e,t,n)=>{function o(e,t){let{canvasWidth:n,canvasHeight:o,scaleRange:a}=t,i=1/0,l=1/0,r=-1/0,s=-1/0;for(const t of e){const e=t.width/2,n=t.height/2,o=t.x-e,a=t.x+e,d=t.y-n,c=t.y+n;o<i&&(i=o),a>r&&(r=a),d<l&&(l=d),c>s&&(s=c)}const d=r-i,c=s-l,u=a&&(d>n||c>o)?Math.max(Math.min(n/d,o/c,a[1]),a[0]):1;return{x:(n-d*u)/2-i*u,y:(o-c*u)/2-l*u,k:u}}n.d(t,{r:()=>o})},9088:(e,t,n)=>{n.d(t,{d2:()=>r});var o=n(8769),a=n.n(o),i=n(9711),l=n(1921);function r(e){let{labels:t,onRendered:n}=e;const[i,l]=(0,o.useState)(!1),[r,c]=(0,o.useState)([]),u=(0,o.useMemo)((()=>new Map),[]),f=(0,o.useCallback)(((e,t)=>{t&&u.set(e,t),c((t=>t.includes(e)?t:t.concat(e)))}),[u]),p=(0,o.useCallback)((e=>{c((t=>{const n=t.indexOf(e);return-1===n?t:t.slice(0,n).concat(t.slice(n+1))})),u.delete(e)}),[u]);return(0,o.useEffect)((()=>{l(!(null!=t&&t.some((e=>!r.includes(e.id)))))}),[t,r]),(0,o.useEffect)((()=>{null==n||n(i?u:null)}),[u,i]),a().createElement(a().Fragment,null,null==t?void 0:t.map((e=>{let{text:t,label:n,id:o,edge:i}=e;return n?a().createElement("div",{key:o,className:"line-label"},a().createElement(d,{id:o,edge:i,label:n,onRendered:f,onUnmount:p})):a().createElement(s,{key:o,id:o,text:t,onRendered:f})})))}function s(e){let{id:t,text:n,onRendered:i}=e;const l=(0,o.useCallback)((e=>{null==i||i(t,e)}),[t,i]);return a().createElement("div",{className:"line-label",ref:l,style:n.style},n.content)}function d(e){let{id:t,edge:n,label:r,onRendered:s,onUnmount:d}=e;const c=(0,o.useMemo)((()=>(0,l.checkIfByTransform)(r,{edge:n})?r.useBrick:null),[n,r]),u=(0,o.useMemo)((()=>({edge:n})),[n]);(0,o.useEffect)((()=>{c||setTimeout((()=>{null==s||s(t,null)}))}),[t,s,c]),(0,o.useEffect)((()=>()=>{null==d||d(t)}),[]);const f=(0,o.useCallback)((e=>{e&&setTimeout((()=>{null==s||s(t,e.parentElement)}))}),[t,s]),p=(0,o.useCallback)((()=>{setTimeout((()=>{null==s||s(t,null)}))}),[t,s]);return c?a().createElement(i.ReactUseBrick,{refCallback:f,ignoredCallback:p,useBrick:c,data:u}):null}},9409:(e,t,n)=>{function o(e,t,n){return 0===e.length&&0===t.length?e:t.flatMap((e=>{let{line:{text:t,label:o,$id:a},edge:i,labelSize:l,angle:r}=e;const s=n.get(a);if(!t&&!o||!s||!s.getAttribute("d"))return[];let d,c;o?(d="label",c=[].concat(o)):(d="text",c=[].concat(t));const{x:u,y:f,width:p,height:m}=s.getBBox(),h=s.getTotalLength();return c.map((e=>{var t;const n=null!==(t=e.placement)&&void 0!==t?t:"center",o=s.getPointAtLength("start"===n?Math.min(0,h/2):"end"===n?Math.max(h-0,h/2):h/2);return{[d]:e,edge:i,position:[o.x,o.y],lineRect:{left:u,top:f,width:p,height:m},id:`${a}-${n}`,lineId:a,placement:n,angle:r,size:null==l?void 0:l[n]}}))}))}n.d(t,{z:()=>o})}}]);
3
- //# sourceMappingURL=3654.1ca3854c.js.map