diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt index 2c2361de6cf..b32e03fde30 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt @@ -9,8 +9,10 @@ package org.jetbrains.kotlin.gradle.plugin.mpp import org.jetbrains.kotlin.gradle.dsl.KotlinJsOptions +import org.jetbrains.kotlin.gradle.plugin.JsCompilerType import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationWithResources import org.jetbrains.kotlin.gradle.plugin.KotlinTarget +import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget import org.jetbrains.kotlin.gradle.targets.js.npm.PackageJson import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName @@ -34,7 +36,9 @@ open class KotlinJsCompilation( override val defaultSourceSetName: String get() = lowerCamelCaseName( - target.disambiguationClassifier?.removePrefix(LEGACY_DISAMBIGUATION_CLASSIFIER), + (target as KotlinJsTarget).irTarget?.let { + target.disambiguationClassifier?.removeSuffix(JsCompilerType.legacy.name.capitalize()) + } ?: target.disambiguationClassifier, compilationName ) } \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt index 50743840687..278ae6094c4 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt @@ -10,10 +10,12 @@ import org.gradle.api.Project import org.gradle.api.plugins.JavaBasePlugin import org.jetbrains.kotlin.gradle.dsl.KotlinJsProjectExtension import org.jetbrains.kotlin.gradle.dsl.kotlinExtension +import org.jetbrains.kotlin.gradle.plugin.JsCompilerType import org.jetbrains.kotlin.gradle.plugin.configureDefaultVersionsResolutionStrategy import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsSingleTargetPreset import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrSingleTargetPreset import org.jetbrains.kotlin.gradle.utils.checkGradleCompatibility +import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName open class KotlinJsPlugin( private val kotlinPluginVersion: String, @@ -35,7 +37,13 @@ open class KotlinJsPlugin( KotlinJsIrSingleTargetPreset(project, kotlinPluginVersion, mixedMode) else null - val target = KotlinJsSingleTargetPreset(project, kotlinPluginVersion, irPreset).createTarget("Js") + val target = KotlinJsSingleTargetPreset(project, kotlinPluginVersion, irPreset) + .createTarget( + lowerCamelCaseName( + "js", + irPreset?.let { JsCompilerType.legacy.name } + ) + ) kotlinExtension.target = target diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt index 8e6e8ed6f42..02eba248b7d 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt @@ -13,7 +13,6 @@ import org.jetbrains.kotlin.gradle.plugin.JsCompilerType import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTargetConfigurator -import org.jetbrains.kotlin.gradle.targets.js.ir.IR_TARGET_SUFFIX import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrSingleTargetPreset import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTargetPreset import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName @@ -35,18 +34,12 @@ open class KotlinJsTargetPreset( project, platformType ).apply { - this.irTarget = irPreset?.createTarget("$name$IR_TARGET_SUFFIX") + this.irTarget = irPreset?.createTarget( + lowerCamelCaseName(name.removeSuffix(JsCompilerType.legacy.name.capitalize()), JsCompilerType.ir.name) + ) } } - override fun provideTargetDisambiguationClassifier(target: KotlinOnlyTarget): String? = - if (irPreset == null) { - super.provideTargetDisambiguationClassifier(target) - } else { - LEGACY_DISAMBIGUATION_CLASSIFIER + - super.provideTargetDisambiguationClassifier(target) - } - override fun createKotlinTargetConfigurator() = KotlinJsTargetConfigurator( kotlinPluginVersion ) @@ -79,11 +72,9 @@ class KotlinJsSingleTargetPreset( // In a Kotlin/JS single-platform project, we don't need any disambiguation suffixes or prefixes in the names: override fun provideTargetDisambiguationClassifier(target: KotlinOnlyTarget): String? = - irPreset?.let { LEGACY_DISAMBIGUATION_CLASSIFIER } + null override fun createKotlinTargetConfigurator() = KotlinJsTargetConfigurator( kotlinPluginVersion ) -} - -const val LEGACY_DISAMBIGUATION_CLASSIFIER = "legacy" \ No newline at end of file +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrCompilation.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrCompilation.kt index 8a02ee0949e..07318ed272b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrCompilation.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrCompilation.kt @@ -5,9 +5,9 @@ package org.jetbrains.kotlin.gradle.targets.js.ir -import org.gradle.api.Task import org.gradle.api.file.SourceDirectorySet import org.gradle.api.tasks.TaskProvider +import org.jetbrains.kotlin.gradle.plugin.JsCompilerType import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet import org.jetbrains.kotlin.gradle.plugin.KotlinTarget @@ -51,7 +51,7 @@ class KotlinJsIrCompilation( return lowerCamelCaseName( if ((target as KotlinJsIrTarget).mixedMode) target.disambiguationClassifier - ?.removeSuffix(IR_TARGET_SUFFIX) + ?.removeSuffix(JsCompilerType.ir.name.capitalize()) else target.disambiguationClassifier, compilationName diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt index fa1d6d241bf..805b4e79834 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt @@ -60,6 +60,4 @@ class KotlinJsIrSingleTargetPreset( override fun createKotlinTargetConfigurator(): KotlinOnlyTargetConfigurator = KotlinJsIrTargetConfigurator(kotlinPluginVersion) -} - -const val IR_TARGET_SUFFIX = "Ir" \ No newline at end of file +} \ No newline at end of file