[K/JS] Introduce v2015 target

This commit is contained in:
Artem Kobzar
2024-03-06 12:21:38 +00:00
committed by Space Team
parent e989e6d397
commit 77f0cba23f
19 changed files with 115 additions and 84 deletions
@@ -35,6 +35,8 @@ open class DefaultValues(
object BooleanTrueDefault : DefaultBoolean(true)
object BooleanNullDefault : DefaultValues("null", typeOf<Boolean?>(), typeOf<Boolean?>())
object StringNullDefault : DefaultValues("null", typeOf<String?>(), typeOf<String?>())
object EmptyStringListDefault : DefaultValues("emptyList<String>()", typeOf<List<String>>(), typeOf<List<String>>())
@@ -91,22 +93,22 @@ open class DefaultValues(
)
object JsEcmaVersions : DefaultValues(
"\"v5\"",
"\"es5\"",
typeOf<String>(),
typeOf<String>(),
possibleValues = listOf("\"v5\"")
possibleValues = listOf("\"es5\"", "\"es2015\"")
)
object JsModuleKinds : DefaultValues(
"${typeOf<JsModuleKind>()}.${JsModuleKind.MODULE_PLAIN.name}",
typeOf<JsModuleKind>(),
typeOf<String>(),
"null",
typeOf<JsModuleKind?>(),
typeOf<String?>(),
possibleValues = listOf("\"plain\"", "\"amd\"", "\"commonjs\"", "\"umd\""),
fromKotlinOptionConverterProp = """
${typeOf<JsModuleKind>()}.fromKind(this)
this?.let { ${typeOf<JsModuleKind>()}.fromKind(it) }
""".trimIndent(),
toKotlinOptionConverterProp = """
this.kind
this?.kind
""".trimIndent()
)
@@ -952,6 +952,7 @@ private val KProperty1<*, *>.gradleValues: DefaultValues
when (this) {
DefaultValue.BOOLEAN_FALSE_DEFAULT -> DefaultValues.BooleanFalseDefault
DefaultValue.BOOLEAN_TRUE_DEFAULT -> DefaultValues.BooleanTrueDefault
DefaultValue.BOOLEAN_NULL_DEFAULT -> DefaultValues.BooleanNullDefault
DefaultValue.STRING_NULL_DEFAULT -> DefaultValues.StringNullDefault
DefaultValue.EMPTY_STRING_LIST_DEFAULT -> DefaultValues.EmptyStringListDefault
DefaultValue.EMPTY_STRING_ARRAY_DEFAULT -> DefaultValues.EmptyStringArrayDefault