From d74c52f09aebf54209f766faa67d30f0400bab8e Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Thu, 2 Apr 2020 16:11:32 +0300 Subject: [PATCH] [Gradle, JS] Simplify css settings #KT-32721 fixed --- .../KotlinWebpackAssetExtractPolicy.kt | 12 -------- .../targets/js/webpack/KotlinWebpackConfig.kt | 30 ++++++------------- .../js/webpack/KotlinWebpackCssSettings.kt | 2 +- 3 files changed, 10 insertions(+), 34 deletions(-) delete mode 100644 libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackAssetExtractPolicy.kt diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackAssetExtractPolicy.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackAssetExtractPolicy.kt deleted file mode 100644 index 85cbc2314b3..00000000000 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackAssetExtractPolicy.kt +++ /dev/null @@ -1,12 +0,0 @@ -/* - * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. - * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. - */ - -package org.jetbrains.kotlin.gradle.targets.js.webpack - -enum class KotlinWebpackAssetExtractPolicy { - ALWAYS, - DEPENDS_ON_MODE, - NONE -} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackConfig.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackConfig.kt index 1fddf3f6f2a..b4e44922087 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackConfig.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackConfig.kt @@ -12,7 +12,6 @@ import org.jetbrains.kotlin.gradle.targets.js.NpmVersions import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency import org.jetbrains.kotlin.gradle.targets.js.appendConfigsFromDir import org.jetbrains.kotlin.gradle.targets.js.jsQuoted -import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpackAssetExtractPolicy.* import java.io.File import java.io.Serializable import java.io.StringWriter @@ -58,11 +57,9 @@ data class KotlinWebpackConfig( if (cssSettings == null || !cssSettings.enabled) return@also it.add(versions.cssLoader) - if (cssSettings.extractPolicy in listOf(NONE, DEPENDS_ON_MODE)) { + if (cssSettings.inline) { it.add(versions.styleLoader) - } - - if (cssSettings.extractPolicy in listOf(ALWAYS, DEPENDS_ON_MODE)) { + } else { it.add(versions.miniCssExtractPlugin) } } @@ -280,31 +277,22 @@ data class KotlinWebpackConfig( | options: {} | }) | config.plugins.push(new MiniCssExtractPlugin()) - """ + """.trimMargin() - val nonExtractedCss = + val inlinedCss = """ | use.unshift({ | loader: 'style-loader', | options: {} | }) | - """ - - val extractedSettings = when (cssSettings.extractPolicy) { - ALWAYS -> extractedCss - DEPENDS_ON_MODE -> - """ - | if (config.mode === 'production') { - | $extractedCss - | } else { - | $nonExtractedCss - | } """.trimMargin() - NONE -> nonExtractedCss - } - appendln(extractedSettings) + if (cssSettings.inline) { + appendln(inlinedCss) + } else { + appendln(extractedCss) + } appendln( """ diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackCssSettings.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackCssSettings.kt index 51ba0843321..83ae2ce52c5 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackCssSettings.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpackCssSettings.kt @@ -12,5 +12,5 @@ data class KotlinWebpackCssSettings( var enabled: Boolean = true, @Input - var extractPolicy: KotlinWebpackAssetExtractPolicy = KotlinWebpackAssetExtractPolicy.DEPENDS_ON_MODE + var inline: Boolean = false ) \ No newline at end of file