Class SelectionInput

ВыборВвод

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

Поддерживается проверка данных при отправке формы только для меню SelectionInputType.DROP_DOWN и SelectionInputType.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 Задает видимость виджета.

Подробная документация

addDataSourceConfig(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 Конфигурация источника данных, которая будет применена к входным данным для выбора.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


addEventAction(eventAction)

Добавляет действие события, которое можно выполнить с виджетом.

Параметры

Имя Тип Описание
event Action Event Action Необходимо добавить Event Action .

Возвращаться

Widget — Объект для создания цепочек.


addItem(text, value, selected)

Добавляет новый элемент, который можно выбрать.

Параметры

Имя Тип Описание
text Object Текст, который будет отображаться для этого элемента. Нестроковые примитивные аргументы автоматически преобразуются в строки.
value Object Значение поля ввода формы, передаваемое через функцию обратного вызова. Нестроковые примитивные аргументы автоматически преобразуются в строки.
selected Boolean Указывает, выбран ли элемент по умолчанию. Если поле выбора принимает только одно значение (например, для переключателей или выпадающего меню), задайте это поле только для одного элемента.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


addMultiSelectItem(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 В меню с множественным выбором текстовое описание или метка отображается под текстовым полем элемента.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setExternalDataSource(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 Внешний источник данных.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setFieldName(fieldName)

Задает ключ, идентифицирующий этот выбранный элемент в объекте события, генерируемом при взаимодействии с пользовательским интерфейсом. Не виден пользователю. Обязателен, должен быть уникальным.

Параметры

Имя Тип Описание
field Name String Имя, которое следует присвоить этому полю ввода.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setId(id)

Задает уникальный идентификатор, используемый для идентификации виджета, который необходимо изменить. Изменение виджетов поддерживается только в дополнениях.

Параметры

Имя Тип Описание
id String Идентификатор виджета, ограниченный 64 символами и в формате `[a-zA-Z0-9-]+`.

Возвращаться

Widget — этот объект используется для создания цепочек вызовов.


setMultiSelectMaxSelectedItems(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 Максимальное количество товаров.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setMultiSelectMinQueryLength(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 Количество символов текста.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setOnChangeAction(action)

Задает Action , которое будет выполняться при изменении выбранного значения.

Параметры

Имя Тип Описание
action Action Действие, которое необходимо предпринять.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setPlatformDataSource(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 Источник данных.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setTitle(title)

Задает заголовок, который будет отображаться перед полем ввода.

Параметры

Имя Тип Описание
title String Заголовок поля ввода.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setType(type)

Задает тип этого поля ввода. По умолчанию — CHECKBOX .

Параметры

Имя Тип Описание
type Selection Input Type Тип выбора.

Возвращаться

SelectionInput — Этот объект используется для создания цепочек.


setVisibility(visibility)

Задает видимость виджета. Значение по умолчанию — `VISIBLE`.

Параметры

Имя Тип Описание
visibility Visibility Visibility виджета.

Возвращаться

Widget — Объект для создания цепочек.