diff --git a/app/src/main/java/com/isolaatti/audio/Module.kt b/app/src/main/java/com/isolaatti/audio/Module.kt new file mode 100644 index 0000000..67228f1 --- /dev/null +++ b/app/src/main/java/com/isolaatti/audio/Module.kt @@ -0,0 +1,24 @@ +package com.isolaatti.audio + +import com.isolaatti.audio.common.data.AudiosApi +import com.isolaatti.audio.common.data.AudiosRepositoryImpl +import com.isolaatti.audio.common.domain.AudiosRepository +import com.isolaatti.connectivity.RetrofitClient +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 + fun provideAudiosRepository(audiosApi: AudiosApi): AudiosRepository { + return AudiosRepositoryImpl(audiosApi) + } +} \ No newline at end of file diff --git a/app/src/main/java/com/isolaatti/audio/audios_list/presentation/AudiosAdapter.kt b/app/src/main/java/com/isolaatti/audio/audios_list/presentation/AudiosAdapter.kt new file mode 100644 index 0000000..9fdbd9c --- /dev/null +++ b/app/src/main/java/com/isolaatti/audio/audios_list/presentation/AudiosAdapter.kt @@ -0,0 +1,50 @@ +package com.isolaatti.audio.audios_list.presentation + +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.recyclerview.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView.ViewHolder +import coil.load +import com.isolaatti.audio.common.domain.Audio +import com.isolaatti.databinding.AudioListItemBinding + +class AudiosAdapter( + private val onClick: ((audio: Audio) -> Unit), + private val onOptionsClick: ((audio: Audio, button: View) -> Boolean) +) : RecyclerView.Adapter() { + + private var data: List