Skip to content

feat: 마스토돈 타임라인에 북마크 기능 추가#167

Merged
deholic merged 1 commit intomainfrom
feature/bookmark-favorites
Jan 15, 2026
Merged

feat: 마스토돈 타임라인에 북마크 기능 추가#167
deholic merged 1 commit intomainfrom
feature/bookmark-favorites

Conversation

@deholic
Copy link
Copy Markdown
Owner

@deholic deholic commented Jan 15, 2026

Summary

마스토돈 타임라인의 게시물에 북마크/북마크 취소 기능을 추가했습니다.

Changes

  • API Layer: MastodonApi 인터페이스와 MastodonHttpClient에 bookmark/unbookmark 메서드 추가
  • Type System: Status 타입에 bookmarked 필드 추가
  • UI: TimelineItem 컴포넌트 메뉴에 북마크/북마크 취소 버튼 추가
  • State Management: 모든 관련 컴포넌트에 핸들러 구현 (App.tsx, StatusModal.tsx, ProfileModal.tsx)
  • UX: 낙관적 업데이트, 실패 롤백, 성공 토스트 메시지 지원
  • Integration: UnifiedApiClient에 북마크 메서드 라우팅 추가

Implementation Details

  • 마스토독 API v1 엔드포인트 사용 (POST /api/v1/statuses/:id/bookmark)
  • 기존 favourite/reblog 패턴과 일관된 구조
  • 타입 안전한 TypeScript 구현
  • 사용자 피드백을 위한 토스트 알림

Testing

  • 빌드 성공 확인
  • 타입 체크 통과
  • 전체 기능 동작 검증 필요

- MastodonApi 인터페이스에 bookmark/unbookmark 메서드 추가
- MastodonHttpClient에서 API 호출 구현 (POST /api/v1/statuses/:id/bookmark)
- Status 타입에 bookmarked 필드 추가
- TimelineItem 메뉴에 북마크/북마크 취소 버튼 추가
- App.tsx, StatusModal.tsx, ProfileModal.tsx에 핸들러 구현
- 낙관적 업데이트와 실패 롤백 로직 포함
- 성공 시 토스트 메시지 표시 기능 추가
- UnifiedApiClient에 북마크 메서드 라우팅 추가
@deholic deholic added this to the v0.12.0 milestone Jan 15, 2026
@deholic deholic self-assigned this Jan 15, 2026
@deholic deholic added the enhancement New feature or request label Jan 15, 2026
@deholic deholic merged commit e9ff3c2 into main Jan 15, 2026
1 check passed
@deholic deholic deleted the feature/bookmark-favorites branch January 15, 2026 04:10
@deholic deholic restored the feature/bookmark-favorites branch January 15, 2026 04:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant