@almadar/std 8.3.0 → 8.4.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.
- package/behaviors/registry/agent/atoms/std-agent-activity-log.orb +62 -62
- package/behaviors/registry/agent/atoms/std-agent-chat-thread.orb +101 -101
- package/behaviors/registry/agent/atoms/std-agent-classifier.orb +119 -114
- package/behaviors/registry/agent/atoms/std-agent-completion.orb +103 -103
- package/behaviors/registry/agent/atoms/std-agent-context-window.orb +413 -404
- package/behaviors/registry/agent/atoms/std-agent-conversation.orb +94 -94
- package/behaviors/registry/agent/atoms/std-agent-memory.orb +66 -66
- package/behaviors/registry/agent/atoms/std-agent-provider.orb +146 -141
- package/behaviors/registry/agent/atoms/std-agent-search.orb +61 -61
- package/behaviors/registry/agent/atoms/std-agent-session.orb +109 -109
- package/behaviors/registry/agent/atoms/std-agent-step-progress.orb +196 -196
- package/behaviors/registry/agent/atoms/std-agent-token-gauge.orb +347 -347
- package/behaviors/registry/agent/atoms/std-agent-tool-call.orb +61 -60
- package/behaviors/registry/agent/molecules/std-agent-fix-loop.orb +187 -187
- package/behaviors/registry/agent/molecules/std-agent-learner.orb +180 -180
- package/behaviors/registry/agent/molecules/std-agent-planner.orb +108 -108
- package/behaviors/registry/agent/molecules/std-agent-rag.orb +107 -107
- package/behaviors/registry/agent/molecules/std-agent-tool-loop.orb +184 -184
- package/behaviors/registry/agent/organisms/std-agent-assistant.orb +1130 -1130
- package/behaviors/registry/agent/organisms/std-agent-builder.orb +2998 -2998
- package/behaviors/registry/agent/organisms/std-agent-pipeline.orb +2135 -2135
- package/behaviors/registry/agent/organisms/std-agent-reviewer.orb +1033 -1033
- package/behaviors/registry/agent/organisms/std-agent-tutor.orb +784 -784
- package/behaviors/registry/app/organisms/std-api-gateway.orb +798 -798
- package/behaviors/registry/app/organisms/std-booking-system.orb +1139 -1139
- package/behaviors/registry/app/organisms/std-cicd-pipeline.orb +776 -776
- package/behaviors/registry/app/organisms/std-cms.orb +469 -469
- package/behaviors/registry/app/organisms/std-coding-academy.orb +338 -338
- package/behaviors/registry/app/organisms/std-crm.orb +832 -832
- package/behaviors/registry/app/organisms/std-devops-dashboard.orb +1350 -1350
- package/behaviors/registry/app/organisms/std-ecommerce.orb +975 -975
- package/behaviors/registry/app/organisms/std-finance-tracker.orb +573 -573
- package/behaviors/registry/app/organisms/std-healthcare.orb +1370 -1370
- package/behaviors/registry/app/organisms/std-helpdesk.orb +617 -617
- package/behaviors/registry/app/organisms/std-hr-portal.orb +1177 -1177
- package/behaviors/registry/app/organisms/std-iot-dashboard.orb +871 -871
- package/behaviors/registry/app/organisms/std-lms.orb +839 -839
- package/behaviors/registry/app/organisms/std-project-manager.orb +667 -667
- package/behaviors/registry/app/organisms/std-realtime-chat.orb +667 -667
- package/behaviors/registry/app/organisms/std-social-feed.orb +230 -230
- package/behaviors/registry/app/organisms/std-trading-dashboard.orb +682 -682
- package/behaviors/registry/core/atoms/std-browse.orb +53 -53
- package/behaviors/registry/core/atoms/std-cache-aside.orb +89 -89
- package/behaviors/registry/core/atoms/std-calendar.orb +57 -57
- package/behaviors/registry/core/atoms/std-circuit-breaker.orb +196 -196
- package/behaviors/registry/core/atoms/std-confirmation.orb +19 -19
- package/behaviors/registry/core/atoms/std-display.orb +383 -383
- package/behaviors/registry/core/atoms/std-drawer.orb +56 -56
- package/behaviors/registry/core/atoms/std-filter.orb +42 -42
- package/behaviors/registry/core/atoms/std-gallery.orb +54 -54
- package/behaviors/registry/core/atoms/std-modal.orb +12 -12
- package/behaviors/registry/core/atoms/std-pagination.orb +42 -42
- package/behaviors/registry/core/atoms/std-push.orb +42 -42
- package/behaviors/registry/core/atoms/std-rate-limiter.orb +179 -179
- package/behaviors/registry/core/atoms/std-related.orb +34 -34
- package/behaviors/registry/core/atoms/std-search.orb +68 -68
- package/behaviors/registry/core/atoms/std-selection.orb +90 -90
- package/behaviors/registry/core/atoms/std-tabs.orb +52 -52
- package/behaviors/registry/core/molecules/std-cart.orb +45 -45
- package/behaviors/registry/core/molecules/std-filtered-list.orb +7 -7
- package/behaviors/registry/core/molecules/std-form-advanced.orb +127 -127
- package/behaviors/registry/core/molecules/std-list.orb +46 -46
- package/behaviors/registry/core/molecules/std-wizard-form.orb +147 -147
- package/behaviors/registry/game/atoms/std-collision.orb +121 -121
- package/behaviors/registry/game/atoms/std-combat.orb +68 -68
- package/behaviors/registry/game/atoms/std-dialogue-box.orb +25 -25
- package/behaviors/registry/game/atoms/std-game-canvas2d.orb +48 -48
- package/behaviors/registry/game/atoms/std-gameflow.orb +37 -37
- package/behaviors/registry/game/atoms/std-movement.orb +306 -306
- package/behaviors/registry/game/atoms/std-overworld.orb +68 -68
- package/behaviors/registry/game/atoms/std-physics2d.orb +76 -76
- package/behaviors/registry/game/atoms/std-quest.orb +124 -124
- package/behaviors/registry/game/atoms/std-timer.orb +274 -274
- package/behaviors/registry/game/organisms/std-arcade-game.orb +145 -145
- package/behaviors/registry/game/organisms/std-logic-training.orb +67 -67
- package/behaviors/registry/game/organisms/std-platformer-app.orb +218 -218
- package/behaviors/registry/game/organisms/std-puzzle-app.orb +90 -90
- package/behaviors/registry/game/organisms/std-rpg-game.orb +372 -372
- package/behaviors/registry/game/organisms/std-stem-lab.orb +345 -345
- package/behaviors/registry/game/organisms/std-strategy-game.orb +540 -540
- package/behaviors/registry/probes/molecules/std-source-scope-probe.orb +14 -14
- package/behaviors/registry/service/atoms/std-service-custom-bearer.orb +86 -86
- package/behaviors/registry/service/atoms/std-service-email.orb +72 -72
- package/behaviors/registry/service/atoms/std-service-github.orb +98 -98
- package/behaviors/registry/service/atoms/std-service-llm.orb +118 -118
- package/behaviors/registry/service/atoms/std-service-oauth.orb +118 -118
- package/behaviors/registry/service/atoms/std-service-redis.orb +103 -103
- package/behaviors/registry/service/atoms/std-service-storage.orb +105 -105
- package/behaviors/registry/service/atoms/std-service-stripe.orb +95 -95
- package/behaviors/registry/service/atoms/std-service-twilio.orb +107 -107
- package/behaviors/registry/service/atoms/std-service-youtube.orb +104 -104
- package/behaviors/registry/service/organisms/std-service-marketplace.orb +966 -966
- package/behaviors/registry/service/organisms/std-service-research-assistant.orb +905 -905
- package/dist/behaviors/registry/agent/atoms/std-agent-activity-log.orb +62 -62
- package/dist/behaviors/registry/agent/atoms/std-agent-chat-thread.orb +101 -101
- package/dist/behaviors/registry/agent/atoms/std-agent-classifier.orb +119 -114
- package/dist/behaviors/registry/agent/atoms/std-agent-completion.orb +103 -103
- package/dist/behaviors/registry/agent/atoms/std-agent-context-window.orb +413 -404
- package/dist/behaviors/registry/agent/atoms/std-agent-conversation.orb +94 -94
- package/dist/behaviors/registry/agent/atoms/std-agent-memory.orb +66 -66
- package/dist/behaviors/registry/agent/atoms/std-agent-provider.orb +146 -141
- package/dist/behaviors/registry/agent/atoms/std-agent-search.orb +61 -61
- package/dist/behaviors/registry/agent/atoms/std-agent-session.orb +109 -109
- package/dist/behaviors/registry/agent/atoms/std-agent-step-progress.orb +196 -196
- package/dist/behaviors/registry/agent/atoms/std-agent-token-gauge.orb +347 -347
- package/dist/behaviors/registry/agent/atoms/std-agent-tool-call.orb +61 -60
- package/dist/behaviors/registry/agent/molecules/std-agent-fix-loop.orb +187 -187
- package/dist/behaviors/registry/agent/molecules/std-agent-learner.orb +180 -180
- package/dist/behaviors/registry/agent/molecules/std-agent-planner.orb +108 -108
- package/dist/behaviors/registry/agent/molecules/std-agent-rag.orb +107 -107
- package/dist/behaviors/registry/agent/molecules/std-agent-tool-loop.orb +184 -184
- package/dist/behaviors/registry/agent/organisms/std-agent-assistant.orb +1130 -1130
- package/dist/behaviors/registry/agent/organisms/std-agent-builder.orb +2998 -2998
- package/dist/behaviors/registry/agent/organisms/std-agent-pipeline.orb +2135 -2135
- package/dist/behaviors/registry/agent/organisms/std-agent-reviewer.orb +1033 -1033
- package/dist/behaviors/registry/agent/organisms/std-agent-tutor.orb +784 -784
- package/dist/behaviors/registry/app/organisms/std-api-gateway.orb +798 -798
- package/dist/behaviors/registry/app/organisms/std-booking-system.orb +1139 -1139
- package/dist/behaviors/registry/app/organisms/std-cicd-pipeline.orb +776 -776
- package/dist/behaviors/registry/app/organisms/std-cms.orb +469 -469
- package/dist/behaviors/registry/app/organisms/std-coding-academy.orb +338 -338
- package/dist/behaviors/registry/app/organisms/std-crm.orb +832 -832
- package/dist/behaviors/registry/app/organisms/std-devops-dashboard.orb +1350 -1350
- package/dist/behaviors/registry/app/organisms/std-ecommerce.orb +975 -975
- package/dist/behaviors/registry/app/organisms/std-finance-tracker.orb +573 -573
- package/dist/behaviors/registry/app/organisms/std-healthcare.orb +1370 -1370
- package/dist/behaviors/registry/app/organisms/std-helpdesk.orb +617 -617
- package/dist/behaviors/registry/app/organisms/std-hr-portal.orb +1177 -1177
- package/dist/behaviors/registry/app/organisms/std-iot-dashboard.orb +871 -871
- package/dist/behaviors/registry/app/organisms/std-lms.orb +839 -839
- package/dist/behaviors/registry/app/organisms/std-project-manager.orb +667 -667
- package/dist/behaviors/registry/app/organisms/std-realtime-chat.orb +667 -667
- package/dist/behaviors/registry/app/organisms/std-social-feed.orb +230 -230
- package/dist/behaviors/registry/app/organisms/std-trading-dashboard.orb +682 -682
- package/dist/behaviors/registry/core/atoms/std-browse.orb +53 -53
- package/dist/behaviors/registry/core/atoms/std-cache-aside.orb +89 -89
- package/dist/behaviors/registry/core/atoms/std-calendar.orb +57 -57
- package/dist/behaviors/registry/core/atoms/std-circuit-breaker.orb +196 -196
- package/dist/behaviors/registry/core/atoms/std-confirmation.orb +19 -19
- package/dist/behaviors/registry/core/atoms/std-display.orb +383 -383
- package/dist/behaviors/registry/core/atoms/std-drawer.orb +56 -56
- package/dist/behaviors/registry/core/atoms/std-filter.orb +42 -42
- package/dist/behaviors/registry/core/atoms/std-gallery.orb +54 -54
- package/dist/behaviors/registry/core/atoms/std-modal.orb +12 -12
- package/dist/behaviors/registry/core/atoms/std-pagination.orb +42 -42
- package/dist/behaviors/registry/core/atoms/std-push.orb +42 -42
- package/dist/behaviors/registry/core/atoms/std-rate-limiter.orb +179 -179
- package/dist/behaviors/registry/core/atoms/std-related.orb +34 -34
- package/dist/behaviors/registry/core/atoms/std-search.orb +68 -68
- package/dist/behaviors/registry/core/atoms/std-selection.orb +90 -90
- package/dist/behaviors/registry/core/atoms/std-tabs.orb +52 -52
- package/dist/behaviors/registry/core/molecules/std-cart.orb +45 -45
- package/dist/behaviors/registry/core/molecules/std-filtered-list.orb +7 -7
- package/dist/behaviors/registry/core/molecules/std-form-advanced.orb +127 -127
- package/dist/behaviors/registry/core/molecules/std-list.orb +46 -46
- package/dist/behaviors/registry/core/molecules/std-wizard-form.orb +147 -147
- package/dist/behaviors/registry/game/atoms/std-collision.orb +121 -121
- package/dist/behaviors/registry/game/atoms/std-combat.orb +68 -68
- package/dist/behaviors/registry/game/atoms/std-dialogue-box.orb +25 -25
- package/dist/behaviors/registry/game/atoms/std-game-canvas2d.orb +48 -48
- package/dist/behaviors/registry/game/atoms/std-gameflow.orb +37 -37
- package/dist/behaviors/registry/game/atoms/std-movement.orb +306 -306
- package/dist/behaviors/registry/game/atoms/std-overworld.orb +68 -68
- package/dist/behaviors/registry/game/atoms/std-physics2d.orb +76 -76
- package/dist/behaviors/registry/game/atoms/std-quest.orb +124 -124
- package/dist/behaviors/registry/game/atoms/std-timer.orb +274 -274
- package/dist/behaviors/registry/game/organisms/std-arcade-game.orb +145 -145
- package/dist/behaviors/registry/game/organisms/std-logic-training.orb +67 -67
- package/dist/behaviors/registry/game/organisms/std-platformer-app.orb +218 -218
- package/dist/behaviors/registry/game/organisms/std-puzzle-app.orb +90 -90
- package/dist/behaviors/registry/game/organisms/std-rpg-game.orb +372 -372
- package/dist/behaviors/registry/game/organisms/std-stem-lab.orb +345 -345
- package/dist/behaviors/registry/game/organisms/std-strategy-game.orb +540 -540
- package/dist/behaviors/registry/probes/molecules/std-source-scope-probe.orb +14 -14
- package/dist/behaviors/registry/service/atoms/std-service-custom-bearer.orb +86 -86
- package/dist/behaviors/registry/service/atoms/std-service-email.orb +72 -72
- package/dist/behaviors/registry/service/atoms/std-service-github.orb +98 -98
- package/dist/behaviors/registry/service/atoms/std-service-llm.orb +118 -118
- package/dist/behaviors/registry/service/atoms/std-service-oauth.orb +118 -118
- package/dist/behaviors/registry/service/atoms/std-service-redis.orb +103 -103
- package/dist/behaviors/registry/service/atoms/std-service-storage.orb +105 -105
- package/dist/behaviors/registry/service/atoms/std-service-stripe.orb +95 -95
- package/dist/behaviors/registry/service/atoms/std-service-twilio.orb +107 -107
- package/dist/behaviors/registry/service/atoms/std-service-youtube.orb +104 -104
- package/dist/behaviors/registry/service/organisms/std-service-marketplace.orb +966 -966
- package/dist/behaviors/registry/service/organisms/std-service-research-assistant.orb +905 -905
- package/package.json +1 -1
|
@@ -277,8 +277,8 @@
|
|
|
277
277
|
"SensorReading",
|
|
278
278
|
{
|
|
279
279
|
"emit": {
|
|
280
|
-
"
|
|
281
|
-
"
|
|
280
|
+
"success": "SensorReadingLoaded",
|
|
281
|
+
"failure": "SensorReadingLoadFailed"
|
|
282
282
|
}
|
|
283
283
|
}
|
|
284
284
|
],
|
|
@@ -286,13 +286,13 @@
|
|
|
286
286
|
"render-ui",
|
|
287
287
|
"main",
|
|
288
288
|
{
|
|
289
|
-
"type": "dashboard-layout",
|
|
290
289
|
"appName": "IoT Dashboard",
|
|
290
|
+
"type": "dashboard-layout",
|
|
291
291
|
"navItems": [
|
|
292
292
|
{
|
|
293
|
-
"href": "/sensors",
|
|
294
293
|
"label": "Sensors",
|
|
295
|
-
"icon": "layout-list"
|
|
294
|
+
"icon": "layout-list",
|
|
295
|
+
"href": "/sensors"
|
|
296
296
|
},
|
|
297
297
|
{
|
|
298
298
|
"label": "Devices",
|
|
@@ -300,25 +300,23 @@
|
|
|
300
300
|
"href": "/devices"
|
|
301
301
|
},
|
|
302
302
|
{
|
|
303
|
-
"icon": "bell",
|
|
304
303
|
"label": "Alerts",
|
|
305
|
-
"href": "/alerts"
|
|
304
|
+
"href": "/alerts",
|
|
305
|
+
"icon": "bell"
|
|
306
306
|
}
|
|
307
307
|
],
|
|
308
308
|
"children": [
|
|
309
309
|
{
|
|
310
|
+
"type": "scaled-diagram",
|
|
310
311
|
"children": [
|
|
311
312
|
{
|
|
312
|
-
"type": "stack",
|
|
313
|
-
"gap": "lg",
|
|
314
|
-
"direction": "vertical",
|
|
315
313
|
"children": [
|
|
316
314
|
{
|
|
317
315
|
"type": "breadcrumb",
|
|
318
316
|
"items": [
|
|
319
317
|
{
|
|
320
|
-
"
|
|
321
|
-
"
|
|
318
|
+
"label": "Home",
|
|
319
|
+
"href": "/"
|
|
322
320
|
},
|
|
323
321
|
{
|
|
324
322
|
"label": "Sensor Readings"
|
|
@@ -326,97 +324,98 @@
|
|
|
326
324
|
]
|
|
327
325
|
},
|
|
328
326
|
{
|
|
329
|
-
"justify": "between",
|
|
330
|
-
"direction": "horizontal",
|
|
331
327
|
"children": [
|
|
332
328
|
{
|
|
333
|
-
"type": "stack",
|
|
334
|
-
"direction": "horizontal",
|
|
335
329
|
"children": [
|
|
336
330
|
{
|
|
337
331
|
"type": "icon",
|
|
338
332
|
"name": "thermometer"
|
|
339
333
|
},
|
|
340
334
|
{
|
|
341
|
-
"
|
|
335
|
+
"content": "Sensor Readings",
|
|
342
336
|
"type": "typography",
|
|
343
|
-
"
|
|
337
|
+
"variant": "h2"
|
|
344
338
|
}
|
|
345
339
|
],
|
|
346
|
-
"
|
|
340
|
+
"direction": "horizontal",
|
|
341
|
+
"gap": "md",
|
|
342
|
+
"type": "stack"
|
|
347
343
|
},
|
|
348
344
|
{
|
|
345
|
+
"type": "button",
|
|
346
|
+
"label": "Refresh",
|
|
349
347
|
"variant": "secondary",
|
|
350
348
|
"icon": "refresh-cw",
|
|
351
|
-
"label": "Refresh",
|
|
352
|
-
"type": "button",
|
|
353
349
|
"action": "REFRESH"
|
|
354
350
|
}
|
|
355
351
|
],
|
|
352
|
+
"type": "stack",
|
|
356
353
|
"gap": "md",
|
|
357
|
-
"
|
|
354
|
+
"justify": "between",
|
|
355
|
+
"direction": "horizontal"
|
|
358
356
|
},
|
|
359
357
|
{
|
|
360
358
|
"type": "divider"
|
|
361
359
|
},
|
|
362
360
|
{
|
|
363
|
-
"type": "box",
|
|
364
361
|
"padding": "md",
|
|
362
|
+
"type": "box",
|
|
365
363
|
"children": [
|
|
366
364
|
{
|
|
367
|
-
"cols": 3.0,
|
|
368
365
|
"type": "simple-grid",
|
|
366
|
+
"cols": 3.0,
|
|
369
367
|
"children": [
|
|
370
368
|
{
|
|
371
369
|
"type": "card",
|
|
372
370
|
"children": [
|
|
373
371
|
{
|
|
372
|
+
"type": "stack",
|
|
373
|
+
"direction": "vertical",
|
|
374
374
|
"children": [
|
|
375
375
|
{
|
|
376
|
-
"variant": "caption",
|
|
377
376
|
"type": "typography",
|
|
378
|
-
"content": "SensorId"
|
|
377
|
+
"content": "SensorId",
|
|
378
|
+
"variant": "caption"
|
|
379
379
|
},
|
|
380
380
|
{
|
|
381
381
|
"variant": "h3",
|
|
382
|
-
"
|
|
383
|
-
"
|
|
382
|
+
"type": "typography",
|
|
383
|
+
"content": "@entity.sensorId"
|
|
384
384
|
}
|
|
385
385
|
],
|
|
386
|
-
"direction": "vertical",
|
|
387
|
-
"type": "stack",
|
|
388
386
|
"gap": "sm"
|
|
389
387
|
}
|
|
390
388
|
]
|
|
391
389
|
},
|
|
392
390
|
{
|
|
393
|
-
"
|
|
391
|
+
"type": "stat-display",
|
|
394
392
|
"value": "@entity.value",
|
|
395
|
-
"
|
|
393
|
+
"label": "Value"
|
|
396
394
|
},
|
|
397
395
|
{
|
|
398
396
|
"type": "card",
|
|
399
397
|
"children": [
|
|
400
398
|
{
|
|
401
|
-
"gap": "sm",
|
|
402
399
|
"children": [
|
|
403
400
|
{
|
|
404
|
-
"
|
|
401
|
+
"content": "Unit",
|
|
405
402
|
"type": "typography",
|
|
406
|
-
"
|
|
403
|
+
"variant": "caption"
|
|
407
404
|
},
|
|
408
405
|
{
|
|
409
406
|
"variant": "h3",
|
|
410
|
-
"
|
|
411
|
-
"
|
|
407
|
+
"type": "typography",
|
|
408
|
+
"content": "@entity.unit"
|
|
412
409
|
}
|
|
413
410
|
],
|
|
414
|
-
"
|
|
415
|
-
"
|
|
411
|
+
"direction": "vertical",
|
|
412
|
+
"gap": "sm",
|
|
413
|
+
"type": "stack"
|
|
416
414
|
}
|
|
417
415
|
]
|
|
418
416
|
},
|
|
419
417
|
{
|
|
418
|
+
"type": "card",
|
|
420
419
|
"children": [
|
|
421
420
|
{
|
|
422
421
|
"type": "stack",
|
|
@@ -424,19 +423,18 @@
|
|
|
424
423
|
"direction": "vertical",
|
|
425
424
|
"children": [
|
|
426
425
|
{
|
|
427
|
-
"variant": "caption",
|
|
428
426
|
"content": "Timestamp",
|
|
429
|
-
"type": "typography"
|
|
427
|
+
"type": "typography",
|
|
428
|
+
"variant": "caption"
|
|
430
429
|
},
|
|
431
430
|
{
|
|
432
|
-
"type": "typography",
|
|
433
431
|
"variant": "h3",
|
|
434
|
-
"content": "@entity.timestamp"
|
|
432
|
+
"content": "@entity.timestamp",
|
|
433
|
+
"type": "typography"
|
|
435
434
|
}
|
|
436
435
|
]
|
|
437
436
|
}
|
|
438
|
-
]
|
|
439
|
-
"type": "card"
|
|
437
|
+
]
|
|
440
438
|
}
|
|
441
439
|
]
|
|
442
440
|
}
|
|
@@ -447,106 +445,108 @@
|
|
|
447
445
|
},
|
|
448
446
|
{
|
|
449
447
|
"type": "grid",
|
|
450
|
-
"
|
|
448
|
+
"cols": 2.0,
|
|
451
449
|
"children": [
|
|
452
450
|
{
|
|
453
451
|
"type": "card",
|
|
454
452
|
"children": [
|
|
455
453
|
{
|
|
456
454
|
"content": "Chart View",
|
|
457
|
-
"
|
|
458
|
-
"
|
|
455
|
+
"type": "typography",
|
|
456
|
+
"variant": "caption"
|
|
459
457
|
}
|
|
460
458
|
]
|
|
461
459
|
},
|
|
462
460
|
{
|
|
461
|
+
"type": "card",
|
|
463
462
|
"children": [
|
|
464
463
|
{
|
|
465
|
-
"variant": "caption",
|
|
466
464
|
"type": "typography",
|
|
467
|
-
"content": "Graph View"
|
|
465
|
+
"content": "Graph View",
|
|
466
|
+
"variant": "caption"
|
|
468
467
|
}
|
|
469
|
-
]
|
|
470
|
-
"type": "card"
|
|
468
|
+
]
|
|
471
469
|
}
|
|
472
470
|
],
|
|
473
|
-
"
|
|
471
|
+
"gap": "md"
|
|
474
472
|
},
|
|
475
473
|
{
|
|
474
|
+
"type": "line-chart",
|
|
476
475
|
"data": [
|
|
477
476
|
{
|
|
478
477
|
"date": "Jan",
|
|
479
478
|
"value": 12.0
|
|
480
479
|
},
|
|
481
480
|
{
|
|
482
|
-
"
|
|
483
|
-
"
|
|
481
|
+
"value": 19.0,
|
|
482
|
+
"date": "Feb"
|
|
484
483
|
},
|
|
485
484
|
{
|
|
486
|
-
"
|
|
487
|
-
"
|
|
485
|
+
"date": "Mar",
|
|
486
|
+
"value": 15.0
|
|
488
487
|
},
|
|
489
488
|
{
|
|
490
|
-
"
|
|
491
|
-
"
|
|
489
|
+
"value": 25.0,
|
|
490
|
+
"date": "Apr"
|
|
492
491
|
},
|
|
493
492
|
{
|
|
494
|
-
"
|
|
495
|
-
"
|
|
493
|
+
"value": 22.0,
|
|
494
|
+
"date": "May"
|
|
496
495
|
},
|
|
497
496
|
{
|
|
498
497
|
"value": 30.0,
|
|
499
498
|
"date": "Jun"
|
|
500
499
|
}
|
|
501
|
-
]
|
|
502
|
-
"type": "line-chart"
|
|
500
|
+
]
|
|
503
501
|
},
|
|
504
502
|
{
|
|
503
|
+
"type": "chart-legend",
|
|
505
504
|
"items": [
|
|
506
505
|
{
|
|
507
|
-
"
|
|
508
|
-
"
|
|
506
|
+
"color": "primary",
|
|
507
|
+
"label": "Current"
|
|
509
508
|
},
|
|
510
509
|
{
|
|
511
510
|
"label": "Previous",
|
|
512
511
|
"color": "muted"
|
|
513
512
|
}
|
|
514
|
-
]
|
|
515
|
-
"type": "chart-legend"
|
|
513
|
+
]
|
|
516
514
|
},
|
|
517
515
|
{
|
|
518
|
-
"
|
|
519
|
-
{
|
|
520
|
-
"label": "Start",
|
|
521
|
-
"id": "a"
|
|
522
|
-
},
|
|
516
|
+
"edges": [
|
|
523
517
|
{
|
|
524
|
-
"
|
|
525
|
-
"
|
|
518
|
+
"source": "a",
|
|
519
|
+
"target": "b"
|
|
526
520
|
},
|
|
527
521
|
{
|
|
528
|
-
"
|
|
529
|
-
"
|
|
522
|
+
"source": "b",
|
|
523
|
+
"target": "c"
|
|
530
524
|
}
|
|
531
525
|
],
|
|
532
526
|
"type": "graph-view",
|
|
533
|
-
"width": 400.0,
|
|
534
527
|
"height": 200.0,
|
|
535
|
-
"
|
|
528
|
+
"width": 400.0,
|
|
529
|
+
"nodes": [
|
|
536
530
|
{
|
|
537
|
-
"
|
|
538
|
-
"
|
|
531
|
+
"label": "Start",
|
|
532
|
+
"id": "a"
|
|
539
533
|
},
|
|
540
534
|
{
|
|
541
|
-
"
|
|
542
|
-
"
|
|
535
|
+
"id": "b",
|
|
536
|
+
"label": "Process"
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
"id": "c",
|
|
540
|
+
"label": "End"
|
|
543
541
|
}
|
|
544
542
|
]
|
|
545
543
|
}
|
|
546
|
-
]
|
|
544
|
+
],
|
|
545
|
+
"gap": "lg",
|
|
546
|
+
"direction": "vertical",
|
|
547
|
+
"type": "stack"
|
|
547
548
|
}
|
|
548
|
-
]
|
|
549
|
-
"type": "scaled-diagram"
|
|
549
|
+
]
|
|
550
550
|
}
|
|
551
551
|
]
|
|
552
552
|
}
|
|
@@ -563,8 +563,8 @@
|
|
|
563
563
|
"SensorReading",
|
|
564
564
|
{
|
|
565
565
|
"emit": {
|
|
566
|
-
"
|
|
567
|
-
"
|
|
566
|
+
"failure": "SensorReadingLoadFailed",
|
|
567
|
+
"success": "SensorReadingLoaded"
|
|
568
568
|
}
|
|
569
569
|
}
|
|
570
570
|
],
|
|
@@ -572,20 +572,21 @@
|
|
|
572
572
|
"render-ui",
|
|
573
573
|
"main",
|
|
574
574
|
{
|
|
575
|
-
"appName": "IoT Dashboard",
|
|
576
575
|
"children": [
|
|
577
576
|
{
|
|
577
|
+
"type": "scaled-diagram",
|
|
578
578
|
"children": [
|
|
579
579
|
{
|
|
580
580
|
"direction": "vertical",
|
|
581
581
|
"gap": "lg",
|
|
582
|
+
"type": "stack",
|
|
582
583
|
"children": [
|
|
583
584
|
{
|
|
584
585
|
"type": "breadcrumb",
|
|
585
586
|
"items": [
|
|
586
587
|
{
|
|
587
|
-
"
|
|
588
|
-
"
|
|
588
|
+
"href": "/",
|
|
589
|
+
"label": "Home"
|
|
589
590
|
},
|
|
590
591
|
{
|
|
591
592
|
"label": "Sensor Readings"
|
|
@@ -593,76 +594,79 @@
|
|
|
593
594
|
]
|
|
594
595
|
},
|
|
595
596
|
{
|
|
596
|
-
"type": "stack",
|
|
597
597
|
"gap": "md",
|
|
598
|
-
"justify": "between",
|
|
599
|
-
"direction": "horizontal",
|
|
600
598
|
"children": [
|
|
601
599
|
{
|
|
600
|
+
"type": "stack",
|
|
602
601
|
"gap": "md",
|
|
603
602
|
"children": [
|
|
604
603
|
{
|
|
605
|
-
"
|
|
606
|
-
"
|
|
604
|
+
"type": "icon",
|
|
605
|
+
"name": "thermometer"
|
|
607
606
|
},
|
|
608
607
|
{
|
|
609
|
-
"variant": "h2",
|
|
610
608
|
"type": "typography",
|
|
611
|
-
"content": "Sensor Readings"
|
|
609
|
+
"content": "Sensor Readings",
|
|
610
|
+
"variant": "h2"
|
|
612
611
|
}
|
|
613
612
|
],
|
|
614
|
-
"type": "stack",
|
|
615
613
|
"direction": "horizontal"
|
|
616
614
|
},
|
|
617
615
|
{
|
|
618
|
-
"label": "Refresh",
|
|
619
|
-
"action": "REFRESH",
|
|
620
616
|
"variant": "secondary",
|
|
621
617
|
"type": "button",
|
|
622
|
-
"
|
|
618
|
+
"label": "Refresh",
|
|
619
|
+
"icon": "refresh-cw",
|
|
620
|
+
"action": "REFRESH"
|
|
623
621
|
}
|
|
624
|
-
]
|
|
622
|
+
],
|
|
623
|
+
"type": "stack",
|
|
624
|
+
"direction": "horizontal",
|
|
625
|
+
"justify": "between"
|
|
625
626
|
},
|
|
626
627
|
{
|
|
627
628
|
"type": "divider"
|
|
628
629
|
},
|
|
629
630
|
{
|
|
631
|
+
"type": "box",
|
|
632
|
+
"padding": "md",
|
|
630
633
|
"children": [
|
|
631
634
|
{
|
|
635
|
+
"type": "simple-grid",
|
|
632
636
|
"cols": 3.0,
|
|
633
637
|
"children": [
|
|
634
638
|
{
|
|
635
639
|
"type": "card",
|
|
636
640
|
"children": [
|
|
637
641
|
{
|
|
642
|
+
"gap": "sm",
|
|
643
|
+
"type": "stack",
|
|
638
644
|
"direction": "vertical",
|
|
639
645
|
"children": [
|
|
640
646
|
{
|
|
641
|
-
"variant": "caption",
|
|
642
647
|
"content": "SensorId",
|
|
643
|
-
"type": "typography"
|
|
648
|
+
"type": "typography",
|
|
649
|
+
"variant": "caption"
|
|
644
650
|
},
|
|
645
651
|
{
|
|
652
|
+
"content": "@entity.sensorId",
|
|
646
653
|
"type": "typography",
|
|
647
|
-
"variant": "h3"
|
|
648
|
-
"content": "@entity.sensorId"
|
|
654
|
+
"variant": "h3"
|
|
649
655
|
}
|
|
650
|
-
]
|
|
651
|
-
"gap": "sm",
|
|
652
|
-
"type": "stack"
|
|
656
|
+
]
|
|
653
657
|
}
|
|
654
658
|
]
|
|
655
659
|
},
|
|
656
660
|
{
|
|
657
|
-
"type": "stat-display",
|
|
658
661
|
"label": "Value",
|
|
662
|
+
"type": "stat-display",
|
|
659
663
|
"value": "@entity.value"
|
|
660
664
|
},
|
|
661
665
|
{
|
|
662
|
-
"type": "card",
|
|
663
666
|
"children": [
|
|
664
667
|
{
|
|
665
668
|
"direction": "vertical",
|
|
669
|
+
"gap": "sm",
|
|
666
670
|
"children": [
|
|
667
671
|
{
|
|
668
672
|
"content": "Unit",
|
|
@@ -670,76 +674,74 @@
|
|
|
670
674
|
"variant": "caption"
|
|
671
675
|
},
|
|
672
676
|
{
|
|
677
|
+
"variant": "h3",
|
|
673
678
|
"type": "typography",
|
|
674
|
-
"content": "@entity.unit"
|
|
675
|
-
"variant": "h3"
|
|
679
|
+
"content": "@entity.unit"
|
|
676
680
|
}
|
|
677
681
|
],
|
|
678
|
-
"type": "stack"
|
|
679
|
-
"gap": "sm"
|
|
682
|
+
"type": "stack"
|
|
680
683
|
}
|
|
681
|
-
]
|
|
684
|
+
],
|
|
685
|
+
"type": "card"
|
|
682
686
|
},
|
|
683
687
|
{
|
|
684
688
|
"children": [
|
|
685
689
|
{
|
|
686
690
|
"direction": "vertical",
|
|
687
|
-
"gap": "sm",
|
|
688
691
|
"children": [
|
|
689
692
|
{
|
|
690
|
-
"variant": "caption",
|
|
691
693
|
"content": "Timestamp",
|
|
692
|
-
"type": "typography"
|
|
694
|
+
"type": "typography",
|
|
695
|
+
"variant": "caption"
|
|
693
696
|
},
|
|
694
697
|
{
|
|
698
|
+
"content": "@entity.timestamp",
|
|
695
699
|
"type": "typography",
|
|
696
|
-
"variant": "h3"
|
|
697
|
-
"content": "@entity.timestamp"
|
|
700
|
+
"variant": "h3"
|
|
698
701
|
}
|
|
699
702
|
],
|
|
703
|
+
"gap": "sm",
|
|
700
704
|
"type": "stack"
|
|
701
705
|
}
|
|
702
706
|
],
|
|
703
707
|
"type": "card"
|
|
704
708
|
}
|
|
705
|
-
]
|
|
706
|
-
"type": "simple-grid"
|
|
709
|
+
]
|
|
707
710
|
}
|
|
708
|
-
]
|
|
709
|
-
"padding": "md",
|
|
710
|
-
"type": "box"
|
|
711
|
+
]
|
|
711
712
|
},
|
|
712
713
|
{
|
|
713
714
|
"type": "divider"
|
|
714
715
|
},
|
|
715
716
|
{
|
|
716
|
-
"type": "grid",
|
|
717
717
|
"children": [
|
|
718
718
|
{
|
|
719
719
|
"type": "card",
|
|
720
720
|
"children": [
|
|
721
721
|
{
|
|
722
|
-
"type": "typography",
|
|
723
722
|
"content": "Chart View",
|
|
723
|
+
"type": "typography",
|
|
724
724
|
"variant": "caption"
|
|
725
725
|
}
|
|
726
726
|
]
|
|
727
727
|
},
|
|
728
728
|
{
|
|
729
|
+
"type": "card",
|
|
729
730
|
"children": [
|
|
730
731
|
{
|
|
731
|
-
"variant": "caption",
|
|
732
732
|
"type": "typography",
|
|
733
|
+
"variant": "caption",
|
|
733
734
|
"content": "Graph View"
|
|
734
735
|
}
|
|
735
|
-
]
|
|
736
|
-
"type": "card"
|
|
736
|
+
]
|
|
737
737
|
}
|
|
738
738
|
],
|
|
739
|
+
"type": "grid",
|
|
739
740
|
"gap": "md",
|
|
740
741
|
"cols": 2.0
|
|
741
742
|
},
|
|
742
743
|
{
|
|
744
|
+
"type": "line-chart",
|
|
743
745
|
"data": [
|
|
744
746
|
{
|
|
745
747
|
"date": "Jan",
|
|
@@ -754,8 +756,8 @@
|
|
|
754
756
|
"date": "Mar"
|
|
755
757
|
},
|
|
756
758
|
{
|
|
757
|
-
"
|
|
758
|
-
"
|
|
759
|
+
"value": 25.0,
|
|
760
|
+
"date": "Apr"
|
|
759
761
|
},
|
|
760
762
|
{
|
|
761
763
|
"date": "May",
|
|
@@ -765,8 +767,7 @@
|
|
|
765
767
|
"date": "Jun",
|
|
766
768
|
"value": 30.0
|
|
767
769
|
}
|
|
768
|
-
]
|
|
769
|
-
"type": "line-chart"
|
|
770
|
+
]
|
|
770
771
|
},
|
|
771
772
|
{
|
|
772
773
|
"items": [
|
|
@@ -775,65 +776,64 @@
|
|
|
775
776
|
"label": "Current"
|
|
776
777
|
},
|
|
777
778
|
{
|
|
778
|
-
"
|
|
779
|
-
"
|
|
779
|
+
"label": "Previous",
|
|
780
|
+
"color": "muted"
|
|
780
781
|
}
|
|
781
782
|
],
|
|
782
783
|
"type": "chart-legend"
|
|
783
784
|
},
|
|
784
785
|
{
|
|
785
|
-
"
|
|
786
|
-
"
|
|
787
|
-
"nodes": [
|
|
788
|
-
{
|
|
789
|
-
"label": "Start",
|
|
790
|
-
"id": "a"
|
|
791
|
-
},
|
|
786
|
+
"type": "graph-view",
|
|
787
|
+
"edges": [
|
|
792
788
|
{
|
|
793
|
-
"
|
|
794
|
-
"
|
|
789
|
+
"source": "a",
|
|
790
|
+
"target": "b"
|
|
795
791
|
},
|
|
796
792
|
{
|
|
797
|
-
"
|
|
798
|
-
"
|
|
793
|
+
"target": "c",
|
|
794
|
+
"source": "b"
|
|
799
795
|
}
|
|
800
796
|
],
|
|
801
|
-
"
|
|
802
|
-
"edges": [
|
|
797
|
+
"nodes": [
|
|
803
798
|
{
|
|
804
|
-
"
|
|
805
|
-
"
|
|
799
|
+
"id": "a",
|
|
800
|
+
"label": "Start"
|
|
806
801
|
},
|
|
807
802
|
{
|
|
808
|
-
"
|
|
809
|
-
"
|
|
803
|
+
"label": "Process",
|
|
804
|
+
"id": "b"
|
|
805
|
+
},
|
|
806
|
+
{
|
|
807
|
+
"label": "End",
|
|
808
|
+
"id": "c"
|
|
810
809
|
}
|
|
811
|
-
]
|
|
810
|
+
],
|
|
811
|
+
"height": 200.0,
|
|
812
|
+
"width": 400.0
|
|
812
813
|
}
|
|
813
|
-
]
|
|
814
|
-
"type": "stack"
|
|
814
|
+
]
|
|
815
815
|
}
|
|
816
|
-
]
|
|
817
|
-
"type": "scaled-diagram"
|
|
816
|
+
]
|
|
818
817
|
}
|
|
819
818
|
],
|
|
820
819
|
"navItems": [
|
|
821
820
|
{
|
|
822
|
-
"
|
|
821
|
+
"label": "Sensors",
|
|
823
822
|
"href": "/sensors",
|
|
824
|
-
"
|
|
823
|
+
"icon": "layout-list"
|
|
825
824
|
},
|
|
826
825
|
{
|
|
827
|
-
"
|
|
826
|
+
"href": "/devices",
|
|
828
827
|
"icon": "cpu",
|
|
829
|
-
"
|
|
828
|
+
"label": "Devices"
|
|
830
829
|
},
|
|
831
830
|
{
|
|
832
|
-
"
|
|
831
|
+
"label": "Alerts",
|
|
833
832
|
"icon": "bell",
|
|
834
|
-
"
|
|
833
|
+
"href": "/alerts"
|
|
835
834
|
}
|
|
836
835
|
],
|
|
836
|
+
"appName": "IoT Dashboard",
|
|
837
837
|
"type": "dashboard-layout"
|
|
838
838
|
}
|
|
839
839
|
]
|
|
@@ -860,33 +860,30 @@
|
|
|
860
860
|
{
|
|
861
861
|
"navItems": [
|
|
862
862
|
{
|
|
863
|
-
"
|
|
863
|
+
"icon": "layout-list",
|
|
864
864
|
"href": "/sensors",
|
|
865
|
-
"
|
|
865
|
+
"label": "Sensors"
|
|
866
866
|
},
|
|
867
867
|
{
|
|
868
|
+
"icon": "cpu",
|
|
868
869
|
"label": "Devices",
|
|
869
|
-
"href": "/devices"
|
|
870
|
-
"icon": "cpu"
|
|
870
|
+
"href": "/devices"
|
|
871
871
|
},
|
|
872
872
|
{
|
|
873
|
-
"icon": "bell",
|
|
874
873
|
"label": "Alerts",
|
|
875
|
-
"href": "/alerts"
|
|
874
|
+
"href": "/alerts",
|
|
875
|
+
"icon": "bell"
|
|
876
876
|
}
|
|
877
877
|
],
|
|
878
|
-
"type": "dashboard-layout",
|
|
879
878
|
"appName": "IoT Dashboard",
|
|
879
|
+
"type": "dashboard-layout",
|
|
880
880
|
"children": [
|
|
881
881
|
{
|
|
882
|
+
"type": "scaled-diagram",
|
|
882
883
|
"children": [
|
|
883
884
|
{
|
|
884
|
-
"type": "stack",
|
|
885
|
-
"gap": "lg",
|
|
886
|
-
"direction": "vertical",
|
|
887
885
|
"children": [
|
|
888
886
|
{
|
|
889
|
-
"type": "breadcrumb",
|
|
890
887
|
"items": [
|
|
891
888
|
{
|
|
892
889
|
"label": "Home",
|
|
@@ -895,11 +892,14 @@
|
|
|
895
892
|
{
|
|
896
893
|
"label": "Sensor Readings"
|
|
897
894
|
}
|
|
898
|
-
]
|
|
895
|
+
],
|
|
896
|
+
"type": "breadcrumb"
|
|
899
897
|
},
|
|
900
898
|
{
|
|
899
|
+
"justify": "between",
|
|
901
900
|
"children": [
|
|
902
901
|
{
|
|
902
|
+
"direction": "horizontal",
|
|
903
903
|
"children": [
|
|
904
904
|
{
|
|
905
905
|
"type": "icon",
|
|
@@ -911,76 +911,77 @@
|
|
|
911
911
|
"type": "typography"
|
|
912
912
|
}
|
|
913
913
|
],
|
|
914
|
-
"
|
|
915
|
-
"
|
|
916
|
-
"gap": "md"
|
|
914
|
+
"gap": "md",
|
|
915
|
+
"type": "stack"
|
|
917
916
|
},
|
|
918
917
|
{
|
|
919
|
-
"action": "REFRESH",
|
|
920
|
-
"variant": "secondary",
|
|
921
918
|
"icon": "refresh-cw",
|
|
919
|
+
"action": "REFRESH",
|
|
920
|
+
"type": "button",
|
|
922
921
|
"label": "Refresh",
|
|
923
|
-
"
|
|
922
|
+
"variant": "secondary"
|
|
924
923
|
}
|
|
925
924
|
],
|
|
926
|
-
"direction": "horizontal",
|
|
927
|
-
"type": "stack",
|
|
928
925
|
"gap": "md",
|
|
929
|
-
"
|
|
926
|
+
"type": "stack",
|
|
927
|
+
"direction": "horizontal"
|
|
930
928
|
},
|
|
931
929
|
{
|
|
932
930
|
"type": "divider"
|
|
933
931
|
},
|
|
934
932
|
{
|
|
933
|
+
"type": "box",
|
|
934
|
+
"padding": "md",
|
|
935
935
|
"children": [
|
|
936
936
|
{
|
|
937
|
+
"type": "simple-grid",
|
|
937
938
|
"children": [
|
|
938
939
|
{
|
|
939
940
|
"type": "card",
|
|
940
941
|
"children": [
|
|
941
942
|
{
|
|
942
|
-
"type": "stack",
|
|
943
|
-
"gap": "sm",
|
|
944
943
|
"direction": "vertical",
|
|
944
|
+
"type": "stack",
|
|
945
945
|
"children": [
|
|
946
946
|
{
|
|
947
|
-
"
|
|
947
|
+
"type": "typography",
|
|
948
948
|
"variant": "caption",
|
|
949
|
-
"
|
|
949
|
+
"content": "SensorId"
|
|
950
950
|
},
|
|
951
951
|
{
|
|
952
|
-
"content": "@entity.sensorId",
|
|
953
952
|
"variant": "h3",
|
|
953
|
+
"content": "@entity.sensorId",
|
|
954
954
|
"type": "typography"
|
|
955
955
|
}
|
|
956
|
-
]
|
|
956
|
+
],
|
|
957
|
+
"gap": "sm"
|
|
957
958
|
}
|
|
958
959
|
]
|
|
959
960
|
},
|
|
960
961
|
{
|
|
961
962
|
"value": "@entity.value",
|
|
962
|
-
"
|
|
963
|
-
"
|
|
963
|
+
"type": "stat-display",
|
|
964
|
+
"label": "Value"
|
|
964
965
|
},
|
|
965
966
|
{
|
|
966
967
|
"type": "card",
|
|
967
968
|
"children": [
|
|
968
969
|
{
|
|
969
970
|
"type": "stack",
|
|
970
|
-
"gap": "sm",
|
|
971
|
-
"direction": "vertical",
|
|
972
971
|
"children": [
|
|
973
972
|
{
|
|
973
|
+
"content": "Unit",
|
|
974
974
|
"variant": "caption",
|
|
975
|
-
"type": "typography"
|
|
976
|
-
"content": "Unit"
|
|
975
|
+
"type": "typography"
|
|
977
976
|
},
|
|
978
977
|
{
|
|
979
|
-
"
|
|
978
|
+
"type": "typography",
|
|
980
979
|
"content": "@entity.unit",
|
|
981
|
-
"
|
|
980
|
+
"variant": "h3"
|
|
982
981
|
}
|
|
983
|
-
]
|
|
982
|
+
],
|
|
983
|
+
"direction": "vertical",
|
|
984
|
+
"gap": "sm"
|
|
984
985
|
}
|
|
985
986
|
]
|
|
986
987
|
},
|
|
@@ -988,67 +989,65 @@
|
|
|
988
989
|
"type": "card",
|
|
989
990
|
"children": [
|
|
990
991
|
{
|
|
992
|
+
"direction": "vertical",
|
|
991
993
|
"type": "stack",
|
|
992
|
-
"gap": "sm",
|
|
993
994
|
"children": [
|
|
994
995
|
{
|
|
996
|
+
"type": "typography",
|
|
995
997
|
"variant": "caption",
|
|
996
|
-
"content": "Timestamp"
|
|
997
|
-
"type": "typography"
|
|
998
|
+
"content": "Timestamp"
|
|
998
999
|
},
|
|
999
1000
|
{
|
|
1000
|
-
"variant": "h3",
|
|
1001
1001
|
"type": "typography",
|
|
1002
|
+
"variant": "h3",
|
|
1002
1003
|
"content": "@entity.timestamp"
|
|
1003
1004
|
}
|
|
1004
1005
|
],
|
|
1005
|
-
"
|
|
1006
|
+
"gap": "sm"
|
|
1006
1007
|
}
|
|
1007
1008
|
]
|
|
1008
1009
|
}
|
|
1009
1010
|
],
|
|
1010
|
-
"cols": 3.0
|
|
1011
|
-
"type": "simple-grid"
|
|
1011
|
+
"cols": 3.0
|
|
1012
1012
|
}
|
|
1013
|
-
]
|
|
1014
|
-
"padding": "md",
|
|
1015
|
-
"type": "box"
|
|
1013
|
+
]
|
|
1016
1014
|
},
|
|
1017
1015
|
{
|
|
1018
1016
|
"type": "divider"
|
|
1019
1017
|
},
|
|
1020
1018
|
{
|
|
1021
|
-
"
|
|
1019
|
+
"cols": 2.0,
|
|
1022
1020
|
"gap": "md",
|
|
1021
|
+
"type": "grid",
|
|
1023
1022
|
"children": [
|
|
1024
1023
|
{
|
|
1025
|
-
"type": "card",
|
|
1026
1024
|
"children": [
|
|
1027
1025
|
{
|
|
1028
|
-
"type": "typography",
|
|
1029
1026
|
"variant": "caption",
|
|
1030
|
-
"content": "Chart View"
|
|
1027
|
+
"content": "Chart View",
|
|
1028
|
+
"type": "typography"
|
|
1031
1029
|
}
|
|
1032
|
-
]
|
|
1030
|
+
],
|
|
1031
|
+
"type": "card"
|
|
1033
1032
|
},
|
|
1034
1033
|
{
|
|
1034
|
+
"type": "card",
|
|
1035
1035
|
"children": [
|
|
1036
1036
|
{
|
|
1037
|
+
"variant": "caption",
|
|
1037
1038
|
"content": "Graph View",
|
|
1038
|
-
"type": "typography"
|
|
1039
|
-
"variant": "caption"
|
|
1039
|
+
"type": "typography"
|
|
1040
1040
|
}
|
|
1041
|
-
]
|
|
1042
|
-
"type": "card"
|
|
1041
|
+
]
|
|
1043
1042
|
}
|
|
1044
|
-
]
|
|
1045
|
-
"cols": 2.0
|
|
1043
|
+
]
|
|
1046
1044
|
},
|
|
1047
1045
|
{
|
|
1046
|
+
"type": "line-chart",
|
|
1048
1047
|
"data": [
|
|
1049
1048
|
{
|
|
1050
|
-
"
|
|
1051
|
-
"
|
|
1049
|
+
"value": 12.0,
|
|
1050
|
+
"date": "Jan"
|
|
1052
1051
|
},
|
|
1053
1052
|
{
|
|
1054
1053
|
"date": "Feb",
|
|
@@ -1063,32 +1062,29 @@
|
|
|
1063
1062
|
"value": 25.0
|
|
1064
1063
|
},
|
|
1065
1064
|
{
|
|
1066
|
-
"
|
|
1067
|
-
"
|
|
1065
|
+
"value": 22.0,
|
|
1066
|
+
"date": "May"
|
|
1068
1067
|
},
|
|
1069
1068
|
{
|
|
1070
1069
|
"date": "Jun",
|
|
1071
1070
|
"value": 30.0
|
|
1072
1071
|
}
|
|
1073
|
-
]
|
|
1074
|
-
"type": "line-chart"
|
|
1072
|
+
]
|
|
1075
1073
|
},
|
|
1076
1074
|
{
|
|
1077
1075
|
"items": [
|
|
1078
1076
|
{
|
|
1079
|
-
"
|
|
1080
|
-
"
|
|
1077
|
+
"color": "primary",
|
|
1078
|
+
"label": "Current"
|
|
1081
1079
|
},
|
|
1082
1080
|
{
|
|
1083
|
-
"
|
|
1084
|
-
"
|
|
1081
|
+
"color": "muted",
|
|
1082
|
+
"label": "Previous"
|
|
1085
1083
|
}
|
|
1086
1084
|
],
|
|
1087
1085
|
"type": "chart-legend"
|
|
1088
1086
|
},
|
|
1089
1087
|
{
|
|
1090
|
-
"type": "graph-view",
|
|
1091
|
-
"height": 200.0,
|
|
1092
1088
|
"nodes": [
|
|
1093
1089
|
{
|
|
1094
1090
|
"label": "Start",
|
|
@@ -1103,6 +1099,8 @@
|
|
|
1103
1099
|
"label": "End"
|
|
1104
1100
|
}
|
|
1105
1101
|
],
|
|
1102
|
+
"height": 200.0,
|
|
1103
|
+
"type": "graph-view",
|
|
1106
1104
|
"edges": [
|
|
1107
1105
|
{
|
|
1108
1106
|
"target": "b",
|
|
@@ -1115,10 +1113,12 @@
|
|
|
1115
1113
|
],
|
|
1116
1114
|
"width": 400.0
|
|
1117
1115
|
}
|
|
1118
|
-
]
|
|
1116
|
+
],
|
|
1117
|
+
"type": "stack",
|
|
1118
|
+
"direction": "vertical",
|
|
1119
|
+
"gap": "lg"
|
|
1119
1120
|
}
|
|
1120
|
-
]
|
|
1121
|
-
"type": "scaled-diagram"
|
|
1121
|
+
]
|
|
1122
1122
|
}
|
|
1123
1123
|
]
|
|
1124
1124
|
}
|
|
@@ -1135,8 +1135,8 @@
|
|
|
1135
1135
|
"SensorReading",
|
|
1136
1136
|
{
|
|
1137
1137
|
"emit": {
|
|
1138
|
-
"
|
|
1139
|
-
"
|
|
1138
|
+
"success": "SensorReadingLoaded",
|
|
1139
|
+
"failure": "SensorReadingLoadFailed"
|
|
1140
1140
|
}
|
|
1141
1141
|
}
|
|
1142
1142
|
],
|
|
@@ -1145,52 +1145,53 @@
|
|
|
1145
1145
|
"main",
|
|
1146
1146
|
{
|
|
1147
1147
|
"appName": "IoT Dashboard",
|
|
1148
|
+
"type": "dashboard-layout",
|
|
1148
1149
|
"children": [
|
|
1149
1150
|
{
|
|
1150
1151
|
"children": [
|
|
1151
1152
|
{
|
|
1152
1153
|
"gap": "lg",
|
|
1153
|
-
"
|
|
1154
|
+
"type": "stack",
|
|
1154
1155
|
"children": [
|
|
1155
1156
|
{
|
|
1156
|
-
"type": "breadcrumb",
|
|
1157
1157
|
"items": [
|
|
1158
1158
|
{
|
|
1159
|
-
"
|
|
1160
|
-
"
|
|
1159
|
+
"label": "Home",
|
|
1160
|
+
"href": "/"
|
|
1161
1161
|
},
|
|
1162
1162
|
{
|
|
1163
1163
|
"label": "Sensor Readings"
|
|
1164
1164
|
}
|
|
1165
|
-
]
|
|
1165
|
+
],
|
|
1166
|
+
"type": "breadcrumb"
|
|
1166
1167
|
},
|
|
1167
1168
|
{
|
|
1168
|
-
"type": "stack",
|
|
1169
1169
|
"children": [
|
|
1170
1170
|
{
|
|
1171
|
-
"type": "stack",
|
|
1172
1171
|
"children": [
|
|
1173
1172
|
{
|
|
1174
|
-
"
|
|
1175
|
-
"
|
|
1173
|
+
"type": "icon",
|
|
1174
|
+
"name": "thermometer"
|
|
1176
1175
|
},
|
|
1177
1176
|
{
|
|
1178
|
-
"type": "typography",
|
|
1179
1177
|
"content": "Sensor Readings",
|
|
1180
|
-
"variant": "h2"
|
|
1178
|
+
"variant": "h2",
|
|
1179
|
+
"type": "typography"
|
|
1181
1180
|
}
|
|
1182
1181
|
],
|
|
1183
|
-
"
|
|
1184
|
-
"direction": "horizontal"
|
|
1182
|
+
"type": "stack",
|
|
1183
|
+
"direction": "horizontal",
|
|
1184
|
+
"gap": "md"
|
|
1185
1185
|
},
|
|
1186
1186
|
{
|
|
1187
|
-
"icon": "refresh-cw",
|
|
1188
1187
|
"variant": "secondary",
|
|
1188
|
+
"action": "REFRESH",
|
|
1189
1189
|
"label": "Refresh",
|
|
1190
1190
|
"type": "button",
|
|
1191
|
-
"
|
|
1191
|
+
"icon": "refresh-cw"
|
|
1192
1192
|
}
|
|
1193
1193
|
],
|
|
1194
|
+
"type": "stack",
|
|
1194
1195
|
"direction": "horizontal",
|
|
1195
1196
|
"gap": "md",
|
|
1196
1197
|
"justify": "between"
|
|
@@ -1199,19 +1200,16 @@
|
|
|
1199
1200
|
"type": "divider"
|
|
1200
1201
|
},
|
|
1201
1202
|
{
|
|
1202
|
-
"padding": "md",
|
|
1203
1203
|
"type": "box",
|
|
1204
1204
|
"children": [
|
|
1205
1205
|
{
|
|
1206
1206
|
"cols": 3.0,
|
|
1207
|
-
"type": "simple-grid",
|
|
1208
1207
|
"children": [
|
|
1209
1208
|
{
|
|
1209
|
+
"type": "card",
|
|
1210
1210
|
"children": [
|
|
1211
1211
|
{
|
|
1212
1212
|
"gap": "sm",
|
|
1213
|
-
"type": "stack",
|
|
1214
|
-
"direction": "vertical",
|
|
1215
1213
|
"children": [
|
|
1216
1214
|
{
|
|
1217
1215
|
"variant": "caption",
|
|
@@ -1219,38 +1217,39 @@
|
|
|
1219
1217
|
"type": "typography"
|
|
1220
1218
|
},
|
|
1221
1219
|
{
|
|
1222
|
-
"variant": "h3",
|
|
1223
1220
|
"type": "typography",
|
|
1224
|
-
"content": "@entity.sensorId"
|
|
1221
|
+
"content": "@entity.sensorId",
|
|
1222
|
+
"variant": "h3"
|
|
1225
1223
|
}
|
|
1226
|
-
]
|
|
1224
|
+
],
|
|
1225
|
+
"direction": "vertical",
|
|
1226
|
+
"type": "stack"
|
|
1227
1227
|
}
|
|
1228
|
-
]
|
|
1229
|
-
"type": "card"
|
|
1228
|
+
]
|
|
1230
1229
|
},
|
|
1231
1230
|
{
|
|
1232
|
-
"type": "stat-display",
|
|
1233
1231
|
"value": "@entity.value",
|
|
1232
|
+
"type": "stat-display",
|
|
1234
1233
|
"label": "Value"
|
|
1235
1234
|
},
|
|
1236
1235
|
{
|
|
1237
1236
|
"children": [
|
|
1238
1237
|
{
|
|
1239
|
-
"type": "stack",
|
|
1240
1238
|
"direction": "vertical",
|
|
1239
|
+
"gap": "sm",
|
|
1240
|
+
"type": "stack",
|
|
1241
1241
|
"children": [
|
|
1242
1242
|
{
|
|
1243
|
-
"content": "Unit",
|
|
1244
1243
|
"type": "typography",
|
|
1245
|
-
"variant": "caption"
|
|
1244
|
+
"variant": "caption",
|
|
1245
|
+
"content": "Unit"
|
|
1246
1246
|
},
|
|
1247
1247
|
{
|
|
1248
|
+
"type": "typography",
|
|
1248
1249
|
"variant": "h3",
|
|
1249
|
-
"content": "@entity.unit"
|
|
1250
|
-
"type": "typography"
|
|
1250
|
+
"content": "@entity.unit"
|
|
1251
1251
|
}
|
|
1252
|
-
]
|
|
1253
|
-
"gap": "sm"
|
|
1252
|
+
]
|
|
1254
1253
|
}
|
|
1255
1254
|
],
|
|
1256
1255
|
"type": "card"
|
|
@@ -1259,42 +1258,41 @@
|
|
|
1259
1258
|
"type": "card",
|
|
1260
1259
|
"children": [
|
|
1261
1260
|
{
|
|
1262
|
-
"direction": "vertical",
|
|
1263
|
-
"gap": "sm",
|
|
1264
|
-
"type": "stack",
|
|
1265
1261
|
"children": [
|
|
1266
1262
|
{
|
|
1267
1263
|
"variant": "caption",
|
|
1268
|
-
"
|
|
1269
|
-
"
|
|
1264
|
+
"content": "Timestamp",
|
|
1265
|
+
"type": "typography"
|
|
1270
1266
|
},
|
|
1271
1267
|
{
|
|
1272
|
-
"type": "typography",
|
|
1273
1268
|
"variant": "h3",
|
|
1274
|
-
"content": "@entity.timestamp"
|
|
1269
|
+
"content": "@entity.timestamp",
|
|
1270
|
+
"type": "typography"
|
|
1275
1271
|
}
|
|
1276
|
-
]
|
|
1272
|
+
],
|
|
1273
|
+
"direction": "vertical",
|
|
1274
|
+
"gap": "sm",
|
|
1275
|
+
"type": "stack"
|
|
1277
1276
|
}
|
|
1278
1277
|
]
|
|
1279
1278
|
}
|
|
1280
|
-
]
|
|
1279
|
+
],
|
|
1280
|
+
"type": "simple-grid"
|
|
1281
1281
|
}
|
|
1282
|
-
]
|
|
1282
|
+
],
|
|
1283
|
+
"padding": "md"
|
|
1283
1284
|
},
|
|
1284
1285
|
{
|
|
1285
1286
|
"type": "divider"
|
|
1286
1287
|
},
|
|
1287
1288
|
{
|
|
1288
|
-
"type": "grid",
|
|
1289
|
-
"cols": 2.0,
|
|
1290
|
-
"gap": "md",
|
|
1291
1289
|
"children": [
|
|
1292
1290
|
{
|
|
1293
1291
|
"type": "card",
|
|
1294
1292
|
"children": [
|
|
1295
1293
|
{
|
|
1296
|
-
"variant": "caption",
|
|
1297
1294
|
"content": "Chart View",
|
|
1295
|
+
"variant": "caption",
|
|
1298
1296
|
"type": "typography"
|
|
1299
1297
|
}
|
|
1300
1298
|
]
|
|
@@ -1303,45 +1301,47 @@
|
|
|
1303
1301
|
"type": "card",
|
|
1304
1302
|
"children": [
|
|
1305
1303
|
{
|
|
1306
|
-
"variant": "caption",
|
|
1307
1304
|
"type": "typography",
|
|
1305
|
+
"variant": "caption",
|
|
1308
1306
|
"content": "Graph View"
|
|
1309
1307
|
}
|
|
1310
1308
|
]
|
|
1311
1309
|
}
|
|
1312
|
-
]
|
|
1310
|
+
],
|
|
1311
|
+
"gap": "md",
|
|
1312
|
+
"type": "grid",
|
|
1313
|
+
"cols": 2.0
|
|
1313
1314
|
},
|
|
1314
1315
|
{
|
|
1316
|
+
"type": "line-chart",
|
|
1315
1317
|
"data": [
|
|
1316
1318
|
{
|
|
1317
|
-
"
|
|
1318
|
-
"
|
|
1319
|
+
"value": 12.0,
|
|
1320
|
+
"date": "Jan"
|
|
1319
1321
|
},
|
|
1320
1322
|
{
|
|
1321
|
-
"
|
|
1322
|
-
"
|
|
1323
|
+
"value": 19.0,
|
|
1324
|
+
"date": "Feb"
|
|
1323
1325
|
},
|
|
1324
1326
|
{
|
|
1325
1327
|
"date": "Mar",
|
|
1326
1328
|
"value": 15.0
|
|
1327
1329
|
},
|
|
1328
1330
|
{
|
|
1329
|
-
"
|
|
1330
|
-
"
|
|
1331
|
+
"value": 25.0,
|
|
1332
|
+
"date": "Apr"
|
|
1331
1333
|
},
|
|
1332
1334
|
{
|
|
1333
|
-
"
|
|
1334
|
-
"
|
|
1335
|
+
"date": "May",
|
|
1336
|
+
"value": 22.0
|
|
1335
1337
|
},
|
|
1336
1338
|
{
|
|
1337
|
-
"
|
|
1338
|
-
"
|
|
1339
|
+
"value": 30.0,
|
|
1340
|
+
"date": "Jun"
|
|
1339
1341
|
}
|
|
1340
|
-
]
|
|
1341
|
-
"type": "line-chart"
|
|
1342
|
+
]
|
|
1342
1343
|
},
|
|
1343
1344
|
{
|
|
1344
|
-
"type": "chart-legend",
|
|
1345
1345
|
"items": [
|
|
1346
1346
|
{
|
|
1347
1347
|
"label": "Current",
|
|
@@ -1351,60 +1351,60 @@
|
|
|
1351
1351
|
"label": "Previous",
|
|
1352
1352
|
"color": "muted"
|
|
1353
1353
|
}
|
|
1354
|
-
]
|
|
1354
|
+
],
|
|
1355
|
+
"type": "chart-legend"
|
|
1355
1356
|
},
|
|
1356
1357
|
{
|
|
1358
|
+
"type": "graph-view",
|
|
1359
|
+
"width": 400.0,
|
|
1357
1360
|
"height": 200.0,
|
|
1358
|
-
"
|
|
1359
|
-
{
|
|
1360
|
-
"id": "a",
|
|
1361
|
-
"label": "Start"
|
|
1362
|
-
},
|
|
1361
|
+
"edges": [
|
|
1363
1362
|
{
|
|
1364
|
-
"
|
|
1365
|
-
"
|
|
1363
|
+
"target": "b",
|
|
1364
|
+
"source": "a"
|
|
1366
1365
|
},
|
|
1367
1366
|
{
|
|
1368
|
-
"
|
|
1369
|
-
"
|
|
1367
|
+
"target": "c",
|
|
1368
|
+
"source": "b"
|
|
1370
1369
|
}
|
|
1371
1370
|
],
|
|
1372
|
-
"
|
|
1373
|
-
"edges": [
|
|
1371
|
+
"nodes": [
|
|
1374
1372
|
{
|
|
1375
|
-
"
|
|
1376
|
-
"
|
|
1373
|
+
"label": "Start",
|
|
1374
|
+
"id": "a"
|
|
1377
1375
|
},
|
|
1378
1376
|
{
|
|
1379
|
-
"
|
|
1380
|
-
"
|
|
1377
|
+
"id": "b",
|
|
1378
|
+
"label": "Process"
|
|
1379
|
+
},
|
|
1380
|
+
{
|
|
1381
|
+
"id": "c",
|
|
1382
|
+
"label": "End"
|
|
1381
1383
|
}
|
|
1382
|
-
]
|
|
1383
|
-
"width": 400.0
|
|
1384
|
+
]
|
|
1384
1385
|
}
|
|
1385
1386
|
],
|
|
1386
|
-
"
|
|
1387
|
+
"direction": "vertical"
|
|
1387
1388
|
}
|
|
1388
1389
|
],
|
|
1389
1390
|
"type": "scaled-diagram"
|
|
1390
1391
|
}
|
|
1391
1392
|
],
|
|
1392
|
-
"type": "dashboard-layout",
|
|
1393
1393
|
"navItems": [
|
|
1394
1394
|
{
|
|
1395
|
-
"label": "Sensors",
|
|
1396
1395
|
"href": "/sensors",
|
|
1397
|
-
"icon": "layout-list"
|
|
1396
|
+
"icon": "layout-list",
|
|
1397
|
+
"label": "Sensors"
|
|
1398
1398
|
},
|
|
1399
1399
|
{
|
|
1400
1400
|
"href": "/devices",
|
|
1401
|
-
"
|
|
1402
|
-
"
|
|
1401
|
+
"icon": "cpu",
|
|
1402
|
+
"label": "Devices"
|
|
1403
1403
|
},
|
|
1404
1404
|
{
|
|
1405
|
+
"icon": "bell",
|
|
1405
1406
|
"label": "Alerts",
|
|
1406
|
-
"href": "/alerts"
|
|
1407
|
-
"icon": "bell"
|
|
1407
|
+
"href": "/alerts"
|
|
1408
1408
|
}
|
|
1409
1409
|
]
|
|
1410
1410
|
}
|
|
@@ -1421,8 +1421,8 @@
|
|
|
1421
1421
|
"SensorReading",
|
|
1422
1422
|
{
|
|
1423
1423
|
"emit": {
|
|
1424
|
-
"
|
|
1425
|
-
"
|
|
1424
|
+
"success": "SensorReadingLoaded",
|
|
1425
|
+
"failure": "SensorReadingLoadFailed"
|
|
1426
1426
|
}
|
|
1427
1427
|
}
|
|
1428
1428
|
],
|
|
@@ -1430,51 +1430,31 @@
|
|
|
1430
1430
|
"render-ui",
|
|
1431
1431
|
"main",
|
|
1432
1432
|
{
|
|
1433
|
-
"navItems": [
|
|
1434
|
-
{
|
|
1435
|
-
"href": "/sensors",
|
|
1436
|
-
"icon": "layout-list",
|
|
1437
|
-
"label": "Sensors"
|
|
1438
|
-
},
|
|
1439
|
-
{
|
|
1440
|
-
"icon": "cpu",
|
|
1441
|
-
"href": "/devices",
|
|
1442
|
-
"label": "Devices"
|
|
1443
|
-
},
|
|
1444
|
-
{
|
|
1445
|
-
"label": "Alerts",
|
|
1446
|
-
"icon": "bell",
|
|
1447
|
-
"href": "/alerts"
|
|
1448
|
-
}
|
|
1449
|
-
],
|
|
1450
|
-
"appName": "IoT Dashboard",
|
|
1451
1433
|
"children": [
|
|
1452
1434
|
{
|
|
1453
|
-
"type": "scaled-diagram",
|
|
1454
1435
|
"children": [
|
|
1455
1436
|
{
|
|
1456
|
-
"
|
|
1437
|
+
"type": "stack",
|
|
1457
1438
|
"direction": "vertical",
|
|
1439
|
+
"gap": "lg",
|
|
1458
1440
|
"children": [
|
|
1459
1441
|
{
|
|
1460
|
-
"type": "breadcrumb",
|
|
1461
1442
|
"items": [
|
|
1462
1443
|
{
|
|
1463
|
-
"
|
|
1464
|
-
"
|
|
1444
|
+
"href": "/",
|
|
1445
|
+
"label": "Home"
|
|
1465
1446
|
},
|
|
1466
1447
|
{
|
|
1467
1448
|
"label": "Sensor Readings"
|
|
1468
1449
|
}
|
|
1469
|
-
]
|
|
1450
|
+
],
|
|
1451
|
+
"type": "breadcrumb"
|
|
1470
1452
|
},
|
|
1471
1453
|
{
|
|
1472
|
-
"direction": "horizontal",
|
|
1473
|
-
"justify": "between",
|
|
1474
1454
|
"type": "stack",
|
|
1475
|
-
"gap": "md",
|
|
1476
1455
|
"children": [
|
|
1477
1456
|
{
|
|
1457
|
+
"type": "stack",
|
|
1478
1458
|
"direction": "horizontal",
|
|
1479
1459
|
"children": [
|
|
1480
1460
|
{
|
|
@@ -1482,34 +1462,40 @@
|
|
|
1482
1462
|
"type": "icon"
|
|
1483
1463
|
},
|
|
1484
1464
|
{
|
|
1485
|
-
"
|
|
1465
|
+
"content": "Sensor Readings",
|
|
1486
1466
|
"variant": "h2",
|
|
1487
|
-
"
|
|
1467
|
+
"type": "typography"
|
|
1488
1468
|
}
|
|
1489
1469
|
],
|
|
1490
|
-
"gap": "md"
|
|
1491
|
-
"type": "stack"
|
|
1470
|
+
"gap": "md"
|
|
1492
1471
|
},
|
|
1493
1472
|
{
|
|
1494
1473
|
"type": "button",
|
|
1474
|
+
"icon": "refresh-cw",
|
|
1495
1475
|
"action": "REFRESH",
|
|
1496
1476
|
"label": "Refresh",
|
|
1497
|
-
"variant": "secondary"
|
|
1498
|
-
"icon": "refresh-cw"
|
|
1477
|
+
"variant": "secondary"
|
|
1499
1478
|
}
|
|
1500
|
-
]
|
|
1479
|
+
],
|
|
1480
|
+
"gap": "md",
|
|
1481
|
+
"justify": "between",
|
|
1482
|
+
"direction": "horizontal"
|
|
1501
1483
|
},
|
|
1502
1484
|
{
|
|
1503
1485
|
"type": "divider"
|
|
1504
1486
|
},
|
|
1505
1487
|
{
|
|
1488
|
+
"padding": "md",
|
|
1506
1489
|
"type": "box",
|
|
1507
1490
|
"children": [
|
|
1508
1491
|
{
|
|
1492
|
+
"cols": 3.0,
|
|
1509
1493
|
"children": [
|
|
1510
1494
|
{
|
|
1495
|
+
"type": "card",
|
|
1511
1496
|
"children": [
|
|
1512
1497
|
{
|
|
1498
|
+
"type": "stack",
|
|
1513
1499
|
"children": [
|
|
1514
1500
|
{
|
|
1515
1501
|
"content": "SensorId",
|
|
@@ -1517,22 +1503,20 @@
|
|
|
1517
1503
|
"variant": "caption"
|
|
1518
1504
|
},
|
|
1519
1505
|
{
|
|
1520
|
-
"
|
|
1506
|
+
"variant": "h3",
|
|
1521
1507
|
"content": "@entity.sensorId",
|
|
1522
|
-
"
|
|
1508
|
+
"type": "typography"
|
|
1523
1509
|
}
|
|
1524
1510
|
],
|
|
1525
|
-
"
|
|
1526
|
-
"
|
|
1527
|
-
"direction": "vertical"
|
|
1511
|
+
"direction": "vertical",
|
|
1512
|
+
"gap": "sm"
|
|
1528
1513
|
}
|
|
1529
|
-
]
|
|
1530
|
-
"type": "card"
|
|
1514
|
+
]
|
|
1531
1515
|
},
|
|
1532
1516
|
{
|
|
1517
|
+
"type": "stat-display",
|
|
1533
1518
|
"label": "Value",
|
|
1534
|
-
"value": "@entity.value"
|
|
1535
|
-
"type": "stat-display"
|
|
1519
|
+
"value": "@entity.value"
|
|
1536
1520
|
},
|
|
1537
1521
|
{
|
|
1538
1522
|
"type": "card",
|
|
@@ -1545,45 +1529,43 @@
|
|
|
1545
1529
|
"content": "Unit"
|
|
1546
1530
|
},
|
|
1547
1531
|
{
|
|
1548
|
-
"type": "typography",
|
|
1549
1532
|
"variant": "h3",
|
|
1550
|
-
"content": "@entity.unit"
|
|
1533
|
+
"content": "@entity.unit",
|
|
1534
|
+
"type": "typography"
|
|
1551
1535
|
}
|
|
1552
1536
|
],
|
|
1553
|
-
"
|
|
1537
|
+
"direction": "vertical",
|
|
1554
1538
|
"gap": "sm",
|
|
1555
|
-
"
|
|
1539
|
+
"type": "stack"
|
|
1556
1540
|
}
|
|
1557
1541
|
]
|
|
1558
1542
|
},
|
|
1559
1543
|
{
|
|
1544
|
+
"type": "card",
|
|
1560
1545
|
"children": [
|
|
1561
1546
|
{
|
|
1547
|
+
"gap": "sm",
|
|
1548
|
+
"type": "stack",
|
|
1549
|
+
"direction": "vertical",
|
|
1562
1550
|
"children": [
|
|
1563
1551
|
{
|
|
1564
1552
|
"variant": "caption",
|
|
1565
|
-
"
|
|
1566
|
-
"
|
|
1553
|
+
"content": "Timestamp",
|
|
1554
|
+
"type": "typography"
|
|
1567
1555
|
},
|
|
1568
1556
|
{
|
|
1569
|
-
"content": "@entity.timestamp",
|
|
1570
1557
|
"type": "typography",
|
|
1571
|
-
"variant": "h3"
|
|
1558
|
+
"variant": "h3",
|
|
1559
|
+
"content": "@entity.timestamp"
|
|
1572
1560
|
}
|
|
1573
|
-
]
|
|
1574
|
-
"type": "stack",
|
|
1575
|
-
"gap": "sm",
|
|
1576
|
-
"direction": "vertical"
|
|
1561
|
+
]
|
|
1577
1562
|
}
|
|
1578
|
-
]
|
|
1579
|
-
"type": "card"
|
|
1563
|
+
]
|
|
1580
1564
|
}
|
|
1581
1565
|
],
|
|
1582
|
-
"cols": 3.0,
|
|
1583
1566
|
"type": "simple-grid"
|
|
1584
1567
|
}
|
|
1585
|
-
]
|
|
1586
|
-
"padding": "md"
|
|
1568
|
+
]
|
|
1587
1569
|
},
|
|
1588
1570
|
{
|
|
1589
1571
|
"type": "divider"
|
|
@@ -1591,65 +1573,65 @@
|
|
|
1591
1573
|
{
|
|
1592
1574
|
"children": [
|
|
1593
1575
|
{
|
|
1594
|
-
"type": "card",
|
|
1595
1576
|
"children": [
|
|
1596
1577
|
{
|
|
1578
|
+
"type": "typography",
|
|
1597
1579
|
"variant": "caption",
|
|
1598
|
-
"content": "Chart View"
|
|
1599
|
-
"type": "typography"
|
|
1580
|
+
"content": "Chart View"
|
|
1600
1581
|
}
|
|
1601
|
-
]
|
|
1582
|
+
],
|
|
1583
|
+
"type": "card"
|
|
1602
1584
|
},
|
|
1603
1585
|
{
|
|
1604
1586
|
"children": [
|
|
1605
1587
|
{
|
|
1588
|
+
"variant": "caption",
|
|
1606
1589
|
"content": "Graph View",
|
|
1607
|
-
"type": "typography"
|
|
1608
|
-
"variant": "caption"
|
|
1590
|
+
"type": "typography"
|
|
1609
1591
|
}
|
|
1610
1592
|
],
|
|
1611
1593
|
"type": "card"
|
|
1612
1594
|
}
|
|
1613
1595
|
],
|
|
1614
1596
|
"cols": 2.0,
|
|
1615
|
-
"
|
|
1616
|
-
"
|
|
1597
|
+
"type": "grid",
|
|
1598
|
+
"gap": "md"
|
|
1617
1599
|
},
|
|
1618
1600
|
{
|
|
1601
|
+
"type": "line-chart",
|
|
1619
1602
|
"data": [
|
|
1620
1603
|
{
|
|
1621
|
-
"
|
|
1622
|
-
"
|
|
1604
|
+
"date": "Jan",
|
|
1605
|
+
"value": 12.0
|
|
1623
1606
|
},
|
|
1624
1607
|
{
|
|
1625
1608
|
"date": "Feb",
|
|
1626
1609
|
"value": 19.0
|
|
1627
1610
|
},
|
|
1628
1611
|
{
|
|
1629
|
-
"
|
|
1630
|
-
"
|
|
1612
|
+
"date": "Mar",
|
|
1613
|
+
"value": 15.0
|
|
1631
1614
|
},
|
|
1632
1615
|
{
|
|
1633
|
-
"
|
|
1634
|
-
"
|
|
1616
|
+
"date": "Apr",
|
|
1617
|
+
"value": 25.0
|
|
1635
1618
|
},
|
|
1636
1619
|
{
|
|
1637
|
-
"
|
|
1638
|
-
"
|
|
1620
|
+
"value": 22.0,
|
|
1621
|
+
"date": "May"
|
|
1639
1622
|
},
|
|
1640
1623
|
{
|
|
1641
1624
|
"date": "Jun",
|
|
1642
1625
|
"value": 30.0
|
|
1643
1626
|
}
|
|
1644
|
-
]
|
|
1645
|
-
"type": "line-chart"
|
|
1627
|
+
]
|
|
1646
1628
|
},
|
|
1647
1629
|
{
|
|
1648
1630
|
"type": "chart-legend",
|
|
1649
1631
|
"items": [
|
|
1650
1632
|
{
|
|
1651
|
-
"
|
|
1652
|
-
"
|
|
1633
|
+
"label": "Current",
|
|
1634
|
+
"color": "primary"
|
|
1653
1635
|
},
|
|
1654
1636
|
{
|
|
1655
1637
|
"color": "muted",
|
|
@@ -1658,23 +1640,7 @@
|
|
|
1658
1640
|
]
|
|
1659
1641
|
},
|
|
1660
1642
|
{
|
|
1661
|
-
"height": 200.0,
|
|
1662
1643
|
"type": "graph-view",
|
|
1663
|
-
"width": 400.0,
|
|
1664
|
-
"nodes": [
|
|
1665
|
-
{
|
|
1666
|
-
"label": "Start",
|
|
1667
|
-
"id": "a"
|
|
1668
|
-
},
|
|
1669
|
-
{
|
|
1670
|
-
"label": "Process",
|
|
1671
|
-
"id": "b"
|
|
1672
|
-
},
|
|
1673
|
-
{
|
|
1674
|
-
"label": "End",
|
|
1675
|
-
"id": "c"
|
|
1676
|
-
}
|
|
1677
|
-
],
|
|
1678
1644
|
"edges": [
|
|
1679
1645
|
{
|
|
1680
1646
|
"source": "a",
|
|
@@ -1684,15 +1650,49 @@
|
|
|
1684
1650
|
"source": "b",
|
|
1685
1651
|
"target": "c"
|
|
1686
1652
|
}
|
|
1687
|
-
]
|
|
1653
|
+
],
|
|
1654
|
+
"nodes": [
|
|
1655
|
+
{
|
|
1656
|
+
"label": "Start",
|
|
1657
|
+
"id": "a"
|
|
1658
|
+
},
|
|
1659
|
+
{
|
|
1660
|
+
"id": "b",
|
|
1661
|
+
"label": "Process"
|
|
1662
|
+
},
|
|
1663
|
+
{
|
|
1664
|
+
"id": "c",
|
|
1665
|
+
"label": "End"
|
|
1666
|
+
}
|
|
1667
|
+
],
|
|
1668
|
+
"width": 400.0,
|
|
1669
|
+
"height": 200.0
|
|
1688
1670
|
}
|
|
1689
|
-
]
|
|
1690
|
-
"type": "stack"
|
|
1671
|
+
]
|
|
1691
1672
|
}
|
|
1692
|
-
]
|
|
1673
|
+
],
|
|
1674
|
+
"type": "scaled-diagram"
|
|
1693
1675
|
}
|
|
1694
1676
|
],
|
|
1695
|
-
"
|
|
1677
|
+
"appName": "IoT Dashboard",
|
|
1678
|
+
"type": "dashboard-layout",
|
|
1679
|
+
"navItems": [
|
|
1680
|
+
{
|
|
1681
|
+
"icon": "layout-list",
|
|
1682
|
+
"href": "/sensors",
|
|
1683
|
+
"label": "Sensors"
|
|
1684
|
+
},
|
|
1685
|
+
{
|
|
1686
|
+
"href": "/devices",
|
|
1687
|
+
"label": "Devices",
|
|
1688
|
+
"icon": "cpu"
|
|
1689
|
+
},
|
|
1690
|
+
{
|
|
1691
|
+
"label": "Alerts",
|
|
1692
|
+
"icon": "bell",
|
|
1693
|
+
"href": "/alerts"
|
|
1694
|
+
}
|
|
1695
|
+
]
|
|
1696
1696
|
}
|
|
1697
1697
|
]
|
|
1698
1698
|
]
|
|
@@ -1867,6 +1867,8 @@
|
|
|
1867
1867
|
"render-ui",
|
|
1868
1868
|
"main",
|
|
1869
1869
|
{
|
|
1870
|
+
"type": "stack",
|
|
1871
|
+
"align": "center",
|
|
1870
1872
|
"className": "py-12",
|
|
1871
1873
|
"children": [
|
|
1872
1874
|
{
|
|
@@ -1875,12 +1877,10 @@
|
|
|
1875
1877
|
{
|
|
1876
1878
|
"variant": "caption",
|
|
1877
1879
|
"type": "typography",
|
|
1878
|
-
"
|
|
1879
|
-
"
|
|
1880
|
+
"color": "muted",
|
|
1881
|
+
"content": "Loading…"
|
|
1880
1882
|
}
|
|
1881
1883
|
],
|
|
1882
|
-
"align": "center",
|
|
1883
|
-
"type": "stack",
|
|
1884
1884
|
"gap": "md",
|
|
1885
1885
|
"direction": "vertical"
|
|
1886
1886
|
}
|
|
@@ -1898,8 +1898,8 @@
|
|
|
1898
1898
|
{
|
|
1899
1899
|
"navItems": [
|
|
1900
1900
|
{
|
|
1901
|
-
"label": "Sensors",
|
|
1902
1901
|
"icon": "layout-list",
|
|
1902
|
+
"label": "Sensors",
|
|
1903
1903
|
"href": "/sensors"
|
|
1904
1904
|
},
|
|
1905
1905
|
{
|
|
@@ -1913,27 +1913,28 @@
|
|
|
1913
1913
|
"label": "Alerts"
|
|
1914
1914
|
}
|
|
1915
1915
|
],
|
|
1916
|
+
"type": "dashboard-layout",
|
|
1917
|
+
"appName": "IoT Dashboard",
|
|
1916
1918
|
"children": [
|
|
1917
1919
|
{
|
|
1920
|
+
"direction": "vertical",
|
|
1918
1921
|
"type": "stack",
|
|
1919
1922
|
"gap": "lg",
|
|
1920
1923
|
"className": "max-w-5xl mx-auto w-full",
|
|
1921
1924
|
"children": [
|
|
1922
1925
|
{
|
|
1923
|
-
"gap": "md",
|
|
1924
1926
|
"justify": "between",
|
|
1925
|
-
"align": "center",
|
|
1926
1927
|
"type": "stack",
|
|
1928
|
+
"align": "center",
|
|
1929
|
+
"gap": "md",
|
|
1927
1930
|
"direction": "horizontal",
|
|
1928
1931
|
"children": [
|
|
1929
1932
|
{
|
|
1930
1933
|
"direction": "horizontal",
|
|
1931
|
-
"align": "center",
|
|
1932
|
-
"type": "stack",
|
|
1933
1934
|
"children": [
|
|
1934
1935
|
{
|
|
1935
|
-
"
|
|
1936
|
-
"
|
|
1936
|
+
"name": "cpu",
|
|
1937
|
+
"type": "icon"
|
|
1937
1938
|
},
|
|
1938
1939
|
{
|
|
1939
1940
|
"content": "Devices",
|
|
@@ -1941,20 +1942,22 @@
|
|
|
1941
1942
|
"type": "typography"
|
|
1942
1943
|
}
|
|
1943
1944
|
],
|
|
1944
|
-
"
|
|
1945
|
+
"type": "stack",
|
|
1946
|
+
"gap": "sm",
|
|
1947
|
+
"align": "center"
|
|
1945
1948
|
},
|
|
1946
1949
|
{
|
|
1947
1950
|
"gap": "sm",
|
|
1951
|
+
"direction": "horizontal",
|
|
1948
1952
|
"children": [
|
|
1949
1953
|
{
|
|
1950
|
-
"
|
|
1951
|
-
"label": "Create Device",
|
|
1952
|
-
"action": "CREATE",
|
|
1954
|
+
"variant": "primary",
|
|
1953
1955
|
"type": "button",
|
|
1954
|
-
"
|
|
1956
|
+
"action": "CREATE",
|
|
1957
|
+
"label": "Create Device",
|
|
1958
|
+
"icon": "plus"
|
|
1955
1959
|
}
|
|
1956
1960
|
],
|
|
1957
|
-
"direction": "horizontal",
|
|
1958
1961
|
"type": "stack"
|
|
1959
1962
|
}
|
|
1960
1963
|
]
|
|
@@ -1963,56 +1966,53 @@
|
|
|
1963
1966
|
"type": "divider"
|
|
1964
1967
|
},
|
|
1965
1968
|
{
|
|
1966
|
-
"cols": 3.0,
|
|
1967
1969
|
"type": "data-grid",
|
|
1970
|
+
"itemActions": [
|
|
1971
|
+
{
|
|
1972
|
+
"variant": "ghost",
|
|
1973
|
+
"label": "View",
|
|
1974
|
+
"event": "VIEW"
|
|
1975
|
+
},
|
|
1976
|
+
{
|
|
1977
|
+
"label": "Edit",
|
|
1978
|
+
"variant": "ghost",
|
|
1979
|
+
"event": "EDIT"
|
|
1980
|
+
},
|
|
1981
|
+
{
|
|
1982
|
+
"event": "DELETE",
|
|
1983
|
+
"label": "Delete",
|
|
1984
|
+
"variant": "danger"
|
|
1985
|
+
}
|
|
1986
|
+
],
|
|
1987
|
+
"gap": "md",
|
|
1988
|
+
"fields": [],
|
|
1968
1989
|
"entity": "@payload.data",
|
|
1969
1990
|
"columns": [
|
|
1970
1991
|
{
|
|
1971
1992
|
"variant": "h3",
|
|
1972
|
-
"
|
|
1973
|
-
"
|
|
1993
|
+
"name": "name",
|
|
1994
|
+
"icon": "cpu"
|
|
1974
1995
|
},
|
|
1975
1996
|
{
|
|
1976
|
-
"
|
|
1977
|
-
"
|
|
1997
|
+
"name": "status",
|
|
1998
|
+
"variant": "badge"
|
|
1978
1999
|
},
|
|
1979
2000
|
{
|
|
1980
2001
|
"name": "type",
|
|
1981
2002
|
"variant": "body"
|
|
1982
2003
|
},
|
|
1983
2004
|
{
|
|
1984
|
-
"
|
|
1985
|
-
"format": "date",
|
|
2005
|
+
"variant": "caption",
|
|
1986
2006
|
"name": "lastSeen",
|
|
1987
|
-
"
|
|
2007
|
+
"format": "date",
|
|
2008
|
+
"label": "Last Seen"
|
|
1988
2009
|
}
|
|
1989
2010
|
],
|
|
1990
|
-
"
|
|
1991
|
-
"gap": "md",
|
|
1992
|
-
"itemActions": [
|
|
1993
|
-
{
|
|
1994
|
-
"variant": "ghost",
|
|
1995
|
-
"event": "VIEW",
|
|
1996
|
-
"label": "View"
|
|
1997
|
-
},
|
|
1998
|
-
{
|
|
1999
|
-
"label": "Edit",
|
|
2000
|
-
"event": "EDIT",
|
|
2001
|
-
"variant": "ghost"
|
|
2002
|
-
},
|
|
2003
|
-
{
|
|
2004
|
-
"label": "Delete",
|
|
2005
|
-
"variant": "danger",
|
|
2006
|
-
"event": "DELETE"
|
|
2007
|
-
}
|
|
2008
|
-
]
|
|
2011
|
+
"cols": 3.0
|
|
2009
2012
|
}
|
|
2010
|
-
]
|
|
2011
|
-
"direction": "vertical"
|
|
2013
|
+
]
|
|
2012
2014
|
}
|
|
2013
|
-
]
|
|
2014
|
-
"type": "dashboard-layout",
|
|
2015
|
-
"appName": "IoT Dashboard"
|
|
2015
|
+
]
|
|
2016
2016
|
}
|
|
2017
2017
|
]
|
|
2018
2018
|
]
|
|
@@ -2026,14 +2026,14 @@
|
|
|
2026
2026
|
"render-ui",
|
|
2027
2027
|
"main",
|
|
2028
2028
|
{
|
|
2029
|
-
"
|
|
2029
|
+
"gap": "md",
|
|
2030
2030
|
"type": "stack",
|
|
2031
2031
|
"align": "center",
|
|
2032
2032
|
"children": [
|
|
2033
2033
|
{
|
|
2034
|
+
"color": "destructive",
|
|
2034
2035
|
"type": "icon",
|
|
2035
|
-
"name": "alert-triangle"
|
|
2036
|
-
"color": "destructive"
|
|
2036
|
+
"name": "alert-triangle"
|
|
2037
2037
|
},
|
|
2038
2038
|
{
|
|
2039
2039
|
"variant": "h3",
|
|
@@ -2041,21 +2041,21 @@
|
|
|
2041
2041
|
"type": "typography"
|
|
2042
2042
|
},
|
|
2043
2043
|
{
|
|
2044
|
+
"variant": "body",
|
|
2044
2045
|
"content": "@payload.error",
|
|
2045
2046
|
"type": "typography",
|
|
2046
|
-
"variant": "body",
|
|
2047
2047
|
"color": "muted"
|
|
2048
2048
|
},
|
|
2049
2049
|
{
|
|
2050
|
-
"action": "INIT",
|
|
2051
|
-
"type": "button",
|
|
2052
|
-
"variant": "primary",
|
|
2053
2050
|
"label": "Retry",
|
|
2054
|
-
"
|
|
2051
|
+
"variant": "primary",
|
|
2052
|
+
"icon": "rotate-ccw",
|
|
2053
|
+
"action": "INIT",
|
|
2054
|
+
"type": "button"
|
|
2055
2055
|
}
|
|
2056
2056
|
],
|
|
2057
2057
|
"className": "py-12",
|
|
2058
|
-
"
|
|
2058
|
+
"direction": "vertical"
|
|
2059
2059
|
}
|
|
2060
2060
|
]
|
|
2061
2061
|
]
|
|
@@ -2231,8 +2231,8 @@
|
|
|
2231
2231
|
"Device",
|
|
2232
2232
|
{
|
|
2233
2233
|
"emit": {
|
|
2234
|
-
"
|
|
2235
|
-
"
|
|
2234
|
+
"success": "DeviceLoaded",
|
|
2235
|
+
"failure": "DeviceLoadFailed"
|
|
2236
2236
|
}
|
|
2237
2237
|
}
|
|
2238
2238
|
],
|
|
@@ -2242,35 +2242,35 @@
|
|
|
2242
2242
|
{
|
|
2243
2243
|
"children": [
|
|
2244
2244
|
{
|
|
2245
|
-
"direction": "horizontal",
|
|
2246
|
-
"type": "stack",
|
|
2247
|
-
"gap": "sm",
|
|
2248
2245
|
"children": [
|
|
2249
2246
|
{
|
|
2250
2247
|
"type": "icon",
|
|
2251
2248
|
"name": "plus-circle"
|
|
2252
2249
|
},
|
|
2253
2250
|
{
|
|
2254
|
-
"content": "Create Device",
|
|
2255
2251
|
"type": "typography",
|
|
2256
|
-
"variant": "h3"
|
|
2252
|
+
"variant": "h3",
|
|
2253
|
+
"content": "Create Device"
|
|
2257
2254
|
}
|
|
2258
|
-
]
|
|
2255
|
+
],
|
|
2256
|
+
"direction": "horizontal",
|
|
2257
|
+
"gap": "sm",
|
|
2258
|
+
"type": "stack"
|
|
2259
2259
|
},
|
|
2260
2260
|
{
|
|
2261
2261
|
"type": "divider"
|
|
2262
2262
|
},
|
|
2263
2263
|
{
|
|
2264
|
-
"type": "form-section",
|
|
2265
|
-
"cancelEvent": "CLOSE",
|
|
2266
|
-
"submitEvent": "SAVE",
|
|
2267
2264
|
"fields": [
|
|
2268
2265
|
"name",
|
|
2269
2266
|
"type",
|
|
2270
2267
|
"status",
|
|
2271
2268
|
"lastSeen"
|
|
2272
2269
|
],
|
|
2273
|
-
"
|
|
2270
|
+
"submitEvent": "SAVE",
|
|
2271
|
+
"mode": "create",
|
|
2272
|
+
"type": "form-section",
|
|
2273
|
+
"cancelEvent": "CLOSE"
|
|
2274
2274
|
}
|
|
2275
2275
|
],
|
|
2276
2276
|
"type": "stack",
|
|
@@ -2316,8 +2316,8 @@
|
|
|
2316
2316
|
"@payload.data",
|
|
2317
2317
|
{
|
|
2318
2318
|
"emit": {
|
|
2319
|
-
"
|
|
2320
|
-
"
|
|
2319
|
+
"failure": "DeviceSaveFailed",
|
|
2320
|
+
"success": "DeviceSaved"
|
|
2321
2321
|
}
|
|
2322
2322
|
}
|
|
2323
2323
|
],
|
|
@@ -2521,8 +2521,8 @@
|
|
|
2521
2521
|
{
|
|
2522
2522
|
"id": "@payload.id",
|
|
2523
2523
|
"emit": {
|
|
2524
|
-
"
|
|
2525
|
-
"
|
|
2524
|
+
"failure": "DeviceLoadFailed",
|
|
2525
|
+
"success": "DeviceLoaded"
|
|
2526
2526
|
}
|
|
2527
2527
|
}
|
|
2528
2528
|
],
|
|
@@ -2531,8 +2531,12 @@
|
|
|
2531
2531
|
"modal",
|
|
2532
2532
|
{
|
|
2533
2533
|
"type": "stack",
|
|
2534
|
+
"direction": "vertical",
|
|
2535
|
+
"gap": "md",
|
|
2534
2536
|
"children": [
|
|
2535
2537
|
{
|
|
2538
|
+
"type": "stack",
|
|
2539
|
+
"direction": "horizontal",
|
|
2536
2540
|
"gap": "sm",
|
|
2537
2541
|
"children": [
|
|
2538
2542
|
{
|
|
@@ -2544,29 +2548,25 @@
|
|
|
2544
2548
|
"content": "Edit Device",
|
|
2545
2549
|
"variant": "h3"
|
|
2546
2550
|
}
|
|
2547
|
-
]
|
|
2548
|
-
"type": "stack",
|
|
2549
|
-
"direction": "horizontal"
|
|
2551
|
+
]
|
|
2550
2552
|
},
|
|
2551
2553
|
{
|
|
2552
2554
|
"type": "divider"
|
|
2553
2555
|
},
|
|
2554
2556
|
{
|
|
2555
|
-
"
|
|
2557
|
+
"entity": "@payload.row",
|
|
2556
2558
|
"mode": "edit",
|
|
2557
|
-
"submitEvent": "SAVE",
|
|
2558
2559
|
"cancelEvent": "CLOSE",
|
|
2560
|
+
"submitEvent": "SAVE",
|
|
2559
2561
|
"fields": [
|
|
2560
2562
|
"name",
|
|
2561
2563
|
"type",
|
|
2562
2564
|
"status",
|
|
2563
2565
|
"lastSeen"
|
|
2564
2566
|
],
|
|
2565
|
-
"
|
|
2567
|
+
"type": "form-section"
|
|
2566
2568
|
}
|
|
2567
|
-
]
|
|
2568
|
-
"gap": "md",
|
|
2569
|
-
"direction": "vertical"
|
|
2569
|
+
]
|
|
2570
2570
|
}
|
|
2571
2571
|
]
|
|
2572
2572
|
]
|
|
@@ -2747,8 +2747,8 @@
|
|
|
2747
2747
|
{
|
|
2748
2748
|
"id": "@payload.id",
|
|
2749
2749
|
"emit": {
|
|
2750
|
-
"
|
|
2751
|
-
"
|
|
2750
|
+
"failure": "DeviceLoadFailed",
|
|
2751
|
+
"success": "DeviceLoaded"
|
|
2752
2752
|
}
|
|
2753
2753
|
}
|
|
2754
2754
|
],
|
|
@@ -2756,14 +2756,13 @@
|
|
|
2756
2756
|
"render-ui",
|
|
2757
2757
|
"modal",
|
|
2758
2758
|
{
|
|
2759
|
-
"direction": "vertical",
|
|
2760
|
-
"gap": "md",
|
|
2761
2759
|
"children": [
|
|
2762
2760
|
{
|
|
2761
|
+
"align": "center",
|
|
2763
2762
|
"children": [
|
|
2764
2763
|
{
|
|
2765
|
-
"
|
|
2766
|
-
"
|
|
2764
|
+
"name": "eye",
|
|
2765
|
+
"type": "icon"
|
|
2767
2766
|
},
|
|
2768
2767
|
{
|
|
2769
2768
|
"type": "typography",
|
|
@@ -2773,75 +2772,74 @@
|
|
|
2773
2772
|
],
|
|
2774
2773
|
"direction": "horizontal",
|
|
2775
2774
|
"gap": "sm",
|
|
2776
|
-
"type": "stack"
|
|
2777
|
-
"align": "center"
|
|
2775
|
+
"type": "stack"
|
|
2778
2776
|
},
|
|
2779
2777
|
{
|
|
2780
2778
|
"type": "divider"
|
|
2781
2779
|
},
|
|
2782
2780
|
{
|
|
2781
|
+
"gap": "md",
|
|
2783
2782
|
"children": [
|
|
2784
2783
|
{
|
|
2785
|
-
"content": "Name",
|
|
2786
2784
|
"type": "typography",
|
|
2787
|
-
"variant": "caption"
|
|
2785
|
+
"variant": "caption",
|
|
2786
|
+
"content": "Name"
|
|
2788
2787
|
},
|
|
2789
2788
|
{
|
|
2790
|
-
"type": "typography",
|
|
2791
2789
|
"variant": "body",
|
|
2792
|
-
"content": "@entity.name"
|
|
2790
|
+
"content": "@entity.name",
|
|
2791
|
+
"type": "typography"
|
|
2793
2792
|
}
|
|
2794
2793
|
],
|
|
2795
|
-
"type": "stack",
|
|
2796
2794
|
"direction": "horizontal",
|
|
2797
|
-
"
|
|
2795
|
+
"type": "stack"
|
|
2798
2796
|
},
|
|
2799
2797
|
{
|
|
2798
|
+
"type": "stack",
|
|
2800
2799
|
"children": [
|
|
2801
2800
|
{
|
|
2802
|
-
"
|
|
2801
|
+
"content": "Type",
|
|
2803
2802
|
"type": "typography",
|
|
2804
|
-
"
|
|
2803
|
+
"variant": "caption"
|
|
2805
2804
|
},
|
|
2806
2805
|
{
|
|
2807
|
-
"type": "typography",
|
|
2808
2806
|
"content": "@entity.type",
|
|
2807
|
+
"type": "typography",
|
|
2809
2808
|
"variant": "body"
|
|
2810
2809
|
}
|
|
2811
2810
|
],
|
|
2812
|
-
"type": "stack",
|
|
2813
2811
|
"direction": "horizontal",
|
|
2814
2812
|
"gap": "md"
|
|
2815
2813
|
},
|
|
2816
2814
|
{
|
|
2817
|
-
"
|
|
2818
|
-
"direction": "horizontal",
|
|
2815
|
+
"type": "stack",
|
|
2819
2816
|
"children": [
|
|
2820
2817
|
{
|
|
2821
|
-
"variant": "caption",
|
|
2822
2818
|
"content": "Status",
|
|
2819
|
+
"variant": "caption",
|
|
2823
2820
|
"type": "typography"
|
|
2824
2821
|
},
|
|
2825
2822
|
{
|
|
2826
|
-
"variant": "body",
|
|
2827
2823
|
"content": "@entity.status",
|
|
2828
|
-
"type": "typography"
|
|
2824
|
+
"type": "typography",
|
|
2825
|
+
"variant": "body"
|
|
2829
2826
|
}
|
|
2830
2827
|
],
|
|
2831
|
-
"
|
|
2828
|
+
"gap": "md",
|
|
2829
|
+
"direction": "horizontal"
|
|
2832
2830
|
},
|
|
2833
2831
|
{
|
|
2834
|
-
"direction": "horizontal",
|
|
2835
2832
|
"gap": "md",
|
|
2833
|
+
"direction": "horizontal",
|
|
2836
2834
|
"children": [
|
|
2837
2835
|
{
|
|
2838
|
-
"
|
|
2836
|
+
"type": "typography",
|
|
2839
2837
|
"content": "Last Seen",
|
|
2840
|
-
"
|
|
2838
|
+
"variant": "caption"
|
|
2841
2839
|
},
|
|
2842
2840
|
{
|
|
2843
|
-
"content": "@entity.lastSeen",
|
|
2844
2841
|
"type": "typography",
|
|
2842
|
+
"content": "@entity.lastSeen",
|
|
2845
2843
|
"variant": "body"
|
|
2846
2844
|
}
|
|
2847
2845
|
],
|
|
@@ -2851,27 +2849,29 @@
|
|
|
2851
2849
|
"type": "divider"
|
|
2852
2850
|
},
|
|
2853
2851
|
{
|
|
2854
|
-
"type": "stack",
|
|
2855
2852
|
"direction": "horizontal",
|
|
2853
|
+
"type": "stack",
|
|
2854
|
+
"gap": "sm",
|
|
2855
|
+
"justify": "end",
|
|
2856
2856
|
"children": [
|
|
2857
2857
|
{
|
|
2858
|
-
"type": "button",
|
|
2859
|
-
"icon": "edit",
|
|
2860
|
-
"label": "Edit",
|
|
2861
2858
|
"action": "EDIT",
|
|
2862
|
-
"
|
|
2859
|
+
"label": "Edit",
|
|
2860
|
+
"type": "button",
|
|
2861
|
+
"variant": "primary",
|
|
2862
|
+
"icon": "edit"
|
|
2863
2863
|
},
|
|
2864
2864
|
{
|
|
2865
2865
|
"label": "Close",
|
|
2866
2866
|
"type": "button",
|
|
2867
|
-
"
|
|
2868
|
-
"
|
|
2867
|
+
"action": "CLOSE",
|
|
2868
|
+
"variant": "ghost"
|
|
2869
2869
|
}
|
|
2870
|
-
]
|
|
2871
|
-
"gap": "sm",
|
|
2872
|
-
"justify": "end"
|
|
2870
|
+
]
|
|
2873
2871
|
}
|
|
2874
2872
|
],
|
|
2873
|
+
"direction": "vertical",
|
|
2874
|
+
"gap": "md",
|
|
2875
2875
|
"type": "stack"
|
|
2876
2876
|
}
|
|
2877
2877
|
]
|
|
@@ -3110,42 +3110,45 @@
|
|
|
3110
3110
|
"render-ui",
|
|
3111
3111
|
"modal",
|
|
3112
3112
|
{
|
|
3113
|
+
"direction": "vertical",
|
|
3113
3114
|
"gap": "md",
|
|
3115
|
+
"type": "stack",
|
|
3114
3116
|
"children": [
|
|
3115
3117
|
{
|
|
3116
3118
|
"direction": "horizontal",
|
|
3117
3119
|
"type": "stack",
|
|
3120
|
+
"gap": "sm",
|
|
3118
3121
|
"align": "center",
|
|
3119
3122
|
"children": [
|
|
3120
3123
|
{
|
|
3121
|
-
"
|
|
3122
|
-
"
|
|
3124
|
+
"name": "alert-triangle",
|
|
3125
|
+
"type": "icon"
|
|
3123
3126
|
},
|
|
3124
3127
|
{
|
|
3125
3128
|
"variant": "h3",
|
|
3126
|
-
"
|
|
3127
|
-
"
|
|
3129
|
+
"content": "Delete Device",
|
|
3130
|
+
"type": "typography"
|
|
3128
3131
|
}
|
|
3129
|
-
]
|
|
3130
|
-
"gap": "sm"
|
|
3132
|
+
]
|
|
3131
3133
|
},
|
|
3132
3134
|
{
|
|
3133
3135
|
"type": "divider"
|
|
3134
3136
|
},
|
|
3135
3137
|
{
|
|
3136
|
-
"
|
|
3138
|
+
"variant": "error",
|
|
3137
3139
|
"type": "alert",
|
|
3138
|
-
"
|
|
3140
|
+
"message": "This action cannot be undone."
|
|
3139
3141
|
},
|
|
3140
3142
|
{
|
|
3141
|
-
"direction": "horizontal",
|
|
3142
3143
|
"gap": "sm",
|
|
3143
3144
|
"justify": "end",
|
|
3145
|
+
"direction": "horizontal",
|
|
3146
|
+
"type": "stack",
|
|
3144
3147
|
"children": [
|
|
3145
3148
|
{
|
|
3146
|
-
"type": "button",
|
|
3147
|
-
"action": "CANCEL",
|
|
3148
3149
|
"label": "Cancel",
|
|
3150
|
+
"action": "CANCEL",
|
|
3151
|
+
"type": "button",
|
|
3149
3152
|
"variant": "ghost"
|
|
3150
3153
|
},
|
|
3151
3154
|
{
|
|
@@ -3155,12 +3158,9 @@
|
|
|
3155
3158
|
"variant": "danger",
|
|
3156
3159
|
"label": "Delete"
|
|
3157
3160
|
}
|
|
3158
|
-
]
|
|
3159
|
-
"type": "stack"
|
|
3161
|
+
]
|
|
3160
3162
|
}
|
|
3161
|
-
]
|
|
3162
|
-
"direction": "vertical",
|
|
3163
|
-
"type": "stack"
|
|
3163
|
+
]
|
|
3164
3164
|
}
|
|
3165
3165
|
]
|
|
3166
3166
|
]
|
|
@@ -3177,8 +3177,8 @@
|
|
|
3177
3177
|
"@entity.pendingId",
|
|
3178
3178
|
{
|
|
3179
3179
|
"emit": {
|
|
3180
|
-
"
|
|
3181
|
-
"
|
|
3180
|
+
"failure": "DeviceDeleteFailed",
|
|
3181
|
+
"success": "DeviceDeleted"
|
|
3182
3182
|
}
|
|
3183
3183
|
}
|
|
3184
3184
|
],
|
|
@@ -3425,8 +3425,8 @@
|
|
|
3425
3425
|
"DeviceAlert",
|
|
3426
3426
|
{
|
|
3427
3427
|
"emit": {
|
|
3428
|
-
"
|
|
3429
|
-
"
|
|
3428
|
+
"success": "DeviceAlertLoaded",
|
|
3429
|
+
"failure": "DeviceAlertLoadFailed"
|
|
3430
3430
|
}
|
|
3431
3431
|
}
|
|
3432
3432
|
],
|
|
@@ -3434,20 +3434,33 @@
|
|
|
3434
3434
|
"render-ui",
|
|
3435
3435
|
"main",
|
|
3436
3436
|
{
|
|
3437
|
-
"
|
|
3437
|
+
"navItems": [
|
|
3438
3438
|
{
|
|
3439
|
-
"
|
|
3440
|
-
"
|
|
3441
|
-
"
|
|
3442
|
-
|
|
3439
|
+
"href": "/sensors",
|
|
3440
|
+
"icon": "layout-list",
|
|
3441
|
+
"label": "Sensors"
|
|
3442
|
+
},
|
|
3443
|
+
{
|
|
3444
|
+
"href": "/devices",
|
|
3445
|
+
"icon": "cpu",
|
|
3446
|
+
"label": "Devices"
|
|
3447
|
+
},
|
|
3448
|
+
{
|
|
3449
|
+
"icon": "bell",
|
|
3450
|
+
"href": "/alerts",
|
|
3451
|
+
"label": "Alerts"
|
|
3452
|
+
}
|
|
3453
|
+
],
|
|
3454
|
+
"type": "dashboard-layout",
|
|
3455
|
+
"appName": "IoT Dashboard",
|
|
3456
|
+
"children": [
|
|
3457
|
+
{
|
|
3458
|
+
"children": [
|
|
3443
3459
|
{
|
|
3444
|
-
"gap": "md",
|
|
3445
|
-
"direction": "horizontal",
|
|
3446
|
-
"type": "stack",
|
|
3447
|
-
"align": "center",
|
|
3448
|
-
"justify": "between",
|
|
3449
3460
|
"children": [
|
|
3450
3461
|
{
|
|
3462
|
+
"direction": "horizontal",
|
|
3463
|
+
"type": "stack",
|
|
3451
3464
|
"align": "center",
|
|
3452
3465
|
"children": [
|
|
3453
3466
|
{
|
|
@@ -3455,32 +3468,36 @@
|
|
|
3455
3468
|
"name": "bell"
|
|
3456
3469
|
},
|
|
3457
3470
|
{
|
|
3471
|
+
"content": "DeviceAlert",
|
|
3458
3472
|
"variant": "h2",
|
|
3459
|
-
"type": "typography"
|
|
3460
|
-
"content": "DeviceAlert"
|
|
3473
|
+
"type": "typography"
|
|
3461
3474
|
}
|
|
3462
3475
|
],
|
|
3463
|
-
"type": "stack",
|
|
3464
|
-
"direction": "horizontal",
|
|
3465
3476
|
"gap": "md"
|
|
3466
3477
|
},
|
|
3467
3478
|
{
|
|
3468
|
-
"pulse": false,
|
|
3469
|
-
"label": "Circuit Closed",
|
|
3470
3479
|
"type": "status-dot",
|
|
3471
|
-
"status": "online"
|
|
3480
|
+
"status": "online",
|
|
3481
|
+
"label": "Circuit Closed",
|
|
3482
|
+
"pulse": false
|
|
3472
3483
|
}
|
|
3473
|
-
]
|
|
3484
|
+
],
|
|
3485
|
+
"justify": "between",
|
|
3486
|
+
"gap": "md",
|
|
3487
|
+
"direction": "horizontal",
|
|
3488
|
+
"type": "stack",
|
|
3489
|
+
"align": "center"
|
|
3474
3490
|
},
|
|
3475
3491
|
{
|
|
3476
3492
|
"type": "divider"
|
|
3477
3493
|
},
|
|
3478
3494
|
{
|
|
3479
|
-
"
|
|
3495
|
+
"message": "Service is healthy. All requests are being processed.",
|
|
3480
3496
|
"type": "alert",
|
|
3481
|
-
"
|
|
3497
|
+
"variant": "success"
|
|
3482
3498
|
},
|
|
3483
3499
|
{
|
|
3500
|
+
"type": "simple-grid",
|
|
3484
3501
|
"cols": 2.0,
|
|
3485
3502
|
"children": [
|
|
3486
3503
|
{
|
|
@@ -3489,41 +3506,24 @@
|
|
|
3489
3506
|
"value": "@entity.failureCount"
|
|
3490
3507
|
},
|
|
3491
3508
|
{
|
|
3492
|
-
"label": "Successes",
|
|
3493
3509
|
"value": "@entity.successCount",
|
|
3494
|
-
"type": "stat-display"
|
|
3510
|
+
"type": "stat-display",
|
|
3511
|
+
"label": "Successes"
|
|
3495
3512
|
}
|
|
3496
|
-
]
|
|
3497
|
-
"type": "simple-grid"
|
|
3513
|
+
]
|
|
3498
3514
|
},
|
|
3499
3515
|
{
|
|
3500
3516
|
"value": "@entity.failureCount",
|
|
3517
|
+
"min": 0.0,
|
|
3501
3518
|
"max": "@entity.threshold",
|
|
3502
|
-
"type": "meter"
|
|
3503
|
-
"min": 0.0
|
|
3519
|
+
"type": "meter"
|
|
3504
3520
|
}
|
|
3505
|
-
]
|
|
3506
|
-
|
|
3507
|
-
|
|
3508
|
-
|
|
3509
|
-
{
|
|
3510
|
-
"label": "Sensors",
|
|
3511
|
-
"icon": "layout-list",
|
|
3512
|
-
"href": "/sensors"
|
|
3513
|
-
},
|
|
3514
|
-
{
|
|
3515
|
-
"icon": "cpu",
|
|
3516
|
-
"href": "/devices",
|
|
3517
|
-
"label": "Devices"
|
|
3518
|
-
},
|
|
3519
|
-
{
|
|
3520
|
-
"href": "/alerts",
|
|
3521
|
-
"label": "Alerts",
|
|
3522
|
-
"icon": "bell"
|
|
3521
|
+
],
|
|
3522
|
+
"gap": "lg",
|
|
3523
|
+
"type": "stack",
|
|
3524
|
+
"direction": "vertical"
|
|
3523
3525
|
}
|
|
3524
|
-
]
|
|
3525
|
-
"appName": "IoT Dashboard",
|
|
3526
|
-
"type": "dashboard-layout"
|
|
3526
|
+
]
|
|
3527
3527
|
}
|
|
3528
3528
|
]
|
|
3529
3529
|
]
|
|
@@ -3537,12 +3537,12 @@
|
|
|
3537
3537
|
"render-ui",
|
|
3538
3538
|
"main",
|
|
3539
3539
|
{
|
|
3540
|
-
"appName": "IoT Dashboard",
|
|
3541
3540
|
"type": "dashboard-layout",
|
|
3541
|
+
"appName": "IoT Dashboard",
|
|
3542
3542
|
"navItems": [
|
|
3543
3543
|
{
|
|
3544
|
-
"label": "Sensors",
|
|
3545
3544
|
"href": "/sensors",
|
|
3545
|
+
"label": "Sensors",
|
|
3546
3546
|
"icon": "layout-list"
|
|
3547
3547
|
},
|
|
3548
3548
|
{
|
|
@@ -3551,82 +3551,82 @@
|
|
|
3551
3551
|
"href": "/devices"
|
|
3552
3552
|
},
|
|
3553
3553
|
{
|
|
3554
|
-
"href": "/alerts",
|
|
3555
3554
|
"label": "Alerts",
|
|
3556
|
-
"icon": "bell"
|
|
3555
|
+
"icon": "bell",
|
|
3556
|
+
"href": "/alerts"
|
|
3557
3557
|
}
|
|
3558
3558
|
],
|
|
3559
3559
|
"children": [
|
|
3560
3560
|
{
|
|
3561
3561
|
"children": [
|
|
3562
3562
|
{
|
|
3563
|
+
"gap": "md",
|
|
3563
3564
|
"direction": "horizontal",
|
|
3565
|
+
"type": "stack",
|
|
3564
3566
|
"children": [
|
|
3565
3567
|
{
|
|
3566
3568
|
"direction": "horizontal",
|
|
3567
|
-
"type": "stack",
|
|
3568
3569
|
"children": [
|
|
3569
3570
|
{
|
|
3570
3571
|
"type": "icon",
|
|
3571
3572
|
"name": "alert-triangle"
|
|
3572
3573
|
},
|
|
3573
3574
|
{
|
|
3574
|
-
"variant": "h2",
|
|
3575
3575
|
"type": "typography",
|
|
3576
|
+
"variant": "h2",
|
|
3576
3577
|
"content": "DeviceAlert"
|
|
3577
3578
|
}
|
|
3578
3579
|
],
|
|
3579
3580
|
"align": "center",
|
|
3580
|
-
"gap": "md"
|
|
3581
|
+
"gap": "md",
|
|
3582
|
+
"type": "stack"
|
|
3581
3583
|
},
|
|
3582
3584
|
{
|
|
3583
3585
|
"type": "status-dot",
|
|
3584
3586
|
"label": "Circuit Open",
|
|
3585
|
-
"
|
|
3586
|
-
"
|
|
3587
|
+
"pulse": true,
|
|
3588
|
+
"status": "critical"
|
|
3587
3589
|
}
|
|
3588
3590
|
],
|
|
3589
|
-
"type": "stack",
|
|
3590
3591
|
"align": "center",
|
|
3591
|
-
"gap": "md",
|
|
3592
3592
|
"justify": "between"
|
|
3593
3593
|
},
|
|
3594
3594
|
{
|
|
3595
3595
|
"type": "divider"
|
|
3596
3596
|
},
|
|
3597
3597
|
{
|
|
3598
|
-
"variant": "error",
|
|
3599
3598
|
"type": "alert",
|
|
3599
|
+
"variant": "error",
|
|
3600
3600
|
"message": "Circuit is open. Requests are being rejected to prevent cascading failures."
|
|
3601
3601
|
},
|
|
3602
3602
|
{
|
|
3603
3603
|
"children": [
|
|
3604
3604
|
{
|
|
3605
|
+
"type": "stat-display",
|
|
3605
3606
|
"value": "@entity.failureCount",
|
|
3606
|
-
"label": "Failures"
|
|
3607
|
-
"type": "stat-display"
|
|
3607
|
+
"label": "Failures"
|
|
3608
3608
|
},
|
|
3609
3609
|
{
|
|
3610
|
-
"
|
|
3610
|
+
"type": "stat-display",
|
|
3611
3611
|
"value": "@entity.successCount",
|
|
3612
|
-
"
|
|
3612
|
+
"label": "Successes"
|
|
3613
3613
|
}
|
|
3614
3614
|
],
|
|
3615
3615
|
"type": "simple-grid",
|
|
3616
3616
|
"cols": 2.0
|
|
3617
3617
|
},
|
|
3618
3618
|
{
|
|
3619
|
-
"
|
|
3620
|
-
"value": "@entity.failureCount",
|
|
3619
|
+
"type": "meter",
|
|
3621
3620
|
"max": "@entity.threshold",
|
|
3622
|
-
"
|
|
3621
|
+
"value": "@entity.failureCount",
|
|
3622
|
+
"min": 0.0
|
|
3623
3623
|
},
|
|
3624
3624
|
{
|
|
3625
|
-
"icon": "rotate-ccw",
|
|
3626
|
-
"label": "Reset",
|
|
3627
|
-
"action": "RESET",
|
|
3628
3625
|
"type": "button",
|
|
3629
|
-
"variant": "ghost"
|
|
3626
|
+
"variant": "ghost",
|
|
3627
|
+
"action": "RESET",
|
|
3628
|
+
"icon": "rotate-ccw",
|
|
3629
|
+
"label": "Reset"
|
|
3630
3630
|
}
|
|
3631
3631
|
],
|
|
3632
3632
|
"type": "stack",
|
|
@@ -3647,7 +3647,7 @@
|
|
|
3647
3647
|
"render-ui",
|
|
3648
3648
|
"main",
|
|
3649
3649
|
{
|
|
3650
|
-
"
|
|
3650
|
+
"appName": "IoT Dashboard",
|
|
3651
3651
|
"navItems": [
|
|
3652
3652
|
{
|
|
3653
3653
|
"href": "/sensors",
|
|
@@ -3656,51 +3656,51 @@
|
|
|
3656
3656
|
},
|
|
3657
3657
|
{
|
|
3658
3658
|
"label": "Devices",
|
|
3659
|
-
"
|
|
3660
|
-
"
|
|
3659
|
+
"href": "/devices",
|
|
3660
|
+
"icon": "cpu"
|
|
3661
3661
|
},
|
|
3662
3662
|
{
|
|
3663
|
-
"
|
|
3663
|
+
"href": "/alerts",
|
|
3664
3664
|
"label": "Alerts",
|
|
3665
|
-
"
|
|
3665
|
+
"icon": "bell"
|
|
3666
3666
|
}
|
|
3667
3667
|
],
|
|
3668
|
+
"type": "dashboard-layout",
|
|
3668
3669
|
"children": [
|
|
3669
3670
|
{
|
|
3670
|
-
"type": "stack",
|
|
3671
3671
|
"gap": "lg",
|
|
3672
3672
|
"children": [
|
|
3673
3673
|
{
|
|
3674
3674
|
"gap": "md",
|
|
3675
|
-
"type": "stack",
|
|
3676
|
-
"direction": "horizontal",
|
|
3677
3675
|
"align": "center",
|
|
3678
|
-
"justify": "between",
|
|
3679
3676
|
"children": [
|
|
3680
3677
|
{
|
|
3681
|
-
"align": "center",
|
|
3682
|
-
"type": "stack",
|
|
3683
3678
|
"children": [
|
|
3684
3679
|
{
|
|
3685
3680
|
"type": "icon",
|
|
3686
3681
|
"name": "bell"
|
|
3687
3682
|
},
|
|
3688
3683
|
{
|
|
3689
|
-
"
|
|
3684
|
+
"content": "DeviceAlert",
|
|
3690
3685
|
"type": "typography",
|
|
3691
|
-
"
|
|
3686
|
+
"variant": "h2"
|
|
3692
3687
|
}
|
|
3693
3688
|
],
|
|
3694
|
-
"
|
|
3695
|
-
"
|
|
3689
|
+
"direction": "horizontal",
|
|
3690
|
+
"align": "center",
|
|
3691
|
+
"type": "stack",
|
|
3692
|
+
"gap": "md"
|
|
3696
3693
|
},
|
|
3697
3694
|
{
|
|
3698
|
-
"label": "Circuit Closed",
|
|
3699
|
-
"pulse": false,
|
|
3700
3695
|
"type": "status-dot",
|
|
3701
|
-
"
|
|
3696
|
+
"label": "Circuit Closed",
|
|
3697
|
+
"status": "online",
|
|
3698
|
+
"pulse": false
|
|
3702
3699
|
}
|
|
3703
|
-
]
|
|
3700
|
+
],
|
|
3701
|
+
"justify": "between",
|
|
3702
|
+
"direction": "horizontal",
|
|
3703
|
+
"type": "stack"
|
|
3704
3704
|
},
|
|
3705
3705
|
{
|
|
3706
3706
|
"type": "divider"
|
|
@@ -3712,19 +3712,19 @@
|
|
|
3712
3712
|
},
|
|
3713
3713
|
{
|
|
3714
3714
|
"cols": 2.0,
|
|
3715
|
+
"type": "simple-grid",
|
|
3715
3716
|
"children": [
|
|
3716
3717
|
{
|
|
3717
|
-
"value": "@entity.failureCount",
|
|
3718
3718
|
"label": "Failures",
|
|
3719
|
-
"type": "stat-display"
|
|
3719
|
+
"type": "stat-display",
|
|
3720
|
+
"value": "@entity.failureCount"
|
|
3720
3721
|
},
|
|
3721
3722
|
{
|
|
3722
|
-
"type": "stat-display",
|
|
3723
3723
|
"label": "Successes",
|
|
3724
|
-
"value": "@entity.successCount"
|
|
3724
|
+
"value": "@entity.successCount",
|
|
3725
|
+
"type": "stat-display"
|
|
3725
3726
|
}
|
|
3726
|
-
]
|
|
3727
|
-
"type": "simple-grid"
|
|
3727
|
+
]
|
|
3728
3728
|
},
|
|
3729
3729
|
{
|
|
3730
3730
|
"value": "@entity.failureCount",
|
|
@@ -3733,10 +3733,10 @@
|
|
|
3733
3733
|
"max": "@entity.threshold"
|
|
3734
3734
|
}
|
|
3735
3735
|
],
|
|
3736
|
-
"direction": "vertical"
|
|
3736
|
+
"direction": "vertical",
|
|
3737
|
+
"type": "stack"
|
|
3737
3738
|
}
|
|
3738
|
-
]
|
|
3739
|
-
"appName": "IoT Dashboard"
|
|
3739
|
+
]
|
|
3740
3740
|
}
|
|
3741
3741
|
]
|
|
3742
3742
|
]
|
|
@@ -3750,90 +3750,90 @@
|
|
|
3750
3750
|
"render-ui",
|
|
3751
3751
|
"main",
|
|
3752
3752
|
{
|
|
3753
|
-
"
|
|
3754
|
-
{
|
|
3755
|
-
"label": "Sensors",
|
|
3756
|
-
"href": "/sensors",
|
|
3757
|
-
"icon": "layout-list"
|
|
3758
|
-
},
|
|
3759
|
-
{
|
|
3760
|
-
"href": "/devices",
|
|
3761
|
-
"icon": "cpu",
|
|
3762
|
-
"label": "Devices"
|
|
3763
|
-
},
|
|
3764
|
-
{
|
|
3765
|
-
"icon": "bell",
|
|
3766
|
-
"href": "/alerts",
|
|
3767
|
-
"label": "Alerts"
|
|
3768
|
-
}
|
|
3769
|
-
],
|
|
3753
|
+
"type": "dashboard-layout",
|
|
3770
3754
|
"appName": "IoT Dashboard",
|
|
3771
3755
|
"children": [
|
|
3772
3756
|
{
|
|
3773
3757
|
"children": [
|
|
3774
3758
|
{
|
|
3759
|
+
"align": "center",
|
|
3775
3760
|
"justify": "between",
|
|
3761
|
+
"gap": "md",
|
|
3762
|
+
"direction": "horizontal",
|
|
3776
3763
|
"children": [
|
|
3777
3764
|
{
|
|
3765
|
+
"gap": "md",
|
|
3766
|
+
"align": "center",
|
|
3767
|
+
"direction": "horizontal",
|
|
3778
3768
|
"children": [
|
|
3779
3769
|
{
|
|
3780
3770
|
"name": "activity",
|
|
3781
3771
|
"type": "icon"
|
|
3782
3772
|
},
|
|
3783
3773
|
{
|
|
3774
|
+
"type": "typography",
|
|
3784
3775
|
"variant": "h2",
|
|
3785
|
-
"content": "DeviceAlert"
|
|
3786
|
-
"type": "typography"
|
|
3776
|
+
"content": "DeviceAlert"
|
|
3787
3777
|
}
|
|
3788
3778
|
],
|
|
3789
|
-
"
|
|
3790
|
-
"gap": "md",
|
|
3791
|
-
"type": "stack",
|
|
3792
|
-
"align": "center"
|
|
3779
|
+
"type": "stack"
|
|
3793
3780
|
},
|
|
3794
3781
|
{
|
|
3795
|
-
"status": "warning",
|
|
3796
3782
|
"pulse": true,
|
|
3783
|
+
"label": "Circuit Half-Open",
|
|
3797
3784
|
"type": "status-dot",
|
|
3798
|
-
"
|
|
3785
|
+
"status": "warning"
|
|
3799
3786
|
}
|
|
3800
3787
|
],
|
|
3801
|
-
"type": "stack"
|
|
3802
|
-
"gap": "md",
|
|
3803
|
-
"direction": "horizontal",
|
|
3804
|
-
"align": "center"
|
|
3788
|
+
"type": "stack"
|
|
3805
3789
|
},
|
|
3806
3790
|
{
|
|
3807
3791
|
"type": "divider"
|
|
3808
3792
|
},
|
|
3809
3793
|
{
|
|
3810
|
-
"message": "Testing recovery. Limited requests are being allowed through.",
|
|
3811
3794
|
"type": "alert",
|
|
3812
|
-
"variant": "warning"
|
|
3795
|
+
"variant": "warning",
|
|
3796
|
+
"message": "Testing recovery. Limited requests are being allowed through."
|
|
3813
3797
|
},
|
|
3814
3798
|
{
|
|
3799
|
+
"type": "simple-grid",
|
|
3800
|
+
"cols": 2.0,
|
|
3815
3801
|
"children": [
|
|
3816
3802
|
{
|
|
3817
|
-
"type": "stat-display",
|
|
3818
3803
|
"value": "@entity.failureCount",
|
|
3804
|
+
"type": "stat-display",
|
|
3819
3805
|
"label": "Failures"
|
|
3820
3806
|
},
|
|
3821
3807
|
{
|
|
3808
|
+
"value": "@entity.successCount",
|
|
3822
3809
|
"label": "Successes",
|
|
3823
|
-
"type": "stat-display"
|
|
3824
|
-
"value": "@entity.successCount"
|
|
3810
|
+
"type": "stat-display"
|
|
3825
3811
|
}
|
|
3826
|
-
]
|
|
3827
|
-
"type": "simple-grid",
|
|
3828
|
-
"cols": 2.0
|
|
3812
|
+
]
|
|
3829
3813
|
}
|
|
3830
3814
|
],
|
|
3831
|
-
"gap": "lg",
|
|
3832
3815
|
"type": "stack",
|
|
3833
|
-
"direction": "vertical"
|
|
3816
|
+
"direction": "vertical",
|
|
3817
|
+
"gap": "lg"
|
|
3834
3818
|
}
|
|
3835
3819
|
],
|
|
3836
|
-
"
|
|
3820
|
+
"navItems": [
|
|
3821
|
+
{
|
|
3822
|
+
"label": "Sensors",
|
|
3823
|
+
"href": "/sensors",
|
|
3824
|
+
"icon": "layout-list"
|
|
3825
|
+
},
|
|
3826
|
+
{
|
|
3827
|
+
"href": "/devices",
|
|
3828
|
+
"label": "Devices",
|
|
3829
|
+
"icon": "cpu"
|
|
3830
|
+
},
|
|
3831
|
+
{
|
|
3832
|
+
"label": "Alerts",
|
|
3833
|
+
"href": "/alerts",
|
|
3834
|
+
"icon": "bell"
|
|
3835
|
+
}
|
|
3836
|
+
]
|
|
3837
3837
|
}
|
|
3838
3838
|
]
|
|
3839
3839
|
]
|
|
@@ -3848,49 +3848,67 @@
|
|
|
3848
3848
|
"main",
|
|
3849
3849
|
{
|
|
3850
3850
|
"appName": "IoT Dashboard",
|
|
3851
|
-
"
|
|
3851
|
+
"navItems": [
|
|
3852
|
+
{
|
|
3853
|
+
"label": "Sensors",
|
|
3854
|
+
"href": "/sensors",
|
|
3855
|
+
"icon": "layout-list"
|
|
3856
|
+
},
|
|
3857
|
+
{
|
|
3858
|
+
"label": "Devices",
|
|
3859
|
+
"href": "/devices",
|
|
3860
|
+
"icon": "cpu"
|
|
3861
|
+
},
|
|
3862
|
+
{
|
|
3863
|
+
"href": "/alerts",
|
|
3864
|
+
"icon": "bell",
|
|
3865
|
+
"label": "Alerts"
|
|
3866
|
+
}
|
|
3867
|
+
],
|
|
3868
|
+
"children": [
|
|
3852
3869
|
{
|
|
3853
3870
|
"direction": "vertical",
|
|
3871
|
+
"gap": "lg",
|
|
3854
3872
|
"children": [
|
|
3855
3873
|
{
|
|
3856
3874
|
"type": "stack",
|
|
3857
|
-
"align": "center",
|
|
3858
3875
|
"direction": "horizontal",
|
|
3859
|
-
"justify": "between",
|
|
3860
3876
|
"children": [
|
|
3861
3877
|
{
|
|
3878
|
+
"direction": "horizontal",
|
|
3879
|
+
"gap": "md",
|
|
3880
|
+
"align": "center",
|
|
3881
|
+
"type": "stack",
|
|
3862
3882
|
"children": [
|
|
3863
3883
|
{
|
|
3864
|
-
"
|
|
3865
|
-
"
|
|
3884
|
+
"name": "bell",
|
|
3885
|
+
"type": "icon"
|
|
3866
3886
|
},
|
|
3867
3887
|
{
|
|
3868
3888
|
"type": "typography",
|
|
3869
3889
|
"content": "DeviceAlert",
|
|
3870
3890
|
"variant": "h2"
|
|
3871
3891
|
}
|
|
3872
|
-
]
|
|
3873
|
-
"direction": "horizontal",
|
|
3874
|
-
"type": "stack",
|
|
3875
|
-
"gap": "md",
|
|
3876
|
-
"align": "center"
|
|
3892
|
+
]
|
|
3877
3893
|
},
|
|
3878
3894
|
{
|
|
3879
|
-
"label": "Circuit Closed",
|
|
3880
|
-
"pulse": false,
|
|
3881
3895
|
"type": "status-dot",
|
|
3882
|
-
"
|
|
3896
|
+
"label": "Circuit Closed",
|
|
3897
|
+
"status": "online",
|
|
3898
|
+
"pulse": false
|
|
3883
3899
|
}
|
|
3884
3900
|
],
|
|
3885
|
-
"gap": "md"
|
|
3901
|
+
"gap": "md",
|
|
3902
|
+
"align": "center",
|
|
3903
|
+
"justify": "between"
|
|
3886
3904
|
},
|
|
3887
3905
|
{
|
|
3888
3906
|
"type": "divider"
|
|
3889
3907
|
},
|
|
3890
3908
|
{
|
|
3909
|
+
"message": "Service is healthy. All requests are being processed.",
|
|
3891
3910
|
"type": "alert",
|
|
3892
|
-
"variant": "success"
|
|
3893
|
-
"message": "Service is healthy. All requests are being processed."
|
|
3911
|
+
"variant": "success"
|
|
3894
3912
|
},
|
|
3895
3913
|
{
|
|
3896
3914
|
"cols": 2.0,
|
|
@@ -3901,24 +3919,37 @@
|
|
|
3901
3919
|
"label": "Failures"
|
|
3902
3920
|
},
|
|
3903
3921
|
{
|
|
3904
|
-
"
|
|
3922
|
+
"value": "@entity.successCount",
|
|
3905
3923
|
"type": "stat-display",
|
|
3906
|
-
"
|
|
3924
|
+
"label": "Successes"
|
|
3907
3925
|
}
|
|
3908
3926
|
],
|
|
3909
3927
|
"type": "simple-grid"
|
|
3910
3928
|
},
|
|
3911
3929
|
{
|
|
3912
|
-
"value": "@entity.failureCount",
|
|
3913
3930
|
"min": 0.0,
|
|
3914
|
-
"
|
|
3915
|
-
"
|
|
3931
|
+
"max": "@entity.threshold",
|
|
3932
|
+
"value": "@entity.failureCount",
|
|
3933
|
+
"type": "meter"
|
|
3916
3934
|
}
|
|
3917
3935
|
],
|
|
3918
|
-
"gap": "lg",
|
|
3919
3936
|
"type": "stack"
|
|
3920
3937
|
}
|
|
3921
3938
|
],
|
|
3939
|
+
"type": "dashboard-layout"
|
|
3940
|
+
}
|
|
3941
|
+
]
|
|
3942
|
+
]
|
|
3943
|
+
},
|
|
3944
|
+
{
|
|
3945
|
+
"from": "halfOpen",
|
|
3946
|
+
"to": "closed",
|
|
3947
|
+
"event": "SUCCESS",
|
|
3948
|
+
"effects": [
|
|
3949
|
+
[
|
|
3950
|
+
"render-ui",
|
|
3951
|
+
"main",
|
|
3952
|
+
{
|
|
3922
3953
|
"navItems": [
|
|
3923
3954
|
{
|
|
3924
3955
|
"label": "Sensors",
|
|
@@ -3926,9 +3957,9 @@
|
|
|
3926
3957
|
"icon": "layout-list"
|
|
3927
3958
|
},
|
|
3928
3959
|
{
|
|
3929
|
-
"icon": "cpu",
|
|
3930
3960
|
"label": "Devices",
|
|
3931
|
-
"href": "/devices"
|
|
3961
|
+
"href": "/devices",
|
|
3962
|
+
"icon": "cpu"
|
|
3932
3963
|
},
|
|
3933
3964
|
{
|
|
3934
3965
|
"label": "Alerts",
|
|
@@ -3936,55 +3967,43 @@
|
|
|
3936
3967
|
"icon": "bell"
|
|
3937
3968
|
}
|
|
3938
3969
|
],
|
|
3939
|
-
"type": "dashboard-layout"
|
|
3940
|
-
}
|
|
3941
|
-
]
|
|
3942
|
-
]
|
|
3943
|
-
},
|
|
3944
|
-
{
|
|
3945
|
-
"from": "halfOpen",
|
|
3946
|
-
"to": "closed",
|
|
3947
|
-
"event": "SUCCESS",
|
|
3948
|
-
"effects": [
|
|
3949
|
-
[
|
|
3950
|
-
"render-ui",
|
|
3951
|
-
"main",
|
|
3952
|
-
{
|
|
3953
|
-
"type": "dashboard-layout",
|
|
3954
3970
|
"children": [
|
|
3955
3971
|
{
|
|
3972
|
+
"type": "stack",
|
|
3973
|
+
"direction": "vertical",
|
|
3974
|
+
"gap": "lg",
|
|
3956
3975
|
"children": [
|
|
3957
3976
|
{
|
|
3977
|
+
"type": "stack",
|
|
3958
3978
|
"direction": "horizontal",
|
|
3979
|
+
"gap": "md",
|
|
3959
3980
|
"children": [
|
|
3960
3981
|
{
|
|
3982
|
+
"type": "stack",
|
|
3961
3983
|
"children": [
|
|
3962
3984
|
{
|
|
3963
|
-
"
|
|
3964
|
-
"
|
|
3985
|
+
"name": "bell",
|
|
3986
|
+
"type": "icon"
|
|
3965
3987
|
},
|
|
3966
3988
|
{
|
|
3989
|
+
"type": "typography",
|
|
3967
3990
|
"content": "DeviceAlert",
|
|
3968
|
-
"variant": "h2"
|
|
3969
|
-
"type": "typography"
|
|
3991
|
+
"variant": "h2"
|
|
3970
3992
|
}
|
|
3971
3993
|
],
|
|
3972
|
-
"
|
|
3994
|
+
"align": "center",
|
|
3973
3995
|
"gap": "md",
|
|
3974
|
-
"direction": "horizontal"
|
|
3975
|
-
"align": "center"
|
|
3996
|
+
"direction": "horizontal"
|
|
3976
3997
|
},
|
|
3977
3998
|
{
|
|
3978
|
-
"
|
|
3979
|
-
"label": "Circuit Closed",
|
|
3999
|
+
"status": "online",
|
|
3980
4000
|
"pulse": false,
|
|
3981
|
-
"
|
|
4001
|
+
"label": "Circuit Closed",
|
|
4002
|
+
"type": "status-dot"
|
|
3982
4003
|
}
|
|
3983
4004
|
],
|
|
3984
|
-
"
|
|
3985
|
-
"
|
|
3986
|
-
"align": "center",
|
|
3987
|
-
"justify": "between"
|
|
4005
|
+
"justify": "between",
|
|
4006
|
+
"align": "center"
|
|
3988
4007
|
},
|
|
3989
4008
|
{
|
|
3990
4009
|
"type": "divider"
|
|
@@ -3995,51 +4014,32 @@
|
|
|
3995
4014
|
"message": "Service is healthy. All requests are being processed."
|
|
3996
4015
|
},
|
|
3997
4016
|
{
|
|
3998
|
-
"type": "simple-grid",
|
|
3999
|
-
"cols": 2.0,
|
|
4000
4017
|
"children": [
|
|
4001
4018
|
{
|
|
4002
4019
|
"type": "stat-display",
|
|
4003
|
-
"
|
|
4004
|
-
"
|
|
4020
|
+
"value": "@entity.failureCount",
|
|
4021
|
+
"label": "Failures"
|
|
4005
4022
|
},
|
|
4006
4023
|
{
|
|
4007
4024
|
"label": "Successes",
|
|
4008
|
-
"
|
|
4009
|
-
"
|
|
4025
|
+
"type": "stat-display",
|
|
4026
|
+
"value": "@entity.successCount"
|
|
4010
4027
|
}
|
|
4011
|
-
]
|
|
4028
|
+
],
|
|
4029
|
+
"type": "simple-grid",
|
|
4030
|
+
"cols": 2.0
|
|
4012
4031
|
},
|
|
4013
4032
|
{
|
|
4014
|
-
"
|
|
4033
|
+
"type": "meter",
|
|
4015
4034
|
"value": "@entity.failureCount",
|
|
4016
|
-
"
|
|
4017
|
-
"
|
|
4035
|
+
"max": "@entity.threshold",
|
|
4036
|
+
"min": 0.0
|
|
4018
4037
|
}
|
|
4019
|
-
]
|
|
4020
|
-
"direction": "vertical",
|
|
4021
|
-
"type": "stack",
|
|
4022
|
-
"gap": "lg"
|
|
4038
|
+
]
|
|
4023
4039
|
}
|
|
4024
4040
|
],
|
|
4025
4041
|
"appName": "IoT Dashboard",
|
|
4026
|
-
"
|
|
4027
|
-
{
|
|
4028
|
-
"href": "/sensors",
|
|
4029
|
-
"icon": "layout-list",
|
|
4030
|
-
"label": "Sensors"
|
|
4031
|
-
},
|
|
4032
|
-
{
|
|
4033
|
-
"label": "Devices",
|
|
4034
|
-
"icon": "cpu",
|
|
4035
|
-
"href": "/devices"
|
|
4036
|
-
},
|
|
4037
|
-
{
|
|
4038
|
-
"href": "/alerts",
|
|
4039
|
-
"icon": "bell",
|
|
4040
|
-
"label": "Alerts"
|
|
4041
|
-
}
|
|
4042
|
-
]
|
|
4042
|
+
"type": "dashboard-layout"
|
|
4043
4043
|
}
|
|
4044
4044
|
]
|
|
4045
4045
|
]
|
|
@@ -4053,13 +4053,13 @@
|
|
|
4053
4053
|
"render-ui",
|
|
4054
4054
|
"main",
|
|
4055
4055
|
{
|
|
4056
|
-
"type": "dashboard-layout",
|
|
4057
4056
|
"appName": "IoT Dashboard",
|
|
4057
|
+
"type": "dashboard-layout",
|
|
4058
4058
|
"navItems": [
|
|
4059
4059
|
{
|
|
4060
|
-
"
|
|
4060
|
+
"icon": "layout-list",
|
|
4061
4061
|
"label": "Sensors",
|
|
4062
|
-
"
|
|
4062
|
+
"href": "/sensors"
|
|
4063
4063
|
},
|
|
4064
4064
|
{
|
|
4065
4065
|
"href": "/devices",
|
|
@@ -4067,87 +4067,87 @@
|
|
|
4067
4067
|
"label": "Devices"
|
|
4068
4068
|
},
|
|
4069
4069
|
{
|
|
4070
|
-
"
|
|
4070
|
+
"href": "/alerts",
|
|
4071
4071
|
"icon": "bell",
|
|
4072
|
-
"
|
|
4072
|
+
"label": "Alerts"
|
|
4073
4073
|
}
|
|
4074
4074
|
],
|
|
4075
4075
|
"children": [
|
|
4076
4076
|
{
|
|
4077
|
-
"type": "stack",
|
|
4078
4077
|
"gap": "lg",
|
|
4078
|
+
"direction": "vertical",
|
|
4079
4079
|
"children": [
|
|
4080
4080
|
{
|
|
4081
|
-
"direction": "horizontal",
|
|
4082
|
-
"justify": "between",
|
|
4083
|
-
"align": "center",
|
|
4084
|
-
"type": "stack",
|
|
4085
4081
|
"gap": "md",
|
|
4082
|
+
"align": "center",
|
|
4086
4083
|
"children": [
|
|
4087
4084
|
{
|
|
4088
|
-
"
|
|
4085
|
+
"align": "center",
|
|
4086
|
+
"type": "stack",
|
|
4089
4087
|
"children": [
|
|
4090
4088
|
{
|
|
4091
4089
|
"name": "alert-triangle",
|
|
4092
4090
|
"type": "icon"
|
|
4093
4091
|
},
|
|
4094
4092
|
{
|
|
4095
|
-
"type": "typography",
|
|
4096
4093
|
"content": "DeviceAlert",
|
|
4097
|
-
"variant": "h2"
|
|
4094
|
+
"variant": "h2",
|
|
4095
|
+
"type": "typography"
|
|
4098
4096
|
}
|
|
4099
4097
|
],
|
|
4100
|
-
"
|
|
4101
|
-
"
|
|
4102
|
-
"type": "stack"
|
|
4098
|
+
"gap": "md",
|
|
4099
|
+
"direction": "horizontal"
|
|
4103
4100
|
},
|
|
4104
4101
|
{
|
|
4105
|
-
"label": "Circuit Open",
|
|
4106
|
-
"status": "critical",
|
|
4107
4102
|
"pulse": true,
|
|
4103
|
+
"status": "critical",
|
|
4104
|
+
"label": "Circuit Open",
|
|
4108
4105
|
"type": "status-dot"
|
|
4109
4106
|
}
|
|
4110
|
-
]
|
|
4107
|
+
],
|
|
4108
|
+
"justify": "between",
|
|
4109
|
+
"type": "stack",
|
|
4110
|
+
"direction": "horizontal"
|
|
4111
4111
|
},
|
|
4112
4112
|
{
|
|
4113
4113
|
"type": "divider"
|
|
4114
4114
|
},
|
|
4115
4115
|
{
|
|
4116
|
-
"type": "alert",
|
|
4117
4116
|
"variant": "error",
|
|
4118
|
-
"message": "Circuit is open. Requests are being rejected to prevent cascading failures."
|
|
4117
|
+
"message": "Circuit is open. Requests are being rejected to prevent cascading failures.",
|
|
4118
|
+
"type": "alert"
|
|
4119
4119
|
},
|
|
4120
4120
|
{
|
|
4121
|
+
"type": "simple-grid",
|
|
4122
|
+
"cols": 2.0,
|
|
4121
4123
|
"children": [
|
|
4122
4124
|
{
|
|
4123
|
-
"
|
|
4125
|
+
"type": "stat-display",
|
|
4124
4126
|
"label": "Failures",
|
|
4125
|
-
"
|
|
4127
|
+
"value": "@entity.failureCount"
|
|
4126
4128
|
},
|
|
4127
4129
|
{
|
|
4130
|
+
"label": "Successes",
|
|
4128
4131
|
"value": "@entity.successCount",
|
|
4129
|
-
"type": "stat-display"
|
|
4130
|
-
"label": "Successes"
|
|
4132
|
+
"type": "stat-display"
|
|
4131
4133
|
}
|
|
4132
|
-
]
|
|
4133
|
-
"cols": 2.0,
|
|
4134
|
-
"type": "simple-grid"
|
|
4134
|
+
]
|
|
4135
4135
|
},
|
|
4136
4136
|
{
|
|
4137
|
-
"type": "meter",
|
|
4138
4137
|
"value": "@entity.failureCount",
|
|
4139
|
-
"
|
|
4140
|
-
"
|
|
4138
|
+
"max": "@entity.threshold",
|
|
4139
|
+
"type": "meter",
|
|
4140
|
+
"min": 0.0
|
|
4141
4141
|
},
|
|
4142
4142
|
{
|
|
4143
|
-
"
|
|
4143
|
+
"action": "RESET",
|
|
4144
4144
|
"variant": "ghost",
|
|
4145
|
+
"label": "Reset",
|
|
4145
4146
|
"icon": "rotate-ccw",
|
|
4146
|
-
"type": "button"
|
|
4147
|
-
"action": "RESET"
|
|
4147
|
+
"type": "button"
|
|
4148
4148
|
}
|
|
4149
4149
|
],
|
|
4150
|
-
"
|
|
4150
|
+
"type": "stack"
|
|
4151
4151
|
}
|
|
4152
4152
|
]
|
|
4153
4153
|
}
|
|
@@ -4163,20 +4163,31 @@
|
|
|
4163
4163
|
"render-ui",
|
|
4164
4164
|
"main",
|
|
4165
4165
|
{
|
|
4166
|
+
"navItems": [
|
|
4167
|
+
{
|
|
4168
|
+
"label": "Sensors",
|
|
4169
|
+
"icon": "layout-list",
|
|
4170
|
+
"href": "/sensors"
|
|
4171
|
+
},
|
|
4172
|
+
{
|
|
4173
|
+
"icon": "cpu",
|
|
4174
|
+
"href": "/devices",
|
|
4175
|
+
"label": "Devices"
|
|
4176
|
+
},
|
|
4177
|
+
{
|
|
4178
|
+
"href": "/alerts",
|
|
4179
|
+
"icon": "bell",
|
|
4180
|
+
"label": "Alerts"
|
|
4181
|
+
}
|
|
4182
|
+
],
|
|
4166
4183
|
"appName": "IoT Dashboard",
|
|
4167
4184
|
"children": [
|
|
4168
4185
|
{
|
|
4169
|
-
"direction": "vertical",
|
|
4170
|
-
"gap": "lg",
|
|
4171
4186
|
"children": [
|
|
4172
4187
|
{
|
|
4173
|
-
"justify": "between",
|
|
4174
4188
|
"children": [
|
|
4175
4189
|
{
|
|
4176
4190
|
"direction": "horizontal",
|
|
4177
|
-
"align": "center",
|
|
4178
|
-
"gap": "md",
|
|
4179
|
-
"type": "stack",
|
|
4180
4191
|
"children": [
|
|
4181
4192
|
{
|
|
4182
4193
|
"name": "bell",
|
|
@@ -4184,75 +4195,64 @@
|
|
|
4184
4195
|
},
|
|
4185
4196
|
{
|
|
4186
4197
|
"variant": "h2",
|
|
4187
|
-
"
|
|
4188
|
-
"
|
|
4198
|
+
"type": "typography",
|
|
4199
|
+
"content": "DeviceAlert"
|
|
4189
4200
|
}
|
|
4190
|
-
]
|
|
4201
|
+
],
|
|
4202
|
+
"align": "center",
|
|
4203
|
+
"gap": "md",
|
|
4204
|
+
"type": "stack"
|
|
4191
4205
|
},
|
|
4192
4206
|
{
|
|
4193
|
-
"type": "status-dot",
|
|
4194
4207
|
"status": "online",
|
|
4208
|
+
"label": "Circuit Closed",
|
|
4195
4209
|
"pulse": false,
|
|
4196
|
-
"
|
|
4210
|
+
"type": "status-dot"
|
|
4197
4211
|
}
|
|
4198
4212
|
],
|
|
4199
|
-
"
|
|
4200
|
-
"gap": "md",
|
|
4213
|
+
"direction": "horizontal",
|
|
4201
4214
|
"type": "stack",
|
|
4202
|
-
"
|
|
4215
|
+
"justify": "between",
|
|
4216
|
+
"gap": "md",
|
|
4217
|
+
"align": "center"
|
|
4203
4218
|
},
|
|
4204
4219
|
{
|
|
4205
4220
|
"type": "divider"
|
|
4206
4221
|
},
|
|
4207
4222
|
{
|
|
4208
|
-
"
|
|
4223
|
+
"variant": "success",
|
|
4209
4224
|
"message": "Service is healthy. All requests are being processed.",
|
|
4210
|
-
"
|
|
4225
|
+
"type": "alert"
|
|
4211
4226
|
},
|
|
4212
4227
|
{
|
|
4228
|
+
"type": "simple-grid",
|
|
4229
|
+
"cols": 2.0,
|
|
4213
4230
|
"children": [
|
|
4214
4231
|
{
|
|
4215
|
-
"label": "Failures",
|
|
4216
4232
|
"type": "stat-display",
|
|
4233
|
+
"label": "Failures",
|
|
4217
4234
|
"value": "@entity.failureCount"
|
|
4218
4235
|
},
|
|
4219
4236
|
{
|
|
4220
4237
|
"type": "stat-display",
|
|
4221
|
-
"
|
|
4222
|
-
"
|
|
4238
|
+
"value": "@entity.successCount",
|
|
4239
|
+
"label": "Successes"
|
|
4223
4240
|
}
|
|
4224
|
-
]
|
|
4225
|
-
"cols": 2.0,
|
|
4226
|
-
"type": "simple-grid"
|
|
4241
|
+
]
|
|
4227
4242
|
},
|
|
4228
4243
|
{
|
|
4229
|
-
"max": "@entity.threshold",
|
|
4230
|
-
"min": 0.0,
|
|
4231
4244
|
"type": "meter",
|
|
4232
|
-
"
|
|
4245
|
+
"min": 0.0,
|
|
4246
|
+
"value": "@entity.failureCount",
|
|
4247
|
+
"max": "@entity.threshold"
|
|
4233
4248
|
}
|
|
4234
4249
|
],
|
|
4235
|
-
"type": "stack"
|
|
4250
|
+
"type": "stack",
|
|
4251
|
+
"gap": "lg",
|
|
4252
|
+
"direction": "vertical"
|
|
4236
4253
|
}
|
|
4237
4254
|
],
|
|
4238
|
-
"type": "dashboard-layout"
|
|
4239
|
-
"navItems": [
|
|
4240
|
-
{
|
|
4241
|
-
"label": "Sensors",
|
|
4242
|
-
"icon": "layout-list",
|
|
4243
|
-
"href": "/sensors"
|
|
4244
|
-
},
|
|
4245
|
-
{
|
|
4246
|
-
"label": "Devices",
|
|
4247
|
-
"href": "/devices",
|
|
4248
|
-
"icon": "cpu"
|
|
4249
|
-
},
|
|
4250
|
-
{
|
|
4251
|
-
"label": "Alerts",
|
|
4252
|
-
"href": "/alerts",
|
|
4253
|
-
"icon": "bell"
|
|
4254
|
-
}
|
|
4255
|
-
]
|
|
4255
|
+
"type": "dashboard-layout"
|
|
4256
4256
|
}
|
|
4257
4257
|
]
|
|
4258
4258
|
]
|