fix(skd-compile): widths-unwrap и indent в template cell appearance

Две bug-фиксы для шаблонов:

1. PS-quirk: \$widths = if (\$t.widths) { @(\$t.widths) } else { @() }
   разворачивал одно-элементный массив в строку, после чего \$widths[0]
   возвращал первый Char (например '1' для "15.625"), а [double][Char]'1'=49.
   Заменил if-expression на обычный if-statement.

2. Indent в <dcsat:appearance>: компайлер ставил 4 таба вместо 5
   (и 5 вместо 6 у items внутри). Поправлено в обоих рантаймах.

sample30: −552 строки (2666 → 2114).
This commit is contained in:
Nick Shirokov
2026-05-23 17:18:50 +03:00
parent 5793f91ebb
commit 5ca8ce2b64
21 changed files with 2715 additions and 2738 deletions
@@ -38,6 +38,7 @@
</v8:StringQualifiers>
</valueType>
<value xsi:type="xs:string"/>
<useRestriction>false</useRestriction>
</parameter>
<parameter>
<name>ПарДата</name>
@@ -48,6 +49,7 @@
</v8:DateQualifiers>
</valueType>
<value xsi:type="xs:dateTime">0001-01-01T00:00:00</value>
<useRestriction>false</useRestriction>
</parameter>
<parameter>
<name>ПарЧисло</name>
@@ -60,6 +62,7 @@
</v8:NumberQualifiers>
</valueType>
<value xsi:type="xs:decimal">0</value>
<useRestriction>false</useRestriction>
</parameter>
<parameter>
<name>ПарСсылка</name>
@@ -67,6 +70,7 @@
<v8:Type xmlns:d5p1="http://v8.1c.ru/8.1/data/enterprise/current-config">d5p1:CatalogRef.Номенклатура</v8:Type>
</valueType>
<value xsi:nil="true"/>
<useRestriction>false</useRestriction>
</parameter>
<settingsVariant>
<dcsset:name>Основной</dcsset:name>