34 lines
1.3 KiB
Kotlin
34 lines
1.3 KiB
Kotlin
package org.pixeldroid.app.utils.di
|
|
|
|
import android.app.Application
|
|
import android.content.Context
|
|
import org.pixeldroid.app.utils.BaseActivity
|
|
import org.pixeldroid.app.utils.PixelDroidApplication
|
|
import org.pixeldroid.app.utils.db.AppDatabase
|
|
import org.pixeldroid.app.utils.BaseFragment
|
|
import dagger.Component
|
|
import org.pixeldroid.app.MainActivityViewModel
|
|
import org.pixeldroid.app.postCreation.PostCreationViewModel
|
|
import org.pixeldroid.app.profile.EditProfileViewModel
|
|
import org.pixeldroid.app.stories.StoriesViewModel
|
|
import org.pixeldroid.app.stories.StoryCarouselViewHolder
|
|
import org.pixeldroid.app.utils.notificationsWorker.NotificationsWorker
|
|
import javax.inject.Singleton
|
|
|
|
|
|
@Singleton
|
|
@Component(modules = [ApplicationModule::class, DatabaseModule::class, APIModule::class])
|
|
interface ApplicationComponent {
|
|
fun inject(application: PixelDroidApplication?)
|
|
fun inject(activity: BaseActivity?)
|
|
fun inject(feedFragment: BaseFragment)
|
|
fun inject(notificationsWorker: NotificationsWorker)
|
|
fun inject(postCreationViewModel: PostCreationViewModel)
|
|
fun inject(editProfileViewModel: EditProfileViewModel)
|
|
fun inject(storiesViewModel: StoriesViewModel)
|
|
fun inject(mainActivityViewModel: MainActivityViewModel)
|
|
|
|
val context: Context?
|
|
val application: Application?
|
|
val database: AppDatabase
|
|
} |