diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ee562124..d73d05a7 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -112,6 +112,9 @@ + diff --git a/app/src/main/java/kr/co/vividnext/sodalive/di/AppDI.kt b/app/src/main/java/kr/co/vividnext/sodalive/di/AppDI.kt index 5e25f1f4..a01b4e27 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/di/AppDI.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/di/AppDI.kt @@ -71,8 +71,8 @@ import kr.co.vividnext.sodalive.common.ApiBuilder import kr.co.vividnext.sodalive.explorer.ExplorerApi import kr.co.vividnext.sodalive.explorer.ExplorerRepository import kr.co.vividnext.sodalive.explorer.ExplorerViewModel -import kr.co.vividnext.sodalive.explorer.profile.channel_donation.UserProfileChannelDonationAllViewModel import kr.co.vividnext.sodalive.explorer.profile.UserProfileViewModel +import kr.co.vividnext.sodalive.explorer.profile.channel_donation.UserProfileChannelDonationAllViewModel import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityApi import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository import kr.co.vividnext.sodalive.explorer.profile.creator_community.all.CreatorCommunityAllViewModel @@ -145,8 +145,8 @@ import kr.co.vividnext.sodalive.mypage.recent.recentContentModule import kr.co.vividnext.sodalive.mypage.service_center.FaqApi import kr.co.vividnext.sodalive.mypage.service_center.FaqRepository import kr.co.vividnext.sodalive.mypage.service_center.ServiceCenterViewModel -import kr.co.vividnext.sodalive.network.TokenAuthenticator import kr.co.vividnext.sodalive.network.AcceptLanguageInterceptor +import kr.co.vividnext.sodalive.network.TokenAuthenticator import kr.co.vividnext.sodalive.report.ReportApi import kr.co.vividnext.sodalive.report.ReportRepository import kr.co.vividnext.sodalive.search.SearchApi @@ -180,6 +180,11 @@ import kr.co.vividnext.sodalive.v2.main.MainV2ViewModel import kr.co.vividnext.sodalive.v2.main.chat.ChatMainViewModel import kr.co.vividnext.sodalive.v2.main.chat.data.ChatRoomApi import kr.co.vividnext.sodalive.v2.main.chat.data.ChatRoomRepository +import kr.co.vividnext.sodalive.v2.main.chat.dm.DmChatRoomViewModel +import kr.co.vividnext.sodalive.v2.main.chat.dm.data.DmChatApi +import kr.co.vividnext.sodalive.v2.main.chat.dm.data.DmChatEventClient +import kr.co.vividnext.sodalive.v2.main.chat.dm.data.DmChatRealtimeClient +import kr.co.vividnext.sodalive.v2.main.chat.dm.data.DmChatRepository import kr.co.vividnext.sodalive.v2.main.home.HomeCreatorRankingViewModel import kr.co.vividnext.sodalive.v2.main.home.HomeRecommendationViewModel import kr.co.vividnext.sodalive.v2.main.home.data.HomeCreatorRankingApi @@ -295,6 +300,7 @@ class AppDI(private val context: Context, isDebugMode: Boolean) { single { ApiBuilder().build(get(), PointStatusApi::class.java) } single { ApiBuilder().build(get(), HomeApi::class.java) } single { ApiBuilder().build(get(), ChatRoomApi::class.java) } + single { ApiBuilder().build(get(), DmChatApi::class.java) } single { ApiBuilder().build(get(), HomeCreatorRankingApi::class.java) } single { ApiBuilder().build(get(), HomeRecommendationApi::class.java) } single { ApiBuilder().build(get(), CharacterApi::class.java) } @@ -302,6 +308,7 @@ class AppDI(private val context: Context, isDebugMode: Boolean) { single { ApiBuilder().build(get(), CharacterCommentApi::class.java) } single { ApiBuilder().build(get(), OriginalWorkApi::class.java) } single { ApiBuilder().build(get(named("agoraRetrofit")), V2vApi::class.java) } + single { DmChatEventClient(okHttpClient = get(), gson = get(), baseUrl = baseUrl) } } private val viewModelModule = module { @@ -394,6 +401,7 @@ class AppDI(private val context: Context, isDebugMode: Boolean) { viewModel { PointStatusViewModel(get()) } viewModel { HomeViewModel(get(), get()) } viewModel { ChatMainViewModel(get()) } + viewModel { DmChatRoomViewModel(get()) } viewModel { HomeCreatorRankingViewModel(get()) } viewModel { HomeRecommendationViewModel(get()) } viewModel { PushNotificationListViewModel(get()) } @@ -447,6 +455,7 @@ class AppDI(private val context: Context, isDebugMode: Boolean) { factory { PointStatusRepository(get()) } factory { HomeRepository(get()) } factory { ChatRoomRepository(get()) } + factory { DmChatRepository(api = get(), realtimeClient = get()) } factory { HomeCreatorRankingRepository(get()) } factory { HomeRecommendationRepository(get()) } factory { CharacterTabRepository(get()) }