Skip to content

Commit 2413d58

Browse files
committed
fix(ui): add loading state for translation status generated time
1 parent 4e7eb1d commit 2413d58

File tree

1 file changed

+10
-18
lines changed

1 file changed

+10
-18
lines changed

app/pages/translation-status.vue

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ defineOgImage(
1717
{ alt: () => `${$t('translation_status.title')} — npmx` },
1818
)
1919
20-
const nuxt = useNuxtApp()
2120
const router = useRouter()
2221
const canGoBack = useCanGoBack()
2322
const { fetchStatus, status } = useI18nStatus()
@@ -28,14 +27,7 @@ const isLoading = computed<boolean>(
2827
() => fetchStatus.value === 'idle' || fetchStatus.value === 'pending',
2928
)
3029
31-
const generatedAt = computed(() => {
32-
const gat = status.value?.generatedAt
33-
if (import.meta.client) {
34-
return (nuxt.isHydrated ? new Date().toISOString() : gat) ?? new Date().toISOString()
35-
}
36-
37-
return gat ?? new Date().toISOString()
38-
})
30+
const generatedAt = computed(() => status.value?.generatedAt)
3931
4032
const localeEntries = computed<I18nLocaleStatus[]>(() => status.value?.locales || [])
4133
@@ -68,16 +60,16 @@ ${template}`
6860
<span class="sr-only sm:not-sr-only">{{ $t('nav.back') }}</span>
6961
</button>
7062
</div>
71-
<i18n-t
72-
keypath="translation_status.generated_at"
73-
tag="p"
74-
scope="global"
75-
class="text-fg-muted text-lg"
76-
>
77-
<template #date>
78-
<NuxtTime :locale :datetime="generatedAt" date-style="long" time-style="medium" />
63+
<p class="text-fg-muted text-lg">
64+
<template v-if="isLoading || !generatedAt">
65+
<SkeletonInline class="h-6 w-48" />
7966
</template>
80-
</i18n-t>
67+
<i18n-t v-else keypath="translation_status.generated_at" tag="span" scope="global">
68+
<template #date>
69+
<NuxtTime :locale :datetime="generatedAt" date-style="long" time-style="medium" />
70+
</template>
71+
</i18n-t>
72+
</p>
8173
</header>
8274

8375
<p class="text-fg-muted leading-relaxed mb-4">

0 commit comments

Comments
 (0)