@almadar/std 14.16.0 → 14.18.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 (123) hide show
  1. package/behaviors/registry/app/atoms/std-branching-logic.orb +84 -84
  2. package/behaviors/registry/app/atoms/std-checkin.orb +60 -60
  3. package/behaviors/registry/app/atoms/std-dunning.orb +44 -44
  4. package/behaviors/registry/app/atoms/std-event.orb +62 -62
  5. package/behaviors/registry/app/atoms/std-flag.orb +72 -72
  6. package/behaviors/registry/app/atoms/std-geosearch.orb +29 -29
  7. package/behaviors/registry/app/atoms/std-image-upload-multi.orb +54 -56
  8. package/behaviors/registry/app/atoms/std-invoice.orb +124 -124
  9. package/behaviors/registry/app/atoms/std-kitchen-display.orb +45 -45
  10. package/behaviors/registry/app/atoms/std-menu.orb +44 -44
  11. package/behaviors/registry/app/atoms/std-mod-queue.orb +38 -38
  12. package/behaviors/registry/app/atoms/std-modifier-group.orb +56 -56
  13. package/behaviors/registry/app/atoms/std-page-tree.orb +55 -55
  14. package/behaviors/registry/app/atoms/std-payout-ledger.orb +66 -66
  15. package/behaviors/registry/app/atoms/std-question-bank.orb +62 -62
  16. package/behaviors/registry/app/atoms/std-rating-review.orb +67 -67
  17. package/behaviors/registry/app/atoms/std-recurring-charge.orb +74 -74
  18. package/behaviors/registry/app/atoms/std-response-collector.orb +44 -44
  19. package/behaviors/registry/app/atoms/std-rich-editor.orb +68 -68
  20. package/behaviors/registry/app/atoms/std-route-optimize.orb +48 -46
  21. package/behaviors/registry/app/atoms/std-saved-search.orb +72 -72
  22. package/behaviors/registry/app/atoms/std-signature-capture.orb +86 -86
  23. package/behaviors/registry/app/atoms/std-table-map.orb +46 -46
  24. package/behaviors/registry/app/atoms/std-tag-taxonomy.orb +73 -92
  25. package/behaviors/registry/app/atoms/std-technician-dispatch.orb +42 -42
  26. package/behaviors/registry/app/atoms/std-thread.orb +59 -59
  27. package/behaviors/registry/app/atoms/std-ticket-tier.orb +72 -56
  28. package/behaviors/registry/app/atoms/std-trial.orb +67 -67
  29. package/behaviors/registry/app/atoms/std-version-history.orb +93 -93
  30. package/behaviors/registry/app/atoms/std-vote.orb +40 -40
  31. package/behaviors/registry/app/atoms/std-waitlist.orb +50 -50
  32. package/behaviors/registry/app/atoms/std-work-order.orb +61 -61
  33. package/behaviors/registry/app/organisms/std-api-gateway.orb +201 -201
  34. package/behaviors/registry/app/organisms/std-booking-system.orb +676 -676
  35. package/behaviors/registry/app/organisms/std-cicd-pipeline.orb +285 -285
  36. package/behaviors/registry/app/organisms/std-cms.orb +265 -265
  37. package/behaviors/registry/app/organisms/std-coding-academy.orb +179 -179
  38. package/behaviors/registry/app/organisms/std-crm.orb +258 -258
  39. package/behaviors/registry/app/organisms/std-devops-dashboard.orb +403 -403
  40. package/behaviors/registry/app/organisms/std-ecommerce.orb +681 -681
  41. package/behaviors/registry/app/organisms/std-event-ticketing.orb +193 -201
  42. package/behaviors/registry/app/organisms/std-field-service.orb +170 -174
  43. package/behaviors/registry/app/organisms/std-finance-tracker.orb +205 -205
  44. package/behaviors/registry/app/organisms/std-forum.orb +127 -128
  45. package/behaviors/registry/app/organisms/std-healthcare.orb +540 -540
  46. package/behaviors/registry/app/organisms/std-helpdesk.orb +175 -175
  47. package/behaviors/registry/app/organisms/std-hr-portal.orb +444 -444
  48. package/behaviors/registry/app/organisms/std-iot-dashboard.orb +344 -344
  49. package/behaviors/registry/app/organisms/std-listings.orb +152 -157
  50. package/behaviors/registry/app/organisms/std-lms.orb +422 -422
  51. package/behaviors/registry/app/organisms/std-marketplace.orb +232 -234
  52. package/behaviors/registry/app/organisms/std-project-manager.orb +193 -193
  53. package/behaviors/registry/app/organisms/std-realtime-chat.orb +248 -248
  54. package/behaviors/registry/app/organisms/std-restaurant-pos.orb +142 -142
  55. package/behaviors/registry/app/organisms/std-social-feed.orb +156 -156
  56. package/behaviors/registry/app/organisms/std-subscription-billing.orb +210 -212
  57. package/behaviors/registry/app/organisms/std-survey.orb +148 -149
  58. package/behaviors/registry/app/organisms/std-trading-dashboard.orb +274 -274
  59. package/behaviors/registry/app/organisms/std-wiki.orb +131 -132
  60. package/behaviors/registry/core/molecules/std-form-advanced.orb +124 -124
  61. package/dist/behaviors/behaviors-registry.json +1 -1
  62. package/dist/behaviors/registry/app/atoms/std-branching-logic.orb +84 -84
  63. package/dist/behaviors/registry/app/atoms/std-checkin.orb +60 -60
  64. package/dist/behaviors/registry/app/atoms/std-dunning.orb +44 -44
  65. package/dist/behaviors/registry/app/atoms/std-event.orb +62 -62
  66. package/dist/behaviors/registry/app/atoms/std-flag.orb +72 -72
  67. package/dist/behaviors/registry/app/atoms/std-geosearch.orb +29 -29
  68. package/dist/behaviors/registry/app/atoms/std-image-upload-multi.orb +54 -56
  69. package/dist/behaviors/registry/app/atoms/std-invoice.orb +124 -124
  70. package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +45 -45
  71. package/dist/behaviors/registry/app/atoms/std-menu.orb +44 -44
  72. package/dist/behaviors/registry/app/atoms/std-mod-queue.orb +38 -38
  73. package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +56 -56
  74. package/dist/behaviors/registry/app/atoms/std-page-tree.orb +55 -55
  75. package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +66 -66
  76. package/dist/behaviors/registry/app/atoms/std-question-bank.orb +62 -62
  77. package/dist/behaviors/registry/app/atoms/std-rating-review.orb +67 -67
  78. package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +74 -74
  79. package/dist/behaviors/registry/app/atoms/std-response-collector.orb +44 -44
  80. package/dist/behaviors/registry/app/atoms/std-rich-editor.orb +68 -68
  81. package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +48 -46
  82. package/dist/behaviors/registry/app/atoms/std-saved-search.orb +72 -72
  83. package/dist/behaviors/registry/app/atoms/std-signature-capture.orb +86 -86
  84. package/dist/behaviors/registry/app/atoms/std-table-map.orb +46 -46
  85. package/dist/behaviors/registry/app/atoms/std-tag-taxonomy.orb +73 -92
  86. package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +42 -42
  87. package/dist/behaviors/registry/app/atoms/std-thread.orb +59 -59
  88. package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +72 -56
  89. package/dist/behaviors/registry/app/atoms/std-trial.orb +67 -67
  90. package/dist/behaviors/registry/app/atoms/std-version-history.orb +93 -93
  91. package/dist/behaviors/registry/app/atoms/std-vote.orb +40 -40
  92. package/dist/behaviors/registry/app/atoms/std-waitlist.orb +50 -50
  93. package/dist/behaviors/registry/app/atoms/std-work-order.orb +61 -61
  94. package/dist/behaviors/registry/app/organisms/std-api-gateway.orb +201 -201
  95. package/dist/behaviors/registry/app/organisms/std-booking-system.orb +676 -676
  96. package/dist/behaviors/registry/app/organisms/std-cicd-pipeline.orb +285 -285
  97. package/dist/behaviors/registry/app/organisms/std-cms.orb +265 -265
  98. package/dist/behaviors/registry/app/organisms/std-coding-academy.orb +179 -179
  99. package/dist/behaviors/registry/app/organisms/std-crm.orb +258 -258
  100. package/dist/behaviors/registry/app/organisms/std-devops-dashboard.orb +403 -403
  101. package/dist/behaviors/registry/app/organisms/std-ecommerce.orb +681 -681
  102. package/dist/behaviors/registry/app/organisms/std-event-ticketing.orb +193 -201
  103. package/dist/behaviors/registry/app/organisms/std-field-service.orb +170 -174
  104. package/dist/behaviors/registry/app/organisms/std-finance-tracker.orb +205 -205
  105. package/dist/behaviors/registry/app/organisms/std-forum.orb +127 -128
  106. package/dist/behaviors/registry/app/organisms/std-healthcare.orb +540 -540
  107. package/dist/behaviors/registry/app/organisms/std-helpdesk.orb +175 -175
  108. package/dist/behaviors/registry/app/organisms/std-hr-portal.orb +444 -444
  109. package/dist/behaviors/registry/app/organisms/std-iot-dashboard.orb +344 -344
  110. package/dist/behaviors/registry/app/organisms/std-listings.orb +152 -157
  111. package/dist/behaviors/registry/app/organisms/std-lms.orb +422 -422
  112. package/dist/behaviors/registry/app/organisms/std-marketplace.orb +232 -234
  113. package/dist/behaviors/registry/app/organisms/std-project-manager.orb +193 -193
  114. package/dist/behaviors/registry/app/organisms/std-realtime-chat.orb +248 -248
  115. package/dist/behaviors/registry/app/organisms/std-restaurant-pos.orb +142 -142
  116. package/dist/behaviors/registry/app/organisms/std-social-feed.orb +156 -156
  117. package/dist/behaviors/registry/app/organisms/std-subscription-billing.orb +210 -212
  118. package/dist/behaviors/registry/app/organisms/std-survey.orb +148 -149
  119. package/dist/behaviors/registry/app/organisms/std-trading-dashboard.orb +274 -274
  120. package/dist/behaviors/registry/app/organisms/std-wiki.orb +131 -132
  121. package/dist/behaviors/registry/core/molecules/std-form-advanced.orb +124 -124
  122. package/dist/behaviors-registry.json +1 -1
  123. package/package.json +7 -14
