diff --git a/dashboard/src/components/shared/ItemCard.vue b/dashboard/src/components/shared/ItemCard.vue index 7c3013239..61aa89327 100644 --- a/dashboard/src/components/shared/ItemCard.vue +++ b/dashboard/src/components/shared/ItemCard.vue @@ -1,71 +1,93 @@ @@ -126,10 +148,62 @@ export default { border-radius: 18px; transition: all 0.3s ease; overflow: hidden; - min-height: 220px; + min-height: 160px; + width: 100%; display: flex; flex-direction: column; justify-content: space-between; + border: 1px solid #e0e0e0; +} + +.item-card-content { + position: relative; + overflow: hidden; + flex: 1 1 auto; + height: 100%; + display: flex; + flex-direction: column; +} + +.item-card-header { + display: flex; + align-items: flex-start; + justify-content: space-between; + gap: 12px; +} + +.item-card-title { + min-width: 0; + flex: 1 1 auto; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.item-card-switch { + flex: 0 0 auto; +} + +.item-card-details { + width: 100%; + margin-top: 6px; + margin-bottom: 10px; +} + +.item-card-footer { + margin-top: auto; + display: flex; + align-items: flex-end; + justify-content: space-between; + gap: 12px; +} + +.item-card-actions { + min-width: 100px; + display: flex; + flex-direction: column; + gap: 8px; + align-items: stretch; } .hover-elevation:hover { diff --git a/dashboard/src/views/PlatformPage.vue b/dashboard/src/views/PlatformPage.vue index 56d23852d..4206d786c 100644 --- a/dashboard/src/views/PlatformPage.vue +++ b/dashboard/src/views/PlatformPage.vue @@ -16,7 +16,7 @@ -
+
mdi-connection @@ -24,55 +24,52 @@ - - - - - - - +
+ + + +
@@ -453,28 +450,24 @@ export default { padding-bottom: 40px; } -.webhook-info { - margin-top: 4px; +.item-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); + gap: 16px; + width: 100%; } -.webhook-chip { - cursor: pointer; +.gap-2 { + gap: 8px; } -.platform-status-row { - display: flex; +.status-chip, .error-chip, .webhook-chip { + display: inline-flex; align-items: center; - flex-wrap: wrap; - gap: 4px; } -.status-chip { - font-size: 12px; -} - -.error-chip { +.error-chip, .webhook-chip { cursor: pointer; - font-size: 12px; } .error-details {