diff --git a/libraries/tools/kotlin-gradle-plugin-api/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/HasKotlinDependencies.kt b/libraries/tools/kotlin-gradle-plugin-api/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/HasKotlinDependencies.kt index 039167ab556..d31f668f329 100644 --- a/libraries/tools/kotlin-gradle-plugin-api/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/HasKotlinDependencies.kt +++ b/libraries/tools/kotlin-gradle-plugin-api/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/HasKotlinDependencies.kt @@ -11,7 +11,7 @@ import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ProjectDependency import org.gradle.util.ConfigureUtil -interface KotlinDependencyHandler { +interface KotlinDependencyHandler : KotlinNpmDependencyHandler { fun api(dependencyNotation: Any): Dependency? fun api(dependencyNotation: String, configure: ExternalModuleDependency.() -> Unit): ExternalModuleDependency fun api(dependency: T, configure: T.() -> Unit): T 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 aee998c1b06..33d29a5163f 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,7 +11,6 @@ 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.KotlinNpmDependencyHandler 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 @@ -21,8 +20,7 @@ import java.io.File class DefaultKotlinDependencyHandler( val parent: HasKotlinDependencies, val project: Project -) : KotlinDependencyHandler, - KotlinNpmDependencyHandler { +) : KotlinDependencyHandler { override fun api(dependencyNotation: Any): Dependency? = addDependencyByAnyNotation(parent.apiConfigurationName, dependencyNotation) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt index 547c013d1bf..d6b0052499b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt @@ -22,6 +22,24 @@ interface NpmDependencyExtension { operator fun invoke(directory: File): NpmDependency } +internal fun Project.addNpmDependencyExtension() { + val extensions = (dependencies as ExtensionAware).extensions + + NpmDependency.Scope.values() + .forEach { scope -> + val extension = scope.name + .removePrefix(NpmDependency.Scope.NORMAL.name) + .toLowerCase() + + extensions + .add( + TypeOf.typeOf(NpmDependencyExtension::class.java), + lowerCamelCaseName(extension, "npm"), + DefaultNpmDependencyExtension(this, scope) + ) + } +} + private class DefaultNpmDependencyExtension( private val project: Project, private val scope: NpmDependency.Scope @@ -94,21 +112,3 @@ private class DefaultNpmDependencyExtension( ) } } - -internal fun Project.addNpmDependencyExtension() { - val extensions = (dependencies as ExtensionAware).extensions - - NpmDependency.Scope.values() - .forEach { scope -> - val extension = scope.name - .removePrefix(NpmDependency.Scope.NORMAL.name) - .toLowerCase() - - extensions - .add( - TypeOf.typeOf(NpmDependencyExtension::class.java), - lowerCamelCaseName(extension, "npm"), - DefaultNpmDependencyExtension(this, scope) - ) - } -}