NavEasePlugin
Wires KSP and the NavEase artifacts into a Kotlin Multiplatform module.
plugins {
kotlin("multiplatform")
id("org.jetbrains.compose")
id("org.jetbrains.kotlin.plugin.compose")
id("io.github.alims-repo.navease") version "<version>"
}Content copied to clipboard
The plugin:
applies
com.google.devtools.kspandorg.jetbrains.kotlin.plugin.serialization, unless the build already declares them;adds
navease-ksptokspCommonMainMetadataandnavease-runtimetocommonMain;registers
build/generated/ksp/metadata/commonMain/kotlinas acommonMainsource directory;makes every compilation depend on
kspCommonMainKotlinMetadata;gives the module its own generated package, so several modules can use NavEase without generating colliding classes.
Configure it through NavEaseExtension.
Kotlin Gradle plugin types are reached only through KotlinMultiplatformWiring; see that class for why.