feat(form-compile): автоген Title из имени для узлов без источника синонима

Реквизиты формы, команды, страницы, попапы и декорации теперь получают Title,
сгенерированный из CamelCase-имени, если в DSL он не задан явно. Поля с path
и кнопки с command по-прежнему опускают Title — синоним подхватится платформой.
Главные реквизиты (Объект/Список/Запись с main=true) исключены.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-05-02 18:17:19 +03:00
parent 36cd63d8bb
commit 76800fc92b
12 changed files with 267 additions and 36 deletions
@@ -95,6 +95,12 @@
<MainAttribute>true</MainAttribute>
</Attribute>
<Attribute name="ОбычноеПоле" id="20">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Обычное поле</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
@@ -104,6 +110,12 @@
</Type>
</Attribute>
<Attribute name="МногострочноеПоле" id="21">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Многострочное поле</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
@@ -113,6 +125,12 @@
</Type>
</Attribute>
<Attribute name="ПолеПароля" id="22">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поле пароля</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
@@ -122,6 +140,12 @@
</Type>
</Attribute>
<Attribute name="ПолеСКнопками" id="23">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поле с кнопками</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
@@ -131,6 +155,12 @@
</Type>
</Attribute>
<Attribute name="ПолеПодсказка" id="24">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поле подсказка</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
@@ -140,6 +170,12 @@
</Type>
</Attribute>
<Attribute name="Флаг" id="25">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Флаг</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>