diff --git a/src/main/kotlin/com/github/_1c_syntax/bsllsdevtools/UpdateJsonSchemaTask.kt b/src/main/kotlin/com/github/_1c_syntax/bsllsdevtools/UpdateJsonSchemaTask.kt index 4d864da..61c16cc 100644 --- a/src/main/kotlin/com/github/_1c_syntax/bsllsdevtools/UpdateJsonSchemaTask.kt +++ b/src/main/kotlin/com/github/_1c_syntax/bsllsdevtools/UpdateJsonSchemaTask.kt @@ -97,6 +97,8 @@ open class UpdateJsonSchemaTask constructor() : DefaultTask() { val typeString = it.getOrDefault("type", "").toString().lowercase() .replace("pattern", "string") .replace("float", "number") + // List — параметр-список: строка через запятую либо массив строк. + val isStringList = typeString == "list" val value = when (typeString) { "boolean" -> { it.getOrDefault("defaultValue", "false").toString().toBoolean() @@ -114,12 +116,15 @@ open class UpdateJsonSchemaTask constructor() : DefaultTask() { "${it.getOrDefault("defaultValue", "")}" } } - val oneParam = hashMapOf( - "type" to typeString, + val oneParam = hashMapOf( + "type" to if (isStringList) arrayListOf("string", "array") else typeString, "title" to it.getOrDefault("description_en", "").toString(), "description" to it.getOrDefault("description_en", "").toString(), "default" to value ) + if (isStringList) { + oneParam["items"] = hashMapOf("type" to "string") + } params[it.getOrDefault("name", "").toString()] = oneParam }