Class SelectionInput

Выбор ввода

Поле ввода, позволяющее выбирать между набором предопределенных вариантов.

Поддерживает валидацию отправки формы только для меню 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,
                ),
        );
Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

Параметры

Имя Тип Описание
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 — Объект, для объединения в цепочку.