@likec4/diagram 1.44.0 → 1.45.0

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 (134) hide show
  1. package/bundle/index.js +18160 -17671
  2. package/dist/LikeC4Diagram.js +7 -5
  3. package/dist/LikeC4Diagram.props.d.ts +9 -8
  4. package/dist/LikeC4Styles.js +0 -3
  5. package/dist/LikeC4View.d.ts +3 -3
  6. package/dist/LikeC4View.js +7 -3
  7. package/dist/ReactLikeC4.d.ts +2 -2
  8. package/dist/base/Base.d.ts +1 -1
  9. package/dist/base/updateEdges.js +25 -15
  10. package/dist/base/updateNodes.d.ts +14 -0
  11. package/dist/base/updateNodes.js +51 -18
  12. package/dist/base-primitives/Markdown.d.ts +30 -4
  13. package/dist/base-primitives/Markdown.js +3 -2
  14. package/dist/base-primitives/compound/CompoundActionButton.d.ts +3 -2
  15. package/dist/base-primitives/compound/CompoundDetailsButton.d.ts +3 -2
  16. package/dist/base-primitives/edge/EdgeActionButton.d.ts +3 -2
  17. package/dist/base-primitives/edge/EdgeContainer.d.ts +1 -1
  18. package/dist/base-primitives/edge/EdgeContainer.js +4 -1
  19. package/dist/base-primitives/edge/EdgeLabel.d.ts +2 -2
  20. package/dist/base-primitives/edge/EdgePath.js +24 -4
  21. package/dist/base-primitives/element/ElementActionButtons.d.ts +3 -2
  22. package/dist/base-primitives/element/ElementActionButtons.js +2 -2
  23. package/dist/base-primitives/element/ElementData.d.ts +3 -3
  24. package/dist/base-primitives/element/ElementData.js +13 -7
  25. package/dist/base-primitives/element/ElementDetailsButton.d.ts +3 -2
  26. package/dist/base-primitives/element/ElementDetailsButton.js +3 -0
  27. package/dist/base-primitives/element/ElementShape.js +5 -5
  28. package/dist/base-primitives/element/ElementTags.d.ts +6 -4
  29. package/dist/context/DiagramFeatures.d.ts +1 -0
  30. package/dist/context/TagStylesContext.js +1 -1
  31. package/dist/custom/hooks.d.ts +2 -2
  32. package/dist/custom/index.js +1 -1
  33. package/dist/hooks/index.d.ts +2 -1
  34. package/dist/hooks/useDiagramCompareLayout.js +7 -2
  35. package/dist/hooks/useLikeC4Project.d.ts +6 -1
  36. package/dist/hooks/useLikeC4Project.js +14 -2
  37. package/dist/hooks/useMediaPrint.d.ts +6 -0
  38. package/dist/likec4diagram/DiagramXYFlow.js +11 -6
  39. package/dist/likec4diagram/custom/edges/EdgeDrifts.d.ts +6 -0
  40. package/dist/likec4diagram/custom/edges/EdgeDrifts.js +38 -0
  41. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +24 -14
  42. package/dist/likec4diagram/custom/edges/SequenceStepEdge.js +3 -1
  43. package/dist/likec4diagram/custom/edges/useControlPoints.js +3 -3
  44. package/dist/likec4diagram/custom/edges/useRelationshipEdgePath.js +5 -5
  45. package/dist/likec4diagram/custom/nodes/NodeDrifts.d.ts +6 -0
  46. package/dist/likec4diagram/custom/nodes/{ElementNodeDrifts.js → NodeDrifts.js} +8 -4
  47. package/dist/likec4diagram/custom/nodes/SequenceActorNode.js +4 -2
  48. package/dist/likec4diagram/custom/nodes/index.d.ts +1 -0
  49. package/dist/likec4diagram/custom/nodes/nodes.js +64 -23
  50. package/dist/likec4diagram/relationship-popover/RelationshipPopover.js +3 -3
  51. package/dist/likec4diagram/relationship-popover/actor.d.ts +1 -1
  52. package/dist/likec4diagram/state/DiagramActorProvider.d.ts +2 -2
  53. package/dist/likec4diagram/state/DiagramActorProvider.js +0 -1
  54. package/dist/likec4diagram/state/assign.d.ts +10 -6
  55. package/dist/likec4diagram/state/assign.js +17 -192
  56. package/dist/likec4diagram/state/createViewChange.js +15 -26
  57. package/dist/likec4diagram/state/diagram-api.d.ts +2 -6
  58. package/dist/likec4diagram/state/diagram-api.js +2 -10
  59. package/dist/likec4diagram/state/hotkeyActor.d.ts +0 -7
  60. package/dist/likec4diagram/state/hotkeyActor.js +1 -17
  61. package/dist/likec4diagram/state/machine.actions.d.ts +430 -746
  62. package/dist/likec4diagram/state/machine.actions.js +193 -284
  63. package/dist/likec4diagram/state/machine.actions.layout.d.ts +579 -0
  64. package/dist/likec4diagram/state/machine.actions.layout.js +129 -0
  65. package/dist/likec4diagram/state/machine.d.ts +17 -3712
  66. package/dist/likec4diagram/state/machine.js +59 -73
  67. package/dist/likec4diagram/state/machine.setup.d.ts +61 -18
  68. package/dist/likec4diagram/state/machine.setup.js +27 -5
  69. package/dist/likec4diagram/state/machine.state.initializing.d.ts +25 -0
  70. package/dist/likec4diagram/state/machine.state.initializing.js +5 -5
  71. package/dist/likec4diagram/state/machine.state.navigating.d.ts +5 -108
  72. package/dist/likec4diagram/state/machine.state.navigating.js +167 -34
  73. package/dist/likec4diagram/state/machine.state.ready.d.ts +2316 -2851
  74. package/dist/likec4diagram/state/machine.state.ready.focused.d.ts +386 -0
  75. package/dist/likec4diagram/state/machine.state.ready.focused.js +85 -0
  76. package/dist/likec4diagram/state/machine.state.ready.idle.d.ts +474 -0
  77. package/dist/likec4diagram/state/machine.state.ready.idle.js +96 -0
  78. package/dist/likec4diagram/state/machine.state.ready.js +144 -319
  79. package/dist/likec4diagram/state/machine.state.ready.printing.d.ts +128 -0
  80. package/dist/likec4diagram/state/machine.state.ready.printing.js +40 -0
  81. package/dist/likec4diagram/state/machine.state.ready.walkthrough.d.ts +511 -0
  82. package/dist/likec4diagram/state/machine.state.ready.walkthrough.js +177 -0
  83. package/dist/likec4diagram/state/mediaPrintActor.d.ts +12 -0
  84. package/dist/likec4diagram/state/mediaPrintActor.js +18 -0
  85. package/dist/likec4diagram/state/syncManualLayoutActor.d.ts +6 -240
  86. package/dist/likec4diagram/state/syncManualLayoutActor.js +150 -89
  87. package/dist/likec4diagram/state/types.d.ts +5 -7
  88. package/dist/likec4diagram/state/utils.d.ts +15 -2
  89. package/dist/likec4diagram/state/utils.js +43 -3
  90. package/dist/likec4diagram/types.d.ts +8 -13
  91. package/dist/likec4diagram/ui/notation/NotationPanel.css.js +5 -2
  92. package/dist/likec4diagram/useLayoutConstraints.js +107 -102
  93. package/dist/likec4diagram/xyflow-diagram/diagram-view.js +12 -15
  94. package/dist/likec4diagram/xyflow-sequence/sequence-layout.js +11 -8
  95. package/dist/navigationpanel/NavigationPanel.js +5 -1
  96. package/dist/navigationpanel/actor.d.ts +4 -204
  97. package/dist/navigationpanel/actor.js +1 -1
  98. package/dist/navigationpanel/controls/ToggleReadonly.js +8 -3
  99. package/dist/navigationpanel/walkthrough/DynamicViewControls.d.ts +66 -66
  100. package/dist/navigationpanel/walkthrough/WalkthroughPanel.js +4 -3
  101. package/dist/overlays/element-details/ElementDetailsCard.css.js +3 -3
  102. package/dist/overlays/element-details/MetadataValue.d.ts +2 -1
  103. package/dist/overlays/element-details/actor.d.ts +8 -83
  104. package/dist/overlays/element-details/actor.js +0 -8
  105. package/dist/overlays/overlay/Overlay.js +10 -10
  106. package/dist/overlays/overlaysActor.d.ts +7 -392
  107. package/dist/overlays/overlaysActor.js +67 -46
  108. package/dist/overlays/relationship-details/_types.d.ts +3 -4
  109. package/dist/overlays/relationship-details/actor.d.ts +6 -562
  110. package/dist/overlays/relationship-details/actor.js +1 -0
  111. package/dist/overlays/relationship-details/layout-to-xyflow.js +3 -5
  112. package/dist/overlays/relationship-details/layout.d.ts +3 -3
  113. package/dist/overlays/relationship-details/layout.js +4 -4
  114. package/dist/overlays/relationships-browser/_types.d.ts +2 -3
  115. package/dist/overlays/relationships-browser/actor.d.ts +7 -739
  116. package/dist/overlays/relationships-browser/layout.d.ts +2 -2
  117. package/dist/overlays/relationships-browser/layout.js +3 -3
  118. package/dist/overlays/relationships-browser/useViewToNodesEdges.js +0 -3
  119. package/dist/overlays/types.d.ts +12 -13
  120. package/dist/search/components/_shared.css.d.ts +1 -1
  121. package/dist/search/searchActor.d.ts +3 -66
  122. package/dist/shadowroot/ShadowRoot.d.ts +5 -7
  123. package/dist/shadowroot/ShadowRoot.js +7 -5
  124. package/dist/styles.css2.js +1 -1
  125. package/dist/utils/vector.d.ts +5 -0
  126. package/dist/utils/vector.js +7 -0
  127. package/dist/utils/view-bounds.js +7 -6
  128. package/dist/utils/xyflow.d.ts +4 -2
  129. package/dist/utils/xyflow.js +18 -50
  130. package/package.json +19 -18
  131. package/panda.buildinfo.json +17 -5
  132. package/styles-min.css +1 -1
  133. package/styles.css +1 -1
  134. package/dist/likec4diagram/custom/nodes/ElementNodeDrifts.d.ts +0 -4
