diff --git a/fam-ui/src/components/Spinner.vue b/fam-ui/src/components/Spinner.vue new file mode 100644 index 0000000..fc16470 --- /dev/null +++ b/fam-ui/src/components/Spinner.vue @@ -0,0 +1,15 @@ + + + diff --git a/fam-ui/src/views/ChatHistory.vue b/fam-ui/src/views/ChatHistory.vue index ab25643..a5c657b 100644 --- a/fam-ui/src/views/ChatHistory.vue +++ b/fam-ui/src/views/ChatHistory.vue @@ -3,20 +3,25 @@ import { onMounted, ref, watch } from 'vue' import { api, fmtDateTime } from '../api.js' import PageHeader from '../components/PageHeader.vue' import EmptyState from '../components/EmptyState.vue' +import Spinner from '../components/Spinner.vue' const page = ref(0) const pageSize = 20 const history = ref([]) const loadError = ref('') +const loading = ref(true) async function load() { loadError.value = '' + loading.value = true try { const data = await api.chatHistory({ limit: pageSize, offset: page.value * pageSize }) history.value = data.history } catch (e) { loadError.value = e.message history.value = [] + } finally { + loading.value = false } } @@ -27,7 +32,8 @@ onMounted(load)