diff --git a/app/desktop/src/jvmMain/kotlin/dev/datlag/burningseries/Main.kt b/app/desktop/src/jvmMain/kotlin/dev/datlag/burningseries/Main.kt index 8443c6f3..277f1526 100644 --- a/app/desktop/src/jvmMain/kotlin/dev/datlag/burningseries/Main.kt +++ b/app/desktop/src/jvmMain/kotlin/dev/datlag/burningseries/Main.kt @@ -10,9 +10,9 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.window.WindowState import com.arkivanov.decompose.DefaultComponentContext import com.arkivanov.decompose.ExperimentalDecomposeApi -import com.arkivanov.decompose.extensions.compose.jetbrains.PredictiveBackGestureIcon -import com.arkivanov.decompose.extensions.compose.jetbrains.PredictiveBackGestureOverlay -import com.arkivanov.decompose.extensions.compose.jetbrains.lifecycle.LifecycleController +import com.arkivanov.decompose.extensions.compose.lifecycle.LifecycleController +import com.arkivanov.decompose.extensions.compose.stack.animation.predictiveback.PredictiveBackGestureIcon +import com.arkivanov.decompose.extensions.compose.stack.animation.predictiveback.PredictiveBackGestureOverlay import com.arkivanov.essenty.backhandler.BackDispatcher import com.arkivanov.essenty.lifecycle.Lifecycle import com.arkivanov.essenty.lifecycle.LifecycleOwner diff --git a/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.android.kt b/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.android.kt index d10e344d..8d89113d 100644 --- a/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.android.kt +++ b/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.android.kt @@ -6,11 +6,10 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.ImageBitmap import androidx.compose.ui.graphics.asImageBitmap import com.arkivanov.decompose.ExperimentalDecomposeApi -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.StackAnimation -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.fade -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.predictiveback.materialPredictiveBackAnimatable -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.predictiveback.predictiveBackAnimation -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.stackAnimation +import com.arkivanov.decompose.extensions.compose.stack.animation.StackAnimation +import com.arkivanov.decompose.extensions.compose.stack.animation.fade +import com.arkivanov.decompose.extensions.compose.stack.animation.predictiveback.predictiveBackAnimation +import com.arkivanov.decompose.extensions.compose.stack.animation.stackAnimation import com.arkivanov.essenty.backhandler.BackHandler import com.vanniktech.blurhash.BlurHash import com.vanniktech.blurhash.BlurHash.decode as defaultDecode @@ -36,7 +35,7 @@ actual fun backAnimation( onBack: () -> Unit ): StackAnimation = predictiveBackAnimation( backHandler = backHandler, - animation = stackAnimation(fade()), + fallbackAnimation = stackAnimation(fade()), onBack = onBack ) diff --git a/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.android.kt b/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.android.kt index c08880bf..a73a0465 100644 --- a/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.android.kt +++ b/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.android.kt @@ -4,14 +4,13 @@ import android.content.Context import android.os.Build import coil3.ImageLoader import coil3.annotation.ExperimentalCoilApi -import coil3.decode.GifDecoder -import coil3.decode.ImageDecoderDecoder -import coil3.decode.SvgDecoder import coil3.disk.DiskCache -import coil3.fetch.NetworkFetcher +import coil3.gif.GifDecoder import coil3.memory.MemoryCache +import coil3.network.ktor.KtorNetworkFetcherFactory import coil3.request.allowHardware import coil3.request.crossfade +import coil3.svg.SvgDecoder import dev.datlag.burningseries.database.DriverFactory import dev.datlag.burningseries.shared.Sekret import dev.datlag.burningseries.shared.getPackageName @@ -105,12 +104,8 @@ actual object PlatformModule { bindSingleton { ImageLoader.Builder(instance()) .components { - add(NetworkFetcher.Factory(lazyOf(instance()))) - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { - add(ImageDecoderDecoder.Factory()) - } else { - add(GifDecoder.Factory()) - } + add(KtorNetworkFetcherFactory(instance())) + add(GifDecoder.Factory()) add(SvgDecoder.Factory()) } .memoryCache { diff --git a/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/ui/screen/video/VideoScreen.android.kt b/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/ui/screen/video/VideoScreen.android.kt index 3db1cf61..c4d863fe 100644 --- a/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/ui/screen/video/VideoScreen.android.kt +++ b/app/shared/src/androidMain/kotlin/dev/datlag/burningseries/shared/ui/screen/video/VideoScreen.android.kt @@ -37,7 +37,7 @@ import androidx.media3.extractor.ts.DefaultTsPayloadReaderFactory.* import androidx.media3.session.MediaSession import androidx.media3.ui.DefaultTimeBar import androidx.media3.ui.PlayerView -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.subscribeAsState import com.google.accompanist.systemuicontroller.rememberSystemUiController import com.google.android.gms.cast.framework.CastState import com.google.android.material.progressindicator.CircularProgressIndicator diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.kt index f0b367a1..448b152d 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.kt @@ -2,7 +2,7 @@ package dev.datlag.burningseries.shared.common import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.ImageBitmap -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.StackAnimation +import com.arkivanov.decompose.extensions.compose.stack.animation.StackAnimation import com.arkivanov.essenty.backhandler.BackHandler import com.vanniktech.blurhash.BlurHash diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/custom/ExpandedPages.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/custom/ExpandedPages.kt index 634f24b7..0cdacb3d 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/custom/ExpandedPages.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/custom/ExpandedPages.kt @@ -2,7 +2,7 @@ package dev.datlag.burningseries.shared.ui.custom import androidx.compose.runtime.Composable import com.arkivanov.decompose.ExperimentalDecomposeApi -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.subscribeAsState import com.arkivanov.decompose.router.pages.ChildPages import com.arkivanov.decompose.value.Value diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/navigation/NavHostComponent.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/navigation/NavHostComponent.kt index c2546d49..75f468c2 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/navigation/NavHostComponent.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/navigation/NavHostComponent.kt @@ -3,7 +3,7 @@ package dev.datlag.burningseries.shared.ui.navigation import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider import com.arkivanov.decompose.ComponentContext -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.Children +import com.arkivanov.decompose.extensions.compose.stack.Children import com.arkivanov.decompose.router.stack.StackNavigation import com.arkivanov.decompose.router.stack.childStack import com.arkivanov.decompose.router.stack.pop diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/InitialScreen.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/InitialScreen.kt index 6be57c48..7f9c6967 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/InitialScreen.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/InitialScreen.kt @@ -13,8 +13,8 @@ import androidx.compose.runtime.getValue import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import com.arkivanov.decompose.ExperimentalDecomposeApi -import com.arkivanov.decompose.extensions.compose.jetbrains.pages.Pages -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.pages.Pages +import com.arkivanov.decompose.extensions.compose.subscribeAsState import com.moriatsushi.insetsx.ExperimentalSoftwareKeyboardApi import dev.datlag.burningseries.shared.common.lifecycle.collectAsStateWithLifecycle import dev.datlag.burningseries.shared.rememberIsTv diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/favorite/FavoriteScreen.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/favorite/FavoriteScreen.kt index 3ee7d06f..96098df9 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/favorite/FavoriteScreen.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/favorite/FavoriteScreen.kt @@ -21,7 +21,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.subscribeAsState import dev.datlag.burningseries.shared.SharedRes import dev.datlag.burningseries.shared.common.header import dev.datlag.burningseries.shared.common.lifecycle.collectAsStateWithLifecycle diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/home/HomeScreen.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/home/HomeScreen.kt index 6b1a89b2..4025e2c6 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/home/HomeScreen.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/home/HomeScreen.kt @@ -17,7 +17,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.subscribeAsState import dev.datlag.burningseries.model.Home import dev.datlag.burningseries.model.state.HomeState import dev.datlag.burningseries.shared.SharedRes diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/search/SearchScreen.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/search/SearchScreen.kt index c9c8e516..d2a593c5 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/search/SearchScreen.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/search/SearchScreen.kt @@ -24,7 +24,7 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.subscribeAsState import dev.datlag.burningseries.model.state.SearchState import dev.datlag.burningseries.shared.SharedRes import dev.datlag.burningseries.shared.common.OnBottomReached diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/SeriesScreen.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/SeriesScreen.kt index 089c20bc..14cd587a 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/SeriesScreen.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/SeriesScreen.kt @@ -20,7 +20,7 @@ import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.subscribeAsState import dev.datlag.burningseries.database.Episode import dev.datlag.burningseries.model.BSUtil import dev.datlag.burningseries.model.Series diff --git a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/activate/ActivateScreen.kt b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/activate/ActivateScreen.kt index 030db492..df834a16 100644 --- a/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/activate/ActivateScreen.kt +++ b/app/shared/src/commonMain/kotlin/dev/datlag/burningseries/shared/ui/screen/initial/series/activate/ActivateScreen.kt @@ -11,7 +11,7 @@ import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp -import com.arkivanov.decompose.extensions.compose.jetbrains.subscribeAsState +import com.arkivanov.decompose.extensions.compose.subscribeAsState import dev.datlag.burningseries.model.BSUtil import dev.datlag.burningseries.shared.SharedRes import dev.datlag.burningseries.shared.common.lifecycle.collectAsStateWithLifecycle diff --git a/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.desktop.kt b/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.desktop.kt index 47f2c708..69c8b8d6 100644 --- a/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.desktop.kt +++ b/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/common/PlatformExtendCompose.desktop.kt @@ -7,10 +7,10 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.ImageBitmap import androidx.compose.ui.graphics.toComposeImageBitmap import com.arkivanov.decompose.ExperimentalDecomposeApi -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.StackAnimation -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.fade -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.predictiveback.predictiveBackAnimation -import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.stackAnimation +import com.arkivanov.decompose.extensions.compose.stack.animation.StackAnimation +import com.arkivanov.decompose.extensions.compose.stack.animation.fade +import com.arkivanov.decompose.extensions.compose.stack.animation.predictiveback.predictiveBackAnimation +import com.arkivanov.decompose.extensions.compose.stack.animation.stackAnimation import com.arkivanov.essenty.backhandler.BackHandler import com.vanniktech.blurhash.BlurHash import com.vanniktech.blurhash.BlurHash.decode as defaultDecode @@ -36,7 +36,7 @@ actual fun backAnimation( onBack: () -> Unit ): StackAnimation = predictiveBackAnimation( backHandler = backHandler, - animation = stackAnimation(fade()), + fallbackAnimation = stackAnimation(fade()), onBack = onBack ) diff --git a/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.desktop.kt b/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.desktop.kt index 858e335b..9923bdd4 100644 --- a/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.desktop.kt +++ b/app/shared/src/desktopMain/kotlin/dev/datlag/burningseries/shared/module/PlatformModule.desktop.kt @@ -5,8 +5,8 @@ import coil3.ImageLoader import coil3.PlatformContext import coil3.annotation.ExperimentalCoilApi import coil3.disk.DiskCache -import coil3.fetch.NetworkFetcher import coil3.memory.MemoryCache +import coil3.network.ktor.KtorNetworkFetcherFactory import coil3.request.crossfade import dev.datlag.burningseries.database.DriverFactory import dev.datlag.burningseries.model.common.canWriteSafely @@ -125,7 +125,7 @@ actual object PlatformModule { bindSingleton { ImageLoader.Builder(instance()) .components { - add(NetworkFetcher.Factory(lazyOf(instance()))) + add(KtorNetworkFetcherFactory(instance())) } .memoryCache { MemoryCache.Builder() diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 7ca42d15..99fad5ef 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -8,15 +8,15 @@ android-core = "1.12.0" appcompat = "1.6.1" appdirs = "1.2.2" blurhash = "0.2.0" -coil = "3.0.0-alpha01" -compose = "1.5.11" +coil = "3.0.0-alpha06" +compose = "1.6.0" complete-kotlin = "1.1.0" context-menu = "0.2.0" -coroutines = "1.7.3" +coroutines = "1.8.0" crashlytics-plugin = "2.9.9" datastore = "1.0.0" datetime = "0.5.0" -decompose = "2.2.2-compose-experimental" +decompose = "3.0.0-alpha08" firebase = "1.11.1" firebase-android = "20.4.2" firebase-android-auth = "22.3.1" @@ -26,14 +26,14 @@ flowredux = "1.2.1" grpc = "1.59.0" instesx = "0.1.0-alpha10" jsunpacker = "1.0.2" -kcef = "2023.10.13" -kmpalette = "2.2.0" -kodein = "7.21.1" -kolor = "1.3.0" -kotlin = "1.9.21" -ksp = "1.9.21-1.0.16" -ktor = "2.3.8" -ktorfit = "1.11.1" +kcef = "2024.01.07.1" +kmpalette = "3.1.0" +kodein = "7.21.2" +kolor = "1.4.3" +kotlin = "1.9.22" +ksp = "1.9.22-1.0.16" +ktor = "2.3.9" +ktorfit = "1.12.0" ktsoup = "0.3.0" lang = "3.14.0" material = "1.11.0" @@ -55,7 +55,7 @@ sqldelight = "2.0.1" turbine = "1.0.0" versions = "0.51.0" vlcj = "4.8.2" -windowsize-multiplatform = "0.3.2" +windowsize-multiplatform = "0.5.0" [libraries] aboutlibraries = { group = "com.mikepenz", name = "aboutlibraries-core", version.ref = "aboutlibraries" } @@ -67,7 +67,7 @@ appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "a appdirs = { group = "net.harawata", name = "appdirs", version.ref = "appdirs" } blurhash = { group = "com.vanniktech", name = "blurhash", version.ref = "blurhash" } coil = { group = "io.coil-kt.coil3", name = "coil", version.ref = "coil" } -coil-network = { group = "io.coil-kt.coil3", name = "coil-network", version.ref = "coil" } +coil-network = { group = "io.coil-kt.coil3", name = "coil-network-ktor", version.ref = "coil" } coil-compose = { group = "io.coil-kt.coil3", name = "coil-compose", version.ref = "coil" } coil-gif = { group = "io.coil-kt.coil3", name = "coil-gif", version.ref = "coil" } coil-svg = { group = "io.coil-kt.coil3", name = "coil-svg", version.ref = "coil" } @@ -82,7 +82,7 @@ datastore = { group = "androidx.datastore", name = "datastore-core", version.ref datastore-android = { group = "androidx.datastore", name = "datastore", version.ref = "datastore" } datetime = { group = "org.jetbrains.kotlinx", name = "kotlinx-datetime", version.ref = "datetime" } decompose = { group = "com.arkivanov.decompose", name = "decompose", version.ref = "decompose" } -decompose-compose = { group = "com.arkivanov.decompose", name = "extensions-compose-jetbrains", version.ref = "decompose" } +decompose-compose = { group = "com.arkivanov.decompose", name = "extensions-compose", version.ref = "decompose" } firebase-auth = { group = "dev.gitlive", name = "firebase-auth", version.ref = "firebase" } firebase-crashlytics = { group = "dev.gitlive", name = "firebase-crashlytics", version.ref = "firebase" } firebase-store = { group = "dev.gitlive", name = "firebase-firestore", version.ref = "firebase" }