From 6a8efc95389bd15b1c5acddfe89c32b623925415 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Fri, 22 May 2026 22:07:51 +0300 Subject: [PATCH] =?UTF-8?q?feat(skd-compile):=20top-level=20selection/cond?= =?UTF-8?q?App/outputParameters=20=D0=BD=D0=B0=20StructureItemTable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit StructureItemTable может иметь свои selection / conditionalAppearance / outputParameters прямо на уровне таблицы (отдельно от row/column). Раньше Emit-StructureItem для table эмитил только columns и rows; теперь после rows эмитятся top-level блоки. Аналогично сделано для chart (там было раньше). Co-Authored-By: Claude Opus 4.7 --- .claude/skills/skd-compile/scripts/skd-compile.ps1 | 13 ++++++++++++- .claude/skills/skd-compile/scripts/skd-compile.py | 10 +++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/.claude/skills/skd-compile/scripts/skd-compile.ps1 b/.claude/skills/skd-compile/scripts/skd-compile.ps1 index 01c26f3d..3926cd4d 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.61 — Compile 1C DCS from JSON +# skd-compile v1.62 — Compile 1C DCS from JSON # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [string]$DefinitionFile, @@ -2705,6 +2705,17 @@ function Emit-StructureItem { } } + # Top-level: selection / conditionalAppearance / outputParameters на самой таблице + if ($item.selection) { + Emit-Selection -items $item.selection -indent "$indent`t" + } + if ($item.conditionalAppearance) { + Emit-ConditionalAppearance -items $item.conditionalAppearance -indent "$indent`t" + } + if ($item.outputParameters) { + Emit-OutputParameters -params $item.outputParameters -indent "$indent`t" + } + X "$indent" } elseif ($type -eq "chart") { diff --git a/.claude/skills/skd-compile/scripts/skd-compile.py b/.claude/skills/skd-compile/scripts/skd-compile.py index d752e2b0..aa70a341 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.61 — Compile 1C DCS from JSON +# skd-compile v1.62 — Compile 1C DCS from JSON # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills import argparse import json @@ -2234,6 +2234,14 @@ def emit_structure_item(lines, item, indent): emit_table_axis_block(lines, row, f'{indent}\t\t') lines.append(f'{indent}\t') + # Top-level: selection / conditionalAppearance / outputParameters на самой таблице + if item.get('selection'): + emit_selection(lines, item['selection'], f'{indent}\t') + if item.get('conditionalAppearance'): + emit_conditional_appearance(lines, item['conditionalAppearance'], f'{indent}\t') + if item.get('outputParameters'): + emit_output_parameters(lines, item['outputParameters'], f'{indent}\t') + lines.append(f'{indent}') elif item_type == 'chart':