@@ -105,11 +105,16 @@
105
105
  "ref": "AppShell.traits.AppLayout",
106
106
  "name": "ServiceNodeAppLayout",
107
107
  "config": {
108
+ "searchEvent": "SERVICE_SEARCH",
109
+ "notifications": [],
110
+ "notificationClickEvent": "SERVICE_NOTIFICATIONS_OPEN",
111
+ "contentTrait": "@trait.ServiceNodeCatalog",
112
+ "appName": "DevOps Dashboard",
108
113
  "navItems": [
109
114
  {
110
- "href": "/services",
115
+ "label": "Services",
111
116
  "icon": "server",
112
- "label": "Services"
117
+ "href": "/services"
113
118
  },
114
119
  {
115
120
  "icon": "bell",
@@ -122,16 +127,11 @@
122
127
  "icon": "terminal"
123
128
  },
124
129
  {
130
+ "icon": "layout-list",
125
131
  "label": "Metrics",
126
- "href": "/metrics",
127
- "icon": "layout-list"
132
+ "href": "/metrics"
128
133
  }
129
- ],
130
- "contentTrait": "@trait.ServiceNodeCatalog",
131
- "appName": "DevOps Dashboard",
132
- "searchEvent": "SERVICE_SEARCH",
133
- "notifications": [],
134
- "notificationClickEvent": "SERVICE_NOTIFICATIONS_OPEN"
134
+ ]
135
135
  },
136
136
  "events": {
137
137
  "NOTIFY_CLICK": "SERVICE_NOTIFICATIONS_OPEN",
@@ -218,10 +218,11 @@
218
218
  "render-ui",
219
219
  "main",
220
220
  {
221
- "gap": "lg",
222
- "type": "stack",
223
221
  "children": [
224
222
  {
223
+ "align": "center",
224
+ "gap": "md",
225
+ "type": "stack",
225
226
  "direction": "horizontal",
226
227
  "children": [
227
228
  {
@@ -232,47 +233,44 @@
232
233
  "name": "server"
233
234
  },
234
235
  {
235
- "type": "typography",
236
236
  "content": "Services",
237
- "variant": "h2"
237
+ "variant": "h2",
238
+ "type": "typography"
238
239
  }
239
240
  ],
240
- "type": "stack",
241
241
  "align": "center",
242
+ "type": "stack",
242
243
  "gap": "sm"
243
244
  },
244
245
  {
245
246
  "gap": "sm",
246
- "type": "stack",
247
247
  "children": [
248
248
  {
249
+ "label": "Register Service",
249
250
  "action": "CREATE",
250
- "type": "button",
251
- "icon": "plus",
252
251
  "variant": "primary",
253
- "label": "Register Service"
252
+ "type": "button",
253
+ "icon": "plus"
254
254
  }
255
255
  ],
256
- "direction": "horizontal"
256
+ "direction": "horizontal",
257
+ "type": "stack"
257
258
  }
258
259
  ],
259
- "type": "stack",
260
- "justify": "between",
261
- "gap": "md",
262
- "align": "center"
260
+ "justify": "between"
263
261
  },
264
262
  {
265
263
  "type": "divider"
266
264
  },
267
265
  {
266
+ "direction": "horizontal",
268
267
  "gap": "md",
268
+ "type": "stack",
269
269
  "align": "center",
270
270
  "children": [
271
271
  "@trait.ServiceNodeSearch",
272
272
  "@trait.ServiceNodeFilter"
273
- ],
274
- "type": "stack",
275
- "direction": "horizontal"
273
+ ]
276
274
  },
277
275
  "@trait.ServiceNodeStats",
278
276
  "@trait.ServiceNodeGraphs",
@@ -281,29 +279,29 @@
281
279
  },
282
280
  {
283
281
  "direction": "horizontal",
282
+ "type": "stack",
284
283
  "gap": "sm",
285
284
  "align": "center",
286
285
  "children": [
287
286
  {
288
- "type": "status-dot",
289
- "pulse": false,
287
+ "status": "online",
290
288
  "label": "Healthy",
291
- "status": "online"
289
+ "type": "status-dot",
290
+ "pulse": false
292
291
  },
293
292
  {
294
293
  "status": "warning",
295
- "type": "status-dot",
296
294
  "label": "Degraded",
295
+ "type": "status-dot",
297
296
  "pulse": false
298
297
  },
299
298
  {
300
- "status": "critical",
301
- "type": "status-dot",
302
299
  "label": "Down",
303
- "pulse": true
300
+ "pulse": true,
301
+ "status": "critical",
302
+ "type": "status-dot"
304
303
  }
305
- ],
306
- "type": "stack"
304
+ ]
307
305
  },
308
306
  "@trait.ServiceNodeBrowseList",
309
307
  {
@@ -311,6 +309,8 @@
311
309
  },
312
310
  "@trait.ServiceNodeCircuitBreaker"
313
311
  ],
312
+ "type": "stack",
313
+ "gap": "lg",
314
314
  "direction": "vertical"
315
315
  }
316
316
  ]
@@ -330,34 +330,34 @@
330
330
  "render-ui",
331
331
  "main",
332
332
  {
333
- "type": "stack",
334
- "direction": "vertical",
333
+ "className": "py-8",
335
334
  "children": [
336
335
  {
337
336
  "type": "icon",
338
337
  "name": "bell"
339
338
  },
340
339
  {
340
+ "variant": "h3",
341
341
  "type": "typography",
342
- "content": "No notifications",
343
- "variant": "h3"
342
+ "content": "No notifications"
344
343
  },
345
344
  {
346
- "content": "You're all caught up.",
347
345
  "variant": "caption",
348
- "type": "typography",
349
- "color": "muted"
346
+ "color": "muted",
347
+ "content": "You're all caught up.",
348
+ "type": "typography"
350
349
  },
351
350
  {
352
- "label": "Back to services",
353
351
  "action": "INIT",
354
- "type": "button",
355
- "variant": "ghost"
352
+ "label": "Back to services",
353
+ "variant": "ghost",
354
+ "type": "button"
356
355
  }
357
356
  ],
357
+ "gap": "md",
358
358
  "align": "center",
359
- "className": "py-8",
360
- "gap": "md"
359
+ "direction": "vertical",
360
+ "type": "stack"
361
361
  }
