mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-16 15:55:16 +03:00
feat(form-decompile,form-compile): свойства CalendarField (кластер CalendarField)
CalendarField терял специфичные свойства при раундтрипе: декомпилятор их не читал, компилятор не эмитил. Пробел DSL (класс 3). CalendarField — длинный хвост (18 форм на 17033, 0.1%), но элемент маленький и ограниченный → решено покрыть целиком, убрав класс молчаливых потерь. Добавлены ключи (passthrough, эмитятся только при наличии): selectionMode, showCurrentDate, widthInMonths, heightInMonths, showMonthsPanel. Плюс подключён общий titleLocation (раньше у календаря не обрабатывался). Порядок тегов выверен по корпусу (18 форм): DataPath > Title > TitleLocation > [layout] > SelectionMode > ShowCurrentDate > WidthInMonths > HeightInMonths > ShowMonthsPanel > companions > Events. Декомпилятор (ps1) + компилятор (ps1+py) + spec. Новый тест-кейс calendar (два календаря: со скалярами+событием и с months-panel), сертифицирован в 1С 8.3.24. Регресс ps+py 33/33. Tooltip-свойства календаря (ToolTip/ToolTipRepresentation) намеренно оставлены будущему общему tooltip-кластеру. Раундтрип календарных форм: ПериодКомандировки → match; остаточный TitleLocation на radio/table — отдельная находка (BACKLOG). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+12
-1
@@ -410,9 +410,20 @@ Pages поддерживает `pagesRepresentation`: `None`, `TabsOnTop`, `Tabs
|
||||
#### calendar — CalendarField
|
||||
|
||||
```json
|
||||
{ "calendar": "Дата", "path": "ДатаОтчета" }
|
||||
{ "calendar": "Дата", "path": "ДатаОтчета",
|
||||
"selectionMode": "Interval", "showCurrentDate": false, "widthInMonths": 2 }
|
||||
```
|
||||
|
||||
| Свойство | XML | Значения |
|
||||
|----------|-----|----------|
|
||||
| `selectionMode` | `<SelectionMode>` | `Single`, `Multiple`, `Interval` |
|
||||
| `showCurrentDate` | `<ShowCurrentDate>` | bool (выводится при наличии ключа) |
|
||||
| `widthInMonths` | `<WidthInMonths>` | число месяцев по ширине |
|
||||
| `heightInMonths` | `<HeightInMonths>` | число месяцев по высоте |
|
||||
| `showMonthsPanel` | `<ShowMonthsPanel>` | bool |
|
||||
|
||||
Также поддерживается общий `titleLocation` (`none`/`left`/`right`/`top`/`bottom`/`auto`).
|
||||
|
||||
#### cmdBar — CommandBar
|
||||
|
||||
```json
|
||||
|
||||
Reference in New Issue
Block a user