-
Notifications
You must be signed in to change notification settings - Fork 0
히스토리 화면 및 api 연결 #5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR implements a history screen feature for viewing previously read books with two different view types (list and dataset/grid), along with the complete API integration across all architecture layers. The API calls are currently commented out, with pagination and error handling planned for future implementation.
Changes:
- Added a history screen UI with toggleable list and grid view types
- Implemented complete data flow from API to UI through clean architecture layers (remote → data → domain → presentation → UI)
- Changed error handling from Throwable to String in DataResource for simplified error messaging
- Created reusable TitleBar component for consistent navigation header
Reviewed changes
Copilot reviewed 21 out of 21 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
| ui/src/main/res/drawable/list_view.xml | New icon for list view type |
| ui/src/main/res/drawable/dataset_view.xml | New icon for grid/dataset view type |
| ui/src/main/res/drawable/arrow_left.xml | New back arrow icon for navigation |
| ui/src/main/java/project/side/ui/screen/MainScreen.kt | Integrated HistoryViewModel with HistoryScreen |
| ui/src/main/java/project/side/ui/screen/HistoryScreen.kt | Implemented history screen with dual view modes and placeholder UI |
| ui/src/main/java/project/side/ui/component/TitleBar.kt | Created reusable title bar component with optional back button |
| remote/src/main/java/project/side/remote/model/HistoryBookResponse.kt | Defined API response models for history books |
| remote/src/main/java/project/side/remote/di/RemoteModule.kt | Added DI bindings for HistoryService and HistoryDataSource |
| remote/src/main/java/project/side/remote/datasource/HistoryDataSourceImpl.kt | Implemented network data source for history books API |
| remote/src/main/java/project/side/remote/api/HistoryService.kt | Defined Retrofit service interface for history books endpoint |
| presentation/src/main/java/project/side/presentation/viewmodel/HistoryViewModel.kt | Implemented view model with state management and view type toggling |
| presentation/src/main/java/project/side/presentation/model/HistoryBookState.kt | Defined UI state model with view type enum and toggle function |
| domain/src/main/java/project/side/domain/usecase/GetHistoryBooksUseCase.kt | Created use case for fetching history books |
| domain/src/main/java/project/side/domain/repository/HistoryRepository.kt | Defined repository interface for history data operations |
| domain/src/main/java/project/side/domain/model/HistoryBook.kt | Defined domain models for history books |
| domain/src/main/java/project/side/domain/DataResource.kt | Changed Error type from Throwable to String for consistent error handling |
| data/src/main/java/project/side/data/repository/TestRepositoryImpl.kt | Updated to use new String-based error handling |
| data/src/main/java/project/side/data/repository/HistoryRepositoryImpl.kt | Implemented repository with flow-based data transformation |
| data/src/main/java/project/side/data/model/HistoryBookEntity.kt | Defined data layer entities with domain mapping |
| data/src/main/java/project/side/data/datasource/HistoryDataSource.kt | Defined data source interface for history operations |
| app/src/main/java/project/side/ikdaman/di/AppModule.kt | Added DI bindings for repository and use case |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
data/src/main/java/project/side/data/repository/HistoryRepositoryImpl.kt
Show resolved
Hide resolved
remote/src/main/java/project/side/remote/datasource/HistoryDataSourceImpl.kt
Outdated
Show resolved
Hide resolved
data/src/main/java/project/side/data/model/HistoryBookEntity.kt
Outdated
Show resolved
Hide resolved
…aSourceImpl.kt Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
api 호출부는 주석처리 해놨습니다
페이징이랑 에러처리는 api 나오고나서 구현할게요~~