362
362
  ]
363
363
  ]
@@ -382,24 +382,24 @@
382
382
  "filters": [
383
383
  {
384
384
  "label": "Status",
385
+ "filterType": "select",
385
386
  "options": [
386
387
  "healthy",
387
388
  "degraded",
388
389
  "down"
389
390
  ],
390
- "field": "status",
391
- "filterType": "select"
391
+ "field": "status"
392
392
  },
393
393
  {
394
+ "field": "region",
394
395
  "options": [
395
396
  "us-east",
396
397
  "us-west",
397
398
  "eu-central",
398
399
  "ap-south"
399
400
  ],
400
- "field": "region",
401
- "label": "Region",
402
- "filterType": "select"
401
+ "filterType": "select",
402
+ "label": "Region"
403
403
  }
404
404
  ]
405
405
  }
@@ -408,18 +408,16 @@
408
408
  "ref": "Stats.traits.StatsItemStats",
409
409
  "name": "ServiceNodeStats",
410
410
  "config": {
411
+ "title": "Services",
411
412
  "metrics": [
412
413
  {
414
+ "aggregation": "count",
413
415
  "variant": "primary",
414
- "label": "Total",
415
- "format": "number",
416
416
  "icon": "server",
417
- "aggregation": "count"
417
+ "label": "Total",
418
+ "format": "number"
418
419
  },
419
420
  {
420
- "icon": "check-circle",
421
- "label": "Healthy",
422
- "variant": "success",
423
421
  "filter": [
424
422
  "fn",
425
423
  "row",
@@ -429,13 +427,15 @@
429
427
  "healthy"
430
428
  ]
431
429
  ],
430
+ "label": "Healthy",
431
+ "icon": "check-circle",
432
432
  "aggregation": "count",
433
+ "variant": "success",
433
434
  "format": "number"
434
435
  },
435
436
  {
436
- "label": "Degraded",
437
437
  "icon": "alert-circle",
438
- "format": "number",
438
+ "label": "Degraded",
439
439
  "filter": [
440
440
  "fn",
441
441
  "row",
@@ -446,14 +446,10 @@
446
446
  ]
447
447
  ],
448
448
  "aggregation": "count",
449
- "variant": "warning"
449
+ "variant": "warning",
450
+ "format": "number"
450
451
  },
451
452
  {
452
- "label": "Down",
453
- "aggregation": "count",
454
- "icon": "alert-triangle",
455
- "variant": "danger",
456
- "format": "number",
457
453
  "filter": [
458
454
  "fn",
459
455
  "row",
@@ -462,10 +458,14 @@
462
458
  "@row.status",
463
459
  "down"
464
460
  ]
465
- ]
461
+ ],
462
+ "icon": "alert-triangle",
463
+ "variant": "danger",
464
+ "aggregation": "count",
465
+ "label": "Down",
466
+ "format": "number"
466
467
  }
467
- ],
468
- "title": "Services"
468
+ ]
469
469
  },
