Skip to content

Commit

Permalink
Update selected dependencies
Browse files Browse the repository at this point in the history
  • Loading branch information
patrickmichalik committed Jul 9, 2023
1 parent 6e3255c commit d3ea2c1
Show file tree
Hide file tree
Showing 13 changed files with 49 additions and 58 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ detekt {

tasks.withType(Detekt).configureEach {

jvmTarget = "11"
jvmTarget = "17"

reports {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import com.patrykandpatryk.liftapp.domain.unit.PercentageUnit
import com.patrykandpatryk.liftapp.domain.unit.ShortDistanceUnit
import com.patrykandpatryk.liftapp.domain.unit.UnitConverter
import com.patrykandpatryk.liftapp.domain.unit.ValueUnit
import com.patrykmichalik.opto.core.first
import kotlinx.coroutines.flow.first
import javax.inject.Inject

Expand Down Expand Up @@ -74,7 +73,7 @@ class UnitConverterImpl @Inject constructor(
}

private suspend fun getPreferredLongDistanceUnit(): LongDistanceUnit =
preferences.longDistanceUnit.first()
preferences.longDistanceUnit.get().first()

private suspend fun getPreferredMediumDistanceUnit(): MediumDistanceUnit =
preferences.mediumDistanceUnit.first()
Expand All @@ -83,5 +82,5 @@ class UnitConverterImpl @Inject constructor(
preferences.shortDistanceUnit.first()

private suspend fun getPreferredMassUnit(): MassUnit =
preferences.massUnit.first()
preferences.massUnit.get().first()
}
4 changes: 2 additions & 2 deletions domain-testing/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ plugins {
}

java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}

dependencies {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,26 +7,25 @@ import com.patrykandpatryk.liftapp.domain.unit.LongDistanceUnit
import com.patrykandpatryk.liftapp.domain.unit.MassUnit
import com.patrykandpatryk.liftapp.domain.unit.MediumDistanceUnit
import com.patrykandpatryk.liftapp.domain.unit.ShortDistanceUnit
import com.patrykmichalik.opto.domain.Preference
import com.patrykandpatrick.opto.domain.Preference
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.update

class TestPreferenceRepository : PreferenceRepository {

override val massUnit: Preference<MassUnit, String, *> = preference(MassUnit.Kilograms)
override val massUnit: Preference<MassUnit> = preference(MassUnit.Kilograms)

override val longDistanceUnit: Preference<LongDistanceUnit, String, *> = preference(LongDistanceUnit.Kilometer)
override val longDistanceUnit: Preference<LongDistanceUnit> = preference(LongDistanceUnit.Kilometer)

override val mediumDistanceUnit: Flow<MediumDistanceUnit> = longDistanceUnit.get()
.map { longDistanceUnit -> longDistanceUnit.getCorrespondingMediumDistanceUnit() }

override val shortDistanceUnit: Flow<ShortDistanceUnit> = longDistanceUnit.get()
.map { longDistanceUnit -> longDistanceUnit.getCorrespondingShortDistanceUnit() }

override val hourFormat: Preference<HourFormat, String, *> = preference(HourFormat.H24)
override val hourFormat: Preference<HourFormat> = preference(HourFormat.H24)

override val is24H: Flow<Boolean> = hourFormat.get()
.map { hourFormat ->
Expand All @@ -51,23 +50,14 @@ class TestPreferenceRepository : PreferenceRepository {
)
}

private fun <T> preference(defaultValue: T): Preference<T, String, Unit> =
object : Preference<T, String, Unit> {
private fun <T> preference(defaultValue: T): Preference<T> = object : Preference<T> {

private val impl = MutableStateFlow(defaultValue)
private val impl = MutableStateFlow(defaultValue)

override val defaultValue: T = defaultValue
override fun get(): Flow<T> = impl

override val key: Unit = Unit

override fun get(): Flow<T> = impl

override suspend fun update(block: (T) -> T) {
impl.update(block)
}

override suspend fun set(value: T) {
impl.value = value
}
override suspend fun set(value: T) {
impl.value = value
}
}
}
4 changes: 2 additions & 2 deletions domain/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ plugins {
}

java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}

dependencies {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,16 @@ import com.patrykandpatryk.liftapp.domain.unit.LongDistanceUnit
import com.patrykandpatryk.liftapp.domain.unit.MassUnit
import com.patrykandpatryk.liftapp.domain.unit.MediumDistanceUnit
import com.patrykandpatryk.liftapp.domain.unit.ShortDistanceUnit
import com.patrykmichalik.opto.domain.Preference
import com.patrykandpatrick.opto.domain.Preference
import kotlinx.coroutines.flow.Flow

interface PreferenceRepository {

val massUnit: Preference<MassUnit, String, *>
val longDistanceUnit: Preference<LongDistanceUnit, String, *>
val massUnit: Preference<MassUnit>
val longDistanceUnit: Preference<LongDistanceUnit>
val mediumDistanceUnit: Flow<MediumDistanceUnit>
val shortDistanceUnit: Flow<ShortDistanceUnit>
val hourFormat: Preference<HourFormat, String, *>
val hourFormat: Preference<HourFormat>

val is24H: Flow<Boolean>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,11 @@ import com.patrykandpatryk.liftapp.domain.repository.PreferenceRepository
import com.patrykandpatryk.liftapp.feature.onerepmax.model.HistoryEntryModel
import com.patrykandpatryk.liftapp.feature.onerepmax.model.OneRepMaxUiState
import com.patrykandpatrick.vico.core.extension.orZero
import com.patrykmichalik.opto.core.onEach
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.Job
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.launch
import javax.inject.Inject

Expand All @@ -37,9 +38,11 @@ class OneRepMaxViewModel @Inject constructor(
var historyUpdateJob: Job? = null

init {
preferenceRepository.massUnit.onEach(launchIn = viewModelScope) {
oneRepMaxUiState = oneRepMaxUiState.copy(massUnit = it)
}
preferenceRepository
.massUnit
.get()
.onEach { oneRepMaxUiState = oneRepMaxUiState.copy(massUnit = it) }
.launchIn(viewModelScope)
}

fun updateRepsInput(repsInput: String) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,8 @@ import com.patrykandpatryk.liftapp.domain.unit.LongDistanceUnit
import com.patrykandpatryk.liftapp.domain.unit.MassUnit
import com.patrykandpatryk.liftapp.domain.unit.MediumDistanceUnit
import com.patrykandpatryk.liftapp.domain.unit.ShortDistanceUnit
import com.patrykmichalik.opto.core.PreferenceImpl
import com.patrykmichalik.opto.core.PreferenceManager
import com.patrykmichalik.opto.core.getFromPreferences
import com.patrykandpatrick.opto.core.PreferenceImpl
import com.patrykandpatrick.opto.core.PreferenceManager
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.map
import javax.inject.Inject
Expand Down Expand Up @@ -67,9 +66,9 @@ class PreferenceRepositoryImpl @Inject constructor(
private inline fun <reified E : Enum<E>> PreferenceManager.enumPreference(
key: String,
defaultValue: E,
): PreferenceImpl<E, String> = preference(
): PreferenceImpl<String, E> = preference(
stringPreferencesKey(key),
defaultValue = defaultValue,
parse = { E::class.java.getMethod("valueOf", String::class.java).invoke(null, it) as E },
save = { it.toString() },
serialize = { it.toString() },
deserialize = { E::class.java.getMethod("valueOf", String::class.java).invoke(null, it) as E },
)
9 changes: 4 additions & 5 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
org.gradle.jvmargs = -Xmx2048m -Dfile.encoding=UTF-8
android.useAndroidX = true
kotlin.code.style = official
android.nonTransitiveRClass = true
kotlin_version = 1.8.10
android.defaults.buildfeatures.buildconfig=true
android.useAndroidX=true
kotlin.code.style=official
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
6 changes: 3 additions & 3 deletions gradle/base.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,13 @@ android {

compileOptions {

sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}

kotlinOptions {

jvmTarget = "11"
jvmTarget = "17"
freeCompilerArgs += [
"-Xjvm-default=all-compatibility",
"-opt-in=kotlin.RequiresOptIn",
Expand Down
14 changes: 7 additions & 7 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ androidxCore = "1.10.0-alpha02"
appcompat = "1.7.0-alpha02"
coil = "2.2.2"
compose = "1.4.0"
composeCompiler = "1.4.2"
composeCompiler = "1.4.8"
coroutines = "1.6.4"
datastore = "1.1.0-alpha01"
documentfile = "1.1.0-alpha01"
Expand All @@ -14,25 +14,25 @@ hiltNavigation = "1.1.0-alpha01"
junit = "4.13.2"
junitExt = "1.1.2"
jupiter = "5.9.1"
kotlin = "1.8.10"
kotlin = "1.8.22"
kotlinxSerialization = "1.4.1"
kotlinxSerializationConverter = "0.8.0"
lifecycle = "2.6.0"
material3 = "1.1.0-alpha08"
mockk = "1.13.2"
ossLicensesPlugin = "0.10.4"
ossLicenses = "17.0.0"
opto = "1.0.18"
opto = "1.1.0"
retrofit = "2.9.0"
room = "2.5.1"
viewmodel = "2.6.0"
testCore = "1.3.0"
timber = "5.0.1"
vico = "1.6.3"

androidPlugin = "7.4.2"
androidPlugin = "8.2.0-alpha11"
detektPlugin = "1.22.0"
kspPlugin = "1.8.10-1.0.9"
kspPlugin = "1.8.22-1.0.11"

[libraries]

Expand Down Expand Up @@ -78,8 +78,8 @@ lifecycle-runtime = { module = "androidx.lifecycle:lifecycle-runtime-ktx", versi

mockk = { module = "io.mockk:mockk", version.ref = "mockk" }

opto-core = { module = "com.patrykmichalik.opto:core", version.ref = "opto" }
opto-domain = { module = "com.patrykmichalik.opto:domain", version.ref = "opto" }
opto-core = { module = "com.github.patrykandpatrick.opto:core", version.ref = "opto" }
opto-domain = { module = "com.github.patrykandpatrick.opto:domain", version.ref = "opto" }

room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
room-compiler = { module = "androidx.room:room-compiler", version.ref = "room" }
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
1 change: 1 addition & 0 deletions settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ dependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven { url "https://jitpack.io" }
}
}

Expand Down

0 comments on commit d3ea2c1

Please sign in to comment.