diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt index 41faa16f6ed..e81120bcd69 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt @@ -47,7 +47,6 @@ import org.jetbrains.kotlin.gradle.targets.js.KotlinJsPlugin import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetAttribute import org.jetbrains.kotlin.gradle.targets.js.nodejs.DefaultUnameExecutorVariantFactory import org.jetbrains.kotlin.gradle.targets.js.nodejs.UnameExecutor -import org.jetbrains.kotlin.gradle.targets.js.npm.addNpmDependencyExtension import org.jetbrains.kotlin.gradle.targets.metadata.isKotlinGranularMetadataEnabled import org.jetbrains.kotlin.gradle.targets.native.internal.CInteropKlibLibraryElements import org.jetbrains.kotlin.gradle.targets.native.internal.CInteropCommonizerArtifactTypeAttribute @@ -265,8 +264,6 @@ abstract class KotlinBasePluginWrapper : DefaultKotlinBasePlugin() { project.runKotlinProjectSetupActions() - project.addNpmDependencyExtension() - project.registerBuildKotlinToolingMetadataTask() project.setupDiagnosticsChecksAndReporting() diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt index 112613b0f1c..23c95f0d27c 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt @@ -26,13 +26,14 @@ import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.NoKotlinTargetsDe import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.PreHmppDependenciesUsageChecker import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.UnusedSourceSetsChecker import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.WasmSourceSetsNotFoundChecker +import org.jetbrains.kotlin.gradle.targets.js.npm.AddNpmDependencyExtensionProjectSetupAction /** * Active Extensions (using the [KotlinGradlePluginExtensionPoint] infrastructure) will be registered here by the Kotlin Gradle Plugin. */ internal fun Project.registerKotlinPluginExtensions() { - KotlinProjectSetupAction.extensionPoint.apply { + register(project, AddNpmDependencyExtensionProjectSetupAction) } KotlinGradleProjectChecker.extensionPoint.apply { diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt index 69941dbf714..47a018c0ad0 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/NpmDependencyExtension.kt @@ -10,6 +10,7 @@ import groovy.lang.GString import org.gradle.api.Project import org.gradle.api.plugins.ExtensionAware import org.gradle.api.reflect.TypeOf +import org.jetbrains.kotlin.gradle.plugin.KotlinProjectSetupAction import org.jetbrains.kotlin.gradle.plugin.warnNpmGenerateExternals import org.jetbrains.kotlin.gradle.targets.js.npm.NpmDependency.Scope.* import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName @@ -63,9 +64,8 @@ interface DevNpmDependencyExtension : interface PeerNpmDependencyExtension : BaseNpmDependencyExtension -internal fun Project.addNpmDependencyExtension() { +internal val AddNpmDependencyExtensionProjectSetupAction = KotlinProjectSetupAction { val extensions = (dependencies as ExtensionAware).extensions - values() .forEach { scope -> val type = when (scope) {