diff --git a/src/App.vue b/src/App.vue index 59a0b8c..ec0935c 100644 --- a/src/App.vue +++ b/src/App.vue @@ -18,8 +18,8 @@ justify-content-center " > -
- +
+
@@ -36,11 +36,15 @@ import PrinterCard from './PrinterCard.vue'; const printers: Ref<{ [key: string]: { name?: string; + lastUpdate: Date; status: octoprint.CurrentOrHistoryPayload | null; }; }> = ref({}); const hasPrinters = computed(() => Object.keys(printers.value).length > 0); +let now: Ref = ref(new Date()); +setInterval(() => (now.value = new Date()), 1000); + let websocket!: WebSocket; function connectWebsocket() { @@ -53,9 +57,10 @@ function connectWebsocket() { console.log(event); if (!(event.printer in printers.value)) { - printers.value[event.printer] = { status: null }; + printers.value[event.printer] = { status: null, lastUpdate: new Date() }; } printers.value[event.printer].name = event.name; + printers.value[event.printer].lastUpdate = new Date(); if ('init' in event) { printers.value[event.printer].status = null; diff --git a/src/PrinterCard.vue b/src/PrinterCard.vue index 053e486..3dd7ce4 100644 --- a/src/PrinterCard.vue +++ b/src/PrinterCard.vue @@ -2,7 +2,7 @@

{{ name || 'Unknown' }}

-
+
{{ status.state.text }}
Job File Name: {{ status.job.file.name || 'None' }}
@@ -18,21 +18,40 @@
User: {{ status.job.user || '-' }}
+