Skip to content

Commit d44bae6

Browse files
committed
.
1 parent d618297 commit d44bae6

1 file changed

Lines changed: 13 additions & 9 deletions

File tree

app/pages/package/[...package].vue

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -399,10 +399,13 @@ const { user } = useAtproto()
399399
400400
const authModal = useModal('auth-modal')
401401
402-
const { data: likesData } = useFetch(() => `/api/social/likes/${packageName.value}`, {
403-
default: () => ({ totalLikes: 0, userHasLiked: false }),
404-
server: false,
405-
})
402+
const { data: likesData, status: likesStatus } = useFetch(
403+
() => `/api/social/likes/${packageName.value}`,
404+
{
405+
default: () => ({ totalLikes: 0, userHasLiked: false }),
406+
server: false,
407+
},
408+
)
406409
407410
const isLikeActionPending = ref(false)
408411
@@ -414,12 +417,12 @@ const likeAction = async () => {
414417
415418
if (isLikeActionPending.value) return
416419
417-
const currentlyLiked = likesData.value?.userHasLiked ?? false
418-
const currentLikes = likesData.value?.totalLikes ?? 0
420+
const currentlyLiked = likesData.value.userHasLiked
421+
const currentLikes = likesData.value.totalLikes
419422
420423
// Optimistic update
421424
likesData.value = {
422-
totalLikes: currentlyLiked ? currentLikes - 1 : currentLikes + 1,
425+
totalLikes: currentLikes + (currentlyLiked ? -1 : 1),
423426
userHasLiked: !currentlyLiked,
424427
}
425428
@@ -605,7 +608,6 @@ onKeyStroke(
605608

606609
<!-- Package likes -->
607610
<TooltipApp
608-
v-if="likesData"
609611
:text="
610612
likesData.userHasLiked ? $t('package.likes.unlike') : $t('package.likes.like')
611613
"
@@ -631,7 +633,9 @@ onKeyStroke(
631633
class="w-4 h-4"
632634
aria-hidden="true"
633635
/>
634-
<span>{{ formatCompactNumber(likesData.totalLikes, { decimals: 1 }) }}</span>
636+
<span v-if="likesStatus !== 'pending'">{{
637+
formatCompactNumber(likesData.totalLikes, { decimals: 1 })
638+
}}</span>
635639
</button>
636640
</TooltipApp>
637641
<template #fallback>

0 commit comments

Comments
 (0)