From 881de0a538c902cf18abbe6c038097ba24b3b34f Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Wed, 19 Feb 2020 11:56:50 +0300 Subject: [PATCH] [Gradle, JS] Make default configuration of target --- .../gradle/dsl/KotlinProjectExtension.kt | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt index 415cb034353..7b58f140e30 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt @@ -95,7 +95,21 @@ open class KotlinJsProjectExtension : lateinit var legacyPreset: KotlinJsSingleTargetPreset - override lateinit var target: KotlinJsTargetDsl + // target is public property + // Users can write kotlin.target and it should work + // So call of target should init default canfiguration + private var _target: KotlinJsTargetDsl? = null + + override var target: KotlinJsTargetDsl + get() { + if (_target == null) { + js {} + } + return _target!! + } + set(value) { + _target = value + } override lateinit var defaultJsCompilerType: JsCompilerType @@ -123,7 +137,7 @@ open class KotlinJsProjectExtension : ) } - this.target = target + this._target = target target.project.components.addAll(target.components)