fix(frontend): harden the streaming ui and extract copy and constants
Some checks are pending
ci / backend (push) Waiting to run
ci / frontend (push) Waiting to run

This commit is contained in:
Justin Visser 2026-08-10 15:42:18 +02:00
parent 036ef3cc6f
commit a3af8f45cc
36 changed files with 1662 additions and 226 deletions

View file

@ -1,4 +1,5 @@
<script setup lang="ts">
import { messages } from '../lib/messages'
import SuggestionChips from './SuggestionChips.vue'
defineProps<{ suggestions: readonly string[] }>()
@ -7,13 +8,15 @@ defineEmits<{ pick: [suggestion: string] }>()
<template>
<div class="empty">
<h1>What should be playing<span class="accent"> right now?</span></h1>
<h1>
{{ messages.emptyStateHeading
}}<span class="accent">{{ messages.emptyStateHeadingAccent }}</span>
</h1>
<p class="lede">
Describe the moment, not the genre. The assistant reads the request, proposes candidates,
verifies each one on Spotify and explains why it picked them.
{{ messages.emptyStateDescription }}
</p>
<template v-if="suggestions.length">
<div class="label">Try one of these</div>
<div class="label">{{ messages.emptyStateSuggestionLabel }}</div>
<SuggestionChips :suggestions="suggestions" @pick="$emit('pick', $event)" />
</template>
</div>