|
|
|
plugins {
|
|
|
|
kotlin("multiplatform")
|
|
|
|
kotlin("plugin.compose")
|
|
|
|
id("com.android.library")
|
|
|
|
id("org.jetbrains.compose")
|
|
|
|
kotlin("plugin.serialization")
|
|
|
|
id("kotlin-parcelize")
|
|
|
|
}
|
|
|
|
|
|
|
|
version = "1.0-SNAPSHOT"
|
|
|
|
|
|
|
|
kotlin {
|
|
|
|
androidTarget()
|
|
|
|
jvm("desktop")
|
|
|
|
js {
|
|
|
|
browser()
|
|
|
|
useEsModules()
|
|
|
|
}
|
|
|
|
wasmJs { browser() }
|
|
|
|
|
|
|
|
listOf(
|
|
|
|
iosX64(),
|
|
|
|
iosArm64(),
|
|
|
|
iosSimulatorArm64()
|
|
|
|
).forEach { iosTarget ->
|
|
|
|
iosTarget.binaries.framework {
|
|
|
|
baseName = "shared"
|
|
|
|
isStatic = true
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
applyDefaultHierarchyTemplate()
|
|
|
|
|
|
|
|
sourceSets {
|
|
|
|
all {
|
|
|
|
languageSettings {
|
|
|
|
optIn("org.jetbrains.compose.resources.ExperimentalResourceApi")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
commonMain.dependencies {
|
|
|
|
implementation(compose.runtime)
|
|
|
|
implementation(compose.foundation)
|
|
|
|
implementation(compose.material)
|
|
|
|
implementation(compose.components.resources)
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3")
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.5.0")
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.0")
|
|
|
|
}
|
|
|
|
|
|
|
|
androidMain.dependencies {
|
|
|
|
api("androidx.activity:activity-compose:1.8.2")
|
|
|
|
api("androidx.appcompat:appcompat:1.6.1")
|
|
|
|
api("androidx.core:core-ktx:1.12.0")
|
|
|
|
implementation("androidx.camera:camera-camera2:1.3.1")
|
|
|
|
implementation("androidx.camera:camera-lifecycle:1.3.1")
|
|
|
|
implementation("androidx.camera:camera-view:1.3.1")
|
|
|
|
implementation("com.google.accompanist:accompanist-permissions:0.29.2-rc")
|
|
|
|
implementation("com.google.android.gms:play-services-maps:18.2.0")
|
|
|
|
implementation("com.google.android.gms:play-services-location:21.1.0")
|
|
|
|
implementation("com.google.maps.android:maps-compose:2.11.2")
|
|
|
|
}
|
|
|
|
|
|
|
|
val jsWasmMain by creating {
|
|
|
|
dependsOn(commonMain.get())
|
|
|
|
dependencies {
|
|
|
|
implementation(npm("uuid", "^9.0.1"))
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
val jsMain by getting {
|
|
|
|
dependsOn(jsWasmMain)
|
|
|
|
}
|
|
|
|
|
|
|
|
val wasmJsMain by getting {
|
|
|
|
dependsOn(jsWasmMain)
|
|
|
|
}
|
|
|
|
|
|
|
|
val desktopMain by getting
|
|
|
|
desktopMain.dependencies {
|
|
|
|
implementation(compose.desktop.common)
|
|
|
|
implementation(project(":mapview-desktop"))
|
|
|
|
}
|
|
|
|
val desktopTest by getting
|
|
|
|
desktopTest.dependencies {
|
|
|
|
implementation(compose.desktop.currentOs)
|
|
|
|
implementation(compose.desktop.uiTestJUnit4)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
android {
|
|
|
|
compileSdk = 34
|
|
|
|
namespace = "example.imageviewer.shared"
|
|
|
|
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
|
|
|
|
sourceSets["main"].res.srcDirs("src/androidMain/res")
|
|
|
|
|
|
|
|
defaultConfig {
|
|
|
|
minSdk = 26
|
|
|
|
}
|
|
|
|
compileOptions {
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
|
|
}
|
|
|
|
kotlin {
|
|
|
|
jvmToolchain(17)
|
|
|
|
}
|
|
|
|
}
|