470
470
  "listens": [
471
471
  {
@@ -484,11 +484,11 @@
484
484
  "config": {
485
485
  "height": 240.0,
486
486
  "showLegend": true,
487
- "categoryField": "status",
487
+ "chartType": "pie",
488
488
  "subtitle": "Health distribution across the fleet",
489
- "aggregation": "count",
489
+ "categoryField": "status",
490
490
  "title": "Services by Status",
491
- "chartType": "pie"
491
+ "aggregation": "count"
492
492
  },
493
493
  "listens": [
494
494
  {
@@ -509,8 +509,8 @@
509
509
  "gap": "sm",
510
510
  "fields": [
511
511
  {
512
- "name": "name",
513
512
  "variant": "h4",
513
+ "name": "name",
514
514
  "icon": "server"
515
515
  },
516
516
  {
@@ -518,33 +518,33 @@
518
518
  "variant": "badge"
519
519
  },
520
520
  {
521
- "name": "region",
522
- "variant": "body"
521
+ "variant": "body",
522
+ "name": "region"
523
523
  },
524
524
  {
525
+ "name": "lastChecked",
525
526
  "variant": "caption",
526
- "format": "date",
527
- "name": "lastChecked"
527
+ "format": "date"
528
528
  }
529
529
  ],
530
+ "cols": 1.0,
530
531
  "itemActions": [
531
532
  {
532
- "label": "View",
533
+ "event": "VIEW",
533
534
  "variant": "ghost",
534
- "event": "VIEW"
535
+ "label": "View"
535
536
  },
536
537
  {
537
538
  "variant": "ghost",
538
- "label": "Edit",
539
- "event": "EDIT"
539
+ "event": "EDIT",
540
+ "label": "Edit"
540
541
  },
541
542
  {
543
+ "label": "Delete",
542
544
  "event": "DELETE",
543
- "variant": "danger",
544
- "label": "Delete"
545
+ "variant": "danger"
545
546
  }
546
- ],
547
- "cols": 1.0
547
+ ]
548
548
  },
549
549
  "listens": [
550
550
  {
@@ -594,8 +594,6 @@
594
594
  "name": "ServiceNodeCreate",
595
595
  "linkedEntity": "ServiceNode",
596
596
  "config": {
597
- "mode": "create",
598
- "title": "Register Service",
599
597
  "fields": [
600
598
  "name",
601
599
  "status",
@@ -603,7 +601,9 @@
603
601
  "url",
604
602
  "threshold"
605
603
  ],
606
- "icon": "plus-circle"
604
+ "icon": "plus-circle",
605
+ "title": "Register Service",
606
+ "mode": "create"
607
607
  },
608
608
  "events": {
609
609
  "OPEN": "CREATE"
@@ -624,9 +624,9 @@
624
624
  "name": "ServiceNodeEdit",
625
625
  "linkedEntity": "ServiceNode",
626
626
  "config": {
627
- "mode": "edit",
628
627
  "icon": "edit",
629
628
  "title": "Edit Service",
629
+ "mode": "edit",
630
630
  "fields": [
631
631
  "name",
632
632
  "status",
@@ -654,8 +654,6 @@
654
654
  "name": "ServiceNodeView",
655
655
  "linkedEntity": "ServiceNode",
656
656
  "config": {
657
- "icon": "eye",
658
- "title": "View Service",
659
657
  "fields": [
660
658
  "name",
661
659
  "status",
@@ -666,7 +664,9 @@
666
664
  "successCount",
667
665
  "threshold"
668
666
  ],
669
- "mode": "edit"
667
+ "mode": "edit",
668
+ "title": "View Service",
669
+ "icon": "eye"
670
670
  },
671
671
  "events": {
672
672
  "OPEN": "VIEW"
@@ -687,14 +687,14 @@
687
687
  "name": "ServiceNodeDelete",
688
688
  "linkedEntity": "ServiceNode",
689
689
  "config": {
690
- "confirmLabel": "Delete",
691
690
  "icon": "alert-triangle",
692
691
  "title": "Delete Service",
693
- "alertMessage": "This action cannot be undone."
692
+ "alertMessage": "This action cannot be undone.",
693
+ "confirmLabel": "Delete"
694
694
  },
695
695
  "events": {
696
- "REQUEST": "DELETE",
697
- "CONFIRM": "CONFIRM_DELETE"
696
+ "CONFIRM": "CONFIRM_DELETE",
697
+ "REQUEST": "DELETE"
698
698
  },
699
699
  "listens": [
700
700
  {
@@ -1016,70 +1016,70 @@
1016
1016
  "render-ui",
1017
1017
  "main",
1018
1018
  {
1019
- "direction": "vertical",
1020
1019
  "children": [
1021
1020
  {
1022
- "gap": "md",
1023
1021
  "direction": "horizontal",
1022
+ "align": "center",
1023
+ "justify": "between",
1024
1024
  "children": [
1025
1025
  {
1026
- "type": "stack",
1027
- "direction": "horizontal",
1028
- "align": "center",
1029
1026
  "children": [
1030
1027
  {
1031
1028
  "name": "shield-check",
1032
1029
  "type": "icon"
1033
1030
  },
1034
1031
  {
1032
+ "variant": "h3",
1035
1033
  "type": "typography",
1036
- "content": "Circuit Breaker",
1037
- "variant": "h3"
1034
+ "content": "Circuit Breaker"
1038
1035
  }
1039
1036
  ],
1037
+ "type": "stack",
1038
+ "direction": "horizontal",
1039
+ "align": "center",
1040
1040
  "gap": "md"
1041
1041
  },
1042
1042
  {
1043
- "type": "status-dot",
1044
1043
  "label": "Circuit Closed",
1045
1044
  "pulse": false,
1046
- "status": "online"
1045
+ "status": "online",
1046
+ "type": "status-dot"
1047
1047
  }
1048
1048
  ],
1049
- "align": "center",
1050
- "justify": "between",
1051
- "type": "stack"
1049
+ "type": "stack",
1050
+ "gap": "md"
1052
1051
  },
1053
1052
  {
1053
+ "type": "alert",
1054
1054
  "variant": "success",
1055
- "message": "All requests are being processed.",
1056
- "type": "alert"
1055
+ "message": "All requests are being processed."
1057
1056
  },
1058
1057
  {
1059
1058
  "type": "simple-grid",
1060
1059
  "cols": 2.0,
1061
1060
  "children": [
1062
1061
  {
1063
- "value": "@entity.failureCount",
1064
1062
  "label": "Failures",
1063
+ "value": "@entity.failureCount",
1065
1064
  "type": "stat-display"
1066
1065
  },
1067
1066
  {
1068
1067
  "label": "Successes",
1069
- "value": "@entity.successCount",
1070
- "type": "stat-display"
1068
+ "type": "stat-display",
1069
+ "value": "@entity.successCount"
1071
1070
  }
1072
1071
  ]
1073
1072
  },
1074
1073
  {
1075
- "value": "@entity.failureCount",
1076
- "type": "meter",
1077
1074
  "max": "@entity.threshold",
1075
+ "type": "meter",
1076
+ "value": "@entity.failureCount",
1078
1077
  "min": 0.0
1079
1078
  }
1080
1079
  ],
1080
+ "type": "stack",
1081
1081
  "gap": "lg",
1082
- "type": "stack"
1082
+ "direction": "vertical"
1083
1083
  }
1084
1084
  ]
1085
1085
  ]
@@ -1093,77 +1093,77 @@
1093
1093
  "render-ui",
1094
1094
  "main",
1095
1095
  {
1096
+ "direction": "vertical",
1097
+ "gap": "lg",
1098
+ "type": "stack",
1096
1099
  "children": [
1097
1100
  {
1098
- "justify": "between",
1101
+ "type": "stack",
1099
1102
  "children": [
1100
1103
  {
1101
- "type": "stack",
1102
- "gap": "md",
1103
- "align": "center",
1104
- "direction": "horizontal",
1105
1104
  "children": [
1106
1105
  {
1107
- "name": "alert-triangle",
1108
- "type": "icon"
1106
+ "type": "icon",
1107
+ "name": "alert-triangle"
1109
1108
  },
1110
1109
  {
1111
- "variant": "h3",
1112
1110
  "type": "typography",
1113
- "content": "Circuit Breaker"
1111
+ "content": "Circuit Breaker",
1112
+ "variant": "h3"
1114
1113
  }
1115
- ]
1114
+ ],
1115
+ "align": "center",
1116
+ "type": "stack",
1117
+ "direction": "horizontal",
1118
+ "gap": "md"
1116
1119
  },
1117
1120
  {
1118
- "type": "status-dot",
1121
+ "pulse": true,
1119
1122
  "status": "critical",
1120
- "label": "Circuit Open",
1121
- "pulse": true
1123
+ "type": "status-dot",
1124
+ "label": "Circuit Open"
1122
1125
  }
1123
1126
  ],
1124
- "direction": "horizontal",
1125
- "align": "center",
1127
+ "justify": "between",
1126
1128
  "gap": "md",
1127
- "type": "stack"
1129
+ "direction": "horizontal",
1130
+ "align": "center"
1128
1131
  },
1129
1132
  {
1130
- "type": "alert",
1131
1133
  "variant": "error",
1132
- "message": "Circuit is open. Requests are being rejected to prevent cascading failures."
1134
+ "message": "Circuit is open. Requests are being rejected to prevent cascading failures.",
1135
+ "type": "alert"
1133
1136
  },
1134
1137
  {
1138
+ "cols": 2.0,
1135
1139
  "type": "simple-grid",
1136
1140
  "children": [
1137
1141
  {
1138
1142
  "value": "@entity.failureCount",
1139
- "type": "stat-display",
1140
- "label": "Failures"
1143
+ "label": "Failures",
1144
+ "type": "stat-display"
1141
1145
  },
1142
1146
  {
1143
- "type": "stat-display",
1147
+ "label": "Successes",
1144
1148
  "value": "@entity.successCount",
1145
- "label": "Successes"
1149
+ "type": "stat-display"
1146
1150
  }
1147
- ],
1148
- "cols": 2.0
1151
+ ]
1149
1152
  },
1150
1153
  {
1151
- "max": "@entity.threshold",
1152
- "type": "meter",
1154
+ "min": 0.0,
1153
1155
  "value": "@entity.failureCount",
1154
- "min": 0.0
1156
+ "type": "meter",
1157
+ "max": "@entity.threshold"
1155
1158
  },
1156
1159
  {
1157
- "action": "RESET",
1158
- "type": "button",
1159
1160
  "variant": "ghost",
1161
+ "action": "RESET",
1160
1162
  "icon": "rotate-ccw",
1161
- "label": "Reset"
1163
+ "label": "Reset",
1164
+ "type": "button"
1162
1165
  }
1163
- ],
1164
- "gap": "lg",
1165
- "type": "stack",
1166
- "direction": "vertical"
1166
+ ]
1167
1167
  }
1168
1168
  ]
1169
1169
  ]
@@ -1177,17 +1177,11 @@
1177
1177
  "render-ui",
1178
1178
  "main",
1179
1179
  {
1180
- "gap": "lg",
1181
- "type": "stack",
1182
- "direction": "vertical",
1183
1180
  "children": [
1184
1181
  {
1185
- "gap": "md",
1186
- "type": "stack",
1187
1182
  "children": [
1188
1183
  {
1189
1184
  "type": "stack",
1190
- "direction": "horizontal",
1191
1185
  "gap": "md",
1192
1186
  "children": [
1193
1187
  {
@@ -1195,52 +1189,58 @@
1195
1189
  "name": "shield-check"
1196
1190
  },
1197
1191
  {
1198
- "content": "Circuit Breaker",
1199
1192
  "type": "typography",
1193
+ "content": "Circuit Breaker",
1200
1194
  "variant": "h3"
1201
1195
  }
1202
1196
  ],
1203
- "align": "center"
1197
+ "align": "center",
1198
+ "direction": "horizontal"
1204
1199
  },
1205
1200
  {
1206
- "type": "status-dot",
1207
1201
  "label": "Circuit Closed",
1202
+ "type": "status-dot",
1208
1203
  "status": "online",
1209
1204
  "pulse": false
1210
1205
  }
1211
1206
  ],
1207
+ "gap": "md",
1208
+ "justify": "between",
1212
1209
  "direction": "horizontal",
1213
- "align": "center",
1214
- "justify": "between"
1210
+ "type": "stack",
1211
+ "align": "center"
1215
1212
  },
1216
1213
  {
1217
- "type": "alert",
1218
1214
  "variant": "success",
1219
- "message": "All requests are being processed."
1215
+ "message": "All requests are being processed.",
1216
+ "type": "alert"
1220
1217
  },
1221
1218
  {
1219
+ "cols": 2.0,
1220
+ "type": "simple-grid",
1222
1221
  "children": [
1223
1222
  {
1223
+ "value": "@entity.failureCount",
1224
1224
  "type": "stat-display",
1225
- "label": "Failures",
1226
- "value": "@entity.failureCount"
1225
+ "label": "Failures"
1227
1226
  },
1228
1227
  {
1229
- "type": "stat-display",
1230
1228
  "value": "@entity.successCount",
1231
- "label": "Successes"
1229
+ "label": "Successes",
1230
+ "type": "stat-display"
1232
1231
  }
1233
- ],
1234
- "cols": 2.0,
1235
- "type": "simple-grid"
1232
+ ]
1236
1233
  },
1237
1234
  {
1235
+ "min": 0.0,
1238
1236
  "type": "meter",
1239
1237
  "value": "@entity.failureCount",
1240
- "max": "@entity.threshold",
1241
- "min": 0.0
1238
+ "max": "@entity.threshold"
1242
1239
  }
1243
- ]
1240
+ ],
1241
+ "type": "stack",
1242
+ "direction": "vertical",
1243
+ "gap": "lg"
1244
1244
  }
1245
1245
  ]
