feat(life): add Life Post detail page and endpoint

Implement GET /api/life-posts/:id with moderation and visibility rules
Add /life/:id route and LifePostDetail view
Update feeds and user profiles to link to the new detail page
This commit is contained in:
2026-05-04 09:51:31 +08:00
parent bcff83a512
commit 7ff7e18b94
10 changed files with 1039 additions and 10 deletions

View File

@@ -18,6 +18,7 @@ import {
iconComment,
iconDelete,
iconEdit,
iconExternal,
iconLife,
iconReactionFun,
iconReactionHelpful,
@@ -1222,7 +1223,11 @@ onUnmounted(() => {
</span>
</div>
<div v-if="canManage(post) || canDeletePost(post)" class="life-post__actions">
<div class="life-post__actions">
<RouterLink class="life-icon-button" :to="`/life/${post.id}`" :aria-label="t('pages.life.viewPost')">
<Icon :icon="iconExternal" class="ui-icon" aria-hidden="true" />
<span class="life-action-tooltip" role="tooltip">{{ t('pages.life.viewPost') }}</span>
</RouterLink>
<button v-if="canManage(post)" class="life-icon-button" type="button" :aria-label="t('pages.life.editPost')" @click="startEdit(post)">
<Icon :icon="iconEdit" class="ui-icon" aria-hidden="true" />
<span class="life-action-tooltip" role="tooltip">{{ t('pages.life.editPost') }}</span>