@likec4/generators 1.5.0 → 1.29.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 (85) hide show
  1. package/LICENSE +21 -0
  2. package/dist/d2/generate-d2.d.ts +1 -2
  3. package/dist/d2/generate-d2.js +70 -63
  4. package/dist/d2/index.d.ts +0 -1
  5. package/dist/d2/index.js +1 -1
  6. package/dist/index.d.ts +2 -2
  7. package/dist/index.js +6 -5
  8. package/dist/mmd/generate-mmd.d.ts +1 -2
  9. package/dist/mmd/generate-mmd.js +82 -63
  10. package/dist/mmd/index.d.ts +0 -1
  11. package/dist/mmd/index.js +1 -1
  12. package/dist/model/generate-likec4-model.d.ts +2 -0
  13. package/dist/model/generate-likec4-model.js +29 -0
  14. package/dist/model/generate-likec4.d.ts +2 -0
  15. package/dist/model/generate-likec4.js +2 -0
  16. package/dist/react/generate-react-types.d.ts +2 -0
  17. package/dist/react/generate-react-types.js +122 -0
  18. package/dist/react/index.d.ts +1 -2
  19. package/dist/react/index.js +1 -1
  20. package/dist/react-next/generate-react-next.d.ts +9 -7
  21. package/dist/react-next/generate-react-next.js +26 -26
  22. package/dist/react-next/index.d.ts +0 -1
  23. package/dist/react-next/index.js +1 -1
  24. package/dist/views-data-ts/generate-views-data.d.ts +3 -4
  25. package/dist/views-data-ts/generate-views-data.js +64 -54
  26. package/dist/views-data-ts/generateViewId.d.ts +1 -2
  27. package/dist/views-data-ts/generateViewId.js +5 -4
  28. package/dist/views-data-ts/index.d.ts +0 -1
  29. package/dist/views-data-ts/index.js +1 -1
  30. package/package.json +25 -27
  31. package/src/__mocks__/data.ts +463 -0
  32. package/src/d2/__snapshots__/generate-d2.spec.ts.snap +91 -0
  33. package/src/d2/generate-d2.spec.ts +15 -0
  34. package/src/d2/generate-d2.ts +106 -0
  35. package/src/d2/index.ts +1 -0
  36. package/src/index.ts +6 -0
  37. package/src/mmd/__snapshots__/generate-mmd.spec.ts.snap +55 -0
  38. package/src/mmd/generate-mmd.spec.ts +15 -0
  39. package/src/mmd/generate-mmd.ts +110 -0
  40. package/src/mmd/index.ts +1 -0
  41. package/src/model/__snapshots__/likec4-model.snap +990 -0
  42. package/src/model/generate-likec4-model.spec.ts +158 -0
  43. package/src/model/generate-likec4-model.ts +33 -0
  44. package/src/model/generate-likec4.ts +5 -0
  45. package/src/react/generate-react-types.ts +127 -0
  46. package/src/react/index.ts +1 -0
  47. package/src/react-next/generate-react-next.ts +111 -0
  48. package/src/react-next/index.ts +1 -0
  49. package/src/views-data-ts/__snapshots__/generate-views-data.spec.ts.snap +83 -0
  50. package/src/views-data-ts/generate-views-data.spec.ts +15 -0
  51. package/src/views-data-ts/generate-views-data.ts +147 -0
  52. package/src/views-data-ts/generateViewId.ts +9 -0
  53. package/src/views-data-ts/index.ts +1 -0
  54. package/dist/__mocks__/data.d.ts +0 -5
  55. package/dist/__mocks__/data.d.ts.map +0 -1
  56. package/dist/__mocks__/data.js +0 -456
  57. package/dist/d2/generate-d2.d.ts.map +0 -1
  58. package/dist/d2/generate-d2.spec.d.ts +0 -2
  59. package/dist/d2/generate-d2.spec.d.ts.map +0 -1
  60. package/dist/d2/generate-d2.spec.js +0 -12
  61. package/dist/d2/index.d.ts.map +0 -1
  62. package/dist/index.d.ts.map +0 -1
  63. package/dist/mmd/generate-mmd.d.ts.map +0 -1
  64. package/dist/mmd/generate-mmd.spec.d.ts +0 -2
  65. package/dist/mmd/generate-mmd.spec.d.ts.map +0 -1
  66. package/dist/mmd/generate-mmd.spec.js +0 -12
  67. package/dist/mmd/index.d.ts.map +0 -1
  68. package/dist/react/generate-react.d.ts +0 -3
  69. package/dist/react/generate-react.d.ts.map +0 -1
  70. package/dist/react/generate-react.js +0 -97
  71. package/dist/react/generate-react.spec.d.ts +0 -2
  72. package/dist/react/generate-react.spec.d.ts.map +0 -1
  73. package/dist/react/generate-react.spec.js +0 -6
  74. package/dist/react/index.d.ts.map +0 -1
  75. package/dist/react-next/generate-react-next.d.ts.map +0 -1
  76. package/dist/react-next/generate-react-next.spec.d.ts +0 -2
  77. package/dist/react-next/generate-react-next.spec.d.ts.map +0 -1
  78. package/dist/react-next/generate-react-next.spec.js +0 -9
  79. package/dist/react-next/index.d.ts.map +0 -1
  80. package/dist/views-data-ts/generate-views-data.d.ts.map +0 -1
  81. package/dist/views-data-ts/generate-views-data.spec.d.ts +0 -2
  82. package/dist/views-data-ts/generate-views-data.spec.d.ts.map +0 -1
  83. package/dist/views-data-ts/generate-views-data.spec.js +0 -12
  84. package/dist/views-data-ts/generateViewId.d.ts.map +0 -1
  85. package/dist/views-data-ts/index.d.ts.map +0 -1
