From c9c20bb34c4dfb7da843f2578904df161152f0b3 Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Wed, 17 Jun 2020 19:50:34 +0300 Subject: [PATCH] Add enabling css into wizard #KT-39770 fixed --- .../GradleKotlinFrameworkSupportProvider.kt | 12 +++++++++++- .../GradleKotlinFrameworkSupportProviderUtils.kt | 16 ++++++++++++++++ ...linDslGradleKotlinFrameworkSupportProvider.kt | 12 +++++++++++- 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProvider.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProvider.kt index b03706cb33c..b0c9e82858b 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProvider.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProvider.kt @@ -208,7 +208,9 @@ abstract class GradleKotlinJSFrameworkSupportProvider( """ kotlin { js { - $jsSubTargetName { } + $jsSubTargetName { + ${additionalSubTargetSettings() ?: ""} + } binaries.executable() } } @@ -216,6 +218,8 @@ abstract class GradleKotlinJSFrameworkSupportProvider( ) } + abstract fun additionalSubTargetSettings(): String? + override fun getPluginId() = KotlinJsGradleModuleConfigurator.KOTLIN_JS override fun getPluginExpression() = "id 'org.jetbrains.kotlin.js'" override fun getDependencies(sdk: Sdk?) = listOf(MAVEN_JS_STDLIB_ID) @@ -244,6 +248,9 @@ open class GradleKotlinJSBrowserFrameworkSupportProvider( super.addSupport(buildScriptData, module, sdk, specifyPluginVersionIfNeeded, explicitPluginVersion) addBrowserSupport(module) } + + override fun additionalSubTargetSettings(): String? = + browserConfiguration() } open class GradleKotlinJSNodeFrameworkSupportProvider( @@ -253,6 +260,9 @@ open class GradleKotlinJSNodeFrameworkSupportProvider( override val jsSubTargetName: String get() = "nodejs" + override fun additionalSubTargetSettings(): String? = + null + override fun getDescription() = KotlinIdeaGradleBundle.message("description.text.a.single.platform.kotlin.library.or.application.targeting.js.for.node.js") } diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProviderUtils.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProviderUtils.kt index f6849802dc5..64975f224ee 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProviderUtils.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinFrameworkSupportProviderUtils.kt @@ -62,4 +62,20 @@ internal fun addBrowserSupport(module: Module) { """.trimIndent().trim() ) } +} + +internal fun browserConfiguration(): String { + return """ + |val cssSupport = { task: KotlinWebpack + | task.cssSupport.enabled = true + |} + | + |webpackTask { + | cssSupport(it) + |} + | + |runTask { + | cssSupport(it) + |} + """.trimMargin() } \ No newline at end of file diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt index b52f171a0fe..0a190ecf51d 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt @@ -183,7 +183,9 @@ abstract class AbstractKotlinDslGradleKotlinJSFrameworkSupportProvider( """ kotlin { js { - $jsSubTargetName { } + $jsSubTargetName { + ${additionalSubTargetSettings() ?: ""} + } binaries.executable() } } @@ -193,6 +195,8 @@ abstract class AbstractKotlinDslGradleKotlinJSFrameworkSupportProvider( buildScriptData.addDependencyNotation(composeDependency(buildScriptData, artifactId)) } + abstract fun additionalSubTargetSettings(): String? + override fun getOldSyntaxPluginDefinition(): String = "plugin(\"${KotlinJsGradleModuleConfigurator.KOTLIN_JS}\")" override fun getPluginDefinition(): String = "id(\"org.jetbrains.kotlin.js\")" @@ -216,6 +220,9 @@ class KotlinDslGradleKotlinJSBrowserFrameworkSupportProvider : super.addSupport(projectId, module, rootModel, modifiableModelsProvider, buildScriptData) addBrowserSupport(module) } + + override fun additionalSubTargetSettings(): String? = + browserConfiguration() } class KotlinDslGradleKotlinJSNodeFrameworkSupportProvider : @@ -225,6 +232,9 @@ class KotlinDslGradleKotlinJSNodeFrameworkSupportProvider : ) { override val jsSubTargetName: String get() = "nodejs" + + override fun additionalSubTargetSettings(): String? = + null } class KotlinDslGradleKotlinMPPFrameworkSupportProvider :