@@ -18,13 +18,12 @@ abstract class NpmExecRunner {
1818 @get:Inject
1919 abstract val providers: ProviderFactory
2020
21- private val variantComputer = VariantComputer ()
22-
23- fun executeNpmCommand (project : ProjectApiHelper , extension : NodeExtension , nodeExecConfiguration : NodeExecConfiguration ) {
21+ fun executeNpmCommand (project : ProjectApiHelper , extension : NodeExtension , nodeExecConfiguration : NodeExecConfiguration , variants : VariantComputer ) {
2422 val npmExecConfiguration = NpmExecConfiguration (" npm"
2523 ) { variantComputer, nodeExtension, npmBinDir -> variantComputer.computeNpmExec(nodeExtension, npmBinDir) }
2624 executeCommand(project, extension, addProxyEnvironmentVariables(extension, nodeExecConfiguration),
27- npmExecConfiguration)
25+ npmExecConfiguration,
26+ variants)
2827 }
2928
3029 private fun addProxyEnvironmentVariables (nodeExtension : NodeExtension ,
@@ -40,25 +39,27 @@ abstract class NpmExecRunner {
4039 return nodeExecConfiguration
4140 }
4241
43- fun executeNpxCommand (project : ProjectApiHelper , extension : NodeExtension , nodeExecConfiguration : NodeExecConfiguration ) {
42+ fun executeNpxCommand (project : ProjectApiHelper , extension : NodeExtension , nodeExecConfiguration : NodeExecConfiguration , variants : VariantComputer ) {
4443 val npxExecConfiguration = NpmExecConfiguration (" npx" ) { variantComputer, nodeExtension, npmBinDir ->
4544 variantComputer.computeNpxExec(nodeExtension, npmBinDir)
4645 }
47- executeCommand(project, extension, nodeExecConfiguration, npxExecConfiguration)
46+ executeCommand(project, extension, nodeExecConfiguration, npxExecConfiguration, variants )
4847 }
4948
5049 private fun executeCommand (project : ProjectApiHelper , extension : NodeExtension , nodeExecConfiguration : NodeExecConfiguration ,
51- npmExecConfiguration : NpmExecConfiguration ) {
50+ npmExecConfiguration : NpmExecConfiguration ,
51+ variantComputer : VariantComputer ) {
5252 val execConfiguration =
53- computeExecConfiguration(extension, npmExecConfiguration, nodeExecConfiguration).get()
53+ computeExecConfiguration(extension, npmExecConfiguration, nodeExecConfiguration, variantComputer ).get()
5454 val execRunner = ExecRunner ()
5555 execRunner.execute(project, extension, execConfiguration)
5656 }
5757
58- private fun computeExecConfiguration (extension : NodeExtension , npmExecConfiguration : NpmExecConfiguration ,
59- nodeExecConfiguration : NodeExecConfiguration ): Provider <ExecConfiguration > {
60- val additionalBinPathProvider = computeAdditionalBinPath(extension)
61- val executableAndScriptProvider = computeExecutable(extension, npmExecConfiguration)
58+ private fun computeExecConfiguration (extension : NodeExtension , npmExecConfiguration : NpmExecConfiguration ,
59+ nodeExecConfiguration : NodeExecConfiguration ,
60+ variantComputer : VariantComputer ): Provider <ExecConfiguration > {
61+ val additionalBinPathProvider = computeAdditionalBinPath(extension, variantComputer)
62+ val executableAndScriptProvider = computeExecutable(extension, npmExecConfiguration, variantComputer)
6263 return zip(additionalBinPathProvider, executableAndScriptProvider)
6364 .map { (additionalBinPath, executableAndScript) ->
6465 val argsPrefix =
@@ -70,7 +71,7 @@ abstract class NpmExecRunner {
7071 }
7172 }
7273
73- private fun computeExecutable (nodeExtension : NodeExtension , npmExecConfiguration : NpmExecConfiguration ):
74+ private fun computeExecutable (nodeExtension : NodeExtension , npmExecConfiguration : NpmExecConfiguration , variantComputer : VariantComputer ):
7475 Provider <ExecutableAndScript > {
7576 val nodeDirProvider = variantComputer.computeNodeDir(nodeExtension)
7677 val npmDirProvider = variantComputer.computeNpmDir(nodeExtension, nodeDirProvider)
@@ -103,7 +104,7 @@ abstract class NpmExecRunner {
103104 val script : String? = null
104105 )
105106
106- private fun computeAdditionalBinPath (nodeExtension : NodeExtension ): Provider <List <String >> {
107+ private fun computeAdditionalBinPath (nodeExtension : NodeExtension , variantComputer : VariantComputer ): Provider <List <String >> {
107108 return nodeExtension.download.flatMap { download ->
108109 if (! download) {
109110 providers.provider { listOf<String >() }
0 commit comments