-
Notifications
You must be signed in to change notification settings - Fork 0
[Feat] MainActivity Compose 연동 및 하위 Fragment 제거 #40
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: develop
Are you sure you want to change the base?
Changes from all commits
8c715fd
220a587
06ccf08
1faefcc
f66eebc
824fbe9
72ccac5
6cfd1b7
d0648dd
4aa5aac
80b20ef
28507ee
b9251e5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5,9 +5,9 @@ import com.daedan.festabook.domain.model.Notice | |
| import com.daedan.festabook.domain.model.Place | ||
| import com.daedan.festabook.domain.model.PlaceDetail | ||
| import com.daedan.festabook.domain.model.PlaceDetailImage | ||
| import kotlinx.datetime.LocalDateTime | ||
| import kotlinx.serialization.SerialName | ||
| import kotlinx.serialization.Serializable | ||
| import java.time.LocalDateTime | ||
| import java.time.LocalTime | ||
| import java.time.format.DateTimeFormatter | ||
|
Comment on lines
-10
to
12
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. kmp 프로젝트는 kotlinx.LocalDate로 마이그레이션 해놓긴 했는데 나중에 각자 파트 작업할 때 확인 한 번 해주세요!! |
||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,15 +1,19 @@ | ||
| package com.daedan.festabook.presentation.main | ||
|
|
||
| import com.daedan.festabook.presentation.placeDetail.model.PlaceDetailUiModel | ||
| import com.daedan.festabook.presentation.placeMap.model.PlaceUiModel | ||
| import kotlinx.serialization.Serializable | ||
|
|
||
| @Serializable | ||
| sealed interface FestabookRoute { | ||
| @Serializable | ||
| data object Splash : FestabookRoute | ||
|
|
||
| // TODO: PlaceUiModel, PlaceDetailUiModel 생성자에 추가 후 UiModel에 @Serializable 어노테이션 필요 | ||
| @Serializable | ||
| data object PlaceDetail : FestabookRoute | ||
| data class PlaceDetail( | ||
| val placeUiModel: PlaceUiModel? = null, | ||
| val placeDetailUiModel: PlaceDetailUiModel? = null, | ||
| ) : FestabookRoute | ||
|
Comment on lines
+3
to
+16
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion | 🟠 Major 🧩 Analysis chain🏁 Script executed: # Find PlaceDetailUiModel and PlaceUiModel files
fd 'PlaceDetailUiModel|PlaceUiModel' -t f --extension ktRepository: festabook/android Length of output: 178 🏁 Script executed: # Try searching using web for information about Jetpack Compose navigation serialization constraints
# and common issues with navigation route payloads
curl -s "https://developer.android.com/" 2>/dev/null | head -20 || echo "Web access limited"Repository: festabook/android Length of output: 808 🌐 Web query:
💡 Result: In Navigation Compose, “type-safe routes” that use Practical size limits / constraints (what will bite you)
What this means for “serialized route payloads”
If you share a concrete example of your route payload (types + approximate size), I can suggest a safer pattern and where it should live (route vs Citations:
🌐 Web query:
💡 Result: Best practices (performance + reliability) for
|
||
|
|
||
| @Serializable | ||
| data object Explore : FestabookRoute | ||
|
|
||
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.
🧩 Analysis chain
🏁 Script executed:
# Find PlaceDetailResponse.kt file fd PlaceDetailResponse.ktRepository: festabook/android
Length of output: 178
🏁 Script executed:
Repository: festabook/android
Length of output: 87
🏁 Script executed:
Repository: festabook/android
Length of output: 133
🏁 Script executed:
Repository: festabook/android
Length of output: 87
🏁 Script executed:
Repository: festabook/android
Length of output: 150
🏁 Script executed:
Repository: festabook/android
Length of output: 15496
🏁 Script executed:
Repository: festabook/android
Length of output: 43
🏁 Script executed:
Repository: festabook/android
Length of output: 27862
🏁 Script executed:
Repository: festabook/android
Length of output: 3832
🏁 Script executed:
Repository: festabook/android
Length of output: 43
🏁 Script executed:
Repository: festabook/android
Length of output: 43
🏁 Script executed:
Repository: festabook/android
Length of output: 43
🏁 Script executed:
Repository: festabook/android
Length of output: 938
🏁 Script executed:
Repository: festabook/android
Length of output: 43
🏁 Script executed:
Repository: festabook/android
Length of output: 43
🏁 Script executed:
Repository: festabook/android
Length of output: 123
🏁 Script executed:
Repository: festabook/android
Length of output: 934
🏁 Script executed:
Repository: festabook/android
Length of output: 3759
🏁 Script executed:
Repository: festabook/android
Length of output: 43
LocalDateTime 파싱 시 예외 처리 누락
Line 91에서
LocalDateTime.parse(it.createdAt)를 직접 호출하고 있으나 예외 처리가 없습니다. 서버에서 ISO-8601 형식이 아닌 createdAt을 반환하면 런타임 예외가 발생합니다.LostItemResponse의toLocalDateTime()확장 함수처럼 try-catch로 보호하거나, 서버 응답 형식이 ISO-8601임을 명시적으로 문서화하시기 바랍니다.참고: LostItemResponse의 에러 처리 패턴
🤖 Prompt for AI Agents