forked from dsutanto/bChot-android
refactoring to id.databisnis.bachot
This commit is contained in:
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.libraries.voicerecorder.api"
|
||||
namespace = "id.databisnis.android.bachot.libraries.voicerecorder.api"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.api
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.api
|
||||
|
||||
import android.Manifest
|
||||
import androidx.annotation.RequiresPermission
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.api
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.api
|
||||
|
||||
import androidx.compose.runtime.Immutable
|
||||
import java.io.File
|
||||
@@ -9,11 +9,11 @@ import extension.testCommonDependencies
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
plugins {
|
||||
id("io.element.android-library")
|
||||
id("id.databisnis.android.bachot-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.libraries.voicerecorder.impl"
|
||||
namespace = "id.databisnis.android.bachot.libraries.voicerecorder.impl"
|
||||
}
|
||||
|
||||
setupDependencyInjection()
|
||||
|
||||
+16
-16
@@ -6,27 +6,27 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl
|
||||
|
||||
import android.Manifest
|
||||
import androidx.annotation.RequiresPermission
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import dev.zacsweers.metro.SingleIn
|
||||
import io.element.android.appconfig.VoiceMessageConfig
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.core.coroutine.childScope
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import io.element.android.libraries.di.annotations.SessionCoroutineScope
|
||||
import io.element.android.libraries.voicerecorder.api.VoiceRecorder
|
||||
import io.element.android.libraries.voicerecorder.api.VoiceRecorderState
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.Audio
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioLevelCalculator
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioReader
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.Encoder
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.resample
|
||||
import io.element.android.libraries.voicerecorder.impl.file.VoiceFileConfig
|
||||
import io.element.android.libraries.voicerecorder.impl.file.VoiceFileManager
|
||||
import id.databisnis.android.bachot.appconfig.VoiceMessageConfig
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.childScope
|
||||
import id.databisnis.android.bachot.libraries.di.RoomScope
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.SessionCoroutineScope
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.api.VoiceRecorder
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.api.VoiceRecorderState
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.Audio
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioLevelCalculator
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioReader
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.Encoder
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.resample
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.file.VoiceFileConfig
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.file.VoiceFileManager
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Job
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
+4
-4
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import android.Manifest
|
||||
import android.media.AudioRecord
|
||||
@@ -14,9 +14,9 @@ import android.media.audiofx.AutomaticGainControl
|
||||
import android.media.audiofx.NoiseSuppressor
|
||||
import androidx.annotation.RequiresPermission
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.core.data.tryOrNull
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.core.data.tryOrNull
|
||||
import id.databisnis.android.bachot.libraries.di.RoomScope
|
||||
import kotlinx.coroutines.isActive
|
||||
import kotlinx.coroutines.withContext
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
sealed interface Audio {
|
||||
data class Data(
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import android.media.AudioFormat
|
||||
import android.media.MediaRecorder.AudioSource
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import androidx.annotation.FloatRange
|
||||
|
||||
+2
-2
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
|
||||
interface AudioReader {
|
||||
/**
|
||||
+2
-2
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import id.databisnis.android.bachot.libraries.di.RoomScope
|
||||
import kotlin.math.log10
|
||||
import kotlin.math.sqrt
|
||||
|
||||
+2
-2
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import dev.zacsweers.metro.Provider
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import id.databisnis.android.bachot.libraries.di.RoomScope
|
||||
import io.element.android.opusencoder.OggOpusEncoder
|
||||
import timber.log.Timber
|
||||
import java.io.File
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import java.io.File
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
/**
|
||||
* Resamples [this] list to [size] using linear interpolation.
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import io.element.android.opusencoder.configuration.SampleRate as LibOpusOggSampleRate
|
||||
|
||||
+6
-6
@@ -6,18 +6,18 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.di
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.di
|
||||
|
||||
import android.media.AudioFormat
|
||||
import android.media.MediaRecorder
|
||||
import dev.zacsweers.metro.BindingContainer
|
||||
import dev.zacsweers.metro.ContributesTo
|
||||
import dev.zacsweers.metro.Provides
|
||||
import io.element.android.libraries.core.mimetype.MimeTypes
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.SampleRate
|
||||
import io.element.android.libraries.voicerecorder.impl.file.VoiceFileConfig
|
||||
import id.databisnis.android.bachot.libraries.core.mimetype.MimeTypes
|
||||
import id.databisnis.android.bachot.libraries.di.RoomScope
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.SampleRate
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.file.VoiceFileConfig
|
||||
import io.element.android.opusencoder.OggOpusEncoder
|
||||
|
||||
@BindingContainer
|
||||
+6
-6
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.file
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.file
|
||||
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.libraries.core.hash.md5
|
||||
import io.element.android.libraries.di.CacheDirectory
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.room.BaseRoom
|
||||
import id.databisnis.android.bachot.libraries.core.hash.md5
|
||||
import id.databisnis.android.bachot.libraries.di.CacheDirectory
|
||||
import id.databisnis.android.bachot.libraries.di.RoomScope
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.BaseRoom
|
||||
import java.io.File
|
||||
import java.util.UUID
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.file
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.file
|
||||
|
||||
/**
|
||||
* File configuration for voice recording.
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.file
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.file
|
||||
|
||||
import java.io.File
|
||||
|
||||
+14
-14
@@ -6,25 +6,25 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl
|
||||
|
||||
import android.media.AudioFormat
|
||||
import android.media.MediaRecorder
|
||||
import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.appconfig.VoiceMessageConfig
|
||||
import io.element.android.libraries.core.mimetype.MimeTypes
|
||||
import io.element.android.libraries.voicerecorder.api.VoiceRecorderState
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.Audio
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.SampleRate
|
||||
import io.element.android.libraries.voicerecorder.impl.di.VoiceRecorderModule
|
||||
import io.element.android.libraries.voicerecorder.test.FakeAudioLevelCalculator
|
||||
import io.element.android.libraries.voicerecorder.test.FakeAudioReaderFactory
|
||||
import io.element.android.libraries.voicerecorder.test.FakeEncoder
|
||||
import io.element.android.libraries.voicerecorder.test.FakeFileSystem
|
||||
import io.element.android.libraries.voicerecorder.test.FakeVoiceFileManager
|
||||
import io.element.android.tests.testutils.testCoroutineDispatchers
|
||||
import id.databisnis.android.bachot.appconfig.VoiceMessageConfig
|
||||
import id.databisnis.android.bachot.libraries.core.mimetype.MimeTypes
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.api.VoiceRecorderState
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.Audio
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.SampleRate
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.di.VoiceRecorderModule
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.test.FakeAudioLevelCalculator
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.test.FakeAudioReaderFactory
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.test.FakeEncoder
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.test.FakeFileSystem
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.test.FakeVoiceFileManager
|
||||
import id.databisnis.android.bachot.tests.testutils.testCoroutineDispatchers
|
||||
import io.mockk.mockk
|
||||
import kotlinx.coroutines.test.TestScope
|
||||
import kotlinx.coroutines.test.runTest
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import org.junit.Test
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.impl.audio
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.impl.audio
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import org.junit.Test
|
||||
+2
-2
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.test
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.test
|
||||
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioLevelCalculator
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioLevelCalculator
|
||||
import kotlin.math.abs
|
||||
|
||||
class FakeAudioLevelCalculator : AudioLevelCalculator {
|
||||
+4
-4
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.test
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.test
|
||||
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.Audio
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioReader
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.Audio
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioReader
|
||||
import kotlinx.coroutines.isActive
|
||||
import kotlinx.coroutines.withContext
|
||||
import kotlinx.coroutines.yield
|
||||
+5
-5
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.test
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.test
|
||||
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.Audio
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.AudioReader
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.Audio
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioConfig
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.AudioReader
|
||||
|
||||
class FakeAudioReaderFactory(
|
||||
private val audio: List<Audio>
|
||||
+2
-2
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.test
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.test
|
||||
|
||||
import io.element.android.libraries.voicerecorder.impl.audio.Encoder
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.audio.Encoder
|
||||
import java.io.File
|
||||
|
||||
class FakeEncoder(
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.test
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.test
|
||||
|
||||
import java.io.File
|
||||
|
||||
+3
-3
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.test
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.test
|
||||
|
||||
import io.element.android.libraries.voicerecorder.impl.file.VoiceFileConfig
|
||||
import io.element.android.libraries.voicerecorder.impl.file.VoiceFileManager
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.file.VoiceFileConfig
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.impl.file.VoiceFileManager
|
||||
import java.io.File
|
||||
|
||||
class FakeVoiceFileManager(
|
||||
@@ -7,11 +7,11 @@
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-library")
|
||||
id("id.databisnis.android.bachot-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.libraries.voicerecorder.test"
|
||||
namespace = "id.databisnis.android.bachot.libraries.voicerecorder.test"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
+4
-4
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.voicerecorder.test
|
||||
package id.databisnis.android.bachot.libraries.voicerecorder.test
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.core.mimetype.MimeTypes
|
||||
import io.element.android.libraries.voicerecorder.api.VoiceRecorder
|
||||
import io.element.android.libraries.voicerecorder.api.VoiceRecorderState
|
||||
import id.databisnis.android.bachot.libraries.core.mimetype.MimeTypes
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.api.VoiceRecorder
|
||||
import id.databisnis.android.bachot.libraries.voicerecorder.api.VoiceRecorderState
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.flow.StateFlow
|
||||
import kotlinx.coroutines.yield
|
||||
Reference in New Issue
Block a user