diff --git a/src/views/DeviceStreamLive.vue b/src/views/DeviceStreamLive.vue
index ad42b26..dc990b3 100644
--- a/src/views/DeviceStreamLive.vue
+++ b/src/views/DeviceStreamLive.vue
@@ -2,10 +2,28 @@
+
+
+ {{ clock }}
+
+
+ heat
+ {{ heatInfo.data.value[0].HeatNumber }}
+
+
+
@@ -84,6 +102,7 @@ import SpeedLiveScore from '../components/SpeedLiveScore.vue'
import TimingLiveScore from '../components/TimingLiveScore.vue'
import UnsupportedCompetitionEvent from '../components/UnsupportedCompetitionEvent.vue'
import { useHeatInfo } from '../hooks/heat-info'
+import { useDateFormat, useTimestamp } from '@vueuse/core'
useHead({
title: '📺 Device Stream (Live)'
@@ -92,6 +111,7 @@ useHead({
const settings = useDeviceStreamPools()
const screenId = useRouteQuery('screen-id')
const theme = useTheme()
+const clock = useDateFormat(useTimestamp({ interval: 300 }), 'HH:mm')
const screen = computed(() => screenId.value == null ? null : settings.value.screens?.[screenId.value])
const cols = computed(() => screen.value?.rows === 0 ? 1 : screen.value?.cols ?? 1)
@@ -99,9 +119,16 @@ const rows = computed(() => screen.value?.cols === 0 ? 1 : screen.value?.rows ??
const pools = computed(() => screen.value?.pools ?? {})
const tallies = reactive>({})
-
const deviceIds = computed(() => Object.values(pools.value).map(p => p.deviceId).filter(id => typeof id === 'string'))
+const freeCorner = computed(() => {
+ if (pools.value[`${1}:${cols.value}`] == null) return 'top-right'
+ if (pools.value[`${rows.value}:${cols.value}`] == null) return 'bottom-right'
+ if (pools.value[`${1}:${1}`] == null) return 'top-left'
+ if (pools.value[`${rows.value}:${1}`] == null) return 'bottom-left'
+ else return 'top-right'
+})
+
const markStreamSubscription = useDeviceStreamMarkAddedSubscription({
deviceIds: deviceIds as unknown as string[]
}, {