diff --git a/CHANGELOG.md b/CHANGELOG.md index 09eb308..f5ebf11 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,6 @@ ### Added ### Changed -- Package changed to `space.kscience` ### Deprecated @@ -14,3 +13,14 @@ ### Fixed ### Security + +## 0.3.0 - 2024-06-04 + +### Changed + +- Package changed to `space.kscience` +- Kotlin 2.0 + +### Fixed + +- Use of generated resources for Wasm diff --git a/README.md b/README.md index 583d397..85eab2d 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,6 @@ This repository is a work-in-progress implementation of Map-with-markers compone ### [demo](demo) -> > > **Maturity**: EXPERIMENTAL @@ -33,17 +32,14 @@ This repository is a work-in-progress implementation of Map-with-markers compone ### [maps-kt-features](maps-kt-features) -> > > **Maturity**: EXPERIMENTAL ### [maps-kt-geojson](maps-kt-geojson) -> > > **Maturity**: EXPERIMENTAL ### [maps-kt-scheme](maps-kt-scheme) -> > > **Maturity**: EXPERIMENTAL @@ -53,21 +49,21 @@ This repository is a work-in-progress implementation of Map-with-markers compone > **Maturity**: EXPERIMENTAL ### [demo/maps](demo/maps) -> +> +> **Maturity**: EXPERIMENTAL + +### [demo/maps-wasm](demo/maps-wasm) > > **Maturity**: EXPERIMENTAL ### [demo/polygon-editor](demo/polygon-editor) -> > > **Maturity**: EXPERIMENTAL ### [demo/scheme](demo/scheme) -> > > **Maturity**: EXPERIMENTAL ### [demo/trajectory-playground](demo/trajectory-playground) -> > > **Maturity**: EXPERIMENTAL diff --git a/build.gradle.kts b/build.gradle.kts index 83c2a25..9707bcd 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ val kmathVersion: String by extra("0.4.0") allprojects { group = "space.kscience" - version = "0.3.0-dev-2" + version = "0.3.0" repositories { mavenLocal() diff --git a/demo/maps-wasm/build.gradle.kts b/demo/maps-wasm/build.gradle.kts index 58aa306..da1d0ed 100644 --- a/demo/maps-wasm/build.gradle.kts +++ b/demo/maps-wasm/build.gradle.kts @@ -2,7 +2,8 @@ import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalWasmDsl plugins { kotlin("multiplatform") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) } //val ktorVersion: String by rootProject.extra @@ -14,17 +15,23 @@ kotlin { binaries.executable() } sourceSets { - val wasmJsMain by getting { + commonMain { + dependencies { + @OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class) + api(compose.components.resources) + } + } + + wasmJsMain { dependencies { implementation(projects.mapsKtScheme) - @OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class) api(compose.components.resources) } } } } compose { - experimental.web{ - application{} + web { + } } \ No newline at end of file diff --git a/demo/maps-wasm/src/wasmJsMain/resources/middle-earth.jpg b/demo/maps-wasm/src/commonMain/composeResources/drawable/middle-earth.jpg similarity index 100% rename from demo/maps-wasm/src/wasmJsMain/resources/middle-earth.jpg rename to demo/maps-wasm/src/commonMain/composeResources/drawable/middle-earth.jpg diff --git a/demo/maps-wasm/src/wasmJsMain/kotlin/Main.kt b/demo/maps-wasm/src/wasmJsMain/kotlin/Main.kt index 8c655aa..c6aee72 100644 --- a/demo/maps-wasm/src/wasmJsMain/kotlin/Main.kt +++ b/demo/maps-wasm/src/wasmJsMain/kotlin/Main.kt @@ -4,18 +4,19 @@ import androidx.compose.runtime.* import androidx.compose.ui.ExperimentalComposeUiApi import androidx.compose.ui.graphics.Color import androidx.compose.ui.window.CanvasBasedWindow -import center.sciprog.maps.features.FeatureGroup -import center.sciprog.maps.features.ViewConfig -import center.sciprog.maps.features.ViewPoint -import center.sciprog.maps.features.color -import center.sciprog.maps.scheme.* import kotlinx.coroutines.delay import kotlinx.coroutines.isActive import kotlinx.coroutines.launch -import org.jetbrains.compose.resources.DrawableResource import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource import space.kscience.kmath.geometry.Angle +import space.kscience.maps.features.FeatureGroup +import space.kscience.maps.features.ViewConfig +import space.kscience.maps.features.ViewPoint +import space.kscience.maps.features.color +import space.kscience.maps.scheme.* +import space.kscience.maps_wasm.generated.resources.Res +import space.kscience.maps_wasm.generated.resources.middle_earth @Composable @@ -25,7 +26,9 @@ fun App() { val features: FeatureGroup = FeatureGroup.remember(XYCoordinateSpace) { - background(1600f, 1200f) { painterResource(DrawableResource("middle-earth.jpg")) } + background(1600f, 1200f) { + painterResource(Res.drawable.middle_earth) + } circle(410.52737 to 868.7676).color(Color.Blue) text(410.52737 to 868.7676, "Shire").color(Color.Blue) circle(1132.0881 to 394.99127).color(Color.Red) diff --git a/demo/maps/build.gradle.kts b/demo/maps/build.gradle.kts index 443f3f5..821c5ee 100644 --- a/demo/maps/build.gradle.kts +++ b/demo/maps/build.gradle.kts @@ -2,7 +2,8 @@ import org.jetbrains.compose.desktop.application.dsl.TargetFormat plugins { kotlin("multiplatform") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) } val ktorVersion: String by rootProject.extra diff --git a/demo/maps/src/jvmMain/kotlin/Main.kt b/demo/maps/src/jvmMain/kotlin/Main.kt index df114e7..a33267e 100644 --- a/demo/maps/src/jvmMain/kotlin/Main.kt +++ b/demo/maps/src/jvmMain/kotlin/Main.kt @@ -13,9 +13,6 @@ import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp import androidx.compose.ui.window.Window import androidx.compose.ui.window.application -import center.sciprog.maps.compose.* -import center.sciprog.maps.features.* -import center.sciprog.maps.geojson.geoJson import io.ktor.client.HttpClient import io.ktor.client.engine.cio.CIO import kotlinx.coroutines.delay @@ -29,9 +26,12 @@ import space.kscience.attributes.Attributes import space.kscience.kmath.geometry.Angle import space.kscience.kmath.geometry.degrees import space.kscience.kmath.geometry.radians +import space.kscience.maps.compose.* import space.kscience.maps.coordinates.GeodeticMapCoordinates import space.kscience.maps.coordinates.Gmc import space.kscience.maps.coordinates.kilometers +import space.kscience.maps.features.* +import space.kscience.maps.geojson.geoJson import java.nio.file.Path import kotlin.math.PI import kotlin.random.Random diff --git a/demo/polygon-editor/build.gradle.kts b/demo/polygon-editor/build.gradle.kts index b4bbb88..ec0333f 100644 --- a/demo/polygon-editor/build.gradle.kts +++ b/demo/polygon-editor/build.gradle.kts @@ -2,7 +2,8 @@ import org.jetbrains.compose.desktop.application.dsl.TargetFormat plugins { kotlin("multiplatform") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) } val ktorVersion: String by rootProject.extra diff --git a/demo/polygon-editor/src/jvmMain/kotlin/Main.kt b/demo/polygon-editor/src/jvmMain/kotlin/Main.kt index 2e0a346..907be39 100644 --- a/demo/polygon-editor/src/jvmMain/kotlin/Main.kt +++ b/demo/polygon-editor/src/jvmMain/kotlin/Main.kt @@ -9,11 +9,11 @@ import androidx.compose.runtime.snapshots.SnapshotStateList import androidx.compose.ui.input.pointer.isSecondaryPressed import androidx.compose.ui.window.Window import androidx.compose.ui.window.application -import center.sciprog.maps.features.* -import center.sciprog.maps.scheme.SchemeView -import center.sciprog.maps.scheme.XY -import center.sciprog.maps.scheme.XYCoordinateSpace -import center.sciprog.maps.scheme.XYCanvasState +import space.kscience.maps.features.* +import space.kscience.maps.scheme.SchemeView +import space.kscience.maps.scheme.XY +import space.kscience.maps.scheme.XYCanvasState +import space.kscience.maps.scheme.XYCoordinateSpace @Composable @Preview diff --git a/demo/scheme/build.gradle.kts b/demo/scheme/build.gradle.kts index e1f558d..56dfe85 100644 --- a/demo/scheme/build.gradle.kts +++ b/demo/scheme/build.gradle.kts @@ -2,7 +2,8 @@ import org.jetbrains.compose.desktop.application.dsl.TargetFormat plugins { kotlin("multiplatform") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) } val ktorVersion: String by rootProject.extra diff --git a/demo/scheme/src/jvmMain/kotlin/Main.kt b/demo/scheme/src/jvmMain/kotlin/Main.kt index a74f42d..32e1a18 100644 --- a/demo/scheme/src/jvmMain/kotlin/Main.kt +++ b/demo/scheme/src/jvmMain/kotlin/Main.kt @@ -8,18 +8,18 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.painterResource import androidx.compose.ui.window.Window import androidx.compose.ui.window.application -import center.sciprog.maps.features.FeatureGroup -import center.sciprog.maps.features.ViewConfig -import center.sciprog.maps.features.ViewPoint -import center.sciprog.maps.features.color -import center.sciprog.maps.scheme.* -import center.sciprog.maps.svg.FeatureStateSnapshot -import center.sciprog.maps.svg.exportToSvg -import center.sciprog.maps.svg.snapshot import kotlinx.coroutines.delay import kotlinx.coroutines.isActive import kotlinx.coroutines.launch import space.kscience.kmath.geometry.Angle +import space.kscience.maps.features.FeatureGroup +import space.kscience.maps.features.ViewConfig +import space.kscience.maps.features.ViewPoint +import space.kscience.maps.features.color +import space.kscience.maps.scheme.* +import space.kscience.maps.svg.FeatureStateSnapshot +import space.kscience.maps.svg.exportToSvg +import space.kscience.maps.svg.snapshot import java.awt.Desktop import java.nio.file.Files diff --git a/demo/scheme/src/jvmMain/kotlin/joker2023.kt b/demo/scheme/src/jvmMain/kotlin/joker2023.kt index 7e09487..9273e1a 100644 --- a/demo/scheme/src/jvmMain/kotlin/joker2023.kt +++ b/demo/scheme/src/jvmMain/kotlin/joker2023.kt @@ -5,9 +5,9 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.painterResource import androidx.compose.ui.window.Window import androidx.compose.ui.window.application -import center.sciprog.maps.features.* -import center.sciprog.maps.scheme.* -import center.sciprog.maps.scheme.XYCoordinateSpace.Rectangle +import space.kscience.maps.features.* +import space.kscience.maps.scheme.* +import space.kscience.maps.scheme.XYCoordinateSpace.Rectangle fun main() = application { diff --git a/demo/trajectory-playground/build.gradle.kts b/demo/trajectory-playground/build.gradle.kts index 6983ece..f849341 100644 --- a/demo/trajectory-playground/build.gradle.kts +++ b/demo/trajectory-playground/build.gradle.kts @@ -1,6 +1,7 @@ plugins { kotlin("multiplatform") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) } val ktorVersion: String by rootProject.extra diff --git a/demo/trajectory-playground/src/jvmMain/kotlin/Main.kt b/demo/trajectory-playground/src/jvmMain/kotlin/Main.kt index d6a5cb7..2c088ce 100644 --- a/demo/trajectory-playground/src/jvmMain/kotlin/Main.kt +++ b/demo/trajectory-playground/src/jvmMain/kotlin/Main.kt @@ -8,13 +8,13 @@ import androidx.compose.runtime.* import androidx.compose.ui.graphics.Color import androidx.compose.ui.window.Window import androidx.compose.ui.window.application -import center.sciprog.maps.features.* -import center.sciprog.maps.scheme.SchemeView -import center.sciprog.maps.scheme.XY import space.kscience.kmath.geometry.Angle import space.kscience.kmath.geometry.Vector2D import space.kscience.kmath.geometry.euclidean2d.Circle2D import space.kscience.kmath.geometry.euclidean2d.Float64Space2D +import space.kscience.maps.features.* +import space.kscience.maps.scheme.SchemeView +import space.kscience.maps.scheme.XY import space.kscience.trajectory.* import kotlin.random.Random diff --git a/gradle.properties b/gradle.properties index 2f435d5..b07eae5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,13 +1,5 @@ kotlin.code.style=official -compose.version=1.6.0-rc02 -org.jetbrains.compose.experimental.wasm.enabled=true -org.jetbrains.compose.experimental.jscanvas.enabled=true - -agp.version=8.1.0 -android.useAndroidX=true -android.enableJetifier=true - org.gradle.jvmargs=-Xmx4096m -toolsVersion=0.15.2-kotlin-1.9.22 \ No newline at end of file +toolsVersion=0.15.4-kotlin-2.0.0 \ No newline at end of file diff --git a/maps-kt-compose/README.md b/maps-kt-compose/README.md index f5ffb6c..1ca284b 100644 --- a/maps-kt-compose/README.md +++ b/maps-kt-compose/README.md @@ -7,19 +7,8 @@ The core interfaces of KMath. ## Artifact: -The Maven coordinates of this project are `center.sciprog:maps-kt-compose:0.2.2`. +The Maven coordinates of this project are `space.kscience:maps-kt-compose:0.3.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'center.sciprog:maps-kt-compose:0.2.2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { @@ -28,6 +17,6 @@ repositories { } dependencies { - implementation("center.sciprog:maps-kt-compose:0.2.2") + implementation("space.kscience:maps-kt-compose:0.3.0") } ``` diff --git a/maps-kt-compose/build.gradle.kts b/maps-kt-compose/build.gradle.kts index c27905f..e13e841 100644 --- a/maps-kt-compose/build.gradle.kts +++ b/maps-kt-compose/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id("space.kscience.gradle.mpp") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) // id("com.android.library") `maven-publish` } @@ -10,40 +11,22 @@ kscience { wasm() useCoroutines() -} -kotlin { - sourceSets { - commonMain { - dependencies { - api(projects.mapsKtCore) - api(projects.mapsKtFeatures) - api(compose.foundation) - api(project.dependencies.platform(spclibs.ktor.bom)) - } - } + commonMain{ + api(projects.mapsKtCore) + api(projects.mapsKtFeatures) + api(compose.foundation) + api(project.dependencies.platform(spclibs.ktor.bom)) + } + jvmMain{ + api("io.ktor:ktor-client-cio") + } + jvmTest{ + implementation("io.ktor:ktor-client-cio") + implementation(compose.desktop.currentOs) + implementation(spclibs.kotlinx.coroutines.test) - getByName("jvmMain"){ - dependencies { - api("io.ktor:ktor-client-cio") - } - } -// -// getByName("jsMain"){ -// dependencies { -// api("io.ktor:ktor-client-js") -// } -// } - - getByName("jvmTest") { - dependencies { - implementation("io.ktor:ktor-client-cio") - implementation(compose.desktop.currentOs) - implementation(spclibs.kotlinx.coroutines.test) - - implementation(spclibs.logback.classic) - } - } + implementation(spclibs.logback.classic) } } diff --git a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/GmcRectangle.kt b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/GmcRectangle.kt index 4204133..971a5ee 100644 --- a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/GmcRectangle.kt +++ b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/GmcRectangle.kt @@ -1,10 +1,10 @@ package space.kscience.maps.compose -import center.sciprog.maps.features.Rectangle import space.kscience.kmath.geometry.Angle import space.kscience.kmath.geometry.abs import space.kscience.maps.coordinates.GeodeticMapCoordinates import space.kscience.maps.coordinates.Gmc +import space.kscience.maps.features.Rectangle internal fun Angle.isBetween(a: Angle, b: Angle) = this in a..b || this in b..a diff --git a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapCanvasState.kt b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapCanvasState.kt index b1623b2..0a5cb20 100644 --- a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapCanvasState.kt +++ b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapCanvasState.kt @@ -6,12 +6,12 @@ import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.DpRect import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.* import space.kscience.kmath.geometry.radians import space.kscience.maps.coordinates.Gmc import space.kscience.maps.coordinates.MercatorProjection import space.kscience.maps.coordinates.WebMercatorCoordinates import space.kscience.maps.coordinates.WebMercatorProjection +import space.kscience.maps.features.* import kotlin.math.* diff --git a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapView.kt b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapView.kt index 37697ab..eaef886 100644 --- a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapView.kt +++ b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapView.kt @@ -11,13 +11,13 @@ import androidx.compose.ui.graphics.toComposeImageBitmap import androidx.compose.ui.unit.IntOffset import androidx.compose.ui.unit.IntSize import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.* import io.github.oshai.kotlinlogging.KotlinLogging import kotlinx.coroutines.CancellationException import kotlinx.coroutines.launch import kotlinx.coroutines.supervisorScope import org.jetbrains.skia.Image import space.kscience.maps.coordinates.Gmc +import space.kscience.maps.features.* import kotlin.math.ceil import kotlin.math.pow diff --git a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapViewPoint.kt b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapViewPoint.kt index cf250da..d91aa16 100644 --- a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapViewPoint.kt +++ b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/MapViewPoint.kt @@ -1,9 +1,9 @@ package space.kscience.maps.compose -import center.sciprog.maps.features.ViewPoint import space.kscience.maps.coordinates.GeodeticMapCoordinates import space.kscience.maps.coordinates.Gmc import space.kscience.maps.coordinates.WebMercatorProjection +import space.kscience.maps.features.ViewPoint /** * Observable position on the map. Includes observation coordinate and [zoom] factor diff --git a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/WebMercatorSpace.kt b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/WebMercatorSpace.kt index 5accacc..072fb88 100644 --- a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/WebMercatorSpace.kt +++ b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/WebMercatorSpace.kt @@ -3,13 +3,12 @@ package space.kscience.maps.compose import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp -import center.sciprog.maps.coordinates.* -import center.sciprog.maps.features.CoordinateSpace -import center.sciprog.maps.features.Rectangle -import center.sciprog.maps.features.ViewPoint import space.kscience.kmath.geometry.Angle import space.kscience.kmath.geometry.radians import space.kscience.maps.coordinates.* +import space.kscience.maps.features.CoordinateSpace +import space.kscience.maps.features.Rectangle +import space.kscience.maps.features.ViewPoint import kotlin.math.abs import kotlin.math.floor import kotlin.math.pow diff --git a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/mapFeatures.kt b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/mapFeatures.kt index 88d4d8b..da9cf36 100644 --- a/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/mapFeatures.kt +++ b/maps-kt-compose/src/commonMain/kotlin/space/kscience/maps/compose/mapFeatures.kt @@ -6,11 +6,10 @@ import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp -import center.sciprog.maps.coordinates.* -import center.sciprog.maps.features.* import org.jetbrains.skia.Font import space.kscience.kmath.geometry.Angle import space.kscience.maps.coordinates.* +import space.kscience.maps.features.* import kotlin.math.ceil diff --git a/maps-kt-core/README.md b/maps-kt-core/README.md index 09d5a0d..03aff2b 100644 --- a/maps-kt-core/README.md +++ b/maps-kt-core/README.md @@ -9,19 +9,8 @@ The core interfaces of KMath. ## Artifact: -The Maven coordinates of this project are `center.sciprog:maps-kt-core:0.2.2`. +The Maven coordinates of this project are `space.kscience:maps-kt-core:0.3.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'center.sciprog:maps-kt-core:0.2.2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { @@ -30,6 +19,6 @@ repositories { } dependencies { - implementation("center.sciprog:maps-kt-core:0.2.2") + implementation("space.kscience:maps-kt-core:0.3.0") } ``` diff --git a/maps-kt-features/README.md b/maps-kt-features/README.md index e72643f..1028f1d 100644 --- a/maps-kt-features/README.md +++ b/maps-kt-features/README.md @@ -6,19 +6,8 @@ ## Artifact: -The Maven coordinates of this project are `center.sciprog:maps-kt-features:0.2.2`. +The Maven coordinates of this project are `space.kscience:maps-kt-features:0.3.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'center.sciprog:maps-kt-features:0.2.2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { @@ -27,6 +16,6 @@ repositories { } dependencies { - implementation("center.sciprog:maps-kt-features:0.2.2") + implementation("space.kscience:maps-kt-features:0.3.0") } ``` diff --git a/maps-kt-features/build.gradle.kts b/maps-kt-features/build.gradle.kts index b1d7202..c1e4895 100644 --- a/maps-kt-features/build.gradle.kts +++ b/maps-kt-features/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id("space.kscience.gradle.mpp") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) `maven-publish` } @@ -26,19 +27,13 @@ kscience { useSerialization(sourceSet = space.kscience.gradle.DependencySourceSet.TEST) { protobuf() } -} -kotlin { - sourceSets { - commonMain { - dependencies { - api(projects.trajectoryKt) - api(compose.runtime) - api(compose.foundation) - api(compose.material) - api(compose.ui) - api("io.github.oshai:kotlin-logging:6.0.3") - } - } + commonMain{ + api(projects.trajectoryKt) + api(compose.runtime) + api(compose.foundation) + api(compose.material) + api(compose.ui) + api("io.github.oshai:kotlin-logging:6.0.3") } } \ No newline at end of file diff --git a/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/compose/canvasControls.kt b/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/compose/canvasControls.kt index 22884fb..cc650aa 100644 --- a/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/compose/canvasControls.kt +++ b/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/compose/canvasControls.kt @@ -7,7 +7,7 @@ import androidx.compose.ui.input.pointer.* import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.DpRect import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.* +import space.kscience.maps.features.* import kotlin.math.max import kotlin.math.min diff --git a/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/compositeFeatures.kt b/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/compositeFeatures.kt index 3ce6c06..de92173 100644 --- a/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/compositeFeatures.kt +++ b/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/compositeFeatures.kt @@ -20,7 +20,7 @@ public fun FeatureGroup.draggableLine( bId.resolve().center, Attributes> { ZAttribute(-10f) - lineId?.attributes?.let { from(it) } + lineId?.attributes?.let { putAll(it) } } ) ) @@ -53,7 +53,7 @@ public fun FeatureGroup.draggableMultiLine( points.map { it.resolve().center }, Attributes>{ ZAttribute(-10f) - polygonId?.attributes?.let { from(it) } + polygonId?.attributes?.let { putAll(it) } } ) ) diff --git a/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/mapFeatureAttributes.kt b/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/mapFeatureAttributes.kt index a69134d..053dbb9 100644 --- a/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/mapFeatureAttributes.kt +++ b/maps-kt-features/src/commonMain/kotlin/space/kscience/maps/features/mapFeatureAttributes.kt @@ -52,7 +52,7 @@ public fun > FeatureRef.modifyAttributes( @Suppress("UNCHECKED_CAST") parent.feature( id, - resolve().withAttributes { modify(modification) } as F + resolve().withAttributes { modified(modification) } as F ) return this } diff --git a/maps-kt-features/src/commonTest/kotlin/center/sciprog/attributes/AttributesSerializationTest.kt b/maps-kt-features/src/commonTest/kotlin/center/sciprog/attributes/AttributesSerializationTest.kt index 5cb8951..f00507d 100644 --- a/maps-kt-features/src/commonTest/kotlin/center/sciprog/attributes/AttributesSerializationTest.kt +++ b/maps-kt-features/src/commonTest/kotlin/center/sciprog/attributes/AttributesSerializationTest.kt @@ -12,7 +12,6 @@ import space.kscience.AttributesSerializer import space.kscience.NameAttribute import space.kscience.SerializableAttribute import space.kscience.attributes.Attributes -import space.kscience.equals import kotlin.test.Ignore import kotlin.test.Test import kotlin.test.assertEquals diff --git a/maps-kt-geojson/README.md b/maps-kt-geojson/README.md index 2e7e374..a998441 100644 --- a/maps-kt-geojson/README.md +++ b/maps-kt-geojson/README.md @@ -6,19 +6,8 @@ ## Artifact: -The Maven coordinates of this project are `center.sciprog:maps-kt-geojson:0.2.2`. +The Maven coordinates of this project are `space.kscience:maps-kt-geojson:0.3.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'center.sciprog:maps-kt-geojson:0.2.2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { @@ -27,6 +16,6 @@ repositories { } dependencies { - implementation("center.sciprog:maps-kt-geojson:0.2.2") + implementation("space.kscience:maps-kt-geojson:0.3.0") } ``` diff --git a/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJson.kt b/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJson.kt index ff84ed4..8951fce 100644 --- a/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJson.kt +++ b/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJson.kt @@ -1,10 +1,10 @@ package space.kscience.maps.geojson -import center.sciprog.maps.geojson.GeoJson.Companion.PROPERTIES_KEY -import center.sciprog.maps.geojson.GeoJson.Companion.TYPE_KEY -import center.sciprog.maps.geojson.GeoJsonFeatureCollection.Companion.FEATURES_KEY import kotlinx.serialization.Serializable import kotlinx.serialization.json.* +import space.kscience.maps.geojson.GeoJson.Companion.PROPERTIES_KEY +import space.kscience.maps.geojson.GeoJson.Companion.TYPE_KEY +import space.kscience.maps.geojson.GeoJsonFeatureCollection.Companion.FEATURES_KEY import kotlin.jvm.JvmInline /** diff --git a/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJsonGeometry.kt b/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJsonGeometry.kt index fb20a68..ceb79f3 100644 --- a/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJsonGeometry.kt +++ b/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/GeoJsonGeometry.kt @@ -1,9 +1,9 @@ package space.kscience.maps.geojson -import center.sciprog.maps.geojson.GeoJsonGeometry.Companion.COORDINATES_KEY import kotlinx.serialization.json.* import space.kscience.maps.coordinates.Gmc import space.kscience.maps.coordinates.meters +import space.kscience.maps.geojson.GeoJsonGeometry.Companion.COORDINATES_KEY import kotlin.jvm.JvmInline public sealed interface GeoJsonGeometry : GeoJson { diff --git a/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/geoJsonToMap.kt b/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/geoJsonToMap.kt index eaf4c07..352376b 100644 --- a/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/geoJsonToMap.kt +++ b/maps-kt-geojson/src/commonMain/kotlin/space/kscience/maps/geojson/geoJsonToMap.kt @@ -1,12 +1,12 @@ package space.kscience.maps.geojson import androidx.compose.ui.graphics.Color -import center.sciprog.maps.features.* import kotlinx.serialization.json.contentOrNull import kotlinx.serialization.json.intOrNull import kotlinx.serialization.json.jsonPrimitive import space.kscience.NameAttribute import space.kscience.maps.coordinates.Gmc +import space.kscience.maps.features.* /** diff --git a/maps-kt-geojson/src/jvmMain/kotlin/space/kscience/maps/geojson/geoJsonFeatureJvm.kt b/maps-kt-geojson/src/jvmMain/kotlin/space/kscience/maps/geojson/geoJsonFeatureJvm.kt index 9b47568..5a1fbe3 100644 --- a/maps-kt-geojson/src/jvmMain/kotlin/space/kscience/maps/geojson/geoJsonFeatureJvm.kt +++ b/maps-kt-geojson/src/jvmMain/kotlin/space/kscience/maps/geojson/geoJsonFeatureJvm.kt @@ -1,11 +1,11 @@ package space.kscience.maps.geojson -import center.sciprog.maps.features.Feature -import center.sciprog.maps.features.FeatureGroup -import center.sciprog.maps.features.FeatureRef import kotlinx.serialization.json.Json import kotlinx.serialization.json.jsonObject import space.kscience.maps.coordinates.Gmc +import space.kscience.maps.features.Feature +import space.kscience.maps.features.FeatureGroup +import space.kscience.maps.features.FeatureRef import java.net.URL /** diff --git a/maps-kt-geotiff/src/main/kotlin/center/sciprog/maps/geotiff/geotiff.kt b/maps-kt-geotiff/src/main/kotlin/center/sciprog/maps/geotiff/geotiff.kt index e77ba3f..a1e43ef 100644 --- a/maps-kt-geotiff/src/main/kotlin/center/sciprog/maps/geotiff/geotiff.kt +++ b/maps-kt-geotiff/src/main/kotlin/center/sciprog/maps/geotiff/geotiff.kt @@ -1,9 +1,9 @@ package center.sciprog.maps.geotiff -import center.sciprog.maps.coordinates.Gmc -import center.sciprog.maps.features.Feature -import center.sciprog.maps.features.FeatureGroup -import center.sciprog.maps.features.FeatureRef +import space.kscience.maps.coordinates.Gmc +import space.kscience.maps.features.Feature +import space.kscience.maps.features.FeatureGroup +import space.kscience.maps.features.FeatureRef import kotlinx.serialization.json.Json import kotlinx.serialization.json.jsonObject import org.geotools.gce.geotiff.GeoTiffReader diff --git a/maps-kt-scheme/README.md b/maps-kt-scheme/README.md index b95b404..038ddc1 100644 --- a/maps-kt-scheme/README.md +++ b/maps-kt-scheme/README.md @@ -6,19 +6,8 @@ ## Artifact: -The Maven coordinates of this project are `center.sciprog:maps-kt-scheme:0.2.2`. +The Maven coordinates of this project are `space.kscience:maps-kt-scheme:0.3.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'center.sciprog:maps-kt-scheme:0.2.2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { @@ -27,6 +16,6 @@ repositories { } dependencies { - implementation("center.sciprog:maps-kt-scheme:0.2.2") + implementation("space.kscience:maps-kt-scheme:0.3.0") } ``` diff --git a/maps-kt-scheme/build.gradle.kts b/maps-kt-scheme/build.gradle.kts index 0e27186..e9adb9d 100644 --- a/maps-kt-scheme/build.gradle.kts +++ b/maps-kt-scheme/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id("space.kscience.gradle.mpp") - id("org.jetbrains.compose") + alias(spclibs.plugins.compose.compiler) + alias(spclibs.plugins.compose.jb) `maven-publish` } @@ -8,24 +9,17 @@ kscience{ jvm() // js() wasm() -} -kotlin { - sourceSets { - commonMain { - dependencies { - api(projects.mapsKtFeatures) - } - } - getByName("jvmMain"){ - dependencies { - implementation("org.jfree:org.jfree.svg:5.0.4") - api(compose.desktop.currentOs) - } - } + commonMain{ + api(projects.mapsKtFeatures) + } + jvmMain{ + implementation("org.jfree:org.jfree.svg:5.0.4") + api(compose.desktop.currentOs) } } + //java { // targetCompatibility = JVM_TARGET //} \ No newline at end of file diff --git a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/SchemeView.kt b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/SchemeView.kt index de867c6..2caf3e5 100644 --- a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/SchemeView.kt +++ b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/SchemeView.kt @@ -4,9 +4,9 @@ import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.unit.DpSize -import center.sciprog.maps.compose.canvasControls -import center.sciprog.maps.features.* import io.github.oshai.kotlinlogging.KotlinLogging +import space.kscience.maps.compose.canvasControls +import space.kscience.maps.features.* import kotlin.math.min diff --git a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XY.kt b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XY.kt index cfe4be4..f54a736 100644 --- a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XY.kt +++ b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XY.kt @@ -2,10 +2,10 @@ package space.kscience.maps.scheme import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.CoordinateSpace -import center.sciprog.maps.features.Rectangle -import center.sciprog.maps.features.ViewPoint import space.kscience.kmath.geometry.Vector2D +import space.kscience.maps.features.CoordinateSpace +import space.kscience.maps.features.Rectangle +import space.kscience.maps.features.ViewPoint import kotlin.math.abs import kotlin.math.max import kotlin.math.min diff --git a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCanvasState.kt b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCanvasState.kt index 1b01ce3..efc7879 100644 --- a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCanvasState.kt +++ b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCanvasState.kt @@ -1,11 +1,12 @@ package space.kscience.maps.scheme import androidx.compose.runtime.Composable +import androidx.compose.runtime.remember import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.DpRect import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.* +import space.kscience.maps.features.* import kotlin.math.min public class XYCanvasState( diff --git a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCoordinateSpace.kt b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCoordinateSpace.kt index b90af99..af82b51 100644 --- a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCoordinateSpace.kt +++ b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/XYCoordinateSpace.kt @@ -3,9 +3,9 @@ package space.kscience.maps.scheme import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.CoordinateSpace -import center.sciprog.maps.features.Rectangle -import center.sciprog.maps.features.ViewPoint +import space.kscience.maps.features.CoordinateSpace +import space.kscience.maps.features.Rectangle +import space.kscience.maps.features.ViewPoint import kotlin.math.abs import kotlin.math.pow diff --git a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/schemeFeatures.kt b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/schemeFeatures.kt index ec42596..c795eeb 100644 --- a/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/schemeFeatures.kt +++ b/maps-kt-scheme/src/commonMain/kotlin/space/kscience/maps/scheme/schemeFeatures.kt @@ -8,9 +8,9 @@ import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.* import space.kscience.attributes.Attributes import space.kscience.kmath.geometry.Angle +import space.kscience.maps.features.* import kotlin.math.ceil internal fun Pair.toCoordinates(): XY = XY(first.toFloat(), second.toFloat()) diff --git a/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/SvgDrawScope.kt b/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/SvgDrawScope.kt index 4e37d47..ac67577 100644 --- a/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/SvgDrawScope.kt +++ b/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/SvgDrawScope.kt @@ -12,10 +12,10 @@ import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.unit.IntOffset import androidx.compose.ui.unit.IntSize import androidx.compose.ui.unit.LayoutDirection -import center.sciprog.maps.features.* -import center.sciprog.maps.scheme.XY import org.jfree.svg.SVGGraphics2D import space.kscience.attributes.Attributes +import space.kscience.maps.features.* +import space.kscience.maps.scheme.XY import java.awt.BasicStroke import java.awt.geom.* import java.awt.image.AffineTransformOp diff --git a/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/exportToSvg.kt b/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/exportToSvg.kt index 7eecde2..0fc4131 100644 --- a/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/exportToSvg.kt +++ b/maps-kt-scheme/src/jvmMain/kotlin/space/kscience/maps/svg/exportToSvg.kt @@ -4,11 +4,11 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp -import center.sciprog.maps.features.* -import center.sciprog.maps.scheme.XY -import center.sciprog.maps.scheme.XYCanvasState import org.jfree.svg.SVGGraphics2D import org.jfree.svg.SVGUtils +import space.kscience.maps.features.* +import space.kscience.maps.scheme.XY +import space.kscience.maps.scheme.XYCanvasState public class FeatureStateSnapshot( diff --git a/settings.gradle.kts b/settings.gradle.kts index cfda25e..fc64058 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -5,8 +5,6 @@ enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") pluginManagement { val toolsVersion: String by extra - val composeVersion = extra["compose.version"] as String - val agpVersion = extra["agp.version"] as String repositories { mavenLocal() @@ -20,13 +18,9 @@ pluginManagement { plugins { // id("com.android.application").version(extra["agp.version"] as String) // id("com.android.library").version(extra["agp.version"] as String) - id("org.jetbrains.compose") version composeVersion id("space.kscience.gradle.project") version toolsVersion id("space.kscience.gradle.mpp") version toolsVersion id("space.kscience.gradle.jvm") version toolsVersion - id("space.kscience.gradle.js") version toolsVersion - id("com.android.application") version agpVersion - id("com.android.library") version agpVersion } } diff --git a/trajectory-kt/README.md b/trajectory-kt/README.md index 0936738..3d9ecdb 100644 --- a/trajectory-kt/README.md +++ b/trajectory-kt/README.md @@ -5,19 +5,8 @@ ## Artifact: -The Maven coordinates of this project are `space.kscience:trajectory-kt:0.2.2`. +The Maven coordinates of this project are `space.kscience:trajectory-kt:0.3.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:trajectory-kt:0.2.2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { @@ -26,7 +15,7 @@ repositories { } dependencies { - implementation("space.kscience:trajectory-kt:0.2.2") + implementation("space.kscience:trajectory-kt:0.3.0") } ```