@@ -0,0 +1,474 @@
1
+ import { GuardPredicate, ActionFunction, Values } from 'xstate';
2
+ import { Context, Events, EmittedEvents } from './machine.setup';
3
+ import { NormalizeGuardArgArray } from 'xstate/guards';
4
+ import { SyncLayoutActorLogic } from './syncManualLayoutActor';
5
+ import { HotkeyActorLogic } from './hotkeyActor';
6
+ import { OverlaysActorLogic } from '../../overlays/overlaysActor';
7
+ import { SearchActorLogic } from '../../search/searchActor';
8
+ import { MediaPrintActorLogic } from './mediaPrintActor';
9
+ export declare const idle: {
10
+ id: string;
11
+ on: {
12
+ 'xyflow.nodeClick': ({
13
+ guard: GuardPredicate<Context, {
14
+ type: "xyflow.nodeClick";
15
+ node: import("../types").Types.Node;
16
+ }, unknown, NormalizeGuardArgArray<["enabled: Readonly", "enabled: FocusMode", "click: node has connections", GuardPredicate<Context, {
17
+ type: "xyflow.nodeClick";
18
+ node: import("../types").Types.Node;
19
+ }, unknown, NormalizeGuardArgArray<["click: same node", "click: selected node"]>>]>>;
20
+ actions: ( ActionFunction<Context, Events, Events, undefined, Values<{
21
+ syncManualLayoutActorLogic: {
22
+ src: "syncManualLayoutActorLogic";
23
+ logic: SyncLayoutActorLogic;
24
+ id: "syncLayout";
25
+ };
26
+ hotkeyActorLogic: {
27
+ src: "hotkeyActorLogic";
28
+ logic: HotkeyActorLogic;
29
+ id: "hotkey";
30
+ };
31
+ overlaysActorLogic: {
32
+ src: "overlaysActorLogic";
33
+ logic: OverlaysActorLogic;
34
+ id: "overlays";
35
+ };
36
+ searchActorLogic: {
37
+ src: "searchActorLogic";
38
+ logic: SearchActorLogic;
39
+ id: "search";
40
+ };
41
+ mediaPrintActorLogic: {
42
+ src: "mediaPrintActorLogic";
43
+ logic: MediaPrintActorLogic;
44
+ id: "mediaPrint";
45
+ };
46
+ }>, never, never, never, never> | ActionFunction<Context, Events, Events, undefined, never, never, never, never, EmittedEvents>)[];
47
+ target: string;
48
+ } | {
49
+ guard: GuardPredicate<Context, {
50
+ type: "xyflow.nodeClick";
51
+ node: import("../types").Types.Node;
52
+ }, unknown, NormalizeGuardArgArray<["enabled: Readonly", "enabled: ElementDetails", "click: node has modelFqn", GuardPredicate<Context, {
53
+ type: "xyflow.nodeClick";
54
+ node: import("../types").Types.Node;
55
+ }, unknown, NormalizeGuardArgArray<["click: same node", "click: selected node"]>>]>>;
56
+ actions: ActionFunction<Context, Events, Events, undefined, Values<{
57
+ syncManualLayoutActorLogic: {
58
+ src: "syncManualLayoutActorLogic";
59
+ logic: SyncLayoutActorLogic;
60
+ id: "syncLayout";
61
+ };
62
+ hotkeyActorLogic: {
63
+ src: "hotkeyActorLogic";
64
+ logic: HotkeyActorLogic;
65
+ id: "hotkey";
66
+ };
67
+ overlaysActorLogic: {
68
+ src: "overlaysActorLogic";
69
+ logic: OverlaysActorLogic;
70
+ id: "overlays";
71
+ };
72
+ searchActorLogic: {
73
+ src: "searchActorLogic";
74
+ logic: SearchActorLogic;
75
+ id: "search";
76
+ };
77
+ mediaPrintActorLogic: {
78
+ src: "mediaPrintActorLogic";
79
+ logic: MediaPrintActorLogic;
80
+ id: "mediaPrint";
81
+ };
82
+ }>, never, Values<{
83
+ isReady: {
84
+ type: "isReady";
85
+ params: unknown;
86
+ };
87
+ "enabled: FitView": {
88
+ type: "enabled: FitView";
89
+ params: unknown;
90
+ };
91
+ "enabled: FocusMode": {
92
+ type: "enabled: FocusMode";
93
+ params: unknown;
94
+ };
95
+ "enabled: Readonly": {
96
+ type: "enabled: Readonly";
97
+ params: unknown;
98
+ };
99
+ "enabled: RelationshipDetails": {
100
+ type: "enabled: RelationshipDetails";
101
+ params: unknown;
102
+ };
103
+ "enabled: Search": {
104
+ type: "enabled: Search";
105
+ params: unknown;
106
+ };
107
+ "enabled: ElementDetails": {
108
+ type: "enabled: ElementDetails";
109
+ params: unknown;
110
+ };
111
+ "enabled: OpenSource": {
112
+ type: "enabled: OpenSource";
113
+ params: unknown;
114
+ };
115
+ "enabled: DynamicViewWalkthrough": {
116
+ type: "enabled: DynamicViewWalkthrough";
117
+ params: unknown;
118
+ };
119
+ "enabled: Overlays": {
120
+ type: "enabled: Overlays";
121
+ params: unknown;
122
+ };
123
+ "not readonly": {
124
+ type: "not readonly";
125
+ params: unknown;
126
+ };
127
+ "is dynamic view": {
128
+ type: "is dynamic view";
129
+ params: unknown;
130
+ };
131
+ "is another view": {
132
+ type: "is another view";
133
+ params: unknown;
134
+ };
135
+ "click: node has modelFqn": {
136
+ type: "click: node has modelFqn";
137
+ params: unknown;
138
+ };
139
+ "click: selected node": {
140
+ type: "click: selected node";
141
+ params: unknown;
142
+ };
143
+ "click: same node": {
144
+ type: "click: same node";
145
+ params: unknown;
146
+ };
147
+ "click: focused node": {
148
+ type: "click: focused node";
149
+ params: unknown;
150
+ };
151
+ "click: node has connections": {
152
+ type: "click: node has connections";
153
+ params: unknown;
154
+ };
155
+ "click: selected edge": {
156
+ type: "click: selected edge";
157
+ params: unknown;
158
+ };
159
+ }>, never, EmittedEvents>[];
160
+ target?: never;
161
+ } | {
162
+ actions: ActionFunction<Context, Events, Events, undefined, Values<{
163
+ syncManualLayoutActorLogic: {
164
+ src: "syncManualLayoutActorLogic";
165
+ logic: SyncLayoutActorLogic;
166
+ id: "syncLayout";
167
+ };
168
+ hotkeyActorLogic: {
169
+ src: "hotkeyActorLogic";
170
+ logic: HotkeyActorLogic;
171
+ id: "hotkey";
172
+ };
173
+ overlaysActorLogic: {
174
+ src: "overlaysActorLogic";
175
+ logic: OverlaysActorLogic;
176
+ id: "overlays";
177
+ };
178
+ searchActorLogic: {
179
+ src: "searchActorLogic";
180
+ logic: SearchActorLogic;
181
+ id: "search";
182
+ };
183
+ mediaPrintActorLogic: {
184
+ src: "mediaPrintActorLogic";
185
+ logic: MediaPrintActorLogic;
186
+ id: "mediaPrint";
187
+ };
188
+ }>, never, Values<{
189
+ isReady: {
190
+ type: "isReady";
191
+ params: unknown;
192
+ };
193
+ "enabled: FitView": {
194
+ type: "enabled: FitView";
195
+ params: unknown;
196
+ };
197
+ "enabled: FocusMode": {
198
+ type: "enabled: FocusMode";
199
+ params: unknown;
200
+ };
201
+ "enabled: Readonly": {
202
+ type: "enabled: Readonly";
203
+ params: unknown;
204
+ };
205
+ "enabled: RelationshipDetails": {
206
+ type: "enabled: RelationshipDetails";
207
+ params: unknown;
208
+ };
209
+ "enabled: Search": {
210
+ type: "enabled: Search";
211
+ params: unknown;
212
+ };
213
+ "enabled: ElementDetails": {
214
+ type: "enabled: ElementDetails";
215
+ params: unknown;
216
+ };
217
+ "enabled: OpenSource": {
218
+ type: "enabled: OpenSource";
219
+ params: unknown;
220
+ };
221
+ "enabled: DynamicViewWalkthrough": {
222
+ type: "enabled: DynamicViewWalkthrough";
223
+ params: unknown;
224
+ };
225
+ "enabled: Overlays": {
226
+ type: "enabled: Overlays";
227
+ params: unknown;
228
+ };
229
+ "not readonly": {
230
+ type: "not readonly";
231
+ params: unknown;
232
+ };
233
+ "is dynamic view": {
234
+ type: "is dynamic view";
235
+ params: unknown;
236
+ };
237
+ "is another view": {
238
+ type: "is another view";
239
+ params: unknown;
240
+ };
241
+ "click: node has modelFqn": {
242
+ type: "click: node has modelFqn";
243
+ params: unknown;
244
+ };
245
+ "click: selected node": {
246
+ type: "click: selected node";
247
+ params: unknown;
248
+ };
249
+ "click: same node": {
250
+ type: "click: same node";
251
+ params: unknown;
252
+ };
253
+ "click: focused node": {
254
+ type: "click: focused node";
255
+ params: unknown;
256
+ };
257
+ "click: node has connections": {
258
+ type: "click: node has connections";
259
+ params: unknown;
260
+ };
261
+ "click: selected edge": {
262
+ type: "click: selected edge";
263
+ params: unknown;
264
+ };
265
+ }>, never, EmittedEvents>[];
266
+ guard?: never;
267
+ target?: never;
268
+ })[];
269
+ 'xyflow.paneClick': {
270
+ actions: ( ActionFunction<Context, Events, Events, undefined, Values<{
271
+ syncManualLayoutActorLogic: {
272
+ src: "syncManualLayoutActorLogic";
273
+ logic: SyncLayoutActorLogic;
274
+ id: "syncLayout";
275
+ };
276
+ hotkeyActorLogic: {
277
+ src: "hotkeyActorLogic";
278
+ logic: HotkeyActorLogic;
279
+ id: "hotkey";
280
+ };
281
+ overlaysActorLogic: {
282
+ src: "overlaysActorLogic";
283
+ logic: OverlaysActorLogic;
284
+ id: "overlays";
285
+ };
286
+ searchActorLogic: {
287
+ src: "searchActorLogic";
288
+ logic: SearchActorLogic;
289
+ id: "search";
290
+ };
291
+ mediaPrintActorLogic: {
292
+ src: "mediaPrintActorLogic";
293
+ logic: MediaPrintActorLogic;
294
+ id: "mediaPrint";
295
+ };
296
+ }>, never, never, never, never> | ActionFunction<Context, Events, Events, undefined, never, never, never, never, EmittedEvents>)[];
297
+ };
298
+ 'xyflow.paneDblClick': {
299
+ actions: ActionFunction<Context, {
300
+ type: "xyflow.paneDblClick";
301
+ }, Events, undefined, Values<{
302
+ syncManualLayoutActorLogic: {
303
+ src: "syncManualLayoutActorLogic";
304
+ logic: SyncLayoutActorLogic;
305
+ id: "syncLayout";
306
+ };
307
+ hotkeyActorLogic: {
308
+ src: "hotkeyActorLogic";
309
+ logic: HotkeyActorLogic;
310
+ id: "hotkey";
311
+ };
312
+ overlaysActorLogic: {
313
+ src: "overlaysActorLogic";
314
+ logic: OverlaysActorLogic;
315
+ id: "overlays";
316
+ };
317
+ searchActorLogic: {
318
+ src: "searchActorLogic";
319
+ logic: SearchActorLogic;
320
+ id: "search";
321
+ };
322
+ mediaPrintActorLogic: {
323
+ src: "mediaPrintActorLogic";
324
+ logic: MediaPrintActorLogic;
325
+ id: "mediaPrint";
326
+ };
327
+ }>, never, Values<{
328
+ isReady: {
329
+ type: "isReady";
330
+ params: unknown;
331
+ };
332
+ "enabled: FitView": {
333
+ type: "enabled: FitView";
334
+ params: unknown;
335
+ };
336
+ "enabled: FocusMode": {
337
+ type: "enabled: FocusMode";
338
+ params: unknown;
339
+ };
340
+ "enabled: Readonly": {
341
+ type: "enabled: Readonly";
342
+ params: unknown;
343
+ };
344
+ "enabled: RelationshipDetails": {
345
+ type: "enabled: RelationshipDetails";
346
+ params: unknown;
347
+ };
348
+ "enabled: Search": {
349
+ type: "enabled: Search";
350
+ params: unknown;
351
+ };
352
+ "enabled: ElementDetails": {
353
+ type: "enabled: ElementDetails";
354
+ params: unknown;
355
+ };
356
+ "enabled: OpenSource": {
357
+ type: "enabled: OpenSource";
358
+ params: unknown;
359
+ };
360
+ "enabled: DynamicViewWalkthrough": {
361
+ type: "enabled: DynamicViewWalkthrough";
362
+ params: unknown;
363
+ };
364
+ "enabled: Overlays": {
365
+ type: "enabled: Overlays";
366
+ params: unknown;
367
+ };
368
+ "not readonly": {
369
+ type: "not readonly";
370
+ params: unknown;
371
+ };
372
+ "is dynamic view": {
373
+ type: "is dynamic view";
374
+ params: unknown;
375
+ };
376
+ "is another view": {
377
+ type: "is another view";
378
+ params: unknown;
379
+ };
380
+ "click: node has modelFqn": {
381
+ type: "click: node has modelFqn";
382
+ params: unknown;
383
+ };
384
+ "click: selected node": {
385
+ type: "click: selected node";
386
+ params: unknown;
387
+ };
388
+ "click: same node": {
389
+ type: "click: same node";
390
+ params: unknown;
391
+ };
392
+ "click: focused node": {
393
+ type: "click: focused node";
394
+ params: unknown;
395
+ };
396
+ "click: node has connections": {
397
+ type: "click: node has connections";
398
+ params: unknown;
399
+ };
400
+ "click: selected edge": {
401
+ type: "click: selected edge";
402
+ params: unknown;
403
+ };
404
+ }>, never, EmittedEvents>[];
405
+ };
406
+ 'focus.node': {
407
+ guard: "enabled: FocusMode";
408
+ actions: ActionFunction<Context, Events, Events, undefined, Values<{
409
+ syncManualLayoutActorLogic: {
410
+ src: "syncManualLayoutActorLogic";
411
+ logic: SyncLayoutActorLogic;
412
+ id: "syncLayout";
413
+ };
414
+ hotkeyActorLogic: {
415
+ src: "hotkeyActorLogic";
416
+ logic: HotkeyActorLogic;
417
+ id: "hotkey";
418
+ };
419
+ overlaysActorLogic: {
420
+ src: "overlaysActorLogic";
421
+ logic: OverlaysActorLogic;
422
+ id: "overlays";
423
+ };
424
+ searchActorLogic: {
425
+ src: "searchActorLogic";
426
+ logic: SearchActorLogic;
427
+ id: "search";
428
+ };
429
+ mediaPrintActorLogic: {
430
+ src: "mediaPrintActorLogic";
431
+ logic: MediaPrintActorLogic;
432
+ id: "mediaPrint";
433
+ };
434
+ }>, never, never, never, never>;
435
+ target: string;
436
+ };
437
+ 'xyflow.edgeClick': {
438
+ guard: GuardPredicate<Context, {
439
+ type: "xyflow.edgeClick";
440
+ edge: import("../types").Types.Edge;
441
+ }, unknown, NormalizeGuardArgArray<["enabled: Readonly", "is dynamic view", "enabled: DynamicViewWalkthrough", "click: selected edge"]>>;
442
+ actions: ( ActionFunction<Context, Events, Events, undefined, Values<{
443
+ syncManualLayoutActorLogic: {
444
+ src: "syncManualLayoutActorLogic";
445
+ logic: SyncLayoutActorLogic;
446
+ id: "syncLayout";
447
+ };
448
+ hotkeyActorLogic: {
449
+ src: "hotkeyActorLogic";
450
+ logic: HotkeyActorLogic;
451
+ id: "hotkey";
452
+ };
453
+ overlaysActorLogic: {
454
+ src: "overlaysActorLogic";
455
+ logic: OverlaysActorLogic;
456
+ id: "overlays";
457
+ };
458
+ searchActorLogic: {
459
+ src: "searchActorLogic";
460
+ logic: SearchActorLogic;
461
+ id: "search";
462
+ };
463
+ mediaPrintActorLogic: {
464
+ src: "mediaPrintActorLogic";
465
+ logic: MediaPrintActorLogic;
466
+ id: "mediaPrint";
467
+ };
468
+ }>, never, never, never, never> | ActionFunction<Context, Events, Events, undefined, never, never, never, never, EmittedEvents> | ActionFunction<Context, {
469
+ type: "xyflow.edgeClick";
470
+ edge: import("../types").Types.Edge;
471
+ }, Events, undefined, never, never, never, never, never>)[];
472
+ };
473
+ };
474
+ };
@@ -0,0 +1,96 @@
1
+ import { resetLastClickedNode, emitEdgeClick, assignFocusedNode, emitPaneClick, assignLastClickedNode, emitNodeClick, openSourceOfFocusedOrLastClickedNode, openElementDetails, emitOpenSource } from './machine.actions.js';
2
+ import { machine, targetState } from './machine.setup.js';
3
+ import { x as xstateActions_cjsExports } from '../../_virtual/xstate-actions.cjs.js';
4
+ import { x as xstateGuards_cjsExports } from '../../_virtual/xstate-guards.cjs.js';
5
+ import { fitDiagram } from './machine.actions.layout.js';
6
+
7
+ const idle = machine.createStateConfig({
8
+ id: targetState.idle.slice(1),
9
+ on: {
10
+ "xyflow.nodeClick": [
11
+ {
12
+ guard: xstateGuards_cjsExports.and([
13
+ "enabled: Readonly",
14
+ "enabled: FocusMode",
15
+ "click: node has connections",
16
+ xstateGuards_cjsExports.or([
17
+ "click: same node",
18
+ "click: selected node"
19
+ ])
20
+ ]),
21
+ actions: [
22
+ assignLastClickedNode(),
23
+ assignFocusedNode(),
24
+ emitNodeClick()
25
+ ],
26
+ target: targetState.focused
27
+ },
28
+ {
29
+ guard: xstateGuards_cjsExports.and([
30
+ "enabled: Readonly",
31
+ "enabled: ElementDetails",
32
+ "click: node has modelFqn",
33
+ xstateGuards_cjsExports.or([
34
+ "click: same node",
35
+ "click: selected node"
36
+ ])
37
+ ]),
38
+ actions: [
39
+ assignLastClickedNode(),
40
+ openSourceOfFocusedOrLastClickedNode(),
41
+ openElementDetails(),
42
+ emitNodeClick()
43
+ ]
44
+ },
45
+ {
46
+ actions: [
47
+ assignLastClickedNode(),
48
+ openSourceOfFocusedOrLastClickedNode(),
49
+ emitNodeClick()
50
+ ]
51
+ }
52
+ ],
53
+ "xyflow.paneClick": {
54
+ actions: [
55
+ resetLastClickedNode(),
56
+ emitPaneClick()
57
+ ]
58
+ },
59
+ "xyflow.paneDblClick": {
60
+ actions: [
61
+ resetLastClickedNode(),
62
+ xstateActions_cjsExports.enqueueActions(({ context, enqueue, check }) => {
63
+ if (check("enabled: FitView")) {
64
+ enqueue(fitDiagram());
65
+ }
66
+ enqueue(
67
+ emitOpenSource({ view: context.view.id })
68
+ );
69
+ })
70
+ ]
71
+ },
72
+ "focus.node": {
73
+ guard: "enabled: FocusMode",
74
+ actions: assignFocusedNode(),
75
+ target: targetState.focused
76
+ },
77
+ "xyflow.edgeClick": {
78
+ guard: xstateGuards_cjsExports.and([
79
+ "enabled: Readonly",
80
+ "is dynamic view",
81
+ "enabled: DynamicViewWalkthrough",
82
+ "click: selected edge"
83
+ ]),
84
+ actions: [
85
+ resetLastClickedNode(),
86
+ xstateActions_cjsExports.raise(({ event }) => ({
87
+ type: "walkthrough.start",
88
+ stepId: event.edge.id
89
+ })),
90
+ emitEdgeClick()
91
+ ]
92
+ }
93
+ }
94
+ });
95
+
96
+ export { idle };