Skip to content

Commit a623843

Browse files
committed
Feat: 로그인 화면 MVI 모델 정의
1 parent d8a8316 commit a623843

3 files changed

Lines changed: 31 additions & 0 deletions

File tree

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package com.threegap.bitnagil.presentation.login.model
2+
3+
import com.kakao.sdk.auth.model.OAuthToken
4+
import com.threegap.bitnagil.presentation.common.mviviewmodel.MviIntent
5+
6+
sealed class LoginIntent : MviIntent {
7+
data class OnKakaoLoginClick(val onKakaoTalkLoginAvailable: Boolean) : LoginIntent()
8+
9+
data class OnKakaoLoginResult(
10+
val token: OAuthToken?,
11+
val error: Throwable?,
12+
) : LoginIntent()
13+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package com.threegap.bitnagil.presentation.login.model
2+
3+
import com.threegap.bitnagil.presentation.common.mviviewmodel.MviSideEffect
4+
5+
sealed interface LoginSideEffect : MviSideEffect {
6+
data object RequestKakaoTalkLogin : LoginSideEffect
7+
8+
data object RequestKakaoAccountLogin : LoginSideEffect
9+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package com.threegap.bitnagil.presentation.login.model
2+
3+
import com.threegap.bitnagil.presentation.common.mviviewmodel.MviState
4+
import kotlinx.parcelize.Parcelize
5+
6+
@Parcelize
7+
data class LoginState(
8+
val isLoggedIn: Boolean = false,
9+
) : MviState

0 commit comments

Comments
 (0)