Поле ввода, позволяющее выбирать между набором предопределенных вариантов.
Поддерживает валидацию отправки формы только для меню Selection Input Type.DROP_DOWN и Selection Input Type.MULTI_SELECT . Если Action.setAllWidgetsAreRequired(allWidgetsAreRequired) задано значение true или этот виджет указан с помощью Action.addRequiredWidget(requiredWidget) , отправка блокируется, если не выбрано значение.
Доступно для дополнений Google Workspace и приложений Google Chat.
const checkboxGroup = CardService.newSelectionInput() .setType(CardService.SelectionInputType.CHECK_BOX) .setTitle('A group of checkboxes. Multiple selections are allowed.') .setFieldName('checkbox_field') .addItem('checkbox one title', 'checkbox_one_value', false) .addItem('checkbox two title', 'checkbox_two_value', true) .addItem('checkbox three title', 'checkbox_three_value', true) .setOnChangeAction( CardService.newAction().setFunctionName('handleCheckboxChange'), ); const radioGroup = CardService.newSelectionInput() .setType(CardService.SelectionInputType.RADIO_BUTTON) .setTitle( 'A group of radio buttons. Only a single selection is allowed.') .setFieldName('checkbox_field') .addItem('radio button one title', 'radio_one_value', true) .addItem('radio button two title', 'radio_two_value', false) .addItem('radio button three title', 'radio_three_value', false); const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', ) .setMultiSelectMaxSelectedItems(3) .setMultiSelectMinQueryLength(1);
Методы
| Метод | Тип возврата | Краткое описание |
|---|---|---|
add Data Source Config(dataSourceConfig) | Selection Input | Задает конфигурации источника данных для элемента управления выбором. |
add Event Action(eventAction) | Widget | Добавляет действие события, которое можно выполнить над виджетом. |
add Item(text, value, selected) | Selection Input | Добавляет новый элемент, который можно выбрать. |
add Multi Select Item(text, value, selected, startIconUri, bottomText) | Selection Input | Добавляет новый элемент, который можно выбрать, для меню с возможностью выбора нескольких пунктов. |
set External Data Source(action) | Selection Input | Устанавливает внешний источник данных, например реляционную базу данных. |
set Field Name(fieldName) | Selection Input | Устанавливает ключ, который идентифицирует этот выбор входных данных в объекте события, который генерируется при взаимодействии с пользовательским интерфейсом. |
set Id(id) | Widget | Задает уникальный назначенный идентификатор, который используется для идентификации виджета, подлежащего мутации. |
set Multi Select Max Selected Items(maxSelectedItems) | Selection Input | Устанавливает максимальное количество элементов, которые может выбрать пользователь. |
set Multi Select Min Query Length(queryLength) | Selection Input | Устанавливает количество текстовых символов, которые пользователь вводит, прежде чем приложение выполнит запрос автозаполнения и отобразит предлагаемые элементы на карточке. |
set On Change Action(action) | Selection Input | Устанавливает Action , которое будет выполняться при каждом изменении входного выбора. |
set Platform Data Source(platformDataSource) | Selection Input | Устанавливает источник данных из Google Workspace. |
set Title(title) | Selection Input | Устанавливает заголовок, отображаемый перед полем ввода. |
set Type(type) | Selection Input | Устанавливает тип этого входа. |
set Visibility(visibility) | Widget | Устанавливает видимость виджета. |
Подробная документация
add Data Source Config(dataSourceConfig)
Задаёт настройки источника данных для элемента управления выбором. Это поле обеспечивает более детальное управление источником данных. Это необязательное поле.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .setDataSourceConfig( CardService.newDataSourceConfig().setPlatformDataSource( CardService.newPlatformDataSource().setCommonDataSource( CardService.CommonDataSource.USER, ) ) );
Параметры
| Имя | Тип | Описание |
|---|---|---|
data Source Config | Data Source Config | Конфигурация источника данных, которая будет применена к выбору входных данных. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
add Event Action(eventAction)
Добавляет действие события, которое можно выполнить над виджетом.
Параметры
| Имя | Тип | Описание |
|---|---|---|
event Action | Event Action | Будет добавлено Event Action . |
Возвращаться
Widget — Объект, для объединения в цепочку.
add Item(text, value, selected)
Добавляет новый элемент, который можно выбрать.
Параметры
| Имя | Тип | Описание |
|---|---|---|
text | Object | Текст, который будет отображаться для этого элемента. Нестроковые примитивные аргументы автоматически преобразуются в строки. |
value | Object | Входное значение формы, отправляемое через функцию обратного вызова. Нестроковые примитивные аргументы автоматически преобразуются в строки. |
selected | Boolean | Выбран ли элемент по умолчанию. Если поле выбора принимает только одно значение (например, для переключателей или раскрывающегося меню), задайте это поле только для одного элемента. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
add Multi Select Item(text, value, selected, startIconUri, bottomText)
Добавляет новый элемент, который можно выбрать, для меню с возможностью выбора нескольких пунктов.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', );
Параметры
| Имя | Тип | Описание |
|---|---|---|
text | Object | Текст, который будет отображаться для этого элемента. Нестроковые примитивные аргументы автоматически преобразуются в строки. |
value | Object | Входное значение формы, отправляемое через функцию обратного вызова. Нестроковые примитивные аргументы автоматически преобразуются в строки. |
selected | Boolean | Выбран ли элемент по умолчанию. Если поле выбора принимает только одно значение (например, для переключателей или раскрывающегося меню), задайте это поле только для одного элемента. |
start Icon Uri | Object | Для меню с множественным выбором URL-адрес значка отображается рядом с текстовым полем элемента. Поддерживаются файлы PNG и JPEG. |
bottom Text | Object | Для меню с множественным выбором — текстовое описание или метка, отображаемая под текстовым полем элемента. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set External Data Source(action)
Устанавливает внешний источник данных, например реляционную базу данных.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .setMultiSelectMaxSelectedItems(5) .setMultiSelectMinQueryLength(2) .setExternalDataSource( CardService.newAction().setFunctionName('getContacts'), );
Параметры
| Имя | Тип | Описание |
|---|---|---|
action | Action | Внешний источник данных. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set Field Name(fieldName)
Задаёт ключ, идентифицирующий этот входной параметр выбора в объекте события, генерируемом при взаимодействии с пользовательским интерфейсом. Не отображается пользователю. Обязательно, должно быть уникальным.
Параметры
| Имя | Тип | Описание |
|---|---|---|
field Name | String | Имя, которое будет присвоено этому входу. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set Id(id)
Задаёт уникальный идентификатор, используемый для идентификации виджета, подлежащего мутации. Мутация виджетов поддерживается только в дополнениях.
Параметры
| Имя | Тип | Описание |
|---|---|---|
id | String | Идентификатор виджета длиной не более 64 символов в формате `[a-zA-Z0-9-]+`. |
Возвращаться
Widget — объект для объединения в цепочку.
set Multi Select Max Selected Items(maxSelectedItems)
Устанавливает максимальное количество элементов, которые может выбрать пользователь.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .setMultiSelectMaxSelectedItems(3) .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', );
Параметры
| Имя | Тип | Описание |
|---|---|---|
max Selected Items | Integer | Максимальное количество предметов. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set Multi Select Min Query Length(queryLength)
Устанавливает количество текстовых символов, которые пользователь вводит, прежде чем приложение выполнит запрос автозаполнения и отобразит предлагаемые элементы на карточке.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .setMultiSelectMinQueryLength(1) .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', );
Параметры
| Имя | Тип | Описание |
|---|---|---|
query Length | Integer | Количество символов текста. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set On Change Action(action)
Устанавливает Action , которое будет выполняться при каждом изменении входного выбора.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action | Action | Действия, которые необходимо предпринять. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set Platform Data Source(platformDataSource)
Устанавливает источник данных из Google Workspace. Используется для заполнения пунктов в меню с множественным выбором.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .setPlatformDataSource( CardService.newPlatformDataSource().setCommonDataSource( CardService.CommonDataSource.USER, ), );
Параметры
| Имя | Тип | Описание |
|---|---|---|
platform Data Source | Platform Data Source | Источник данных. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set Title(title)
Устанавливает заголовок, отображаемый перед полем ввода.
Параметры
| Имя | Тип | Описание |
|---|---|---|
title | String | Заголовок поля ввода. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set Type(type)
Задаёт тип этого входа. По умолчанию — CHECKBOX .
Параметры
| Имя | Тип | Описание |
|---|---|---|
type | Selection Input Type | Тип выбора. |
Возвращаться
Selection Input — этот объект, для объединения в цепочку.
set Visibility(visibility)
Устанавливает видимость виджета. Значение по умолчанию — `VISIBLE`.
Параметры
| Имя | Тип | Описание |
|---|---|---|
visibility | Visibility | Visibility виджета. |
Возвращаться
Widget — Объект, для объединения в цепочку.