-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
🔀 :: (#521) compose destination 적용
- Loading branch information
Showing
36 changed files
with
205 additions
and
717 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
19 changes: 19 additions & 0 deletions
19
app/src/main/java/team/aliens/dms_android/app/di/navigation/NavGraphModule.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
package team.aliens.dms_android.app.di.navigation | ||
|
||
import dagger.Module | ||
import dagger.Provides | ||
import dagger.hilt.InstallIn | ||
import dagger.hilt.components.SingletonComponent | ||
import team.aliens.dms_android.feature.NavGraph | ||
import team.aliens.dms_android.feature.NavGraphs | ||
import javax.inject.Singleton | ||
|
||
@Module | ||
@InstallIn(SingletonComponent::class) | ||
object NavGraphModule { | ||
|
||
@Provides | ||
@Singleton | ||
@RootNavGraph | ||
fun provideRootNavGraph(): NavGraph = NavGraphs.root | ||
} |
8 changes: 8 additions & 0 deletions
8
app/src/main/java/team/aliens/dms_android/app/di/navigation/Qualifiers.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
package team.aliens.dms_android.app.di.navigation | ||
|
||
import javax.inject.Qualifier | ||
|
||
@Qualifier | ||
@MustBeDocumented | ||
@Retention(AnnotationRetention.BINARY) | ||
annotation class RootNavGraph |
145 changes: 104 additions & 41 deletions
145
app/src/main/java/team/aliens/dms_android/app/navigation/DmsNavigator.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,122 +1,185 @@ | ||
package team.aliens.dms_android.app.navigation | ||
|
||
import androidx.navigation.NavHostController | ||
import com.ramcosta.composedestinations.dynamic.within | ||
import com.ramcosta.composedestinations.navigation.navigate | ||
import com.ramcosta.composedestinations.navigation.popUpTo | ||
import com.ramcosta.composedestinations.spec.NavGraphSpec | ||
import team.aliens.dms_android.app.navigation.authorized.AuthorizedNavGraph | ||
import team.aliens.dms_android.app.navigation.authorized.AuthorizedNavigator | ||
import team.aliens.dms_android.app.navigation.unauthorized.UnauthorizedNavGraph | ||
import team.aliens.dms_android.app.navigation.unauthorized.UnauthorizedNavigator | ||
import team.aliens.dms_android.feature._legacy.util.SelectImageType | ||
import team.aliens.dms_android.feature.destinations.AnnouncementListScreenDestination | ||
import team.aliens.dms_android.feature.destinations.ApplicationScreenDestination | ||
import team.aliens.dms_android.feature.destinations.EditPasswordSetPasswordScreenDestination | ||
import team.aliens.dms_android.feature.destinations.EditProfileImageScreenDestination | ||
import team.aliens.dms_android.feature.destinations.EnterEmailScreenDestination | ||
import team.aliens.dms_android.feature.destinations.EnterSchoolVerificationQuestionScreenDestination | ||
import team.aliens.dms_android.feature.destinations.FindIdScreenDestination | ||
import team.aliens.dms_android.feature.destinations.HomeScreenDestination | ||
import team.aliens.dms_android.feature.destinations.MyPageScreenDestination | ||
import team.aliens.dms_android.feature.destinations.NoticeDetailsScreenDestination | ||
import team.aliens.dms_android.feature.destinations.NotificationBoxScreenDestination | ||
import team.aliens.dms_android.feature.destinations.PointHistoryScreenDestination | ||
import team.aliens.dms_android.feature.destinations.RemainsApplicationScreenDestination | ||
import team.aliens.dms_android.feature.destinations.ResetPasswordEnterEmailVerificationCodeScreenDestination | ||
import team.aliens.dms_android.feature.destinations.ResetPasswordSetPasswordScreenDestination | ||
import team.aliens.dms_android.feature.destinations.SetIdScreenDestination | ||
import team.aliens.dms_android.feature.destinations.SetProfileImageScreenDestination | ||
import team.aliens.dms_android.feature.destinations.SignInScreenDestination | ||
import team.aliens.dms_android.feature.destinations.SignUpEnterEmailVerificationCodeScreenDestination | ||
import team.aliens.dms_android.feature.destinations.SignUpSetPasswordScreenDestination | ||
import team.aliens.dms_android.feature.destinations.StudyRoomDetailsScreenDestination | ||
import team.aliens.dms_android.feature.destinations.StudyRoomListScreenDestination | ||
import team.aliens.dms_android.feature.destinations.TermsScreenDestination | ||
import team.aliens.dms_android.feature.editpassword.navigation.EditPasswordNavGraph | ||
import team.aliens.dms_android.feature.resetpassword.navigation.ResetPasswordNavGraph | ||
import team.aliens.dms_android.feature.signup.navigation.SignUpNavGraph | ||
import java.util.UUID | ||
import javax.inject.Inject | ||
|
||
interface DmsNavigator : AuthorizedNavigator, UnauthorizedNavigator | ||
|
||
class DmsNavigatorImpl @Inject constructor() : DmsNavigator { | ||
override fun openSetPassword() { | ||
TODO("Not yet implemented") | ||
class DmsNavigator( | ||
private val navGraph: NavGraphSpec, | ||
private val navController: NavHostController, | ||
) : AuthorizedNavigator, | ||
UnauthorizedNavigator { | ||
override fun openEditPasswordSetPasswordNav() { | ||
navController.navigate(EditPasswordSetPasswordScreenDestination within navGraph) | ||
} | ||
|
||
override fun openSignIn() { | ||
TODO("Not yet implemented") | ||
navController.navigate(SignInScreenDestination within navGraph) | ||
} | ||
|
||
override fun popBackStack() { | ||
TODO("Not yet implemented") | ||
navController.popBackStack() | ||
} | ||
|
||
override fun navigateUp() { | ||
navController.navigateUp() | ||
} | ||
|
||
override fun openHome() { | ||
TODO("Not yet implemented") | ||
navController.navigate(HomeScreenDestination within navGraph) | ||
} | ||
|
||
override fun openApplication() { | ||
TODO("Not yet implemented") | ||
navController.navigate(ApplicationScreenDestination within navGraph) | ||
} | ||
|
||
override fun openAnnouncementList() { | ||
TODO("Not yet implemented") | ||
navController.navigate(AnnouncementListScreenDestination within navGraph) | ||
} | ||
|
||
override fun openMyPage() { | ||
TODO("Not yet implemented") | ||
navController.navigate(MyPageScreenDestination within navGraph) | ||
} | ||
|
||
override fun openNoticeDetails(noticeId: UUID) { | ||
TODO("Not yet implemented") | ||
navController.navigate(NoticeDetailsScreenDestination(noticeId = noticeId) within navGraph) | ||
} | ||
|
||
override fun openStudyRoomList() { | ||
TODO("Not yet implemented") | ||
navController.navigate(StudyRoomListScreenDestination within navGraph) | ||
} | ||
|
||
override fun openRemainsApplication() { | ||
TODO("Not yet implemented") | ||
navController.navigate(RemainsApplicationScreenDestination within navGraph) | ||
} | ||
|
||
override fun openNotificationBox() { | ||
TODO("Not yet implemented") | ||
navController.navigate(NotificationBoxScreenDestination within navGraph) | ||
} | ||
|
||
override fun openPointHistory() { | ||
TODO("Not yet implemented") | ||
navController.navigate(PointHistoryScreenDestination within navGraph) | ||
} | ||
|
||
override fun openEditPassword() { | ||
TODO("Not yet implemented") | ||
override fun openEditPasswordNav() { | ||
navController.navigate(EditPasswordNavGraph) { | ||
restoreState = true | ||
launchSingleTop = true | ||
} | ||
} | ||
|
||
override fun switchNavGraphRoot() { | ||
TODO("Not yet implemented") | ||
override fun openEditProfileImage(selectImageType: SelectImageType) { | ||
// TODO | ||
navController.navigate(EditProfileImageScreenDestination(selectImageType) within navGraph) | ||
} | ||
|
||
override fun openResetPasswordEnterEmailVerificationCode() { | ||
TODO("Not yet implemented") | ||
navController.navigate(ResetPasswordEnterEmailVerificationCodeScreenDestination within navGraph) | ||
} | ||
|
||
override fun openResetPasswordSetPassword() { | ||
TODO("Not yet implemented") | ||
navController.navigate(ResetPasswordSetPasswordScreenDestination) | ||
} | ||
|
||
override fun openMain() { | ||
TODO("Not yet implemented") | ||
override fun openAuthorizedNav() { | ||
navController.navigate(AuthorizedNavGraph) { | ||
popUpTo(UnauthorizedNavGraph) { | ||
inclusive = true | ||
} | ||
} | ||
} | ||
|
||
override fun openSignUp() { | ||
TODO("Not yet implemented") | ||
override fun openUnauthorizedNav() { | ||
navController.navigate(UnauthorizedNavGraph) { | ||
popUpTo(AuthorizedNavGraph) { | ||
inclusive = true | ||
} | ||
} | ||
} | ||
|
||
override fun openSignUpNav() { | ||
navController.navigate(SignUpNavGraph) | ||
} | ||
|
||
override fun openFindId() { | ||
TODO("Not yet implemented") | ||
navController.navigate(FindIdScreenDestination within navGraph) | ||
} | ||
|
||
override fun openResetPassword() { | ||
TODO("Not yet implemented") | ||
override fun openResetPasswordNav() { | ||
navController.navigate(ResetPasswordNavGraph) | ||
} | ||
|
||
override fun openEnterSchoolVerificationQuestion() { | ||
TODO("Not yet implemented") | ||
navController.navigate(EnterSchoolVerificationQuestionScreenDestination within navGraph) | ||
} | ||
|
||
override fun openEnterEmail(clearStack: Boolean) { | ||
TODO("Not yet implemented") | ||
navController.navigate(EnterEmailScreenDestination within navGraph) | ||
} | ||
|
||
override fun openSignUpEnterEmailVerificationCode() { | ||
TODO("Not yet implemented") | ||
navController.navigate(SignUpEnterEmailVerificationCodeScreenDestination within navGraph) | ||
} | ||
|
||
override fun openSetId() { | ||
TODO("Not yet implemented") | ||
navController.navigate(SetIdScreenDestination within navGraph) | ||
} | ||
|
||
override fun openSignUpSetPassword() { | ||
TODO("Not yet implemented") | ||
navController.navigate(SignUpSetPasswordScreenDestination within navGraph) | ||
} | ||
|
||
override fun openSetProfileImage() { | ||
TODO("Not yet implemented") | ||
navController.navigate(SetProfileImageScreenDestination within navGraph) | ||
} | ||
|
||
override fun openTerms() { | ||
TODO("Not yet implemented") | ||
} | ||
|
||
override fun openStudyRoomDetails(studyRoomId: UUID, timeslot: UUID) { | ||
TODO("Not yet implemented") | ||
navController.navigate(TermsScreenDestination within navGraph) | ||
} | ||
|
||
override fun openStudyRoomDetails( | ||
studyRoomId: UUID, | ||
timeslot: UUID, | ||
) { | ||
navController.navigate( | ||
StudyRoomDetailsScreenDestination( | ||
studyRoomId = studyRoomId, | ||
timeslot = timeslot, | ||
) within navGraph, | ||
) | ||
} | ||
} |
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1 @@ | ||
build/ | ||
build/**/main/ | ||
build/**/main/**/*.kt | ||
build/**/main/**/*.java | ||
feature/build |
44 changes: 0 additions & 44 deletions
44
...ava/team/aliens/dms_android/feature/main/announcement/AnnouncementsViewModel_Factory.java
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.