From 480d828c35e63ac8e8ff472000eb39687474e0b7 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Fri, 22 May 2026 21:37:27 +0300 Subject: [PATCH] =?UTF-8?q?feat(skd-decompile):=20use=3Dfalse=20=D0=BD?= =?UTF-8?q?=D0=B0=20outputParameters=20item?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Build-OutputParameters теперь читает false на item и сохраняет значение в форме {value, use: false}. Эффект на sample30: −198 строк diff. Co-Authored-By: Claude Opus 4.7 --- .../skills/skd-decompile/scripts/skd-decompile.ps1 | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/.claude/skills/skd-decompile/scripts/skd-decompile.ps1 b/.claude/skills/skd-decompile/scripts/skd-decompile.ps1 index 76d9904f..98aa9364 100644 --- a/.claude/skills/skd-decompile/scripts/skd-decompile.ps1 +++ b/.claude/skills/skd-decompile/scripts/skd-decompile.ps1 @@ -1,4 +1,4 @@ -# skd-decompile v0.44 — Decompile 1C DCS Template.xml to JSON DSL (draft) +# skd-decompile v0.45 — Decompile 1C DCS Template.xml to JSON DSL (draft) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [Parameter(Mandatory)] @@ -1640,8 +1640,15 @@ function Build-OutputParameters { $val = $it.SelectSingleNode("dcscor:value", $ns) if (-not $pName -or -not $val) { continue } $vType = Get-LocalXsiType $val - if ($vType -eq 'LocalStringType') { $d[$pName] = Get-MLText $val } - else { $d[$pName] = $val.InnerText } + if ($vType -eq 'LocalStringType') { $rawVal = Get-MLText $val } + else { $rawVal = $val.InnerText } + # false → wrapper {value, use: false} + $useV = Get-Text $it "dcscor:use" + if ($useV -eq 'false') { + $d[$pName] = [ordered]@{ value = $rawVal; use = $false } + } else { + $d[$pName] = $rawVal + } } return $d }