[Gradle, JS] Module name for js
#KT-32017 fixed
This commit is contained in:
+2
@@ -42,6 +42,8 @@ constructor(
|
|||||||
override lateinit var testRuns: NamedDomainObjectContainer<KotlinJsReportAggregatingTestRun>
|
override lateinit var testRuns: NamedDomainObjectContainer<KotlinJsReportAggregatingTestRun>
|
||||||
internal set
|
internal set
|
||||||
|
|
||||||
|
override var moduleName: String? = null
|
||||||
|
|
||||||
val disambiguationClassifierInPlatform: String?
|
val disambiguationClassifierInPlatform: String?
|
||||||
get() = disambiguationClassifier?.removeJsCompilerSuffix(KotlinJsCompilerType.LEGACY)
|
get() = disambiguationClassifier?.removeJsCompilerSuffix(KotlinJsCompilerType.LEGACY)
|
||||||
|
|
||||||
|
|||||||
+2
@@ -33,6 +33,8 @@ interface KotlinJsSubTargetContainerDsl : KotlinTarget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
interface KotlinJsTargetDsl : KotlinTarget {
|
interface KotlinJsTargetDsl : KotlinTarget {
|
||||||
|
var moduleName: String?
|
||||||
|
|
||||||
fun browser() = browser { }
|
fun browser() = browser { }
|
||||||
fun browser(body: KotlinJsBrowserDsl.() -> Unit)
|
fun browser(body: KotlinJsBrowserDsl.() -> Unit)
|
||||||
fun browser(fn: Closure<*>) {
|
fun browser(fn: Closure<*>) {
|
||||||
|
|||||||
+2
@@ -39,6 +39,8 @@ constructor(
|
|||||||
override lateinit var testRuns: NamedDomainObjectContainer<KotlinJsReportAggregatingTestRun>
|
override lateinit var testRuns: NamedDomainObjectContainer<KotlinJsReportAggregatingTestRun>
|
||||||
internal set
|
internal set
|
||||||
|
|
||||||
|
override var moduleName: String? = null
|
||||||
|
|
||||||
val disambiguationClassifierInPlatform: String?
|
val disambiguationClassifierInPlatform: String?
|
||||||
get() = disambiguationClassifier?.removeJsCompilerSuffix(KotlinJsCompilerType.IR)
|
get() = disambiguationClassifier?.removeJsCompilerSuffix(KotlinJsCompilerType.IR)
|
||||||
|
|
||||||
|
|||||||
+26
-12
@@ -11,6 +11,7 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.disambiguateName
|
import org.jetbrains.kotlin.gradle.plugin.mpp.disambiguateName
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsTargetDsl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.KotlinPackageJsonTask
|
import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.KotlinPackageJsonTask
|
||||||
import java.io.File
|
import java.io.File
|
||||||
@@ -93,24 +94,37 @@ open class NpmProject(val compilation: KotlinJsCompilation) {
|
|||||||
|
|
||||||
private fun buildNpmProjectName(): String {
|
private fun buildNpmProjectName(): String {
|
||||||
val project = target.project
|
val project = target.project
|
||||||
val name = StringBuilder()
|
|
||||||
|
|
||||||
name.append(project.rootProject.name)
|
val moduleName = (target as KotlinJsTargetDsl).moduleName
|
||||||
|
|
||||||
if (project != project.rootProject) {
|
val compilationName = if (compilation.name != KotlinCompilation.MAIN_COMPILATION_NAME) {
|
||||||
name.append("-")
|
compilation.name
|
||||||
name.append(project.name)
|
} else null
|
||||||
|
|
||||||
|
if (moduleName != null) {
|
||||||
|
return sequenceOf(moduleName, compilationName)
|
||||||
|
.filterNotNull()
|
||||||
|
.joinToString("-")
|
||||||
}
|
}
|
||||||
|
|
||||||
if (target.name.isNotEmpty() && target.name.toLowerCase() != "js") {
|
val rootProjectName = project.rootProject.name
|
||||||
name.append("-").append(target.name)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (compilation.name != KotlinCompilation.MAIN_COMPILATION_NAME) {
|
val localName = if (project != project.rootProject) {
|
||||||
name.append("-").append(compilation.name)
|
project.name
|
||||||
}
|
} else null
|
||||||
|
|
||||||
return name.toString()
|
val targetName = if (target.name.isNotEmpty() && target.name.toLowerCase() != "js") {
|
||||||
|
target.name
|
||||||
|
} else null
|
||||||
|
|
||||||
|
return sequenceOf(
|
||||||
|
rootProjectName,
|
||||||
|
localName,
|
||||||
|
targetName,
|
||||||
|
compilationName
|
||||||
|
)
|
||||||
|
.filterNotNull()
|
||||||
|
.joinToString("-")
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun toString() = "NpmProject($name)"
|
override fun toString() = "NpmProject($name)"
|
||||||
|
|||||||
Reference in New Issue
Block a user