2025-11-21 06:00:09 +00:00
|
|
|
package com.gamedog.vididin.di
|
|
|
|
|
|
|
|
|
|
import com.gamedog.vididin.features.benefit.BenefitRouter
|
|
|
|
|
import com.gamedog.vididin.features.benefit.DefaultBenefitRouter
|
2025-11-24 03:29:04 +00:00
|
|
|
import com.gamedog.vididin.features.winrecords.DefaultWinRecordRouter
|
|
|
|
|
import com.gamedog.vididin.features.winrecords.WinRecordRouter
|
|
|
|
|
import com.gamedog.vididin.features.withdraw.DefaultWithdrawRouter
|
|
|
|
|
import com.gamedog.vididin.features.withdraw.WithdrawRouter
|
2025-11-21 06:00:09 +00:00
|
|
|
import com.gamedog.vididin.features.zero.DefaultZeroBuyRouter
|
|
|
|
|
import com.gamedog.vididin.features.zero.ZeroBuyRouter
|
2025-11-25 08:33:32 +00:00
|
|
|
import com.gamedog.vididin.router.DefaultFeedbackRouter
|
|
|
|
|
import com.gamedog.vididin.router.DefaultPrivacyRouter
|
|
|
|
|
import com.gamedog.vididin.router.DefaultSplashRouter
|
|
|
|
|
import com.gamedog.vididin.router.DefaultVersionRouter
|
2025-11-28 03:25:45 +00:00
|
|
|
import com.gamedog.vididin.router.DefaultWatchAdRouter
|
2025-11-25 08:33:32 +00:00
|
|
|
import com.gamedog.vididin.router.DefaultWithdrawRecordRouter
|
|
|
|
|
import com.gamedog.vididin.router.IRouterFeedback
|
|
|
|
|
import com.gamedog.vididin.router.IRouterPrivacy
|
|
|
|
|
import com.gamedog.vididin.router.IRouterSplash
|
|
|
|
|
import com.gamedog.vididin.router.IRouterVersion
|
|
|
|
|
import com.gamedog.vididin.router.IRouterWithdrawRecord
|
2025-11-28 03:25:45 +00:00
|
|
|
import com.gamedog.vididin.router.IRouterWatchAd
|
2025-11-21 06:00:09 +00:00
|
|
|
import dagger.Module
|
|
|
|
|
import dagger.Provides
|
|
|
|
|
import dagger.hilt.InstallIn
|
|
|
|
|
import dagger.hilt.components.SingletonComponent
|
|
|
|
|
import javax.inject.Singleton
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object BenefitModule {
|
|
|
|
|
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): BenefitRouter = DefaultBenefitRouter()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object ZeroBuyModule {
|
|
|
|
|
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): ZeroBuyRouter = DefaultZeroBuyRouter()
|
2025-11-24 03:29:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object WithdrawModule {
|
|
|
|
|
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): WithdrawRouter = DefaultWithdrawRouter()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object WinRecordModule {
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): WinRecordRouter = DefaultWinRecordRouter()
|
2025-11-25 08:33:32 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object PrivacyModule {
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): IRouterPrivacy = DefaultPrivacyRouter()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object FeedbackModule {
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): IRouterFeedback = DefaultFeedbackRouter()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object WithdrawRecordModule {
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): IRouterWithdrawRecord = DefaultWithdrawRecordRouter()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object SplashModule {
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): IRouterSplash = DefaultSplashRouter()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object VersionModule {
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): IRouterVersion = DefaultVersionRouter()
|
2025-11-28 03:25:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
object WatchAd {
|
|
|
|
|
@Provides
|
|
|
|
|
@Singleton
|
|
|
|
|
fun provideRouter(): IRouterWatchAd = DefaultWatchAdRouter()
|
2025-11-21 06:00:09 +00:00
|
|
|
}
|