Unroll any constructor call if argument is JsArrayLiteral

^KT-40689 fixed
This commit is contained in:
Shagen Ogandzhanian
2021-01-08 03:12:06 +01:00
committed by TeamCityServer
parent 997d23eb43
commit c996161db0
@@ -223,12 +223,11 @@ fun argumentsWithVarargAsSingleArray(
concatElements.add(JsArrayLiteral(arraysForConcat))
arraysForConcat = mutableListOf()
val varargArgument = if (argument is JsArrayLiteral) {
argument
} else {
val arraySliceCall = JsNameRef("call", JsNameRef("slice", JsArrayLiteral()))
JsInvocation(arraySliceCall, argument)
}
val varargArgument = when (argument) {
is JsArrayLiteral -> argument
is JsNew -> argument.arguments.firstOrNull() as? JsArrayLiteral
else -> null
} ?: JsInvocation(JsNameRef("call", JsNameRef("slice", JsArrayLiteral())), argument)
concatElements.add(varargArgument)
}