mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-26 22:51:03 +03:00
feat(form-decompile,form-compile): HorizontalIfPossible в ориентации страницы/группы
Страница (Page) и обычная группа (UsualGroup) теряли <Group>HorizontalIfPossible </Group> — orientation-карта содержала Horizontal/Vertical/AlwaysHorizontal/ AlwaysVertical, но не HorizontalIfPossible (ROOT Page>Group 359 на 189 формах). Доступные значения (по конфигуратору + корпусу): страница/обычная группа — Vertical/HorizontalIfPossible/AlwaysHorizontal (+ Horizontal реально встречается: 1288 форм на странице — XML-enum шире UI-дропдауна, оставлен forgiving); группа колонок таблицы — Vertical/Horizontal/InCell (уже обрабатывалось, не трогаем). InCell на странице/группе не добавляем — в корпусе не встречается. Коэрция не делается: фактическое значение сохраняется как есть (верность раундтрипа). Добавлен horizontalIfPossible в Emit-Page + Emit-Group switch (ps1+py) и в gmap декомпилятора (Page + UsualGroup). Таргет-верификация (выборка 50 из 189): 0 остатка, 29 стали match, 0 регрессов. Кейс pages пере-сертифицирован в 1С (HorizontalIfPossible грузится). Регресс 43/43. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
dd9af25e67
commit
a3395d4abe
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
# form-compile v1.110 — Compile 1C managed form from JSON or object metadata
|
||||
# form-compile v1.111 — Compile 1C managed form from JSON or object metadata
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
import argparse
|
||||
import copy
|
||||
@@ -3514,6 +3514,7 @@ def emit_group(lines, el, name, eid, indent):
|
||||
'vertical': 'Vertical',
|
||||
'alwayshorizontal': 'AlwaysHorizontal',
|
||||
'alwaysvertical': 'AlwaysVertical',
|
||||
'horizontalifpossible': 'HorizontalIfPossible',
|
||||
'collapsible': 'Vertical',
|
||||
}
|
||||
orientation = orientation_map.get(group_val)
|
||||
@@ -4048,6 +4049,7 @@ def emit_page(lines, el, name, eid, indent):
|
||||
'vertical': 'Vertical',
|
||||
'alwaysHorizontal': 'AlwaysHorizontal',
|
||||
'alwaysVertical': 'AlwaysVertical',
|
||||
'horizontalIfPossible': 'HorizontalIfPossible',
|
||||
}
|
||||
orientation = orientation_map.get(str(el['group']))
|
||||
if orientation:
|
||||
|
||||
Reference in New Issue
Block a user