From 7d98d33e3de42e54616f564da59e78ebde91c49b Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Wed, 11 Dec 2019 19:36:12 +0300 Subject: [PATCH] [Gradle, JS] Hack for GSON to get non-null values --- .../kotlin/gradle/targets/js/npm/PackageJson.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PackageJson.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PackageJson.kt index b1a43f83903..b72620f8aa9 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PackageJson.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PackageJson.kt @@ -29,11 +29,26 @@ class PackageJson( var workspaces: Collection? = null + // Gson set nulls reflective no matter on default values and non-null types + @Suppress("USELESS_ELVIS") val devDependencies = mutableMapOf() + get() = field ?: mutableMapOf() + + @Suppress("USELESS_ELVIS") val dependencies = mutableMapOf() + get() = field ?: mutableMapOf() + + @Suppress("USELESS_ELVIS") val peerDependencies = mutableMapOf() + get() = field ?: mutableMapOf() + + @Suppress("USELESS_ELVIS") val optionalDependencies = mutableMapOf() + get() = field ?: mutableMapOf() + + @Suppress("USELESS_ELVIS") val bundledDependencies = mutableListOf() + get() = field ?: mutableListOf() companion object { fun scopedName(name: String): ScopedName = if (name.contains("/")) ScopedName(