@@ -0,0 +1,990 @@
1
+ /* prettier-ignore-start */
2
+ /* eslint-disable */
3
+
4
+ /******************************************************************************
5
+ * This file was generated
6
+ * DO NOT EDIT MANUALLY!
7
+ ******************************************************************************/
8
+
9
+ import { LikeC4Model } from 'likec4/model'
10
+
11
+ export const likeC4Model = LikeC4Model.fromDump({
12
+ specification: {
13
+ elements: {
14
+ person: {
15
+ style: {
16
+ shape: 'person',
17
+ },
18
+ },
19
+ system: {},
20
+ component: {},
21
+ webapp: {
22
+ style: {
23
+ shape: 'browser',
24
+ },
25
+ },
26
+ mobile: {
27
+ style: {
28
+ shape: 'mobile',
29
+ },
30
+ },
31
+ },
32
+ deployments: {
33
+ env: {},
34
+ zone: {},
35
+ node: {},
36
+ },
37
+ relationships: {},
38
+ tags: [],
39
+ },
40
+ elements: {
41
+ customer: {
42
+ id: 'customer',
43
+ kind: 'person',
44
+ title: 'customer',
45
+ description: null,
46
+ technology: null,
47
+ tags: null,
48
+ color: 'primary',
49
+ shape: 'person',
50
+ style: {},
51
+ links: null,
52
+ },
53
+ cloud: {
54
+ id: 'cloud',
55
+ kind: 'system',
56
+ title: 'cloud',
57
+ description: null,
58
+ technology: null,
59
+ tags: null,
60
+ color: 'primary',
61
+ shape: 'rectangle',
62
+ style: {},
63
+ links: null,
64
+ },
65
+ 'cloud.frontend': {
66
+ id: 'cloud.frontend',
67
+ kind: 'component',
68
+ title: 'frontend',
69
+ description: null,
70
+ technology: null,
71
+ tags: null,
72
+ color: 'primary',
73
+ shape: 'rectangle',
74
+ style: {},
75
+ links: null,
76
+ },
77
+ 'cloud.frontend.dashboard': {
78
+ id: 'cloud.frontend.dashboard',
79
+ kind: 'webapp',
80
+ title: 'dashboard',
81
+ description: null,
82
+ technology: null,
83
+ tags: null,
84
+ color: 'primary',
85
+ shape: 'browser',
86
+ style: {},
87
+ links: null,
88
+ },
89
+ 'cloud.frontend.mobile': {
90
+ id: 'cloud.frontend.mobile',
91
+ kind: 'mobile',
92
+ title: 'mobile',
93
+ description: null,
94
+ technology: null,
95
+ tags: null,
96
+ color: 'primary',
97
+ shape: 'mobile',
98
+ style: {},
99
+ links: null,
100
+ },
101
+ 'cloud.auth': {
102
+ id: 'cloud.auth',
103
+ kind: 'component',
104
+ title: 'auth',
105
+ description: null,
106
+ technology: null,
107
+ tags: null,
108
+ color: 'primary',
109
+ shape: 'rectangle',
110
+ style: {},
111
+ links: null,
112
+ },
113
+ 'cloud.backend': {
114
+ id: 'cloud.backend',
115
+ kind: 'component',
116
+ title: 'backend',
117
+ description: null,
118
+ technology: null,
119
+ tags: null,
120
+ color: 'primary',
121
+ shape: 'rectangle',
122
+ style: {},
123
+ links: null,
124
+ },
125
+ 'cloud.backend.api': {
126
+ id: 'cloud.backend.api',
127
+ kind: 'component',
128
+ title: 'api',
129
+ description: null,
130
+ technology: null,
131
+ tags: null,
132
+ color: 'primary',
133
+ shape: 'rectangle',
134
+ style: {},
135
+ links: null,
136
+ },
137
+ 'cloud.backend.graphql': {
138
+ id: 'cloud.backend.graphql',
139
+ kind: 'component',
140
+ title: 'graphql',
141
+ description: null,
142
+ technology: null,
143
+ tags: null,
144
+ color: 'primary',
145
+ shape: 'rectangle',
146
+ style: {},
147
+ links: null,
148
+ },
149
+ 'cloud.media': {
150
+ id: 'cloud.media',
151
+ kind: 'component',
152
+ title: 'media',
153
+ description: null,
154
+ technology: null,
155
+ tags: null,
156
+ color: 'primary',
157
+ shape: 'storage',
158
+ style: {},
159
+ links: null,
160
+ },
161
+ aws: {
162
+ id: 'aws',
163
+ kind: 'system',
164
+ title: 'aws',
165
+ description: null,
166
+ technology: null,
167
+ tags: null,
168
+ color: 'primary',
169
+ shape: 'rectangle',
170
+ style: {},
171
+ links: null,
172
+ },
173
+ 'aws.rds': {
174
+ id: 'aws.rds',
175
+ kind: 'component',
176
+ title: 'rds',
177
+ description: null,
178
+ technology: null,
179
+ tags: null,
180
+ color: 'primary',
181
+ shape: 'storage',
182
+ style: {},
183
+ links: null,
184
+ },
185
+ 'aws.s3': {
186
+ id: 'aws.s3',
187
+ kind: 'component',
188
+ title: 's3',
189
+ description: null,
190
+ technology: null,
191
+ tags: null,
192
+ color: 'primary',
193
+ shape: 'storage',
194
+ style: {},
195
+ links: null,
196
+ },
197
+ email: {
198
+ id: 'email',
199
+ kind: 'system',
200
+ title: 'email',
201
+ description: null,
202
+ technology: null,
203
+ tags: null,
204
+ color: 'primary',
205
+ shape: 'rectangle',
206
+ style: {},
207
+ links: null,
208
+ },
209
+ },
210
+ relations: {
211
+ rel1: {
212
+ id: 'rel1',
213
+ source: 'customer',
214
+ target: 'cloud',
215
+ title: 'uses services',
216
+ },
217
+ rel2: {
218
+ id: 'rel2',
219
+ source: 'customer',
220
+ target: 'cloud.frontend.mobile',
221
+ title: 'opens mobile app',
222
+ },
223
+ rel3: {
224
+ id: 'rel3',
225
+ source: 'customer',
226
+ target: 'cloud.frontend.dashboard',
227
+ title: 'opens in browser',
228
+ },
229
+ rel4: {
230
+ id: 'rel4',
231
+ source: 'cloud.frontend.dashboard',
232
+ target: 'cloud.auth',
233
+ title: 'authenticates',
234
+ },
235
+ rel5: {
236
+ id: 'rel5',
237
+ source: 'cloud.frontend.dashboard',
238
+ target: 'cloud.backend.api',
239
+ title: 'fetches data',
240
+ },
241
+ rel6: {
242
+ id: 'rel6',
243
+ source: 'cloud.frontend.dashboard',
244
+ target: 'cloud.media',
245
+ title: 'fetches media',
246
+ },
247
+ rel7: {
248
+ id: 'rel7',
249
+ source: 'cloud.frontend.mobile',
250
+ target: 'cloud.auth',
251
+ title: 'authenticates',
252
+ },
253
+ rel8: {
254
+ id: 'rel8',
255
+ source: 'cloud.frontend.mobile',
256
+ target: 'cloud.backend.api',
257
+ title: 'fetches data',
258
+ },
259
+ rel9: {
260
+ id: 'rel9',
261
+ source: 'cloud.frontend.mobile',
262
+ target: 'cloud.media',
263
+ title: 'fetches media',
264
+ },
265
+ rel10: {
266
+ id: 'rel10',
267
+ source: 'cloud.backend.api',
268
+ target: 'cloud.auth',
269
+ title: 'authorizes',
270
+ },
271
+ rel11: {
272
+ id: 'rel11',
273
+ source: 'cloud.backend.api',
274
+ target: 'cloud.media',
275
+ title: 'uploads media',
276
+ },
277
+ rel12: {
278
+ id: 'rel12',
279
+ source: 'cloud.backend.api',
280
+ target: 'aws.rds',
281
+ title: 'reads/writes',
282
+ },
283
+ rel13: {
284
+ id: 'rel13',
285
+ source: 'cloud.backend.api',
286
+ target: 'email',
287
+ title: 'sends emails',
288
+ },
289
+ rel14: {
290
+ id: 'rel14',
291
+ source: 'cloud.media',
292
+ target: 'aws.s3',
293
+ title: 'uploads',
294
+ },
295
+ rel15: {
296
+ id: 'rel15',
297
+ source: 'email',
298
+ target: 'customer',
299
+ title: 'sends emails',
300
+ },
301
+ },
302
+ globals: {
303
+ predicates: {},
304
+ dynamicPredicates: {},
305
+ styles: {},
306
+ },
307
+ deployments: {
308
+ elements: {
309
+ customer: {
310
+ id: 'customer',
311
+ kind: 'node',
312
+ title: 'customer',
313
+ description: null,
314
+ technology: null,
315
+ tags: null,
316
+ color: 'primary',
317
+ shape: 'rectangle',
318
+ style: {},
319
+ },
320
+ 'customer.instance': {
321
+ id: 'customer.instance',
322
+ element: 'customer',
323
+ },
324
+ prod: {
325
+ id: 'prod',
326
+ kind: 'env',
327
+ title: 'prod',
328
+ description: null,
329
+ technology: null,
330
+ tags: null,
331
+ color: 'primary',
332
+ shape: 'rectangle',
333
+ style: {},
334
+ },
335
+ 'prod.eu': {
336
+ id: 'prod.eu',
337
+ kind: 'zone',
338
+ title: 'eu',
339
+ description: null,
340
+ technology: null,
341
+ tags: null,
342
+ color: 'primary',
343
+ shape: 'rectangle',
344
+ style: {},
345
+ },
346
+ 'prod.eu.zone1': {
347
+ id: 'prod.eu.zone1',
348
+ kind: 'zone',
349
+ title: 'zone1',
350
+ description: null,
351
+ technology: null,
352
+ tags: null,
353
+ color: 'primary',
354
+ shape: 'rectangle',
355
+ style: {},
356
+ },
357
+ 'prod.eu.zone1.ui': {
358
+ id: 'prod.eu.zone1.ui',
359
+ element: 'cloud.frontend.dashboard',
360
+ },
361
+ 'prod.eu.zone1.api': {
362
+ id: 'prod.eu.zone1.api',
363
+ element: 'cloud.backend.api',
364
+ },
365
+ 'prod.eu.zone2': {
366
+ id: 'prod.eu.zone2',
367
+ kind: 'zone',
368
+ title: 'zone2',
369
+ description: null,
370
+ technology: null,
371
+ tags: null,
372
+ color: 'primary',
373
+ shape: 'rectangle',
374
+ style: {},
375
+ },
376
+ 'prod.eu.zone2.ui': {
377
+ id: 'prod.eu.zone2.ui',
378
+ element: 'cloud.frontend.dashboard',
379
+ },
380
+ 'prod.eu.zone2.api': {
381
+ id: 'prod.eu.zone2.api',
382
+ element: 'cloud.backend.api',
383
+ },
384
+ 'prod.eu.media': {
385
+ id: 'prod.eu.media',
386
+ element: 'cloud.media',
387
+ },
388
+ 'prod.eu.db': {
389
+ id: 'prod.eu.db',
390
+ element: 'aws.rds',
391
+ },
392
+ 'prod.us': {
393
+ id: 'prod.us',
394
+ kind: 'zone',
395
+ title: 'us',
396
+ description: null,
397
+ technology: null,
398
+ tags: null,
399
+ color: 'primary',
400
+ shape: 'rectangle',
401
+ style: {},
402
+ },
403
+ 'prod.us.db': {
404
+ id: 'prod.us.db',
405
+ element: 'aws.rds',
406
+ },
407
+ },
408
+ relations: {
409
+ deploy_rel1: {
410
+ id: 'deploy_rel1',
411
+ source: {
412
+ id: 'prod.eu.db',
413
+ },
414
+ target: {
415
+ id: 'prod.us.db',
416
+ },
417
+ title: 'replicates',
418
+ },
419
+ },
420
+ },
421
+ imports: {},
422
+ __: 'computed',
423
+ views: {
424
+ index: {
425
+ id: 'index',
426
+ title: null,
427
+ description: null,
428
+ tags: null,
429
+ links: null,
430
+ customColorDefinitions: {},
431
+ __: 'element',
432
+ autoLayout: {
433
+ direction: 'TB',
434
+ },
435
+ hash: 'e83b636f6de8d6dc7fdb745349a384f8ebfad639',
436
+ edges: [
437
+ {
438
+ id: 'customer:cloud',
439
+ parent: null,
440
+ source: 'customer',
441
+ target: 'cloud',
442
+ label: 'uses services',
443
+ relations: [
444
+ 'rel1',
445
+ 'rel2',
446
+ 'rel3',
447
+ ],
448
+ },
449
+ {
450
+ id: 'email:customer',
451
+ parent: null,
452
+ source: 'email',
453
+ target: 'customer',
454
+ label: 'sends emails',
455
+ relations: [
456
+ 'rel15',
457
+ ],
458
+ },
459
+ {
460
+ id: 'cloud:aws',
461
+ parent: null,
462
+ source: 'cloud',
463
+ target: 'aws',
464
+ label: '[...]',
465
+ relations: [
466
+ 'rel12',
467
+ 'rel14',
468
+ ],
469
+ },
470
+ {
471
+ id: 'cloud:email',
472
+ parent: null,
473
+ source: 'cloud',
474
+ target: 'email',
475
+ label: 'sends emails',
476
+ relations: [
477
+ 'rel13',
478
+ ],
479
+ },
480
+ ],
481
+ nodes: [
482
+ {
483
+ id: 'email',
484
+ parent: null,
485
+ kind: 'system',
486
+ title: 'email',
487
+ level: 0,
488
+ color: 'primary',
489
+ shape: 'rectangle',
490
+ description: null,
491
+ technology: null,
492
+ tags: null,
493
+ links: null,
494
+ children: [],
495
+ inEdges: [
496
+ 'cloud:email',
497
+ ],
498
+ outEdges: [
499
+ 'email:customer',
500
+ ],
501
+ modelRef: 1,
502
+ style: {},
503
+ },
504
+ {
505
+ id: 'customer',
506
+ parent: null,
507
+ kind: 'person',
508
+ title: 'customer',
509
+ level: 0,
510
+ color: 'primary',
511
+ shape: 'person',
512
+ description: null,
513
+ technology: null,
514
+ tags: null,
515
+ links: null,
516
+ children: [],
517
+ inEdges: [
518
+ 'email:customer',
519
+ ],
520
+ outEdges: [
521
+ 'customer:cloud',
522
+ ],
523
+ modelRef: 1,
524
+ style: {},
525
+ },
526
+ {
527
+ id: 'cloud',
528
+ parent: null,
529
+ kind: 'system',
530
+ title: 'cloud',
531
+ level: 0,
532
+ color: 'primary',
533
+ shape: 'rectangle',
534
+ description: null,
535
+ technology: null,
536
+ tags: null,
537
+ links: null,
538
+ children: [],
539
+ inEdges: [
540
+ 'customer:cloud',
541
+ ],
542
+ outEdges: [
543
+ 'cloud:aws',
544
+ 'cloud:email',
545
+ ],
546
+ modelRef: 1,
547
+ style: {},
548
+ },
549
+ {
550
+ id: 'aws',
551
+ parent: null,
552
+ kind: 'system',
553
+ title: 'aws',
554
+ level: 0,
555
+ color: 'primary',
556
+ shape: 'rectangle',
557
+ description: null,
558
+ technology: null,
559
+ tags: null,
560
+ links: null,
561
+ children: [],
562
+ inEdges: [
563
+ 'cloud:aws',
564
+ ],
565
+ outEdges: [],
566
+ modelRef: 1,
567
+ style: {},
568
+ },
569
+ ],
570
+ },
571
+ cloud: {
572
+ id: 'cloud',
573
+ title: null,
574
+ description: null,
575
+ tags: null,
576
+ links: null,
577
+ customColorDefinitions: {},
578
+ viewOf: 'cloud',
579
+ __: 'element',
580
+ autoLayout: {
581
+ direction: 'TB',
582
+ },
583
+ hash: '1a523d612d8c2ad78909f943d5abe155f185391a',
584
+ edges: [
585
+ {
586
+ id: 'cloud.backend:cloud.auth',
587
+ parent: 'cloud',
588
+ source: 'cloud.backend',
589
+ target: 'cloud.auth',
590
+ label: 'authorizes',
591
+ relations: [
592
+ 'rel10',
593
+ ],
594
+ },
595
+ {
596
+ id: 'cloud.backend:cloud.media',
597
+ parent: 'cloud',
598
+ source: 'cloud.backend',
599
+ target: 'cloud.media',
600
+ label: 'uploads media',
601
+ relations: [
602
+ 'rel11',
603
+ ],
604
+ },
605
+ {
606
+ id: 'cloud.backend:aws',
607
+ parent: null,
608
+ source: 'cloud.backend',
609
+ target: 'aws',
610
+ label: 'reads/writes',
611
+ relations: [
612
+ 'rel12',
613
+ ],
614
+ },
615
+ {
616
+ id: 'cloud.backend:email',
617
+ parent: null,
618
+ source: 'cloud.backend',
619
+ target: 'email',
620
+ label: 'sends emails',
621
+ relations: [
622
+ 'rel13',
623
+ ],
624
+ },
625
+ {
626
+ id: 'cloud.media:aws',
627
+ parent: null,
628
+ source: 'cloud.media',
629
+ target: 'aws',
630
+ label: 'uploads',
631
+ relations: [
632
+ 'rel14',
633
+ ],
634
+ },
635
+ {
636
+ id: 'customer:cloud.frontend.dashboard',
637
+ parent: null,
638
+ source: 'customer',
639
+ target: 'cloud.frontend.dashboard',
640
+ label: 'opens in browser',
641
+ relations: [
642
+ 'rel3',
643
+ ],
644
+ },
645
+ {
646
+ id: 'cloud.frontend.dashboard:cloud.auth',
647
+ parent: 'cloud',
648
+ source: 'cloud.frontend.dashboard',
649
+ target: 'cloud.auth',
650
+ label: 'authenticates',
651
+ relations: [
652
+ 'rel4',
653
+ ],
654
+ },
655
+ {
656
+ id: 'cloud.frontend.dashboard:cloud.backend',
657
+ parent: 'cloud',
658
+ source: 'cloud.frontend.dashboard',
659
+ target: 'cloud.backend',
660
+ label: 'fetches data',
661
+ relations: [
662
+ 'rel5',
663
+ ],
664
+ },
665
+ {
666
+ id: 'cloud.frontend.dashboard:cloud.media',
667
+ parent: 'cloud',
668
+ source: 'cloud.frontend.dashboard',
669
+ target: 'cloud.media',
670
+ label: 'fetches media',
671
+ relations: [
672
+ 'rel6',
673
+ ],
674
+ },
675
+ ],
676
+ nodes: [
677
+ {
678
+ id: 'customer',
679
+ parent: null,
680
+ kind: 'person',
681
+ title: 'customer',
682
+ level: 0,
683
+ color: 'primary',
684
+ shape: 'person',
685
+ description: null,
686
+ technology: null,
687
+ tags: null,
688
+ links: null,
689
+ children: [],
690
+ inEdges: [],
691
+ outEdges: [
692
+ 'customer:cloud.frontend.dashboard',
693
+ ],
694
+ modelRef: 1,
695
+ style: {},
696
+ },
697
+ {
698
+ id: 'cloud',
699
+ parent: null,
700
+ kind: 'system',
701
+ title: 'cloud',
702
+ level: 0,
703
+ color: 'primary',
704
+ shape: 'rectangle',
705
+ description: null,
706
+ technology: null,
707
+ tags: null,
708
+ links: null,
709
+ children: [
710
+ 'cloud.frontend',
711
+ 'cloud.backend',
712
+ 'cloud.auth',
713
+ 'cloud.media',
714
+ ],
715
+ inEdges: [
716
+ 'customer:cloud.frontend.dashboard',
717
+ ],
718
+ outEdges: [
719
+ 'cloud.backend:aws',
720
+ 'cloud.backend:email',
721
+ 'cloud.media:aws',
722
+ ],
723
+ modelRef: 1,
724
+ style: {},
725
+ depth: 2,
726
+ },
727
+ {
728
+ id: 'cloud.frontend',
729
+ parent: 'cloud',
730
+ kind: 'component',
731
+ title: 'frontend',
732
+ level: 1,
733
+ color: 'primary',
734
+ shape: 'rectangle',
735
+ description: null,
736
+ technology: null,
737
+ tags: null,
738
+ links: null,
739
+ children: [
740
+ 'cloud.frontend.dashboard',
741
+ ],
742
+ inEdges: [
743
+ 'customer:cloud.frontend.dashboard',
744
+ ],
745
+ outEdges: [
746
+ 'cloud.frontend.dashboard:cloud.auth',
747
+ 'cloud.frontend.dashboard:cloud.backend',
748
+ 'cloud.frontend.dashboard:cloud.media',
749
+ ],
750
+ modelRef: 1,
751
+ style: {},
752
+ depth: 1,
753
+ },
754
+ {
755
+ id: 'cloud.frontend.dashboard',
756
+ parent: 'cloud.frontend',
757
+ kind: 'webapp',
758
+ title: 'dashboard',
759
+ level: 2,
760
+ color: 'primary',
761
+ shape: 'browser',
762
+ description: null,
763
+ technology: null,
764
+ tags: null,
765
+ links: null,
766
+ children: [],
767
+ inEdges: [
768
+ 'customer:cloud.frontend.dashboard',
769
+ ],
770
+ outEdges: [
771
+ 'cloud.frontend.dashboard:cloud.auth',
772
+ 'cloud.frontend.dashboard:cloud.backend',
773
+ 'cloud.frontend.dashboard:cloud.media',
774
+ ],
775
+ modelRef: 1,
776
+ style: {},
777
+ },
778
+ {
779
+ id: 'cloud.backend',
780
+ parent: 'cloud',
781
+ kind: 'component',
782
+ title: 'backend',
783
+ level: 1,
784
+ color: 'primary',
785
+ shape: 'rectangle',
786
+ description: null,
787
+ technology: null,
788
+ tags: null,
789
+ links: null,
790
+ children: [],
791
+ inEdges: [
792
+ 'cloud.frontend.dashboard:cloud.backend',
793
+ ],
794
+ outEdges: [
795
+ 'cloud.backend:cloud.auth',
796
+ 'cloud.backend:cloud.media',
797
+ 'cloud.backend:aws',
798
+ 'cloud.backend:email',
799
+ ],
800
+ modelRef: 1,
801
+ style: {},
802
+ },
803
+ {
804
+ id: 'cloud.auth',
805
+ parent: 'cloud',
806
+ kind: 'component',
807
+ title: 'auth',
808
+ level: 1,
809
+ color: 'primary',
810
+ shape: 'rectangle',
811
+ description: null,
812
+ technology: null,
813
+ tags: null,
814
+ links: null,
815
+ children: [],
816
+ inEdges: [
817
+ 'cloud.backend:cloud.auth',
818
+ 'cloud.frontend.dashboard:cloud.auth',
819
+ ],
820
+ outEdges: [],
821
+ modelRef: 1,
822
+ style: {},
823
+ },
824
+ {
825
+ id: 'cloud.media',
826
+ parent: 'cloud',
827
+ kind: 'component',
828
+ title: 'media',
829
+ level: 1,
830
+ color: 'primary',
831
+ shape: 'storage',
832
+ description: null,
833
+ technology: null,
834
+ tags: null,
835
+ links: null,
836
+ children: [],
837
+ inEdges: [
838
+ 'cloud.backend:cloud.media',
839
+ 'cloud.frontend.dashboard:cloud.media',
840
+ ],
841
+ outEdges: [
842
+ 'cloud.media:aws',
843
+ ],
844
+ modelRef: 1,
845
+ style: {},
846
+ },
847
+ {
848
+ id: 'email',
849
+ parent: null,
850
+ kind: 'system',
851
+ title: 'email',
852
+ level: 0,
853
+ color: 'primary',
854
+ shape: 'rectangle',
855
+ description: null,
856
+ technology: null,
857
+ tags: null,
858
+ links: null,
859
+ children: [],
860
+ inEdges: [
861
+ 'cloud.backend:email',
862
+ ],
863
+ outEdges: [],
864
+ modelRef: 1,
865
+ style: {},
866
+ },
867
+ {
868
+ id: 'aws',
869
+ parent: null,
870
+ kind: 'system',
871
+ title: 'aws',
872
+ level: 0,
873
+ color: 'primary',
874
+ shape: 'rectangle',
875
+ description: null,
876
+ technology: null,
877
+ tags: null,
878
+ links: null,
879
+ children: [],
880
+ inEdges: [
881
+ 'cloud.backend:aws',
882
+ 'cloud.media:aws',
883
+ ],
884
+ outEdges: [],
885
+ modelRef: 1,
886
+ style: {},
887
+ },
888
+ ],
889
+ },
890
+ prod: {
891
+ id: 'prod',
892
+ title: 'prod',
893
+ description: null,
894
+ tags: null,
895
+ links: null,
896
+ customColorDefinitions: {},
897
+ __: 'deployment',
898
+ autoLayout: {
899
+ direction: 'TB',
900
+ },
901
+ hash: '162fafc65660c3ffa0b88d2d4c5996b159aca805',
902
+ edges: [
903
+ {
904
+ id: 'customer.instance:prod.eu.zone1.ui',
905
+ parent: null,
906
+ source: 'customer.instance',
907
+ target: 'prod.eu.zone1.ui',
908
+ label: 'opens in browser',
909
+ relations: [
910
+ 'rel3',
911
+ ],
912
+ },
913
+ ],
914
+ nodes: [
915
+ {
916
+ id: 'customer.instance',
917
+ parent: null,
918
+ kind: 'instance',
919
+ title: 'customer',
920
+ level: 0,
921
+ color: 'primary',
922
+ shape: 'person',
923
+ description: null,
924
+ technology: null,
925
+ tags: null,
926
+ links: null,
927
+ children: [],
928
+ inEdges: [],
929
+ outEdges: [
930
+ 'customer.instance:prod.eu.zone1.ui',
931
+ ],
932
+ deploymentRef: 1,
933
+ modelRef: 'customer',
934
+ style: {},
935
+ },
936
+ {
937
+ id: 'prod',
938
+ parent: null,
939
+ kind: 'env',
940
+ title: 'prod',
941
+ level: 0,
942
+ color: 'primary',
943
+ shape: 'rectangle',
944
+ description: null,
945
+ technology: null,
946
+ tags: null,
947
+ links: null,
948
+ children: [
949
+ 'prod.eu.zone1.ui',
950
+ ],
951
+ inEdges: [
952
+ 'customer.instance:prod.eu.zone1.ui',
953
+ ],
954
+ outEdges: [],
955
+ deploymentRef: 1,
956
+ style: {},
957
+ depth: 1,
958
+ },
959
+ {
960
+ id: 'prod.eu.zone1.ui',
961
+ parent: 'prod',
962
+ kind: 'instance',
963
+ title: 'dashboard',
964
+ level: 1,
965
+ color: 'primary',
966
+ shape: 'browser',
967
+ description: null,
968
+ technology: null,
969
+ tags: null,
970
+ links: null,
971
+ children: [],
972
+ inEdges: [
973
+ 'customer.instance:prod.eu.zone1.ui',
974
+ ],
975
+ outEdges: [],
976
+ deploymentRef: 1,
977
+ modelRef: 'cloud.frontend.dashboard',
978
+ style: {},
979
+ },
980
+ ],
981
+ },
982
+ },
983
+ })
984
+
985
+ export type LikeC4ModelTypes = typeof likeC4Model.Aux
986
+ export type LikeC4ElementId = LikeC4ModelTypes['Fqn']
987
+ export type LikeC4DeploymentId = LikeC4ModelTypes['Deployment']
988
+ export type LikeC4ViewId = LikeC4ModelTypes['ViewId']
989
+
990
+ /* prettier-ignore-end */