diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 16b756ae..29e13fc1 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -54,6 +54,7 @@ kotlin { all { languageSettings { optIn("kotlin.RequiresOptIn") + optIn("kotlin.time.ExperimentalTime") optIn("kotlinx.serialization.ExperimentalSerializationApi") optIn("com.russhwolf.settings.ExperimentalSettingsApi") optIn("com.russhwolf.settings.ExperimentalSettingsImplementation") diff --git a/core/src/commonMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt b/core/src/commonMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt index 40c09add..6d8cd74e 100644 --- a/core/src/commonMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt +++ b/core/src/commonMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt @@ -1,6 +1,6 @@ package ca.gosyer.jui.core.util -import kotlinx.datetime.Instant +import kotlin.time.Instant @Suppress("NO_ACTUAL_FOR_EXPECT") expect class DateHandler { diff --git a/core/src/iosMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt b/core/src/iosMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt index 4533fa85..16abcdce 100644 --- a/core/src/iosMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt +++ b/core/src/iosMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt @@ -2,8 +2,8 @@ package ca.gosyer.jui.core.util import androidx.compose.ui.text.intl.Locale import ca.gosyer.jui.core.lang.toPlatform -import kotlinx.datetime.Instant import me.tatarka.inject.annotations.Inject +import kotlin.time.Instant actual class DateHandler { @Inject diff --git a/core/src/jvmMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt b/core/src/jvmMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt index 3dac192c..e63eb37f 100644 --- a/core/src/jvmMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt +++ b/core/src/jvmMain/kotlin/ca/gosyer/jui/core/util/DateHandler.kt @@ -2,12 +2,12 @@ package ca.gosyer.jui.core.util import androidx.compose.ui.text.intl.Locale import ca.gosyer.jui.core.lang.toPlatform -import kotlinx.datetime.Instant -import kotlinx.datetime.toJavaInstant import me.tatarka.inject.annotations.Inject import java.time.ZoneId import java.time.format.DateTimeFormatter import java.time.format.FormatStyle +import kotlin.time.Instant +import kotlin.time.toJavaInstant actual class DateHandler { @Inject diff --git a/domain/build.gradle.kts b/domain/build.gradle.kts index 8d267691..7b499521 100644 --- a/domain/build.gradle.kts +++ b/domain/build.gradle.kts @@ -55,6 +55,7 @@ kotlin { all { languageSettings { optIn("kotlin.RequiresOptIn") + optIn("kotlin.time.ExperimentalTime") optIn("kotlinx.coroutines.ExperimentalCoroutinesApi") } } diff --git a/domain/src/commonMain/kotlin/ca/gosyer/jui/domain/updates/interactor/UpdatesPager.kt b/domain/src/commonMain/kotlin/ca/gosyer/jui/domain/updates/interactor/UpdatesPager.kt index 068aa6bb..3dbdb966 100644 --- a/domain/src/commonMain/kotlin/ca/gosyer/jui/domain/updates/interactor/UpdatesPager.kt +++ b/domain/src/commonMain/kotlin/ca/gosyer/jui/domain/updates/interactor/UpdatesPager.kt @@ -31,11 +31,11 @@ import kotlinx.coroutines.flow.stateIn import kotlinx.coroutines.flow.update import kotlinx.coroutines.launch import kotlinx.coroutines.sync.Mutex -import kotlinx.datetime.Instant import kotlinx.datetime.LocalDate import kotlinx.datetime.TimeZone import kotlinx.datetime.toLocalDateTime import me.tatarka.inject.annotations.Inject +import kotlin.time.Instant @Inject class UpdatesPager( diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 707ed1e9..b05d98b9 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -15,7 +15,7 @@ voyager = "1.1.0-beta03" accompanist = "0.30.1" googleAccompanist = "0.36.0" imageloader = "1.8.1" -materialDialogs = "0.9.5" +materialDialogs = "0.9.7" # Android androidGradle = "8.12.0" @@ -56,7 +56,7 @@ multiplatformSettings = "1.2.0" # Utility desugarJdkLibs = "2.1.5" aboutLibraries = "11.6.3" -dateTime = "0.6.1" +dateTime = "0.7.1" immutableCollections = "0.4.0" korge = "5.4.0" gradleDownloadTask = "5.6.0" diff --git a/presentation/build.gradle.kts b/presentation/build.gradle.kts index 1cbaedbe..525210d8 100644 --- a/presentation/build.gradle.kts +++ b/presentation/build.gradle.kts @@ -57,6 +57,7 @@ kotlin { all { languageSettings { optIn("kotlin.RequiresOptIn") + optIn("kotlin.time.ExperimentalTime") optIn("kotlinx.coroutines.ExperimentalCoroutinesApi") optIn("androidx.compose.animation.ExperimentalAnimationApi") optIn("androidx.compose.foundation.ExperimentalFoundationApi") diff --git a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/main/about/AboutViewModel.kt b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/main/about/AboutViewModel.kt index 9f0953f6..59b3ae1a 100644 --- a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/main/about/AboutViewModel.kt +++ b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/main/about/AboutViewModel.kt @@ -22,9 +22,9 @@ import kotlinx.coroutines.flow.asStateFlow import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.stateIn import kotlinx.coroutines.launch -import kotlinx.datetime.Instant import me.tatarka.inject.annotations.Inject import org.lighthousegames.logging.logging +import kotlin.time.Instant @Inject class AboutViewModel( diff --git a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/ChapterItem.kt b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/ChapterItem.kt index 1fe01178..4822ee16 100644 --- a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/ChapterItem.kt +++ b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/ChapterItem.kt @@ -41,7 +41,7 @@ import ca.gosyer.jui.ui.base.chapter.ChapterDownloadIcon import ca.gosyer.jui.ui.base.chapter.ChapterDownloadItem import ca.gosyer.jui.uicore.components.selectedBackground import ca.gosyer.jui.uicore.resources.stringResource -import kotlinx.datetime.Instant +import kotlin.time.Instant expect fun Modifier.chapterItemModifier( onClick: () -> Unit, diff --git a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/MangaScreenContent.kt b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/MangaScreenContent.kt index 942bb182..e428b575 100644 --- a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/MangaScreenContent.kt +++ b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/manga/components/MangaScreenContent.kt @@ -81,7 +81,7 @@ import com.vanpra.composematerialdialogs.rememberMaterialDialogState import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.toImmutableList import kotlinx.coroutines.flow.SharedFlow -import kotlinx.datetime.Instant +import kotlin.time.Instant @Composable fun MangaScreenContent( diff --git a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/settings/SettingsGeneralScreen.kt b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/settings/SettingsGeneralScreen.kt index a974c4fd..0f7ab241 100644 --- a/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/settings/SettingsGeneralScreen.kt +++ b/presentation/src/commonMain/kotlin/ca/gosyer/jui/ui/settings/SettingsGeneralScreen.kt @@ -53,12 +53,12 @@ import cafe.adriel.voyager.core.screen.uniqueScreenKey import kotlinx.collections.immutable.ImmutableMap import kotlinx.collections.immutable.persistentMapOf import kotlinx.collections.immutable.toImmutableMap -import kotlinx.datetime.Clock import kotlinx.serialization.json.Json import kotlinx.serialization.json.JsonObject import kotlinx.serialization.json.jsonArray import kotlinx.serialization.json.jsonPrimitive import me.tatarka.inject.annotations.Inject +import kotlin.time.Clock class SettingsGeneralScreen : Screen { override val key: ScreenKey = uniqueScreenKey diff --git a/ui-core/build.gradle.kts b/ui-core/build.gradle.kts index 82ad14f1..f3c44b7c 100644 --- a/ui-core/build.gradle.kts +++ b/ui-core/build.gradle.kts @@ -55,6 +55,7 @@ kotlin { all { languageSettings { optIn("kotlin.RequiresOptIn") + optIn("kotlin.time.ExperimentalTime") optIn("androidx.compose.foundation.ExperimentalFoundationApi") optIn("androidx.compose.material.ExperimentalMaterialApi") optIn("androidx.compose.ui.ExperimentalComposeUiApi")