Dont display stream preview if there is no stream

This commit is contained in:
dragongoose 2023-03-31 09:06:50 -04:00
parent fba695a80e
commit 4053bd2d46

View File

@ -6,6 +6,10 @@ export interface Stream {
startedAt: number startedAt: number
viewers: number viewers: number
preview: string preview: string
streamer: {
pfp: string
name: string
}
} }
export default { export default {
@ -16,17 +20,18 @@ export default {
} }
}, },
async setup(props) { async setup(props) {
let streamData: Stream
let streamData: Stream | null = null
if (!props.stream && props.name) { if (!props.stream && props.name) {
const streamDataFetch = await fetch( const streamDataFetch = await fetch(
`${import.meta.env.VITE_BACKEND_URL}/api/users/${props.name}` `${import.meta.env.VITE_BACKEND_URL}/api/users/${props.name}`
) )
const data = await streamDataFetch.json() const data = await streamDataFetch.json()
if (!data.stream) return if(data.stream) {
data.stream.streamer = { name: props.name, pfp: data.pfp } data.stream.streamer = { name: props.name, pfp: data.pfp }
streamData = data.stream streamData = data.stream
}
} else { } else {
streamData = props.stream as Stream streamData = props.stream as Stream
} }
@ -51,6 +56,7 @@ export default {
</script> </script>
<template> <template>
<div v-if="streamData">
<div class="bg-ctp-crust rounded-lg w-[27rem]"> <div class="bg-ctp-crust rounded-lg w-[27rem]">
<a :href="`${this.frontend_url}/${streamData.streamer.name}`"> <a :href="`${this.frontend_url}/${streamData.streamer.name}`">
<img :src="streamData.preview" class="rounded-lg rounded-b-none" /> <img :src="streamData.preview" class="rounded-lg rounded-b-none" />
@ -73,4 +79,5 @@ export default {
</div> </div>
</div> </div>
</div> </div>
</div>
</template> </template>