Группы виджетов
Этот раздел описывает группы виджетов в представлениях сущностей домена.
| Ознакомьтесь с правилами нотации в схеме домена. Это позволит присваивать корректные названия создаваемым элементам схемы. Эти названия будут отображаться в интерфейсе системы. |
Структура блока groups
Путь в схеме: views[].groups[]
Поле groups представляет собой массив записей визуальных элементов, на которые ссылается представление. Описания групп виджетов включают общие поля, а также специфические в зависимости от типа группы.
Общие поля групп
Описание каждой группы включает следующие поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
View ID |
Уникальный идентификатор группы представления. |
|
нет (по умолчанию — пустая строка) |
строка |
Описание группы представления. |
|
да |
перечисление |
Тип группы. Ознакомьтесь с описанием доступных типов. |
|
да |
массив |
Массив записей компонентов, из которых состоит группа — виджетов и/или других групп. Допустимые виды компонентов описаны далее для каждого типа группы. |
Доступные типы групп (type)
Путь в схеме: views[].groups[].type
Поле type в записи группы может принимать следующие значения:
-
block— блок. -
form— форма создания или редактирования объекта. -
tab— вкладка. -
tabs— панель вкладок полноэкранного представления объекта. Используется в полноэкранной карточке объекта. -
resizable_block_pair— блок, содержащий две секции с регулируемыми размерами. Используется в полноэкранной карточке объекта.
Наследование в группах виджетов (inherits)
Путь в схеме: views[].groups[].inherits
Настройки группы типа block, form или tab можно унаследовать от другой группы такого же типа, указав ссылку на нее в поле inherits. В зависимости от типа поля применяется следующее поведение:
-
Для компонентов группы можно определить режим наследования с добавлением или удалением элементов.
-
Поля
labelиlayoutнаследуются автоматически и могут быть переопределены в текущем представлении.
*Пример наследования компонентов группы
views:
...
views:
...
groups:
- id: tabs_computer_apps
inherits: hw.example.com/block_1
type: tab
components:
- inherit:
type: append
- block: blocks_computer
В данном примере на вкладке tabs_computer_apps расположены все компоненты вкладки block_1 в исходном порядке, а после них — блок blocks_computer.
Наследование компонентов группы (inherit)
Путь в схеме: views[].groups[].components[].inherit
Поле имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет (по умолчанию: |
перечисление |
Тип наследования. Доступные значения:
Ознакомьтесь с описанием типов наследования. |
|
да (при |
массив |
Массив ссылок на компоненты, которые не нужно наследовать. |
Типы наследования компонентов (type)
Путь в схеме: views[].groups[].components[].inherit.type
Доступные типы наследования включают:
-
append— наследовать все компоненты и добавить компоненты, описанные в массивеcomponents. -
override— не наследовать компоненты. Необходимо описать компоненты в массивеcomponents. -
except— наследовать все компоненты, кроме тех, которые перечислены в полеexcept.
Блок (type: form)
Описание группы типа block дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
View ID Ref |
Ссылка на группу типа |
|
нет |
объект |
Настройки взаимного расположения компонентов в группе. Если не заданы, наследуются от блока, указанного в поле Ознакомьтесь с описанием поля |
|
нет (по умолчанию — пустая строка) |
строка |
Наименование группы представления. Если не задано, наследуется от блока, указанного в поле Ознакомьтесь с описанием] поля |
|
да |
массив |
Массив полей Идентификатор стороннего виджета записывается в формате |
Настройки взаимного расположения виджетов в блоке (layout)
Путь в схеме: views[].groups[].layout
Поле layout содержит настройки взаимного расположения элементов. Поле имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет (по умолчанию — |
перечисление |
Порядок отображения элементов в записи группы. Направление размещения определяет, как будут располагаться компоненты внутри группы. Допустимое значение — |
|
нет (по умолчанию — |
логическое |
Переключатель возможности развернуть элемент. |
Форма (type: form)
Описание группы типа form дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
View ID Ref |
Ссылка на группу типа |
|
да |
массив |
Массив полей со ссылками на идентификаторы виджетов и блоков. Ознакомьтесь с описанием поля |
Компоненты формы (components)
Путь в схеме: views[].groups[].components[]
Массив содержит следующие виды полей:
-
Поле
inheritс настройками наследования виджетов и блоков. Доступно, если заполнено полеinherits. -
Ссылки на виджеты в формате
widget: <View ID Ref>.Идентификатор стороннего виджета записывается в формате external:<ID виджета>. -
Ссылки на блоки в формате
block: <View ID Ref>.
Вкладка (type: tab)
Описание группы типа block дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
View ID Ref |
Ссылка на группу типа |
|
нет (по умолчанию — пустая строка) |
строка |
Наименование группы представления. Если не задано, наследуется от блока, указанного в поле Ознакомьтесь с описанием поля |
|
да |
массив |
Массив компонентов. Ознакомьтесь с описанием поля |
Компоненты вкладки (components)
Путь в схеме: views[].groups[].components[]
Массив содержит следующие виды полей:
-
Поле
inheritс настройками наследования виджетов и блоков. Доступно, если заполнено полеinherits. -
Ссылки на виджеты в формате
widget: <View ID Ref>.Идентификатор стороннего виджета записывается в формате external:<ID виджета>. -
Ссылки на блоки в формате
block: <View ID Ref>.
Группа вкладок (type: tabs)
Описание группы типа tabs дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
массив |
Массив полей |
Блок из двух секций (type: resizable_block_pair)
Описание группы типа resizable_block_pair дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
объект |
Настройки взаимного расположения компонентов в группе. Ознакомьтесь с описанием поля |
|
да |
массив |
Массив из двух полей |
Схема записи блока из двух секций регулируемой ширины
groups:
# Идентификатор записи в группе
- id:
# Описание записи в группе
description:
# Тип записи в группе
type: resizable_block_pair
# Настройки взаимного расположения элементов
layout:
# Минимальная высота секций
minHeight:
# Максимальная высота секций
maxHeight:
# Параметр расположения элементов
sizeRatio:
# Ссылки на блоки, отображаемые в блоке из двух секций
components:
# Ссылка на первый блок вкладки
- block: deviceInfoBlock
# Ссылка на второй блок вкладки
- block: deviceConfigurationBlock
Настройки взаимного расположения в блоке из двух секций (layout)
Путь в схеме: views[].groups[].layout
Поле layout содержит настройки взаимного расположения элементов. Поле имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
строка |
Минимальная высота блока. Задается в процентах или пикселях. Формат: числовое значение и единица измерения без пробелов. Например, |
|
нет |
строка |
Максимальная высота блока. Задается в процентах или пикселях. Формат: числовое значение и единица измерения без пробелов. Например, |
|
нет |
строка |
Соотношение размеров секций. Можно указать либо одну из сторон, либо обе стороны. Сначала указывается значение для левой секции, а затем для правой. Формат: |
Была ли полезна эта страница?