From f19032594cf9c3b9a067529a467942b8883d6e61 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Fri, 22 May 2026 20:22:22 +0300 Subject: [PATCH] =?UTF-8?q?feat(skd-compile):=20additionalProperties=20?= =?UTF-8?q?=D0=B2=20settings?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit — список Y. Используется платформой для служебных свойств варианта (ВариантНаименование, КлючВарианта, Адрес — URL tempstorage). DSL: settings.additionalProperties = { "имя": "значение", ... } Эмит — после itemsViewMode, перед закрытием settings. Co-Authored-By: Claude Opus 4.7 --- .claude/skills/skd-compile/scripts/skd-compile.ps1 | 13 ++++++++++++- .claude/skills/skd-compile/scripts/skd-compile.py | 11 ++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/.claude/skills/skd-compile/scripts/skd-compile.ps1 b/.claude/skills/skd-compile/scripts/skd-compile.ps1 index 6e6bd035..a6b2ed0c 100644 --- a/.claude/skills/skd-compile/scripts/skd-compile.ps1 +++ b/.claude/skills/skd-compile/scripts/skd-compile.ps1 @@ -1,4 +1,4 @@ -# skd-compile v1.53 — Compile 1C DCS from JSON +# skd-compile v1.54 — Compile 1C DCS from JSON # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [string]$DefinitionFile, @@ -2850,6 +2850,17 @@ function Emit-SettingsVariants { X "`t`t`t$(Esc-Xml "$($s.itemsViewMode)")" } + # — key/value свойства варианта + if ($s.additionalProperties) { + X "`t`t`t" + foreach ($prop in $s.additionalProperties.PSObject.Properties) { + X "`t`t`t`t" + X "`t`t`t`t`t$(Esc-Xml "$($prop.Value)")" + X "`t`t`t`t" + } + X "`t`t`t" + } + X "`t`t" X "`t" } diff --git a/.claude/skills/skd-compile/scripts/skd-compile.py b/.claude/skills/skd-compile/scripts/skd-compile.py index a1cd2df3..80b4e409 100644 --- a/.claude/skills/skd-compile/scripts/skd-compile.py +++ b/.claude/skills/skd-compile/scripts/skd-compile.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# skd-compile v1.53 — Compile 1C DCS from JSON +# skd-compile v1.54 — Compile 1C DCS from JSON # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills import argparse import json @@ -2353,6 +2353,15 @@ def emit_settings_variants(lines, defn): if s.get('itemsViewMode'): lines.append(f'\t\t\t{esc_xml(str(s["itemsViewMode"]))}') + # — key/value свойства варианта + if s.get('additionalProperties'): + lines.append('\t\t\t') + for k, v in s['additionalProperties'].items(): + lines.append(f'\t\t\t\t') + lines.append(f'\t\t\t\t\t{esc_xml(str(v))}') + lines.append('\t\t\t\t') + lines.append('\t\t\t') + lines.append('\t\t') lines.append('\t')