1246
1246
  ]
@@ -1254,49 +1254,49 @@
1254
1254
  "render-ui",
1255
1255
  "main",
1256
1256
  {
1257
- "gap": "lg",
1258
1257
  "direction": "vertical",
1258
+ "gap": "lg",
1259
+ "type": "stack",
1259
1260
  "children": [
1260
1261
  {
1261
- "direction": "horizontal",
1262
- "type": "stack",
1262
+ "align": "center",
1263
+ "justify": "between",
1263
1264
  "children": [
1264
1265
  {
1265
1266
  "direction": "horizontal",
1266
- "type": "stack",
1267
1267
  "align": "center",
1268
- "gap": "md",
1269
1268
  "children": [
1270
1269
  {
1271
1270
  "type": "icon",
1272
1271
  "name": "activity"
1273
1272
  },
1274
1273
  {
1275
- "type": "typography",
1274
+ "content": "Circuit Breaker",
1276
1275
  "variant": "h3",
1277
- "content": "Circuit Breaker"
1276
+ "type": "typography"
1278
1277
  }
1279
- ]
1278
+ ],
1279
+ "gap": "md",
1280
+ "type": "stack"
1280
1281
  },
1281
1282
  {
1282
- "label": "Half-Open",
1283
+ "status": "warning",
1283
1284
  "type": "status-dot",
1284
- "pulse": true,
1285
- "status": "warning"
1285
+ "label": "Half-Open",
1286
+ "pulse": true
1286
1287
  }
1287
1288
  ],
1288
- "align": "center",
1289
- "justify": "between",
1290
- "gap": "md"
1289
+ "gap": "md",
1290
+ "type": "stack",
1291
+ "direction": "horizontal"
1291
1292
  },
1292
1293
  {
1294
+ "variant": "warning",
1293
1295
  "message": "Testing recovery. Limited requests are being allowed through.",
1294
- "type": "alert",
1295
- "variant": "warning"
1296
+ "type": "alert"
1296
1297
  },
1297
1298
  {
1298
1299
  "cols": 2.0,
1299
- "type": "simple-grid",
1300
1300
  "children": [
1301
1301
  {
1302
1302
  "type": "stat-display",
@@ -1304,14 +1304,14 @@
1304
1304
  "value": "@entity.failureCount"
1305
1305
  },
1306
1306
  {
1307
+ "type": "stat-display",
1307
1308
  "label": "Successes",
1308
- "value": "@entity.successCount",
1309
- "type": "stat-display"
1309
+ "value": "@entity.successCount"
1310
1310
  }
1311
- ]
1311
+ ],
1312
+ "type": "simple-grid"
1312
1313
  }
1313
- ],
1314
- "type": "stack"
1314
+ ]
1315
1315
  }
1316
1316
  ]
1317
1317
  ]
@@ -1325,15 +1325,16 @@
1325
1325
  "render-ui",
1326
1326
  "main",
1327
1327
  {
1328
- "type": "stack",
1329
1328
  "direction": "vertical",
1329
+ "type": "stack",
1330
1330
  "gap": "lg",
1331
1331
  "children": [
1332
1332
  {
1333
- "gap": "md",
1334
1333
  "children": [
1335
1334
  {
1335
+ "type": "stack",
1336
1336
  "direction": "horizontal",
1337
+ "gap": "md",
1337
1338
  "children": [
1338
1339
  {
1339
1340
  "name": "shield-check",
@@ -1341,52 +1342,51 @@
1341
1342
  },
1342
1343
  {
1343
1344
  "variant": "h3",
1344
- "content": "Circuit Breaker",
1345
- "type": "typography"
1345
+ "type": "typography",
1346
+ "content": "Circuit Breaker"
1346
1347
  }
1347
1348
  ],
1348
- "type": "stack",
1349
- "gap": "md",
1350
1349
  "align": "center"
1351
1350
  },
1352
1351
  {
1353
- "label": "Circuit Closed",
1354
- "pulse": false,
1355
1352
  "status": "online",
1356
- "type": "status-dot"
1353
+ "type": "status-dot",
1354
+ "label": "Circuit Closed",
1355
+ "pulse": false
1357
1356
  }
1358
1357
  ],
1359
1358
  "direction": "horizontal",
1360
- "align": "center",
1361
1359
  "type": "stack",
1360
+ "align": "center",
1361
+ "gap": "md",
1362
1362
  "justify": "between"
1363
1363
  },
1364
1364
  {
1365
1365
  "message": "All requests are being processed.",
1366
- "type": "alert",
1367
- "variant": "success"
1366
+ "variant": "success",
1367
+ "type": "alert"
1368
1368
  },
1369
1369
  {
1370
+ "type": "simple-grid",
1371
+ "cols": 2.0,
1370
1372
  "children": [
1371
1373
  {
1372
- "type": "stat-display",
1373
1374
  "label": "Failures",
1374
- "value": "@entity.failureCount"
1375
+ "value": "@entity.failureCount",
1376
+ "type": "stat-display"
1375
1377
  },
1376
1378
  {
1379
+ "type": "stat-display",
1377
1380
  "value": "@entity.successCount",
1378
- "label": "Successes",
1379
- "type": "stat-display"
1381
+ "label": "Successes"
1380
1382
  }
1381
- ],
1382
- "type": "simple-grid",
1383
- "cols": 2.0
1383
+ ]
1384
1384
  },
1385
1385
  {
1386
- "min": 0.0,
1387
- "value": "@entity.failureCount",
1388
1386
  "max": "@entity.threshold",
1389
- "type": "meter"
1387
+ "type": "meter",
1388
+ "min": 0.0,
1389
+ "value": "@entity.failureCount"
1390
1390
  }
1391
1391
  ]
1392
1392
  }
@@ -1402,69 +1402,69 @@
1402
1402
  "render-ui",
1403
1403
  "main",
1404
1404
  {
1405
+ "gap": "lg",
1406
+ "direction": "vertical",
1405
1407
  "children": [
1406
1408
  {
1409
+ "type": "stack",
1410
+ "direction": "horizontal",
1407
1411
  "align": "center",
1408
- "justify": "between",
1409
1412
  "children": [
1410
1413
  {
1411
- "gap": "md",
1412
- "align": "center",
1413
1414
  "direction": "horizontal",
1415
+ "align": "center",
1414
1416
  "children": [
1415
1417
  {
1416
1418
  "type": "icon",
1417
1419
  "name": "shield-check"
1418
1420
  },
1419
1421
  {
1420
- "type": "typography",
1422
+ "content": "Circuit Breaker",
1421
1423
  "variant": "h3",
1422
- "content": "Circuit Breaker"
1424
+ "type": "typography"
1423
1425
  }
1424
1426
  ],
1427
+ "gap": "md",
1425
1428
  "type": "stack"
1426
1429
  },
1427
1430
  {
1428
- "status": "online",
1429
- "pulse": false,
1430
1431
  "type": "status-dot",
1431
- "label": "Circuit Closed"
1432
+ "pulse": false,
1433
+ "label": "Circuit Closed",
1434
+ "status": "online"
1432
1435
  }
1433
1436
  ],
1434
- "gap": "md",
1435
- "direction": "horizontal",
1436
- "type": "stack"
1437
+ "justify": "between",
1438
+ "gap": "md"
1437
1439
  },
1438
1440
  {
1439
- "type": "alert",
1441
+ "variant": "success",
1440
1442
  "message": "All requests are being processed.",
1441
- "variant": "success"
1443
+ "type": "alert"
1442
1444
  },
1443
1445
  {
1444
- "cols": 2.0,
1445
- "type": "simple-grid",
1446
1446
  "children": [
1447
1447
  {
1448
- "value": "@entity.failureCount",
1449
1448
  "label": "Failures",
1450
- "type": "stat-display"
1449
+ "type": "stat-display",
1450
+ "value": "@entity.failureCount"
1451
1451
  },
1452
1452
  {
1453
1453
  "type": "stat-display",
1454
1454
  "label": "Successes",
1455
1455
  "value": "@entity.successCount"
1456
1456
  }
1457
- ]
1457
+ ],
1458
+ "type": "simple-grid",
1459
+ "cols": 2.0
1458
1460
  },
1459
1461
  {
1460
- "type": "meter",
1461
1462
  "max": "@entity.threshold",
1462
1463
  "value": "@entity.failureCount",
1464
+ "type": "meter",
1463
1465
  "min": 0.0
1464
1466
  }
1465
1467
  ],
