| /* | |
| * Copyright 2020 The Android Open Source Project | |
| * | |
| * Licensed under the Apache License, Version 2.0 (the "License"); | |
| * you may not use this file except in compliance with the License. | |
| * You may obtain a copy of the License at | |
| * | |
| * http://www.apache.org/licenses/LICENSE-2.0 | |
| * | |
| * Unless required by applicable law or agreed to in writing, software | |
| * distributed under the License is distributed on an "AS IS" BASIS, | |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| * See the License for the specific language governing permissions and | |
| * limitations under the License. | |
| */ | |
| /** | |
| * This file was created using the `createProject` gradle task (./gradlew createProject) | |
| * | |
| * Please use the task when creating a new project, rather than copying an existing project and | |
| * modifying its settings. | |
| */ | |
| import androidx.build.PlatformIdentifier | |
| import androidx.build.SoftwareType | |
| plugins { | |
| id("AndroidXPlugin") | |
| id("AndroidXComposePlugin") | |
| alias(libs.plugins.kotlinSerialization) | |
| } | |
| androidXMultiplatform { | |
| androidLibrary { | |
| compileSdk { version = release(37) } | |
| namespace = "androidx.compose.runtime.saveable" | |
| androidResources.enable = true | |
| } | |
| desktop() | |
| mingwX64() | |
| linux() | |
| mac() | |
| ios() | |
| tvos() | |
| watchos() | |
| js() | |
| wasmJs() | |
| defaultPlatform(PlatformIdentifier.ANDROID) | |
| sourceSets { | |
| commonMain.dependencies { | |
| implementation("androidx.collection:collection:1.5.0") | |
| implementation("androidx.lifecycle:lifecycle-runtime-compose:2.9.4") | |
| api(project(":compose:runtime:runtime")) | |
| api("androidx.savedstate:savedstate-compose:1.3.2") | |
| } | |
| commonTest.dependencies { | |
| implementation(libs.kotlinTest) | |
| implementation(libs.kotlinCoroutinesTest) | |
| } | |
| androidMain.dependencies { | |
| api("androidx.annotation:annotation:1.8.1") | |
| } | |
| androidDeviceTest.dependencies { | |
| implementation(project(":compose:foundation:foundation")) | |
| implementation(project(":compose:ui:ui")) | |
| implementation(project(":compose:ui:ui-test-junit4")) | |
| implementation(project(":compose:test-utils")) | |
| implementation("androidx.fragment:fragment:1.3.0") | |
| implementation("androidx.activity:activity-compose:1.7.0") | |
| implementation(libs.testUiautomator) | |
| implementation(libs.testCore) | |
| implementation(libs.testRules) | |
| implementation(libs.testRunner) | |
| implementation(libs.espressoCore) | |
| implementation(libs.junit) | |
| implementation(libs.truth) | |
| implementation(libs.dexmakerMockito) | |
| implementation(libs.mockitoCore) | |
| } | |
| androidHostTest.dependencies { | |
| implementation(libs.testRules) | |
| implementation(libs.testRunner) | |
| implementation(libs.junit) | |
| implementation(libs.truth) | |
| } | |
| } | |
| } | |
| dependencies { | |
| lintPublish(project(":compose:runtime:runtime-saveable-lint")) | |
| constraints { | |
| // Prevents symbols duplication with old versions of JetBrains' fork. | |
| // Starting with version 1.9.2, this module is published as empty artifact with dependency | |
| // to this androidx module. | |
| commonMainImplementation("org.jetbrains.compose.runtime:runtime-saveable:1.9.2") { | |
| because "prevents symbols duplication" | |
| } | |
| } | |
| } | |
| androidx { | |
| name = "Compose Saveable" | |
| type = SoftwareType.PUBLISHED_LIBRARY_ONLY_USED_BY_KOTLIN_CONSUMERS | |
| inceptionYear = "2020" | |
| description = "Compose components that allow saving and restoring the local ui state" | |
| samples(project(":compose:runtime:runtime-saveable:runtime-saveable-samples")) | |
| } |