diff --git a/dashboard/src/style.css b/dashboard/src/style.css index 0d75d0187..7ffb5e7f6 100644 --- a/dashboard/src/style.css +++ b/dashboard/src/style.css @@ -220,6 +220,14 @@ tr:hover .table-actions { color: var(--pankow-color-primary-hover); } +.collapse { + transition: transform 200ms linear; +} + +.collapse.expanded { + transform: rotate(90deg); +} + fieldset > * { margin: 6px 0; } diff --git a/dashboard/src/views/EmailStatusView.vue b/dashboard/src/views/EmailStatusView.vue index 5ae6db2b0..80d424dea 100644 --- a/dashboard/src/views/EmailStatusView.vue +++ b/dashboard/src/views/EmailStatusView.vue @@ -2,7 +2,7 @@ import { ref, onMounted } from 'vue'; import { eachLimit } from 'async'; -import { Button } from 'pankow'; +import { Button, Icon } from 'pankow'; import { prettyDecimalSize } from 'pankow/utils'; import Section from '../components/Section.vue'; import StateLED from '../components/StateLED.vue'; @@ -24,6 +24,8 @@ async function onRefresh() { } async function refreshStatus(domain) { + domain.loading = true; + let [error, result] = await mailModel.status(domain.domain); if (error) { console.error(error); @@ -54,8 +56,6 @@ async function refreshStatus(domain) { domain.loading = false; - // TODO - // mail usage is loaded separately with a cancellation check. when there are a lot of domains, it runs a long time in background and slows down loading of new views [error, result] = await mailModel.usage(domain.domain); if (error) { console.error(error); @@ -91,8 +91,9 @@ onMounted(async () => {
-
+
+ {{ domain.domain }}
@@ -120,10 +121,9 @@ onMounted(async () => { .domain-list-item { cursor: pointer; - padding: 10px 0; - border-radius: var(--pankow-border-radius); - padding: 10px; + padding: 0 10px; margin-bottom: 10px; + border-radius: var(--pankow-border-radius); } .domain-list-item.active,