1466
- "direction": "vertical",
1467
- "gap": "lg",
1468
1468
  "type": "stack"
1469
1469
  }
1470
1470
  ]
@@ -1481,30 +1481,31 @@
1481
1481
  {
1482
1482
  "type": "stack",
1483
1483
  "direction": "vertical",
1484
+ "gap": "lg",
1484
1485
  "children": [
1485
1486
  {
1486
- "gap": "md",
1487
1487
  "type": "stack",
1488
+ "gap": "md",
1488
1489
  "direction": "horizontal",
1489
1490
  "align": "center",
1490
1491
  "justify": "between",
1491
1492
  "children": [
1492
1493
  {
1493
- "align": "center",
1494
1494
  "children": [
1495
1495
  {
1496
- "type": "icon",
1497
- "name": "alert-triangle"
1496
+ "name": "alert-triangle",
1497
+ "type": "icon"
1498
1498
  },
1499
1499
  {
1500
+ "type": "typography",
1500
1501
  "content": "Circuit Breaker",
1501
- "variant": "h3",
1502
- "type": "typography"
1502
+ "variant": "h3"
1503
1503
  }
1504
1504
  ],
1505
- "direction": "horizontal",
1506
1505
  "type": "stack",
1507
- "gap": "md"
1506
+ "gap": "md",
1507
+ "direction": "horizontal",
1508
+ "align": "center"
1508
1509
  },
1509
1510
  {
1510
1511
  "pulse": true,
@@ -1516,40 +1517,39 @@
1516
1517
  },
1517
1518
  {
1518
1519
  "variant": "error",
1519
- "message": "Circuit is open. Requests are being rejected to prevent cascading failures.",
1520
- "type": "alert"
1520
+ "type": "alert",
1521
+ "message": "Circuit is open. Requests are being rejected to prevent cascading failures."
1521
1522
  },
1522
1523
  {
1523
1524
  "cols": 2.0,
1524
1525
  "children": [
1525
1526
  {
1526
1527
  "label": "Failures",
1527
- "type": "stat-display",
1528
- "value": "@entity.failureCount"
1528
+ "value": "@entity.failureCount",
1529
+ "type": "stat-display"
1529
1530
  },
1530
1531
  {
1532
+ "label": "Successes",
1531
1533
  "type": "stat-display",
1532
- "value": "@entity.successCount",
1533
- "label": "Successes"
1534
+ "value": "@entity.successCount"
1534
1535
  }
1535
1536
  ],
1536
1537
  "type": "simple-grid"
1537
1538
  },
1538
1539
  {
1539
- "max": "@entity.threshold",
1540
+ "type": "meter",
1540
1541
  "value": "@entity.failureCount",
1541
- "min": 0.0,
1542
- "type": "meter"
1542
+ "max": "@entity.threshold",
1543
+ "min": 0.0
1543
1544
  },
1544
1545
  {
1545
- "label": "Reset",
1546
+ "variant": "ghost",
1546
1547
  "type": "button",
1547
1548
  "action": "RESET",
1548
- "variant": "ghost",
1549
+ "label": "Reset",
1549
1550
  "icon": "rotate-ccw"
1550
1551
  }
1551
- ],
1552
- "gap": "lg"
1552
+ ]
1553
1553
  }
1554
1554
  ]
1555
1555
  ]
@@ -1563,32 +1563,31 @@
1563
1563
  "render-ui",
1564
1564
  "main",
1565
1565
  {
1566
+ "type": "stack",
1566
1567
  "direction": "vertical",
1567
1568
  "gap": "lg",
1568
- "type": "stack",
1569
1569
  "children": [
1570
1570
  {
1571
- "type": "stack",
1572
1571
  "align": "center",
1573
- "direction": "horizontal",
1574
1572
  "justify": "between",
1573
+ "gap": "md",
1575
1574
  "children": [
1576
1575
  {
1577
- "direction": "horizontal",
1578
- "gap": "md",
1579
1576
  "type": "stack",
1580
- "align": "center",
1577
+ "gap": "md",
1581
1578
  "children": [
1582
1579
  {
1583
- "name": "shield-check",
1584
- "type": "icon"
1580
+ "type": "icon",
1581
+ "name": "shield-check"
1585
1582
  },
1586
1583
  {
1584
+ "type": "typography",
1587
1585
  "content": "Circuit Breaker",
1588
- "variant": "h3",
1589
- "type": "typography"
1586
+ "variant": "h3"
1590
1587
  }
1591
- ]
1588
+ ],
1589
+ "align": "center",
1590
+ "direction": "horizontal"
1592
1591
  },
1593
1592
  {
1594
1593
  "status": "online",
@@ -1597,7 +1596,8 @@
1597
1596
  "label": "Circuit Closed"
1598
1597
  }
1599
1598
  ],
1600
- "gap": "md"
1599
+ "type": "stack",
1600
+ "direction": "horizontal"
1601
1601
  },
1602
1602
  {
1603
1603
  "variant": "success",
@@ -1609,9 +1609,9 @@
1609
1609
  "cols": 2.0,
1610
1610
  "children": [
1611
1611
  {
1612
- "value": "@entity.failureCount",
1612
+ "label": "Failures",
1613
1613
  "type": "stat-display",
1614
- "label": "Failures"
1614
+ "value": "@entity.failureCount"
1615
1615
  },
1616
1616
  {
1617
1617
  "type": "stat-display",
@@ -1621,10 +1621,10 @@
1621
1621
  ]
1622
1622
  },
1623
1623
  {
1624
- "type": "meter",
1625
- "value": "@entity.failureCount",
1624
+ "max": "@entity.threshold",
1626
1625
  "min": 0.0,
1627
- "max": "@entity.threshold"
1626
+ "type": "meter",
1627
+ "value": "@entity.failureCount"
1628
1628
  }
1629
1629
  ]
1630
1630
  }
@@ -1755,18 +1755,16 @@
1755
1755
  "name": "AlertMetricAppLayout",
1756
1756
  "linkedEntity": "AlertMetric",
1757
1757
  "config": {
1758
- "contentTrait": "@trait.AlertCatalog",
1759
- "appName": "DevOps Dashboard",
1760
1758
  "navItems": [
1761
1759
  {
1762
1760
  "label": "Services",
1763
- "href": "/services",
1764
- "icon": "server"
1761
+ "icon": "server",
1762
+ "href": "/services"
1765
1763
  },
1766
1764
  {
1767
1765
  "label": "Alerts",
1768
- "href": "/alerts",
1769
- "icon": "bell"
1766
+ "icon": "bell",
1767
+ "href": "/alerts"
1770
1768
  },
1771
1769
  {
1772
1770
  "label": "Logs",
@@ -1774,18 +1772,20 @@
1774
1772
  "icon": "terminal"
1775
1773
  },
1776
1774
  {
1775
+ "href": "/metrics",
1777
1776
  "label": "Metrics",
1778
- "icon": "layout-list",
1779
- "href": "/metrics"
1777
+ "icon": "layout-list"
1780
1778
  }
1781
1779
  ],
1782
- "searchEvent": "ALERT_SEARCH",
1780
+ "appName": "DevOps Dashboard",
1781
+ "notifications": [],
1783
1782
  "notificationClickEvent": "ALERT_NOTIFICATIONS_OPEN",
1784
- "notifications": []
1783
+ "searchEvent": "ALERT_SEARCH",
1784
+ "contentTrait": "@trait.AlertCatalog"
1785
1785
  },
1786
1786
  "events": {
1787
- "NOTIFY_CLICK": "ALERT_NOTIFICATIONS_OPEN",
1788
- "SEARCH": "ALERT_SEARCH"
1787
+ "SEARCH": "ALERT_SEARCH",
1788
+ "NOTIFY_CLICK": "ALERT_NOTIFICATIONS_OPEN"
1789
1789
  }
