Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
242
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.82 KB | None | 0 0
  1. package com.brubank.android.dagger
  2.  
  3. -import androidx.fragment.app.FragmentActivity
  4. -import androidx.lifecycle.ViewModelProviders
  5. -import com.brubank.android.ui.viewmodels.OnBoardingViewModelFactory
  6. +import androidx.lifecycle.ViewModel
  7. +import com.brubank.android.core.dagger.scope.ActivityScoped
  8. +import com.brubank.android.core.dagger.scope.FragmentScoped
  9. +import com.brubank.android.core.dagger.scope.ViewModelKey
  10. +import com.brubank.android.ui.activities.onboarding.*
  11. +import com.brubank.android.ui.activities.phone.ConfirmPhoneNumberActivity
  12. +import com.brubank.android.ui.activities.preinvite.SignupWaitlistFormActivity
  13. +import com.brubank.android.ui.activities.preinvite.UserPreRegisteredActivity
  14. +import com.brubank.android.ui.activities.recover.RecoverVideoActivity
  15. +import com.brubank.android.ui.fragments.AbstractPhoneFragment
  16. +import com.brubank.android.ui.fragments.OnboardingBaseFragment
  17. +import com.brubank.android.ui.fragments.PhoneRequestFragment
  18. +import com.brubank.android.ui.fragments.onboarding.*
  19. +import com.brubank.android.ui.fragments.onboarding.forms.*
  20. +import com.brubank.android.ui.fragments.preinvite.PreRegisterNameAndSexFormFragment
  21. +import com.brubank.android.ui.fragments.preinvite.UserPreRegisteredFragment
  22. +import com.brubank.android.ui.fragments.video.VideoselfieFragment
  23. +import com.brubank.android.ui.viewmodels.LocalizationViewModel
  24. import com.brubank.android.ui.viewmodels.OnboardingViewModel
  25. +import com.brubank.android.ui.viewmodels.UseFormInputViewModel
  26. +import com.brubank.android.ui.viewmodels.UsersViewModel
  27. +import dagger.Binds
  28. import dagger.Module
  29. -import dagger.Provides
  30. +import dagger.android.ContributesAndroidInjector
  31. +import dagger.multibindings.IntoMap
  32.  
  33. @Module
  34. -class OnboardingModule(private val activity: FragmentActivity) {
  35. +@Suppress("UNUSED")
  36. +abstract class OnboardingModule {
  37. +
  38. + //Activities
  39. + @ActivityScoped
  40. + @ContributesAndroidInjector
  41. + internal abstract fun onnboardingInstructionsActivity(): OnboardingInstructionsActivity
  42. +
  43. + @ActivityScoped
  44. + @ContributesAndroidInjector
  45. + internal abstract fun onboardingEmailActivity(): OnboardingEmailActivity
  46. +
  47. + @ActivityScoped
  48. + @ContributesAndroidInjector
  49. + internal abstract fun onboardingPhoneNumberActivity(): OnboardingPhoneNumberActivity
  50. +
  51. + @ActivityScoped
  52. + @ContributesAndroidInjector
  53. + internal abstract fun confirmPhoneNumberActivity(): ConfirmPhoneNumberActivity
  54. +
  55. + @ActivityScoped
  56. + @ContributesAndroidInjector
  57. + internal abstract fun onboardingFormActivity(): OnboardingFormActivity
  58. +
  59. + @ActivityScoped
  60. + @ContributesAndroidInjector
  61. + internal abstract fun onboardingCameraActivity(): OnboardingCameraActivity
  62. +
  63. + @ActivityScoped
  64. + @ContributesAndroidInjector
  65. + internal abstract fun onboardingVideoselfieActivity(): OnboardingVideoselfieActivity
  66. +
  67. + @ActivityScoped
  68. + @ContributesAndroidInjector
  69. + internal abstract fun onboardingPINActivity(): OnboardingPINActivity
  70. +
  71. + @ActivityScoped
  72. + @ContributesAndroidInjector
  73. + internal abstract fun onboardingTyCActivity(): OnboardingTyCActivity
  74. +
  75. + @ActivityScoped
  76. + @ContributesAndroidInjector
  77. + internal abstract fun signupWaitlistFormActivity(): SignupWaitlistFormActivity
  78. +
  79. + @ActivityScoped
  80. + @ContributesAndroidInjector
  81. + internal abstract fun userPreRegisteredActivity(): UserPreRegisteredActivity
  82. +
  83. + @ActivityScoped
  84. + @ContributesAndroidInjector
  85. + internal abstract fun onboardingFinalStepActivity(): OnboardingFinalStepActivity
  86. +
  87. + @ActivityScoped
  88. + @ContributesAndroidInjector
  89. + internal abstract fun recoverVideoActivity(): RecoverVideoActivity
  90. +
  91. + @ActivityScoped
  92. + @ContributesAndroidInjector
  93. + internal abstract fun onboardingCongratsActivity(): OnboardingCongratsActivity
  94. +
  95. + //Fragments
  96. + @FragmentScoped
  97. + @ContributesAndroidInjector
  98. + internal abstract fun contributeOnboardingEmailFragment(): OnboardingEmailFragment
  99. +
  100. + @FragmentScoped
  101. + @ContributesAndroidInjector
  102. + internal abstract fun onBoardingOcupationStatusFragment(): OnBoardingOcupationStatusFragment
  103. +
  104. + @FragmentScoped
  105. + @ContributesAndroidInjector
  106. + internal abstract fun onBoardingMaritalStatusDataFragment(): OnBoardingMaritalStatusDataFragment
  107. +
  108. + @FragmentScoped
  109. + @ContributesAndroidInjector
  110. + internal abstract fun onboardingUsePlacePickerFragment(): OnboardingUsePlacePickerFragment
  111. +
  112. + @FragmentScoped
  113. + @ContributesAndroidInjector
  114. + internal abstract fun onBoardingAddressFormFragment(): OnBoardingAddressFormFragment
  115. +
  116. + @FragmentScoped
  117. + @ContributesAndroidInjector
  118. + internal abstract fun onBoardingNationalityFragment(): OnBoardingNationalityFragment
  119. +
  120. + @FragmentScoped
  121. + @ContributesAndroidInjector
  122. + internal abstract fun preRegisterNameAndSexFormFragment(): PreRegisterNameAndSexFormFragment
  123. +
  124. + @FragmentScoped
  125. + @ContributesAndroidInjector
  126. + internal abstract fun preRegisterIdAndBirthDateDataFormFragment(): PreRegisterIdAndBirthDateDataFormFragment
  127. +
  128. + @FragmentScoped
  129. + @ContributesAndroidInjector
  130. + internal abstract fun onboardingInstructionsFragment(): OnboardingInstructionsFragment
  131. +
  132. + @FragmentScoped
  133. + @ContributesAndroidInjector
  134. + internal abstract fun abstractPhoneFragment(): AbstractPhoneFragment
  135. +
  136. + @FragmentScoped
  137. + @ContributesAndroidInjector
  138. + internal abstract fun onboardingCameraFragment(): OnboardingCameraFragment
  139. +
  140. + @FragmentScoped
  141. + @ContributesAndroidInjector
  142. + internal abstract fun onboardingVideoselfieFragment(): OnboardingVideoselfieFragment
  143. +
  144. + @FragmentScoped
  145. + @ContributesAndroidInjector
  146. + internal abstract fun recoverCuilOrCuitFragment(): RecoverCuilOrCuitFragment
  147. +
  148. + @FragmentScoped
  149. + @ContributesAndroidInjector
  150. + internal abstract fun onBoardingRecoveryErrorFragment(): OnBoardingRecoveryErrorFragment
  151. +
  152. +
  153. + //ViewModels
  154. + @Binds
  155. + @IntoMap
  156. + @ViewModelKey(OnboardingViewModel::class)
  157. + abstract fun bindOnboardingViewModel(viewModel: OnboardingViewModel): ViewModel
  158. +
  159. + @Binds
  160. + @IntoMap
  161. + @ViewModelKey(LocalizationViewModel::class)
  162. + abstract fun bindLocalizationViewModel(viewModel: LocalizationViewModel): ViewModel
  163. +
  164. + @Binds
  165. + @IntoMap
  166. + @ViewModelKey(UseFormInputViewModel::class)
  167. + abstract fun bindUseFormInputViewModel(viewModel: UseFormInputViewModel): ViewModel
  168. +
  169. + @Binds
  170. + @IntoMap
  171. + @ViewModelKey(UsersViewModel::class)
  172. + abstract fun bindUsersViewModel(viewModel: UsersViewModel): ViewModel
  173. +
  174. +
  175.  
  176. - @Provides
  177. - fun provideOnboardingViewModelFactory(
  178. - factory: OnBoardingViewModelFactory
  179. - ): OnboardingViewModel =
  180. - ViewModelProviders.of(activity, factory).get(OnboardingViewModel::class.java)
  181. }
  182. \ No newline at end of file
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement