From b62a3f32735846c5f9fe3afece855eb55287d312 Mon Sep 17 00:00:00 2001 From: Radch-enko Date: Wed, 21 May 2025 21:28:08 +0600 Subject: [PATCH 1/6] Update Kotlin to 2.1.20 --- buildSrc/build.gradle.kts | 2 +- .../buildSrc/src/main/kotlin/Dependencies.kt | 4 +- buildSrc/buildSrc/src/main/kotlin/Plugins.kt | 16 ++++--- composeApp/build.gradle.kts | 43 +++++++------------ composeApp/composeApp.podspec | 8 +++- .../elevator/components/NoRippleTheme.kt | 14 ------ .../components/bottomSheet/BottomSheetItem.kt | 10 +---- .../bottomSheet/MultiBottomSheetController.kt | 16 ------- .../rememberMultiBottomSheetController.kt | 34 --------------- contract/build.gradle.kts | 21 ++++----- gradle/wrapper/gradle-wrapper.properties | 4 +- iosApp/Podfile | 1 + modal_custom_dialog/build.gradle.kts | 23 ++++++---- tabletApp/build.gradle.kts | 17 +++++--- tabletApp/features/core/build.gradle.kts | 11 ++--- tabletApp/features/di/build.gradle.kts | 10 ++--- tabletApp/features/domain/build.gradle.kts | 10 ++--- tabletApp/features/network/build.gradle.kts | 10 ++--- tabletApp/features/roomInfo/build.gradle.kts | 11 ++--- .../features/selectRoom/build.gradle.kts | 11 ++--- tvApp/build.gradle.kts | 3 +- wheel-picker-compose/build.gradle.kts | 22 +++++++--- 22 files changed, 125 insertions(+), 176 deletions(-) delete mode 100644 composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/NoRippleTheme.kt delete mode 100644 composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/rememberMultiBottomSheetController.kt diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index 3e0b8853..1e6c81c8 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -17,10 +17,10 @@ dependencies { implementation(Plugins.Android.implementation) implementation(Plugins.Shadow.implementation) // NOTE(radchenko): generates jar for server builds implementation(Plugins.Kotlin.implementation) - implementation(Plugins.Kotlin.implementation) implementation(Plugins.Ktor.implementation) implementation(Plugins.ApacheCompress.implementation) // NOTE(radchenko): needs for `ktor` to `docker` implementation(Plugins.MultiplatformCompose.implementation) + implementation(Plugins.CocoaPods.implementation) implementation(Plugins.BuildConfig.implementation) implementation(Plugins.Serialization.implementation) implementation(Plugins.Moko.implementation) diff --git a/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt b/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt index f668679a..3b71cb5e 100644 --- a/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt +++ b/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt @@ -2,7 +2,7 @@ object Dependencies { object Versions { const val activityKtx = "1.7.2" - const val kotlin = "1.8.20" + const val kotlin = "2.1.21" const val agp = "7.4.2" const val compose = "1.4.0" const val androidxAppCompat = "1.6.1" @@ -25,7 +25,7 @@ object Dependencies { const val essenty = "1.1.0" const val logback = "1.2.11" const val shadow = "7.1.2" - const val moko = "0.24.0-beta-5" + const val moko = "0.24.5" const val calendar = "1.0.5" const val sqlDelight = "2.0.0-rc02" } diff --git a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt index 566216bc..d471bde7 100644 --- a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt +++ b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt @@ -7,12 +7,12 @@ object Plugins { object Android { - const val implementation = "com.android.tools.build:gradle:8.1.0" + const val implementation = "com.android.tools.build:gradle:8.9.1" const val plugin = "com.android.application" } object AndroidLib{ - const val implementation = "com.android.tools.build:gradle:8.1.0" + const val implementation = "com.android.tools.build:gradle:8.9.1" const val plugin = "com.android.library" } @@ -22,7 +22,7 @@ object Plugins { } object Kotlin { - const val implementation = "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.20" + const val implementation = "org.jetbrains.kotlin:kotlin-gradle-plugin:2.1.21" const val plugin = "org.jetbrains.kotlin.multiplatform" } @@ -36,11 +36,17 @@ object Plugins { } object MultiplatformCompose { - const val implementation = "org.jetbrains.compose:compose-gradle-plugin:1.5.10" + const val implementation = "org.jetbrains.compose:org.jetbrains.compose.gradle.plugin:1.7.3" const val plugin = "org.jetbrains.compose" } + object KotlinComposeGradle { + const val implementation = "org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.1.0" + const val plugin = "org.jetbrains.kotlin.plugin.compose" + } + object CocoaPods { + const val implementation = "org.jetbrains.kotlin.native.cocoapods:org.jetbrains.kotlin.native.cocoapods.gradle.plugin:2.0.20" const val plugin = "org.jetbrains.kotlin.native.cocoapods" } object Libres { @@ -62,7 +68,7 @@ object Plugins { } object Moko { - const val implementation = "dev.icerock.moko:resources-generator:0.24.0-beta-5" + const val implementation = "dev.icerock.moko:resources-generator:0.24.0" const val plugin = "dev.icerock.mobile.multiplatform-resources" } diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts index 0aa665d6..80923195 100644 --- a/composeApp/build.gradle.kts +++ b/composeApp/build.gradle.kts @@ -1,4 +1,5 @@ import dev.icerock.gradle.MRVisibility.Public +import org.jetbrains.kotlin.config.JvmTarget plugins { id(Plugins.Kotlin.plugin) @@ -10,16 +11,11 @@ plugins { id(Plugins.Serialization.plugin) id(Plugins.Parcelize.plugin) id(Plugins.Moko.plugin) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } - } - } + androidTarget() val iosArm64 = iosArm64() val iosX64 = iosX64() @@ -38,7 +34,7 @@ kotlin { export(Dependencies.Decompose.decompose) export(Dependencies.Essenty.essenty) } - pod("GoogleSignIn") {} + pod("GoogleSignIn") } targets.getByName("iosX64").compilations.forEach { it.kotlinOptions.freeCompilerArgs += arrayOf("-linker-options", "-lsqlite3") @@ -48,6 +44,14 @@ kotlin { freeCompilerArgs += "-Xlazy-ir-for-caches=disable" } } + kotlin.targets.removeAll { + it.name == "iosArm32" + } + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) + } + } sourceSets { val commonMain by getting { dependencies { @@ -93,13 +97,6 @@ kotlin { } } - val commonTest by getting { - dependencies { - implementation(kotlin("test")) - implementation("dev.icerock.moko:resources-test:0.24.0-beta-5") - } - } - val androidMain by getting { dependsOn(commonMain) dependencies { @@ -138,16 +135,6 @@ kotlin { implementation(Dependencies.SqlDelight.nativeDriver) } } - - val iosX64Test by getting - val iosArm64Test by getting - val iosSimulatorArm64Test by getting - val iosTest by creating { - dependsOn(commonTest) - iosX64Test.dependsOn(this) - iosArm64Test.dependsOn(this) - iosSimulatorArm64Test.dependsOn(this) - } } } @@ -169,15 +156,15 @@ android { res.srcDirs("build/generated/moko/androidMain/src") } compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } packagingOptions { resources.excludes.add("META-INF/**") } composeOptions { - kotlinCompilerExtensionVersion = "1.5.0" + kotlinCompilerExtensionVersion = "1.5.15" } signingConfigs { diff --git a/composeApp/composeApp.podspec b/composeApp/composeApp.podspec index 8d883ee0..9dd363ac 100644 --- a/composeApp/composeApp.podspec +++ b/composeApp/composeApp.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |spec| spec.summary = 'Compose application framework' spec.vendored_frameworks = 'build/cocoapods/framework/ComposeApp.framework' spec.libraries = 'c++' - spec.ios.deployment_target = '11.0' + spec.ios.deployment_target = '11.0' spec.dependency 'GoogleSignIn' if !Dir.exist?('build/cocoapods/framework/ComposeApp.framework') || Dir.empty?('build/cocoapods/framework/ComposeApp.framework') @@ -22,6 +22,10 @@ Pod::Spec.new do |spec| Alternatively, proper pod installation is performed during Gradle sync in the IDE (if Podfile location is set)" end + spec.xcconfig = { + 'ENABLE_USER_SCRIPT_SANDBOXING' => 'NO', + } + spec.pod_target_xcconfig = { 'KOTLIN_PROJECT_PATH' => ':composeApp', 'PRODUCT_MODULE_NAME' => 'ComposeApp', @@ -47,5 +51,5 @@ Pod::Spec.new do |spec| SCRIPT } ] - + spec.resources = ['build/compose/cocoapods/compose-resources'] end \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/NoRippleTheme.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/NoRippleTheme.kt deleted file mode 100644 index 2b68bf4a..00000000 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/NoRippleTheme.kt +++ /dev/null @@ -1,14 +0,0 @@ -package band.effective.office.elevator.common.compose.components - -import androidx.compose.material.ripple.RippleAlpha -import androidx.compose.material.ripple.RippleTheme -import androidx.compose.runtime.Composable -import androidx.compose.ui.graphics.Color - -internal object NoRippleTheme : RippleTheme { - @Composable - override fun defaultColor() = Color.Unspecified - - @Composable - override fun rippleAlpha(): RippleAlpha = RippleAlpha(0.0f, 0.0f, 0.0f, 0.0f) -} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/BottomSheetItem.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/BottomSheetItem.kt index a84bc1d9..fab70a97 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/BottomSheetItem.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/BottomSheetItem.kt @@ -1,22 +1,14 @@ -@file:OptIn(ExperimentalMaterialApi::class) - package band.effective.office.elevator.components.bottomSheet import androidx.compose.foundation.layout.ColumnScope -import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.material.ModalBottomSheetState import androidx.compose.runtime.Composable -class BottomSheetItem @OptIn(ExperimentalMaterialApi::class) constructor( +class BottomSheetItem( val bottomSheetContentState: ModalBottomSheetState, val bottomSheetContent: @Composable ColumnScope.() -> Unit ) { - @OptIn(ExperimentalMaterialApi::class) suspend fun hideBottomSheet() = bottomSheetContentState.hide() - @OptIn(ExperimentalMaterialApi::class) suspend fun showBottomSheet() = bottomSheetContentState.show() - - @OptIn(ExperimentalMaterialApi::class) - fun isVisible() = bottomSheetContentState.isVisible } diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/MultiBottomSheetController.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/MultiBottomSheetController.kt index 4fa1d42d..5a6a773e 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/MultiBottomSheetController.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/MultiBottomSheetController.kt @@ -1,37 +1,24 @@ package band.effective.office.elevator.components.bottomSheet import androidx.compose.foundation.layout.ColumnScope -import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.material.ModalBottomSheetState -import androidx.compose.material.ModalBottomSheetValue -import androidx.compose.material.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.mutableStateOf import band.effective.office.elevator.ui.booking.models.BottomSheetNames import band.effective.office.elevator.utils.Stack import band.effective.office.elevator.utils.peek import band.effective.office.elevator.utils.pop import band.effective.office.elevator.utils.push import band.effective.office.elevator.utils.stackOf -import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableStateFlow -import kotlinx.coroutines.flow.flow import kotlinx.coroutines.flow.update class MultiBottomSheetController( private val sheetStack: Stack = stackOf(), private val sheetContents: Map ) { - @OptIn(ExperimentalMaterialApi::class) val currentState: MutableStateFlow = MutableStateFlow(getCurrentSheetState()) - @OptIn(ExperimentalMaterialApi::class) - private val emptyModalState = ModalBottomSheetState( - initialValue = ModalBottomSheetValue.Hidden - ) - - @OptIn(ExperimentalMaterialApi::class) suspend fun showSheet(nameSheet: String) { //closeCurrentSheet() sheetStack.push(nameSheet) @@ -39,13 +26,11 @@ class MultiBottomSheetController( sheetContents[nameSheet]?.showBottomSheet() } - @OptIn(ExperimentalMaterialApi::class) suspend fun closeCurrentSheet() { sheetContents[sheetStack.pop()]?.hideBottomSheet() currentState.update { getCurrentSheetState()} } - @OptIn(ExperimentalMaterialApi::class) fun getCurrentSheetState(): ModalBottomSheetState { println(sheetStack.size) return sheetContents[sheetStack.peek()]?.bottomSheetContentState @@ -56,7 +41,6 @@ class MultiBottomSheetController( return sheetContents[sheetStack.peek()]?.bottomSheetContent ?: {} } - @OptIn(ExperimentalMaterialApi::class) suspend fun showOver(nameSheet: String) { currentState.update { getCurrentSheetState() } sheetStack.push(nameSheet) diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/rememberMultiBottomSheetController.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/rememberMultiBottomSheetController.kt deleted file mode 100644 index 65567942..00000000 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/bottomSheet/rememberMultiBottomSheetController.kt +++ /dev/null @@ -1,34 +0,0 @@ -package band.effective.office.elevator.components.bottomSheet - -import androidx.compose.runtime.Composable -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember -import androidx.compose.runtime.saveable.listSaver -import androidx.compose.runtime.saveable.rememberSaveable -import band.effective.office.elevator.utils.Stack -import band.effective.office.elevator.utils.pop -import band.effective.office.elevator.utils.stackOf - -@Composable -fun rememberMultiBottomSheetController( - sheetContents: Map, - sheetStack: Stack = stackOf() -): MultiBottomSheetController { - - return rememberSaveable(sheetStack, - saver = listSaver( - save = { listOf(sheetStack) }, - restore = { - MultiBottomSheetController( - sheetStack = it[0], - sheetContents = sheetContents - ) - } - ) - ) { - MultiBottomSheetController( - sheetStack = sheetStack, - sheetContents = sheetContents - ) - } -} \ No newline at end of file diff --git a/contract/build.gradle.kts b/contract/build.gradle.kts index 433f163d..4c916d71 100644 --- a/contract/build.gradle.kts +++ b/contract/build.gradle.kts @@ -1,4 +1,5 @@ import com.android.build.gradle.internal.cxx.configure.gradleLocalProperties +import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { id(Plugins.AndroidLib.plugin) @@ -22,24 +23,24 @@ android { } compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } - } - } + androidTarget() iosX64() iosArm64() iosSimulatorArm64() + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_17) + } + } + sourceSets { val commonMain by getting { dependencies { @@ -81,7 +82,7 @@ kotlin { } -val apiKey: String = gradleLocalProperties(rootDir).getProperty("apiKey") +val apiKey: String = gradleLocalProperties(rootDir, providers).getProperty("apiKey") buildConfig { buildConfigField("String", "apiKey", apiKey) buildConfigField( diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 9ddde11c..ba524f12 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sun Nov 05 17:52:12 OMST 2023 +#Wed May 21 18:41:52 OMST 2025 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/iosApp/Podfile b/iosApp/Podfile index a7bc921c..d9755d59 100644 --- a/iosApp/Podfile +++ b/iosApp/Podfile @@ -3,6 +3,7 @@ target 'iosApp' do platform :ios, '13' pod 'composeApp', :path => '../composeApp' pod 'sqlite3', '~> 3.42.0' + pod 'GoogleSignIn' end post_install do |installer| diff --git a/modal_custom_dialog/build.gradle.kts b/modal_custom_dialog/build.gradle.kts index 2f07a1bf..a63eb48a 100644 --- a/modal_custom_dialog/build.gradle.kts +++ b/modal_custom_dialog/build.gradle.kts @@ -1,7 +1,10 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { id(Plugins.Kotlin.plugin) id(Plugins.MultiplatformCompose.plugin) id(Plugins.AndroidLib.plugin) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } android { namespace = "band.effective.office.dialog" @@ -9,21 +12,25 @@ android { defaultConfig { minSdk = ConfigData.Android.minSdkVersion } -} -kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } - } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } +} +kotlin { + androidTarget() iosX64() iosArm64() iosSimulatorArm64() + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_17) + } + } + sourceSets { val commonMain by getting { dependencies { diff --git a/tabletApp/build.gradle.kts b/tabletApp/build.gradle.kts index 91620a94..300217a8 100644 --- a/tabletApp/build.gradle.kts +++ b/tabletApp/build.gradle.kts @@ -1,3 +1,5 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { id(Plugins.Android.plugin) id(Plugins.MultiplatformCompose.plugin) @@ -5,6 +7,7 @@ plugins { id(Plugins.Parcelize.plugin) id(Plugins.Libres.plugin) id(Plugins.GoogleServices.plugin) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } android { @@ -24,8 +27,8 @@ android { res.srcDirs("src/androidMain/resources") } compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } signingConfigs { @@ -57,11 +60,11 @@ android { } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + androidTarget() + + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } diff --git a/tabletApp/features/core/build.gradle.kts b/tabletApp/features/core/build.gradle.kts index 228acf98..b5b313f2 100644 --- a/tabletApp/features/core/build.gradle.kts +++ b/tabletApp/features/core/build.gradle.kts @@ -4,6 +4,7 @@ plugins { id(Plugins.Kotlin.plugin) id(Plugins.Libres.plugin) id(Plugins.Parcelize.plugin) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } android { @@ -17,11 +18,11 @@ android { } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + androidTarget() + + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } diff --git a/tabletApp/features/di/build.gradle.kts b/tabletApp/features/di/build.gradle.kts index 57f5b160..ee9f19a6 100644 --- a/tabletApp/features/di/build.gradle.kts +++ b/tabletApp/features/di/build.gradle.kts @@ -19,11 +19,11 @@ android { } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + androidTarget() + + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } diff --git a/tabletApp/features/domain/build.gradle.kts b/tabletApp/features/domain/build.gradle.kts index 5ea94ec6..f7381546 100644 --- a/tabletApp/features/domain/build.gradle.kts +++ b/tabletApp/features/domain/build.gradle.kts @@ -15,11 +15,11 @@ android { } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + androidTarget() + + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } diff --git a/tabletApp/features/network/build.gradle.kts b/tabletApp/features/network/build.gradle.kts index 9b39af8a..9c224c7a 100644 --- a/tabletApp/features/network/build.gradle.kts +++ b/tabletApp/features/network/build.gradle.kts @@ -15,11 +15,11 @@ android { } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + androidTarget() + + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } diff --git a/tabletApp/features/roomInfo/build.gradle.kts b/tabletApp/features/roomInfo/build.gradle.kts index 09fcb556..0fa880db 100644 --- a/tabletApp/features/roomInfo/build.gradle.kts +++ b/tabletApp/features/roomInfo/build.gradle.kts @@ -4,6 +4,7 @@ plugins { id(Plugins.Kotlin.plugin) id(Plugins.Parcelize.plugin) id(Plugins.Libres.plugin) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } android { @@ -17,11 +18,11 @@ android { } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + androidTarget() + + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } diff --git a/tabletApp/features/selectRoom/build.gradle.kts b/tabletApp/features/selectRoom/build.gradle.kts index c3de95ee..7ecb7a12 100644 --- a/tabletApp/features/selectRoom/build.gradle.kts +++ b/tabletApp/features/selectRoom/build.gradle.kts @@ -4,6 +4,7 @@ plugins { id(Plugins.Kotlin.plugin) id(Plugins.Parcelize.plugin) id(Plugins.Libres.plugin) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } android { @@ -16,11 +17,11 @@ android { } kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + androidTarget() + + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } diff --git a/tvApp/build.gradle.kts b/tvApp/build.gradle.kts index e81ddf6a..f7b1df6c 100644 --- a/tvApp/build.gradle.kts +++ b/tvApp/build.gradle.kts @@ -6,8 +6,9 @@ plugins { id(libs.plugins.android.get().pluginId) kotlin("android") id("kotlin-kapt") - id("com.google.devtools.ksp").version("1.9.20-1.0.14") + id("com.google.devtools.ksp").version("2.1.21-2.0.1") alias(libs.plugins.hilt) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } val localProperties = Properties() diff --git a/wheel-picker-compose/build.gradle.kts b/wheel-picker-compose/build.gradle.kts index 9c6e99df..8ef9ed99 100644 --- a/wheel-picker-compose/build.gradle.kts +++ b/wheel-picker-compose/build.gradle.kts @@ -1,7 +1,10 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { id(Plugins.Kotlin.plugin) id(Plugins.MultiplatformCompose.plugin) id(Plugins.AndroidLib.plugin) + id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" } android { @@ -10,17 +13,22 @@ android { defaultConfig { minSdk = ConfigData.Android.minSdkVersion } -} -kotlin { - android { - compilations.all { - kotlinOptions { - jvmTarget = "1.8" - } + tasks.withType().configureEach { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_17) } } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } +} + +kotlin { + androidTarget() + iosX64() iosArm64() iosSimulatorArm64() -- GitLab From 226e3fed0f65d9f9a5229976093ee62b17dc2e06 Mon Sep 17 00:00:00 2001 From: Radch-enko Date: Thu, 22 May 2025 14:05:09 +0600 Subject: [PATCH 2/6] Update moko plugin to 0.24.5 --- buildSrc/buildSrc/src/main/kotlin/Plugins.kt | 2 +- composeApp/build.gradle.kts | 4 ++-- composeApp/composeApp.podspec | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt index d471bde7..46cbcbd1 100644 --- a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt +++ b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt @@ -68,7 +68,7 @@ object Plugins { } object Moko { - const val implementation = "dev.icerock.moko:resources-generator:0.24.0" + const val implementation = "dev.icerock.moko:resources-generator:0.24.5" const val plugin = "dev.icerock.mobile.multiplatform-resources" } diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts index 80923195..4beba6e9 100644 --- a/composeApp/build.gradle.kts +++ b/composeApp/build.gradle.kts @@ -25,7 +25,7 @@ kotlin { version = "2.0.2" summary = "Compose application framework" homepage = "https://github.com/Radch-enko" - ios.deploymentTarget = "11.0" + ios.deploymentTarget = "12.0" podfile = project.file("../iosApp/Podfile") framework { baseName = "ComposeApp" @@ -131,7 +131,7 @@ kotlin { iosSimulatorArm64Main.dependsOn(this) dependencies { implementation(Dependencies.Ktor.Client.Darwin) - implementation(files("iosApp/GoogleAuthorization/GoogleAuthorization/Sources")) + //implementation(files("iosApp/GoogleAuthorization/GoogleAuthorization/Sources")) implementation(Dependencies.SqlDelight.nativeDriver) } } diff --git a/composeApp/composeApp.podspec b/composeApp/composeApp.podspec index 9dd363ac..d29a3d1e 100644 --- a/composeApp/composeApp.podspec +++ b/composeApp/composeApp.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |spec| spec.summary = 'Compose application framework' spec.vendored_frameworks = 'build/cocoapods/framework/ComposeApp.framework' spec.libraries = 'c++' - spec.ios.deployment_target = '11.0' + spec.ios.deployment_target = '12.0' spec.dependency 'GoogleSignIn' if !Dir.exist?('build/cocoapods/framework/ComposeApp.framework') || Dir.empty?('build/cocoapods/framework/ComposeApp.framework') -- GitLab From 4164dd9a3da8219dde8e4f27ae09c9565d566225 Mon Sep 17 00:00:00 2001 From: Radch-enko Date: Thu, 22 May 2025 17:20:37 +0600 Subject: [PATCH 3/6] Update info.plist --- iosApp/iosApp/Info.plist | 3 +++ 1 file changed, 3 insertions(+) diff --git a/iosApp/iosApp/Info.plist b/iosApp/iosApp/Info.plist index 4db63ef2..531c501b 100644 --- a/iosApp/iosApp/Info.plist +++ b/iosApp/iosApp/Info.plist @@ -15,6 +15,7 @@ CFBundleURLSchemes com.googleusercontent.apps.503255112190-a3n1441gcnl7alamoqkvk9omtv5q97tl + com.googleusercontent.apps.887306887525-e0rvceet062785b4gjq9kh0kh5qfm4if @@ -38,6 +39,8 @@ ITSAppUsesNonExemptEncryption + CADisableMinimumFrameDurationOnPhone + UIViewControllerBasedStatusBarAppearance -- GitLab From e4ea0922e417d296ef46657867da9960df5bbf61 Mon Sep 17 00:00:00 2001 From: Radch-enko Date: Thu, 22 May 2025 19:10:21 +0600 Subject: [PATCH 4/6] update Compose to Stable version 1.8.1 --- buildSrc/buildSrc/src/main/kotlin/Plugins.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt index 46cbcbd1..7b903c59 100644 --- a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt +++ b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt @@ -36,7 +36,7 @@ object Plugins { } object MultiplatformCompose { - const val implementation = "org.jetbrains.compose:org.jetbrains.compose.gradle.plugin:1.7.3" + const val implementation = "org.jetbrains.compose:org.jetbrains.compose.gradle.plugin:1.8.1" const val plugin = "org.jetbrains.compose" } -- GitLab From bfa4a79e14e4fca6950dd07c32cf504ccf5008f3 Mon Sep 17 00:00:00 2001 From: Radch-enko Date: Tue, 27 May 2025 15:51:28 +0600 Subject: [PATCH 5/6] downgrade compose to 1.7.0 + migrate calendar library to new version + change targetSdk, compileSdk --- .../buildSrc/src/main/kotlin/Dependencies.kt | 4 ++-- buildSrc/buildSrc/src/main/kotlin/Plugins.kt | 2 +- composeApp/build.gradle.kts | 4 ++-- .../office/elevator/components/Calendar.kt | 4 ++-- .../elevator/domain/models/BookingInfo.kt | 4 ++-- .../ui/booking/components/modals/TimeLine.kt | 18 +++--------------- .../office/elevator/utils/DateConverters.kt | 8 ++++---- 7 files changed, 16 insertions(+), 28 deletions(-) diff --git a/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt b/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt index 3b71cb5e..2709b5de 100644 --- a/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt +++ b/buildSrc/buildSrc/src/main/kotlin/Dependencies.kt @@ -26,7 +26,7 @@ object Dependencies { const val logback = "1.2.11" const val shadow = "7.1.2" const val moko = "0.24.5" - const val calendar = "1.0.5" + const val calendar = "1.0.8" const val sqlDelight = "2.0.0-rc02" } @@ -139,7 +139,7 @@ object Dependencies { const val composeBasic = "io.github.epicarchitect:calendar-compose-basis:${Versions.calendar}" const val composeRanges = "io.github.epicarchitect:calendar-compose-ranges:${Versions.calendar}" const val composePager = "io.github.epicarchitect:calendar-compose-pager:${Versions.calendar}" - const val composeDatePicker = "io.github.epicarchitect:calendar-compose-datepicker:${Versions.calendar}" + const val composeDatePicker = "io.github.epicarchitect:epic-calendar-compose:${Versions.calendar}" } object SqlDelight { diff --git a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt index 7b903c59..3d967389 100644 --- a/buildSrc/buildSrc/src/main/kotlin/Plugins.kt +++ b/buildSrc/buildSrc/src/main/kotlin/Plugins.kt @@ -36,7 +36,7 @@ object Plugins { } object MultiplatformCompose { - const val implementation = "org.jetbrains.compose:org.jetbrains.compose.gradle.plugin:1.8.1" + const val implementation = "org.jetbrains.compose:org.jetbrains.compose.gradle.plugin:1.7.0" const val plugin = "org.jetbrains.compose" } diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts index 4beba6e9..97d9d622 100644 --- a/composeApp/build.gradle.kts +++ b/composeApp/build.gradle.kts @@ -141,11 +141,11 @@ kotlin { android { namespace = "band.effective.office.elevator" - compileSdk = 34 + compileSdk = 35 defaultConfig { minSdk = 26 - targetSdk = 34 + targetSdk = 36 applicationId = "band.effective.office.mobile" versionCode = 1 diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/Calendar.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/Calendar.kt index 3f968f7f..9554cc96 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/Calendar.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/components/Calendar.kt @@ -33,7 +33,7 @@ import epicarchitect.calendar.compose.basis.BasisDayOfMonthContent import epicarchitect.calendar.compose.basis.BasisDayOfWeekContent import epicarchitect.calendar.compose.basis.config.LocalBasisEpicCalendarConfig import epicarchitect.calendar.compose.basis.contains -import epicarchitect.calendar.compose.basis.localized +import epicarchitect.calendar.compose.basis.localizedBySystem import epicarchitect.calendar.compose.basis.state.LocalBasisEpicCalendarState import epicarchitect.calendar.compose.datepicker.EpicDatePicker import epicarchitect.calendar.compose.datepicker.state.EpicDatePickerState @@ -129,7 +129,7 @@ private fun stringFormat(date: LocalDate) = private val CustomDayOfWeekContent: BasisDayOfWeekContent = { dayOfWeek -> val config = LocalBasisEpicCalendarConfig.current Text( - text = dayOfWeek.localized(), + text = dayOfWeek.localizedBySystem(), textAlign = TextAlign.Center, color = config.contentColor, fontSize = 20.sp, diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/domain/models/BookingInfo.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/domain/models/BookingInfo.kt index a690c88e..237a0b19 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/domain/models/BookingInfo.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/domain/models/BookingInfo.kt @@ -11,7 +11,7 @@ import band.effective.office.network.dto.BookingResponseDTO import band.effective.office.network.dto.RecurrenceDTO import band.effective.office.network.dto.UserDTO import band.effective.office.network.dto.WorkspaceDTO -import epicarchitect.calendar.compose.basis.localized +import epicarchitect.calendar.compose.basis.localizedBySystem import kotlinx.datetime.LocalDateTime import kotlinx.datetime.LocalTime @@ -80,7 +80,7 @@ fun BookingInfo.toUiModel() = ReservedSeat( fun List.toUIModel() = map { it.toUiModel() } private fun convertDateTimeToUiDateString(dateOfStart: LocalDateTime) = - "${capitalizeFirstLetter(dateOfStart.dayOfWeek.localized())}, ${dateOfStart.dayOfMonth} ${ + "${capitalizeFirstLetter(dateOfStart.dayOfWeek.localizedBySystem())}, ${dateOfStart.dayOfMonth} ${ MonthLocalizations.getMonthName(dateOfStart.month, Locale("ru"))}" private fun convertDateTimeToUiTimeString( diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/booking/components/modals/TimeLine.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/booking/components/modals/TimeLine.kt index d2f9ff84..d0cc92b5 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/booking/components/modals/TimeLine.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/booking/components/modals/TimeLine.kt @@ -6,35 +6,22 @@ import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.width -import androidx.compose.foundation.layout.wrapContentHeight -import androidx.compose.material.Button -import androidx.compose.material.ButtonDefaults import androidx.compose.material.MaterialTheme -import androidx.compose.material.ButtonElevation -import androidx.compose.material3.Divider import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.rotate import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.font.FontWeight -import androidx.compose.ui.text.intl.Locale import androidx.compose.ui.unit.dp -import band.effective.office.elevator.ExtendedThemeColors import band.effective.office.elevator.MainRes import band.effective.office.elevator.common.compose.components.GrayText -import band.effective.office.elevator.utils.MonthLocalizations -import band.effective.office.elevator.utils.capitalizeFirstLetter import band.effective.office.elevator.utils.convertDateTimeToUiDateString import band.effective.office.elevator.utils.convertTimeToString import dev.icerock.moko.resources.compose.stringResource -import epicarchitect.calendar.compose.basis.localized import kotlinx.datetime.LocalDate -import kotlinx.datetime.LocalDateTime import kotlinx.datetime.LocalTime @Composable @@ -55,7 +42,7 @@ fun TimeLine( .fillMaxWidth() .padding(start = 30.dp, end = 16.dp, top = 16.dp, bottom = 16.dp) ) { - when(startDate == endDate) { + when (startDate == endDate) { true -> SingleTimeLine( startDate = startDate, startTime = startTime, @@ -65,6 +52,7 @@ fun TimeLine( onPickStartTime = onPickStartTime, onPickEndTime = onPickEndTime ) + false -> NonSingleTimeLine( startDate = startDate, startTime = startTime, @@ -156,7 +144,7 @@ private fun NonSingleTimeLine( onPickStartTime: () -> Unit, onPickEndTime: () -> Unit, ) { - Column ( + Column( horizontalAlignment = Alignment.Start ) { Text( diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/utils/DateConverters.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/utils/DateConverters.kt index 97446384..1e532340 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/utils/DateConverters.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/utils/DateConverters.kt @@ -2,7 +2,7 @@ package band.effective.office.elevator.utils import androidx.compose.ui.text.intl.Locale import band.effective.office.elevator.domain.models.timePad -import epicarchitect.calendar.compose.basis.localized +import epicarchitect.calendar.compose.basis.localizedBySystem import kotlinx.datetime.LocalDate import kotlinx.datetime.LocalTime @@ -10,18 +10,18 @@ fun dateFormat(date: LocalDate) = "${timePad(date.dayOfMonth.toString())}.${timePad(date.monthNumber.toString())}" fun convertDateTimeToUiDateString(dateOfStart: LocalDate) = - "${capitalizeFirstLetter(dateOfStart.dayOfWeek.localized()).lowercase()}, ${dateOfStart.dayOfMonth} ${ + "${capitalizeFirstLetter(dateOfStart.dayOfWeek.localizedBySystem()).lowercase()}, ${dateOfStart.dayOfMonth} ${ MonthLocalizations.getMonthName(dateOfStart.month, Locale("ru")) .substring(0, 3) .lowercase() }" fun convertDateTimeToUiDateString(dateOfStart: LocalDate, dateOfEnd: LocalDate) = - ("${capitalizeFirstLetter(dateOfStart.dayOfWeek.localized()).lowercase()}, ${dateOfStart.dayOfMonth} ${ + ("${capitalizeFirstLetter(dateOfStart.dayOfWeek.localizedBySystem()).lowercase()}, ${dateOfStart.dayOfMonth} ${ MonthLocalizations.getMonthName(dateOfStart.month, Locale("ru")) .lowercase() } - " + - "${capitalizeFirstLetter(dateOfEnd.dayOfWeek.localized()).lowercase()}, ${dateOfEnd.dayOfMonth} ${ + "${capitalizeFirstLetter(dateOfEnd.dayOfWeek.localizedBySystem()).lowercase()}, ${dateOfEnd.dayOfMonth} ${ MonthLocalizations.getMonthName(dateOfEnd.month, Locale("ru")) .lowercase() }") -- GitLab From 6b5829484b788f1dfb461e2c7968ac9256c0f675 Mon Sep 17 00:00:00 2001 From: KrugarValdes Date: Wed, 25 Jun 2025 19:52:31 +0600 Subject: [PATCH 6/6] [~]Fix: Build configs & dependency compatibility --- gradle/libs.versions.toml | 2 +- tabletApp/features/core/build.gradle.kts | 4 ++++ .../ui/bookingComponents/pickerDateTime/DatePickerView.kt | 4 ++-- tabletApp/features/di/build.gradle.kts | 4 ++++ tabletApp/features/domain/build.gradle.kts | 4 ++++ tabletApp/features/network/build.gradle.kts | 4 ++++ tabletApp/features/roomInfo/build.gradle.kts | 4 ++++ tabletApp/features/selectRoom/build.gradle.kts | 4 ++++ 8 files changed, 27 insertions(+), 3 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 76f7e2b6..32b2e21c 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,7 +3,7 @@ avifCoderCoil = "1.7.5" retrofit-ver = "2.9.0" tv-ver="1.0.0-alpha04" moshi-ver="1.14.0" -hilt-var = "2.48" +hilt-var = "2.51.1" hilt-nav-var = "1.0.0" okhttp3-var = "4.10.0" retrofit-moshi = "2.9.0" diff --git a/tabletApp/features/core/build.gradle.kts b/tabletApp/features/core/build.gradle.kts index b5b313f2..b826bdbf 100644 --- a/tabletApp/features/core/build.gradle.kts +++ b/tabletApp/features/core/build.gradle.kts @@ -15,6 +15,10 @@ android { res.srcDirs("src/androidMain/resources") res.srcDir("build/generated/libres/android/resources") } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } } kotlin { diff --git a/tabletApp/features/core/src/commonMain/kotlin/band/effective/office/tablet/ui/bookingComponents/pickerDateTime/DatePickerView.kt b/tabletApp/features/core/src/commonMain/kotlin/band/effective/office/tablet/ui/bookingComponents/pickerDateTime/DatePickerView.kt index f3c8ccbd..181477c6 100644 --- a/tabletApp/features/core/src/commonMain/kotlin/band/effective/office/tablet/ui/bookingComponents/pickerDateTime/DatePickerView.kt +++ b/tabletApp/features/core/src/commonMain/kotlin/band/effective/office/tablet/ui/bookingComponents/pickerDateTime/DatePickerView.kt @@ -30,7 +30,7 @@ import epicarchitect.calendar.compose.basis.BasisDayOfMonthContent import epicarchitect.calendar.compose.basis.BasisDayOfWeekContent import epicarchitect.calendar.compose.basis.config.LocalBasisEpicCalendarConfig import epicarchitect.calendar.compose.basis.contains -import epicarchitect.calendar.compose.basis.localized +import epicarchitect.calendar.compose.basis.localizedBySystem import epicarchitect.calendar.compose.basis.state.LocalBasisEpicCalendarState import epicarchitect.calendar.compose.datepicker.EpicDatePicker import epicarchitect.calendar.compose.datepicker.state.EpicDatePickerState @@ -154,7 +154,7 @@ private fun scrollMonth( private val CustomDayOfWeekContent: BasisDayOfWeekContent = { dayOfWeek -> val config = LocalBasisEpicCalendarConfig.current Text( - text = dayOfWeek.localized(), + text = dayOfWeek.localizedBySystem(), textAlign = TextAlign.Center, color = config.contentColor, style = header6, diff --git a/tabletApp/features/di/build.gradle.kts b/tabletApp/features/di/build.gradle.kts index ee9f19a6..e4757f8f 100644 --- a/tabletApp/features/di/build.gradle.kts +++ b/tabletApp/features/di/build.gradle.kts @@ -16,6 +16,10 @@ android { // res.srcDirs("src/androidMain/resources") // res.srcDir("build/generated/libres/android/resources") // } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } } kotlin { diff --git a/tabletApp/features/domain/build.gradle.kts b/tabletApp/features/domain/build.gradle.kts index f7381546..701e8a21 100644 --- a/tabletApp/features/domain/build.gradle.kts +++ b/tabletApp/features/domain/build.gradle.kts @@ -12,6 +12,10 @@ android { res.srcDirs("src/androidMain/resources") res.srcDir("build/generated/libres/android/resources") } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } } kotlin { diff --git a/tabletApp/features/network/build.gradle.kts b/tabletApp/features/network/build.gradle.kts index 9c224c7a..4482a1f0 100644 --- a/tabletApp/features/network/build.gradle.kts +++ b/tabletApp/features/network/build.gradle.kts @@ -12,6 +12,10 @@ android { res.srcDirs("src/androidMain/resources") res.srcDir("build/generated/libres/android/resources") } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } } kotlin { diff --git a/tabletApp/features/roomInfo/build.gradle.kts b/tabletApp/features/roomInfo/build.gradle.kts index 0fa880db..99e93f12 100644 --- a/tabletApp/features/roomInfo/build.gradle.kts +++ b/tabletApp/features/roomInfo/build.gradle.kts @@ -15,6 +15,10 @@ android { res.srcDirs("src/androidMain/resources") res.srcDir("build/generated/libres/android/resources") } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } } kotlin { diff --git a/tabletApp/features/selectRoom/build.gradle.kts b/tabletApp/features/selectRoom/build.gradle.kts index 7ecb7a12..73dd7127 100644 --- a/tabletApp/features/selectRoom/build.gradle.kts +++ b/tabletApp/features/selectRoom/build.gradle.kts @@ -14,6 +14,10 @@ android { res.srcDirs("src/androidMain/resources") res.srcDir("build/generated/libres/android/resources") } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } } kotlin { -- GitLab