1790
1790
  },
1791
1791
  {
@@ -1830,54 +1830,54 @@
1830
1830
  "render-ui",
1831
1831
  "main",
1832
1832
  {
1833
+ "gap": "lg",
1834
+ "direction": "vertical",
1833
1835
  "children": [
1834
1836
  {
1835
- "justify": "between",
1837
+ "align": "center",
1838
+ "type": "stack",
1836
1839
  "children": [
1837
1840
  {
1841
+ "align": "center",
1838
1842
  "direction": "horizontal",
1839
1843
  "type": "stack",
1844
+ "gap": "sm",
1840
1845
  "children": [
1841
1846
  {
1842
- "name": "bell",
1843
- "type": "icon"
1847
+ "type": "icon",
1848
+ "name": "bell"
1844
1849
  },
1845
1850
  {
1846
- "content": "Alerts",
1847
1851
  "type": "typography",
1852
+ "content": "Alerts",
1848
1853
  "variant": "h2"
1849
1854
  }
1850
- ],
1851
- "gap": "sm",
1852
- "align": "center"
1855
+ ]
1853
1856
  },
1854
1857
  {
1855
- "direction": "horizontal",
1856
1858
  "children": [
1857
1859
  {
1860
+ "variant": "primary",
1861
+ "type": "button",
1858
1862
  "label": "New Alert",
1859
1863
  "action": "CREATE",
1860
- "type": "button",
1861
- "variant": "primary",
1862
1864
  "icon": "plus"
1863
1865
  }
1864
1866
  ],
1865
- "gap": "sm",
1866
- "type": "stack"
1867
+ "direction": "horizontal",
1868
+ "type": "stack",
1869
+ "gap": "sm"
1867
1870
  }
1868
1871
  ],
1869
- "type": "stack",
1870
- "align": "center",
1872
+ "direction": "horizontal",
1871
1873
  "gap": "md",
1872
- "direction": "horizontal"
1874
+ "justify": "between"
1873
1875
  },
1874
1876
  {
1875
1877
  "type": "divider"
1876
1878
  },
1877
1879
  "@trait.AlertBrowseList"
1878
1880
  ],
1879
- "direction": "vertical",
1880
- "gap": "lg",
1881
1881
  "type": "stack"
1882
1882
  }
1883
1883
  ]
@@ -1892,45 +1892,45 @@
1892
1892
  "name": "AlertBrowseList",
1893
1893
  "linkedEntity": "AlertMetric",
1894
1894
  "config": {
1895
- "fields": [
1896
- {
1897
- "name": "severity",
1898
- "variant": "badge"
1899
- },
1895
+ "itemActions": [
1900
1896
  {
1901
- "icon": "alert-triangle",
1902
- "variant": "h4",
1903
- "name": "message"
1897
+ "label": "View",
1898
+ "variant": "ghost",
1899
+ "event": "VIEW"
1904
1900
  },
1905
1901
  {
1906
- "name": "source",
1907
- "variant": "body"
1902
+ "event": "EDIT",
1903
+ "label": "Edit",
1904
+ "variant": "ghost"
1908
1905
  },
1909
1906
  {
1910
- "variant": "caption",
1911
- "name": "timestamp",
1912
- "format": "date"
1907
+ "variant": "danger",
1908
+ "label": "Delete",
1909
+ "event": "DELETE"
1913
1910
  }
1914
1911
  ],
1915
- "itemActions": [
1912
+ "fields": [
1916
1913
  {
1917
- "event": "VIEW",
1918
- "variant": "ghost",
1919
- "label": "View"
1914
+ "variant": "badge",
1915
+ "name": "severity"
1920
1916
  },
1921
1917
  {
1922
- "label": "Edit",
1923
- "event": "EDIT",
1924
- "variant": "ghost"
1918
+ "icon": "alert-triangle",
1919
+ "name": "message",
1920
+ "variant": "h4"
1925
1921
  },
1926
1922
  {
1927
- "label": "Delete",
1928
- "event": "DELETE",
1929
- "variant": "danger"
1923
+ "variant": "body",
1924
+ "name": "source"
1925
+ },
1926
+ {
1927
+ "format": "date",
1928
+ "name": "timestamp",
1929
+ "variant": "caption"
1930
1930
  }
1931
1931
  ],
1932
- "gap": "sm",
1933
- "cols": 1.0
1932
+ "cols": 1.0,
1933
+ "gap": "sm"
1934
1934
  },
1935
1935
  "listens": [
1936
1936
  {
@@ -1964,15 +1964,15 @@
1964
1964
  "name": "AlertCreate",
1965
1965
  "linkedEntity": "AlertMetric",
1966
1966
  "config": {
1967
- "title": "New Alert",
1968
1967
  "fields": [
1969
1968
  "severity",
1970
1969
  "message",
1971
1970
  "source",
1972
1971
  "timestamp"
1973
1972
  ],
1974
- "icon": "plus-circle",
1975
- "mode": "create"
1973
+ "title": "New Alert",
1974
+ "mode": "create",
1975
+ "icon": "plus-circle"
1976
1976
  },
1977
1977
  "events": {
1978
1978
  "OPEN": "CREATE"
@@ -1993,13 +1993,13 @@
1993
1993
  "name": "AlertEdit",
1994
1994
  "linkedEntity": "AlertMetric",
1995
1995
  "config": {
1996
- "mode": "edit",
1997
1996
  "fields": [
1998
1997
  "severity",
1999
1998
  "message",
2000
1999
  "source",
2001
2000
  "timestamp"
2002
2001
  ],
2002
+ "mode": "edit",
2003
2003
  "icon": "edit",
2004
2004
  "title": "Edit Alert"
2005
2005
  },
@@ -2022,15 +2022,15 @@
2022
2022
  "name": "AlertView",
2023
2023
  "linkedEntity": "AlertMetric",
2024
2024
  "config": {
2025
- "mode": "edit",
2026
2025
  "title": "View Alert",
2026
+ "icon": "eye",
2027
+ "mode": "edit",
2027
2028
  "fields": [
2028
2029
  "severity",
2029
2030
  "message",
2030
2031
  "source",
2031
2032
  "timestamp"
2032
- ],
2033
- "icon": "eye"
2033
+ ]
2034
2034
  },
2035
2035
  "events": {
2036
2036
  "OPEN": "VIEW"
@@ -2328,9 +2328,9 @@
2328
2328
  "email",
2329
2329
  "send",
2330
2330
  {
2331
- "sender": "alerts@example.com",
2332
2331
  "subject": "@payload.subject",
2333
2332
  "body": "@payload.body",
2333
+ "sender": "alerts@example.com",
2334
2334
  "recipient": "@payload.recipient"
2335
2335
  }
2336
2336
  ]
@@ -2432,37 +2432,37 @@
2432
2432
  "name": "LogEntryAppLayout",
2433
2433
  "linkedEntity": "LogEntry",
2434
2434
  "config": {
2435
- "searchEvent": "LOG_SEARCH",
2435
+ "notifications": [],
2436
2436
  "navItems": [
2437
2437
  {
2438
+ "label": "Services",
2438
2439
  "href": "/services",
2439
- "icon": "server",
2440
- "label": "Services"
2440
+ "icon": "server"
2441
2441
  },
2442
2442
  {
2443
+ "href": "/alerts",
2443
2444
  "icon": "bell",
2444
- "label": "Alerts",
2445
- "href": "/alerts"
2445
+ "label": "Alerts"
2446
2446
  },
2447
2447
  {
2448
- "icon": "terminal",
2448
+ "label": "Logs",
2449
2449
  "href": "/logs",
2450
- "label": "Logs"
2450
+ "icon": "terminal"
2451
2451
  },
2452
2452
  {
2453
+ "icon": "layout-list",
2453
2454
  "label": "Metrics",
2454
- "href": "/metrics",
2455
- "icon": "layout-list"
2455
+ "href": "/metrics"
2456
2456
  }
2457
2457
  ],
2458
- "notificationClickEvent": "LOG_NOTIFICATIONS_OPEN",
2459
2458
  "appName": "DevOps Dashboard",
2460
- "notifications": [],
2459
+ "searchEvent": "LOG_SEARCH",
2460
+ "notificationClickEvent": "LOG_NOTIFICATIONS_OPEN",
2461
2461
  "contentTrait": "@trait.LogCatalog"
2462
2462
  },
2463
2463
  "events": {
2464
- "NOTIFY_CLICK": "LOG_NOTIFICATIONS_OPEN",
2465
- "SEARCH": "LOG_SEARCH"
2464
+ "SEARCH": "LOG_SEARCH",
2465
+ "NOTIFY_CLICK": "LOG_NOTIFICATIONS_OPEN"
2466
2466
  }
2467
2467
  },
2468
2468
  {
@@ -2491,41 +2491,41 @@
2491
2491
  "render-ui",
2492
2492
  "main",
2493
2493
  {
2494
- "type": "stack",
2495
- "direction": "vertical",
2496
- "gap": "lg",
2497
2494
  "children": [
2498
2495
  {
2499
- "justify": "between",
2500
- "align": "center",
2501
- "type": "stack",
2502
2496
  "children": [
2503
2497
  {
2498
+ "gap": "sm",
2499
+ "align": "center",
2500
+ "type": "stack",
2501
+ "direction": "horizontal",
2504
2502
  "children": [
2505
2503
  {
2506
- "type": "icon",
2507
- "name": "terminal"
2504
+ "name": "terminal",
2505
+ "type": "icon"
2508
2506
  },
2509
2507
  {
2508
+ "type": "typography",
2510
2509
  "variant": "h2",
2511
- "content": "Logs",
2512
- "type": "typography"
2510
+ "content": "Logs"
2513
2511
  }
2514
- ],
2515
- "type": "stack",
2516
- "direction": "horizontal",
2517
- "align": "center",
2518
- "gap": "sm"
2512
+ ]
2519
2513
  }
2520
2514
  ],
2515
+ "justify": "between",
2516
+ "gap": "md",
2517
+ "type": "stack",
2521
2518
  "direction": "horizontal",
2522
- "gap": "md"
2519
+ "align": "center"
2523
2520
  },
2524
2521
  {
2525
2522
  "type": "divider"
2526
2523
  },
2527
2524
  "@trait.LogBrowseList"
2528
- ]
2525
+ ],
2526
+ "gap": "lg",
2527
+ "direction": "vertical",
2528
+ "type": "stack"
2529
2529
  }
2530
2530
  ]
2531
2531
  ]
