forked from dsutanto/bChot-android
refactoring to id.databisnis.bachot
This commit is contained in:
@@ -7,11 +7,11 @@
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-library")
|
||||
id("id.databisnis.android.bachot-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.libraries.featureflag.api"
|
||||
namespace = "id.databisnis.android.bachot.libraries.featureflag.api"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.api
|
||||
package id.databisnis.android.bachot.libraries.featureflag.api
|
||||
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
|
||||
interface Feature {
|
||||
/**
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.api
|
||||
package id.databisnis.android.bachot.libraries.featureflag.api
|
||||
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.first
|
||||
@@ -30,7 +30,7 @@ interface FeatureFlagService {
|
||||
* @param feature the feature to enable or disable
|
||||
* @param enabled true to enable the feature
|
||||
*
|
||||
* @return true if the method succeeds, ie if a [io.element.android.libraries.featureflag.impl.MutableFeatureFlagProvider]
|
||||
* @return true if the method succeeds, ie if a [id.databisnis.android.bachot.libraries.featureflag.impl.MutableFeatureFlagProvider]
|
||||
* is registered
|
||||
*/
|
||||
suspend fun setFeatureEnabled(feature: Feature, enabled: Boolean): Boolean
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.api
|
||||
package id.databisnis.android.bachot.libraries.featureflag.api
|
||||
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.core.meta.BuildType
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildType
|
||||
|
||||
/**
|
||||
* To enable or disable a FeatureFlags, change the `defaultValue` value.
|
||||
@@ -10,12 +10,12 @@ import extension.testCommonDependencies
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-library")
|
||||
id("id.databisnis.android.bachot-library")
|
||||
id("kotlin-parcelize")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.libraries.featureflag.impl"
|
||||
namespace = "id.databisnis.android.bachot.libraries.featureflag.impl"
|
||||
}
|
||||
|
||||
setupDependencyInjection()
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import dev.zacsweers.metro.SingleIn
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import io.element.android.libraries.featureflag.api.FeatureFlagService
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.FeatureFlagService
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.flowOf
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
interface FeatureFlagProvider {
|
||||
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import io.element.android.libraries.featureflag.api.FeatureFlags
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.FeatureFlags
|
||||
|
||||
fun interface FeaturesProvider {
|
||||
fun provide(): List<Feature>
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
|
||||
interface MutableFeatureFlagProvider : FeatureFlagProvider {
|
||||
suspend fun setFeatureEnabled(feature: Feature, enabled: Boolean)
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import androidx.datastore.preferences.core.booleanPreferencesKey
|
||||
import androidx.datastore.preferences.core.edit
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import io.element.android.libraries.preferences.api.store.PreferenceDataStoreFactory
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.preferences.api.store.PreferenceDataStoreFactory
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
import kotlinx.coroutines.flow.map
|
||||
@@ -6,15 +6,15 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl.di
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl.di
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.BindingContainer
|
||||
import dev.zacsweers.metro.ContributesTo
|
||||
import dev.zacsweers.metro.ElementsIntoSet
|
||||
import dev.zacsweers.metro.Provides
|
||||
import io.element.android.libraries.featureflag.impl.FeatureFlagProvider
|
||||
import io.element.android.libraries.featureflag.impl.PreferencesFeatureFlagProvider
|
||||
import id.databisnis.android.bachot.libraries.featureflag.impl.FeatureFlagProvider
|
||||
import id.databisnis.android.bachot.libraries.featureflag.impl.PreferencesFeatureFlagProvider
|
||||
|
||||
@BindingContainer
|
||||
@ContributesTo(AppScope::class)
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import io.element.android.libraries.featureflag.test.FakeFeature
|
||||
import io.element.android.libraries.matrix.test.core.aBuildMeta
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.featureflag.test.FakeFeature
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Test
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.featureflag.api.FeatureFlags
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.FeatureFlags
|
||||
import org.junit.Test
|
||||
|
||||
class DefaultFeaturesProviderTest {
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.impl
|
||||
package id.databisnis.android.bachot.libraries.featureflag.impl
|
||||
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-library")
|
||||
id("id.databisnis.android.bachot-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.libraries.featureflag.test"
|
||||
namespace = "id.databisnis.android.bachot.libraries.featureflag.test"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.test
|
||||
package id.databisnis.android.bachot.libraries.featureflag.test
|
||||
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
|
||||
data class FakeFeature(
|
||||
override val key: String,
|
||||
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.test
|
||||
package id.databisnis.android.bachot.libraries.featureflag.test
|
||||
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.featureflag.api.Feature
|
||||
import io.element.android.libraries.featureflag.api.FeatureFlagService
|
||||
import io.element.android.libraries.matrix.test.core.aBuildMeta
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.Feature
|
||||
import id.databisnis.android.bachot.libraries.featureflag.api.FeatureFlagService
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
id("kotlin-parcelize")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.libraries.featureflag.ui"
|
||||
namespace = "id.databisnis.android.bachot.libraries.featureflag.ui"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.ui
|
||||
package id.databisnis.android.bachot.libraries.featureflag.ui
|
||||
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import io.element.android.libraries.designsystem.components.preferences.PreferenceCheckbox
|
||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||
import io.element.android.libraries.featureflag.ui.model.FeatureUiModel
|
||||
import io.element.android.libraries.featureflag.ui.model.aFeatureUiModelList
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.preferences.PreferenceCheckbox
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
|
||||
import id.databisnis.android.bachot.libraries.featureflag.ui.model.FeatureUiModel
|
||||
import id.databisnis.android.bachot.libraries.featureflag.ui.model.aFeatureUiModelList
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
|
||||
@Composable
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.ui.model
|
||||
package id.databisnis.android.bachot.libraries.featureflag.ui.model
|
||||
|
||||
import io.element.android.libraries.designsystem.theme.components.IconSource
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.IconSource
|
||||
|
||||
data class FeatureUiModel(
|
||||
val key: String,
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.featureflag.ui.model
|
||||
package id.databisnis.android.bachot.libraries.featureflag.ui.model
|
||||
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
Reference in New Issue
Block a user