From 0bd4de65e1326bb379966905ad08c80d3edd672b Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Thu, 24 Dec 2020 13:01:55 +0300 Subject: [PATCH] [Gradle, JS] Fix upper case names in js files, decamelize instead ^KT-43237 fixed --- .../jetbrains/kotlin/gradle/targets/js/npm/NpmProject.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmProject.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmProject.kt index 10739c00fca..fef595b5e93 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmProject.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmProject.kt @@ -127,6 +127,12 @@ open class NpmProject(@Transient val compilation: KotlinJsCompilation) { val targetName = if (target.name.isNotEmpty() && target.name.toLowerCase() != "js") { target.name + .replace(DECAMELIZE_REGEX) { + it.groupValues + .drop(1) + .joinToString(prefix = "-", separator = "-") + } + .toLowerCase() } else null return sequenceOf( @@ -146,5 +152,7 @@ open class NpmProject(@Transient val compilation: KotlinJsCompilation) { const val PRE_PACKAGE_JSON = "pre-package.json" const val NODE_MODULES = "node_modules" const val DIST_FOLDER = "kotlin" + + private val DECAMELIZE_REGEX = "([A-Z])".toRegex() } } \ No newline at end of file