@@ -2539,29 +2539,29 @@
2539
2539
  "name": "LogBrowseList",
2540
2540
  "linkedEntity": "LogEntry",
2541
2541
  "config": {
2542
+ "cols": 1.0,
2542
2543
  "gap": "sm",
2543
- "variant": "dense",
2544
2544
  "fields": [
2545
2545
  {
2546
2546
  "variant": "badge",
2547
2547
  "name": "level"
2548
2548
  },
2549
2549
  {
2550
- "variant": "body",
2550
+ "icon": "file-text",
2551
2551
  "name": "message",
2552
- "icon": "file-text"
2552
+ "variant": "body"
2553
2553
  },
2554
2554
  {
2555
- "variant": "caption",
2556
- "name": "service"
2555
+ "name": "service",
2556
+ "variant": "caption"
2557
2557
  },
2558
2558
  {
2559
2559
  "variant": "caption",
2560
- "name": "timestamp",
2561
- "format": "date"
2560
+ "format": "date",
2561
+ "name": "timestamp"
2562
2562
  }
2563
2563
  ],
2564
- "cols": 1.0
2564
+ "variant": "dense"
2565
2565
  }
2566
2566
  }
2567
2567
  ],
@@ -2638,17 +2638,21 @@
2638
2638
  "name": "SystemMetricAppLayout",
2639
2639
  "linkedEntity": "SystemMetric",
2640
2640
  "config": {
2641
+ "appName": "DevOps Dashboard",
2642
+ "searchEvent": "SYSTEM_METRIC_SEARCH",
2641
2643
  "contentTrait": "@trait.SystemMetricDisplay",
2644
+ "notificationClickEvent": "SYSTEM_METRIC_NOTIFICATIONS_OPEN",
2645
+ "notifications": [],
2642
2646
  "navItems": [
2643
2647
  {
2644
- "href": "/services",
2645
2648
  "label": "Services",
2649
+ "href": "/services",
2646
2650
  "icon": "server"
2647
2651
  },
2648
2652
  {
2653
+ "icon": "bell",
2649
2654
  "label": "Alerts",
2650
- "href": "/alerts",
2651
- "icon": "bell"
2655
+ "href": "/alerts"
2652
2656
  },
2653
2657
  {
2654
2658
  "label": "Logs",
@@ -2656,15 +2660,11 @@
2656
2660
  "icon": "terminal"
2657
2661
  },
2658
2662
  {
2659
- "label": "Metrics",
2663
+ "href": "/metrics",
2660
2664
  "icon": "layout-list",
2661
- "href": "/metrics"
2665
+ "label": "Metrics"
2662
2666
  }
2663
- ],
2664
- "searchEvent": "SYSTEM_METRIC_SEARCH",
2665
- "notificationClickEvent": "SYSTEM_METRIC_NOTIFICATIONS_OPEN",
2666
- "appName": "DevOps Dashboard",
2667
- "notifications": []
2667
+ ]
2668
2668
  },
2669
2669
  "events": {
2670
2670
  "SEARCH": "SYSTEM_METRIC_SEARCH",
@@ -2677,7 +2677,6 @@
2677
2677
  "linkedEntity": "SystemMetric",
2678
2678
  "config": {
2679
2679
  "displayPageSize": 10.0,
2680
- "pageSize": 100.0,
2681
2680
  "fields": [
2682
2681
  {
2683
2682
  "name": "name",
@@ -2685,22 +2684,23 @@
2685
2684
  "variant": "h4"
2686
2685
  },
2687
2686
  {
2688
- "name": "value",
2689
2687
  "format": "number",
2690
- "label": "Value",
2691
- "variant": "h3"
2688
+ "variant": "h3",
2689
+ "name": "value",
2690
+ "label": "Value"
2692
2691
  },
2693
2692
  {
2694
- "label": "Unit",
2695
2693
  "name": "unit",
2694
+ "label": "Unit",
2696
2695
  "variant": "caption"
2697
2696
  },
2698
2697
  {
2699
- "variant": "badge",
2700
2698
  "name": "trend",
2699
+ "variant": "badge",
2701
2700
  "label": "Trend"
2702
2701
  }
2703
- ]
2702
+ ],
2703
+ "pageSize": 100.0
2704
2704
  }
2705
2705
  },
2706
2706
  {
@@ -2729,23 +2729,22 @@
2729
2729
  "render-ui",
2730
2730
  "main",
2731
2731
  {
2732
- "className": "max-w-6xl mx-auto w-full p-4",
2733
- "gap": "lg",
2734
2732
  "direction": "vertical",
2733
+ "className": "max-w-6xl mx-auto w-full p-4",
2735
2734
  "children": [
2736
2735
  {
2737
- "gap": "sm",
2738
2736
  "type": "stack",
2737
+ "gap": "sm",
2739
2738
  "direction": "horizontal",
2740
2739
  "align": "center",
2741
2740
  "children": [
2742
2741
  {
2743
- "name": "activity",
2744
- "type": "icon"
2742
+ "type": "icon",
2743
+ "name": "activity"
2745
2744
  },
2746
2745
  {
2747
- "content": "System Metrics",
2748
2746
  "type": "typography",
2747
+ "content": "System Metrics",
2749
2748
  "variant": "h2"
2750
2749
  }
2751
2750
  ]
@@ -2755,11 +2754,12 @@
2755
2754
  },
2756
2755
  {
2757
2756
  "type": "typography",
2758
- "content": "Recent",
2759
- "variant": "h3"
2757
+ "variant": "h3",
2758
+ "content": "Recent"
2760
2759
  },
2761
2760
  "@trait.SystemMetricsBrowse"
2762
2761
  ],
2762
+ "gap": "lg",
2763
2763
  "type": "stack"
2764
2764
  }
2765
2765
  ]
@@ -2789,4 +2789,4 @@
2789
2789
  ]
2790
2790
  }
2791
2791
  ]
2792
- }
2792
+ }