feat: 게시판 인기/블라인드/자기글 차단·헤더 아바타·댓글 새로고침 등
CI / build (push) Failing after 11m35s

- 헤더에 내 아바타(계정정보 링크) + 앱 시작 시 프로필 동기화(재로그인 없이 아바타/포인트)
- 목록: 인기 글 상단 배지(🔥), 비추천 20+ 블라인드 표시
- 상세: 본인 글/댓글 추천·비추천 비활성, 비추천 20+ 글/댓글 블라인드(그래도 보기)
- 댓글: 인기 댓글 배지, 본문 작성자에 작성자 뱃지, 목록 하단 새로고침 버튼(입력폼 위)
- 추천자 목록 가로 줄바꿈(아바타+이름 단위, 이름 안 잘리게)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ByungCheol
2026-06-28 13:21:37 +09:00
parent 7699cfc55f
commit 7e38eae2b7
6 changed files with 220 additions and 24 deletions
+12 -1
View File
@@ -105,6 +105,17 @@ export const useAuthStore = defineStore('auth', () => {
await persist()
}
// 서버에서 전체 프로필(아바타·포인트 포함)을 받아 병합 — 재로그인 없이 최신화
async function refreshProfile() {
if (!token.value) return
try {
const me = await authApi.profile()
await applyUser(me)
} catch {
// 실패해도 캐시된 사용자 정보 유지
}
}
async function clear() {
exitDemo()
token.value = ''
@@ -112,7 +123,7 @@ export const useAuthStore = defineStore('auth', () => {
await persist()
}
return { token, user, ready, isAuthenticated, isAdmin, isPremium, restore, login, googleLogin, signup, fetchMe, applyUser, logout, clear }
return { token, user, ready, isAuthenticated, isAdmin, isPremium, restore, login, googleLogin, signup, fetchMe, applyUser, refreshProfile, logout, clear }
})
function safeParse(value) {