[Gradle, JS] Output file of public package json as var for changing it

This commit is contained in:
Ilya Goncharov
2020-06-26 16:05:44 +03:00
parent a4ad3d88c6
commit a2d5cda716
2 changed files with 9 additions and 9 deletions
@@ -64,12 +64,6 @@ open class NpmProject(val compilation: KotlinJsCompilation) {
val externalsDir: File val externalsDir: File
get() = externalsDirRoot.resolve("src") get() = externalsDirRoot.resolve("src")
val publicPackageJson: File
get() = project.buildDir
.resolve("tmp")
.resolve(publicPackageJsonTaskName)
.resolve(PACKAGE_JSON)
val publicPackageJsonTaskName: String val publicPackageJsonTaskName: String
get() = compilation.disambiguateName(PublicPackageJsonTask.NAME) get() = compilation.disambiguateName(PublicPackageJsonTask.NAME)
@@ -11,6 +11,8 @@ import org.gradle.api.tasks.Nested
import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.OutputFile
import org.gradle.api.tasks.TaskAction import org.gradle.api.tasks.TaskAction
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
import org.jetbrains.kotlin.gradle.targets.js.npm.NpmProject.Companion.PACKAGE_JSON
import org.jetbrains.kotlin.gradle.utils.property
import java.io.File import java.io.File
import javax.inject.Inject import javax.inject.Inject
@@ -42,8 +44,12 @@ constructor(
var skipOnEmptyNpmDependencies: Boolean = false var skipOnEmptyNpmDependencies: Boolean = false
@get:OutputFile @get:OutputFile
val packageJson: File var packageJson: File by property {
get() = npmProject.publicPackageJson project.buildDir
.resolve("tmp")
.resolve(npmProject.publicPackageJsonTaskName)
.resolve(PACKAGE_JSON)
}
@TaskAction @TaskAction
fun resolve() { fun resolve() {
@@ -62,7 +68,7 @@ constructor(
packageJson.devDependencies.clear() packageJson.devDependencies.clear()
packageJson.saveTo(npmProject.publicPackageJson) packageJson.saveTo(this@PublicPackageJsonTask.packageJson)
} }
} }