From f69329c62b993291a8d9fa30f2b955572559a210 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 14 Jul 2026 11:55:22 +0000 Subject: [PATCH 1/2] =?UTF-8?q?feat:=20=D0=B3=D0=B5=D0=BD=D0=B5=D1=80?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D1=8F=20=D1=81=D1=85=D0=B5=D0=BC=D1=8B=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82?= =?UTF-8?q?=D1=80=D0=BE=D0=B2-=D1=81=D0=BF=D0=B8=D1=81=D0=BA=D0=BE=D0=B2?= =?UTF-8?q?=20(Either)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Параметр диагностики с типом `Either` (Either> — список: строка через запятую либо массив строк) отражается в parameters-schema.json как `"type": ["string", "array"]` с `"items": {"type": "string"}`; значение по умолчанию — строка. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01W86iNs3Sj9wTS6NFFHvVbv --- .../_1c_syntax/bsllsdevtools/UpdateJsonSchemaTask.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) 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..74ed6e4 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") + // Either> — параметр-список: строка через запятую либо массив строк. + val isStringList = typeString == "either" 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 } From 9601ed08a02b625262d6bd6b98398d21e2e78c1c Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 14 Jul 2026 12:35:28 +0000 Subject: [PATCH 2/2] =?UTF-8?q?refactor:=20=D0=BC=D0=B0=D1=80=D0=BA=D0=B5?= =?UTF-8?q?=D1=80=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80=D0=B0?= =?UTF-8?q?-=D1=81=D0=BF=D0=B8=D1=81=D0=BA=D0=B0=20=E2=80=94=20=D1=82?= =?UTF-8?q?=D0=B8=D0=BF=20List=20=D0=B2=D0=BC=D0=B5=D1=81=D1=82=D0=BE=20Ei?= =?UTF-8?q?ther?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Параметр диагностики с типом `List` (список: строка через запятую либо массив строк) отражается в parameters-schema.json как `"type": ["string", "array"]` с `"items": {"type": "string"}`. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01W86iNs3Sj9wTS6NFFHvVbv --- .../github/_1c_syntax/bsllsdevtools/UpdateJsonSchemaTask.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 74ed6e4..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,8 +97,8 @@ open class UpdateJsonSchemaTask constructor() : DefaultTask() { val typeString = it.getOrDefault("type", "").toString().lowercase() .replace("pattern", "string") .replace("float", "number") - // Either> — параметр-список: строка через запятую либо массив строк. - val isStringList = typeString == "either" + // List — параметр-список: строка через запятую либо массив строк. + val isStringList = typeString == "list" val value = when (typeString) { "boolean" -> { it.getOrDefault("defaultValue", "false").toString().toBoolean()