diff --git a/app/renderer/src/data.js b/app/renderer/src/data.js index 484a938..7d0b607 100644 --- a/app/renderer/src/data.js +++ b/app/renderer/src/data.js @@ -38,6 +38,7 @@ export async function loadInitialData() { state.projects = projects || []; state.stats = stats || {}; + state.loaded = true; } /** diff --git a/app/renderer/src/store.js b/app/renderer/src/store.js index d828cb7..be2d5d9 100644 --- a/app/renderer/src/store.js +++ b/app/renderer/src/store.js @@ -25,7 +25,8 @@ export const state = reactive({ showSource: false, lastArchiveSnapshot: null, undoTimer: null, - undoExpires: 0 + undoExpires: 0, + loaded: false }); // Platform detection diff --git a/app/renderer/src/views/RecapList.vue b/app/renderer/src/views/RecapList.vue index bdc5a98..d7f09a3 100644 --- a/app/renderer/src/views/RecapList.vue +++ b/app/renderer/src/views/RecapList.vue @@ -9,6 +9,7 @@ defineOptions({ name: 'RecapList' }); const router = useRouter(); const route = useRoute(); const recaps = ref([]); +const recapsLoaded = ref(false); const kind = computed(() => route.query.kind || 'weekly'); const showGenerate = inject('recapGenerateOpen', ref(false)); @@ -79,6 +80,7 @@ async function loadRecaps() { if (data?.cards) results.push({ ...data, _filename: f }); } recaps.value = results; + recapsLoaded.value = true; } let unsub; @@ -134,7 +136,7 @@ onUnmounted(() => { unsub?.(); }); -