mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-06-15 10:24:57 +03:00
c383cc4ffe
Раундтрип терял несколько pass-through скаляров: - форм-уровень <ChildItemsWidth> (36 форм), <VerticalAlign> (26), <HorizontalSpacing> (25) — обрабатывались только как элементные генерики, не на форм-уровне; - <EqualItemsWidth> (check/radio, 28: false 23/true 5) и <ItemTitleHeight> (radio) — чистый двусторонний пробел (не ловились вовсе). decompile: форм-уровневые → KNOWN_FORM_PROPS; элементные → GENERIC_SCALARS (зеркало компилятора). compile (ps1+py): форм-уровневые через generic Emit-Properties (авто-PascalCase); элементные — в genericScalars (Emit-Layout→Emit-GenericScalars, покрывает check/radio). Верификация: таргет-раундтрип 129 форм с этими тегами → 5 категорий закрыты (0 LOST; остаток — др. категории Button>Parameter/valueType/content). Регресс form-compile 43/43 (ps1+py); 1С-cert groups (форм-уровень) + radio-auto-enum (element). spec. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
49 lines
2.0 KiB
JSON
49 lines
2.0 KiB
JSON
{
|
|
"name": "RadioButtonField Auto + ссылки на перечисление с мультиязычной презентацией",
|
|
"preRun": [
|
|
{
|
|
"script": "meta-compile/scripts/meta-compile",
|
|
"input": { "type": "Enum", "name": "СпособыКурса", "values": [
|
|
{ "name": "Авто" }, { "name": "Ручной" }
|
|
]},
|
|
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
|
},
|
|
{
|
|
"script": "meta-compile/scripts/meta-compile",
|
|
"input": { "type": "DataProcessor", "name": "ТестРадио", "attributes": [
|
|
{ "name": "СпособКурса", "type": "EnumRef.СпособыКурса" }
|
|
]},
|
|
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
|
},
|
|
{
|
|
"script": "form-add/scripts/form-add",
|
|
"args": { "-ObjectPath": "{workDir}/DataProcessors/ТестРадио.xml", "-FormName": "Форма" }
|
|
}
|
|
],
|
|
"params": { "outputPath": "DataProcessors/ТестРадио/Forms/Форма/Ext/Form.xml" },
|
|
"validatePath": "DataProcessors/ТестРадио/Forms/Форма/Ext/Form.xml",
|
|
"input": {
|
|
"title": "Радио — Auto + Enum",
|
|
"attributes": [
|
|
{ "name": "Объект", "type": "DataProcessorObject.ТестРадио", "main": true },
|
|
{ "name": "СпособКурса", "type": "EnumRef.СпособыКурса" }
|
|
],
|
|
"elements": [
|
|
{
|
|
"radio": "СпособКурса",
|
|
"path": "СпособКурса",
|
|
"title": "Способ курса",
|
|
"radioButtonType": "Auto",
|
|
"columnsCount": 1,
|
|
"itemTitleHeight": 1,
|
|
"equalItemsWidth": false,
|
|
"choiceList": [
|
|
{ "value": "Enum.СпособыКурса.EnumValue.Авто", "presentation": { "ru": "Автоматически", "en": "Automatic" } },
|
|
{ "value": "Enum.СпособыКурса.EnumValue.Ручной", "presentation": "вручную" },
|
|
{ "value": "Enum.СпособыКурса.EmptyRef", "presentation": "(не задан)" }
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|