2023-11-25 22:10:35 -06:00
|
|
|
package com.isolaatti.audio
|
|
|
|
|
|
2023-12-11 23:10:57 -06:00
|
|
|
import androidx.media3.common.Player
|
2023-11-25 22:10:35 -06:00
|
|
|
import com.isolaatti.audio.common.data.AudiosApi
|
|
|
|
|
import com.isolaatti.audio.common.data.AudiosRepositoryImpl
|
|
|
|
|
import com.isolaatti.audio.common.domain.AudiosRepository
|
2024-01-31 01:06:45 -06:00
|
|
|
import com.isolaatti.audio.drafts.data.AudioDraftsRepositoryImpl
|
|
|
|
|
import com.isolaatti.audio.drafts.data.AudiosDraftsDao
|
|
|
|
|
import com.isolaatti.audio.drafts.domain.repository.AudioDraftsRepository
|
2023-11-25 22:10:35 -06:00
|
|
|
import com.isolaatti.connectivity.RetrofitClient
|
2024-01-31 01:06:45 -06:00
|
|
|
import com.isolaatti.database.AppDatabase
|
2024-07-14 17:29:27 -06:00
|
|
|
import com.isolaatti.settings.domain.UserIdSetting
|
2023-11-25 22:10:35 -06:00
|
|
|
import dagger.Module
|
|
|
|
|
import dagger.Provides
|
|
|
|
|
import dagger.hilt.InstallIn
|
|
|
|
|
import dagger.hilt.components.SingletonComponent
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
class Module {
|
|
|
|
|
@Provides
|
|
|
|
|
fun provideAudiosApi(retrofitClient: RetrofitClient): AudiosApi {
|
|
|
|
|
return retrofitClient.client.create(AudiosApi::class.java)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Provides
|
2024-07-14 17:29:27 -06:00
|
|
|
fun provideAudiosRepository(audiosApi: AudiosApi, audiosDraftsDao: AudiosDraftsDao, userIdSetting: UserIdSetting): AudiosRepository {
|
|
|
|
|
return AudiosRepositoryImpl(audiosApi, audiosDraftsDao, userIdSetting)
|
2023-11-25 22:10:35 -06:00
|
|
|
}
|
2024-01-31 01:06:45 -06:00
|
|
|
|
|
|
|
|
@Provides
|
|
|
|
|
fun provideAudioDraftsDao(database: AppDatabase): AudiosDraftsDao {
|
|
|
|
|
return database.audioDrafts()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Provides
|
|
|
|
|
fun provideAudioDraftsRepository(audiosDraftsDao: AudiosDraftsDao): AudioDraftsRepository {
|
|
|
|
|
return AudioDraftsRepositoryImpl(audiosDraftsDao)
|
|
|
|
|
}
|
2023-11-25 22:10:35 -06:00
|
|
|
}
|