diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/DefaultKotlinDependencyHandler.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/DefaultKotlinDependencyHandler.kt index 6dc36b2a80c..efc9957b160 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/DefaultKotlinDependencyHandler.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/DefaultKotlinDependencyHandler.kt @@ -11,6 +11,7 @@ import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ProjectDependency import org.jetbrains.kotlin.gradle.plugin.HasKotlinDependencies import org.jetbrains.kotlin.gradle.plugin.KotlinDependencyHandler +import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider import org.jetbrains.kotlin.gradle.targets.js.npm.NpmDependency import org.jetbrains.kotlin.gradle.targets.js.npm.directoryNpmDependency import org.jetbrains.kotlin.gradle.targets.js.npm.moduleName @@ -103,6 +104,16 @@ class DefaultKotlinDependencyHandler( generateExternals = generateExternals ) + override fun npm( + name: String, + version: String + ): NpmDependency = + npm( + name = name, + version = version, + generateExternals = defaultGenerateExternals() + ) + override fun npm( name: String, directory: File, @@ -115,6 +126,16 @@ class DefaultKotlinDependencyHandler( generateExternals = generateExternals ) + override fun npm( + name: String, + directory: File + ): NpmDependency = + npm( + name = name, + directory = directory, + generateExternals = defaultGenerateExternals() + ) + override fun npm( directory: File, generateExternals: Boolean @@ -125,6 +146,12 @@ class DefaultKotlinDependencyHandler( generateExternals = generateExternals ) + override fun npm(directory: File): NpmDependency = + npm( + directory = directory, + generateExternals = defaultGenerateExternals() + ) + override fun devNpm( name: String, version: String @@ -136,7 +163,10 @@ class DefaultKotlinDependencyHandler( scope = NpmDependency.Scope.DEV ) - override fun devNpm(name: String, directory: File): NpmDependency = + override fun devNpm( + name: String, + directory: File + ): NpmDependency = directoryNpmDependency( name = name, directory = directory, @@ -163,18 +193,35 @@ class DefaultKotlinDependencyHandler( generateExternals = generateExternals ) + override fun optionalNpm( + name: String, + version: String + ): NpmDependency = + optionalNpm( + name, + version, + defaultGenerateExternals() + ) + override fun optionalNpm( name: String, directory: File, generateExternals: Boolean ): NpmDependency = directoryNpmDependency( - name, - directory, - NpmDependency.Scope.OPTIONAL, + name = name, + directory = directory, + scope = NpmDependency.Scope.OPTIONAL, generateExternals = generateExternals ) + override fun optionalNpm(name: String, directory: File): NpmDependency = + optionalNpm( + name = name, + directory = directory, + generateExternals = defaultGenerateExternals() + ) + override fun optionalNpm( directory: File, generateExternals: Boolean @@ -185,6 +232,12 @@ class DefaultKotlinDependencyHandler( generateExternals = generateExternals ) + override fun optionalNpm(directory: File): NpmDependency = + optionalNpm( + directory = directory, + generateExternals = defaultGenerateExternals() + ) + override fun peerNpm( name: String, version: String @@ -196,6 +249,9 @@ class DefaultKotlinDependencyHandler( scope = NpmDependency.Scope.PEER ) + private fun defaultGenerateExternals() = + PropertiesProvider(project).jsGenerateExternals + private fun directoryNpmDependency( name: String, directory: File,