Um campo de entrada que permite escolher entre um conjunto de opções predefinidas.
Compatível apenas com a validação de envio de formulário para os menus Selection e Selection. Quando Action.setAllWidgetsAreRequired(allWidgetsAreRequired) é definido como true ou este widget é especificado por Action.addRequiredWidget(requiredWidget), a ação de envio é bloqueada, a menos que um valor seja selecionado.
Disponível para complementos do Google Workspace e apps do 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);
Métodos
| Método | Tipo de retorno | Breve descrição |
|---|---|---|
add | Selection | Define as configurações da fonte de dados para o controle de seleção. |
add | Widget | Adiciona a ação de evento que pode ser realizada no widget. |
add | Selection | Adiciona um novo item que pode ser selecionado. |
add | Selection | Adiciona um novo item que pode ser selecionado para menus de seleção múltipla. |
set | Selection | Define uma fonte de dados externa, como um banco de dados relacional. |
set | Selection | Define a chave que identifica essa entrada de seleção no objeto de evento gerado quando há uma interação da interface. |
set | Widget | Define o ID exclusivo atribuído que é usado para identificar o widget a ser alterado. |
set | Selection | Define o número máximo de itens que um usuário pode selecionar. |
set | Selection | Define o número de caracteres de texto que um usuário insere antes que o app consulte o preenchimento automático e mostre itens sugeridos no card. |
set | Selection | Define um Action a ser executado sempre que a entrada de seleção mudar. |
set | Selection | Define uma fonte de dados do Google Workspace. |
set | Selection | Define o título a ser mostrado antes do campo de entrada. |
set | Selection | Define o tipo desta entrada. |
set | Widget | Define a visibilidade do widget. |
Documentação detalhada
add Data Source Config(dataSourceConfig)
Define as configurações da fonte de dados para o controle de seleção. Esse campo oferece um controle mais refinado sobre a fonte de dados. Esse campo é opcional.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .setDataSourceConfig( CardService.newDataSourceConfig().setPlatformDataSource( CardService.newPlatformDataSource().setCommonDataSource( CardService.CommonDataSource.USER, ) ) );
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
data | Data | A configuração da fonte de dados a ser aplicada à entrada de seleção. |
Retornar
Selection: este objeto, para encadeamento.
add Event Action(eventAction)
Adiciona a ação de evento que pode ser realizada no widget.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
event | Event | O Event a ser adicionado. |
Retornar
Widget: o objeto para encadeamento.
add Item(text, value, selected)
Adiciona um novo item que pode ser selecionado.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
text | Object | O texto a ser mostrado para este item. Os argumentos primitivos que não são de string são convertidos automaticamente em strings. |
value | Object | O valor de entrada do formulário enviado pelo callback. Argumentos primitivos que não são de string são convertidos automaticamente em strings. |
selected | Boolean | Se o item está selecionado por padrão. Se a entrada de seleção aceitar apenas um valor (como botões de opção ou um menu suspenso), defina esse campo para apenas um item. |
Retornar
Selection: este objeto, para encadeamento.
add Multi Select Item(text, value, selected, startIconUri, bottomText)
Adiciona um novo item que pode ser selecionado para menus de seleção múltipla.
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', );
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
text | Object | O texto a ser mostrado para este item. Os argumentos primitivos que não são de string são convertidos automaticamente em strings. |
value | Object | O valor de entrada do formulário enviado pelo callback. Argumentos primitivos que não são de string são convertidos automaticamente em strings. |
selected | Boolean | Se o item está selecionado por padrão. Se a entrada de seleção aceitar apenas um valor (como botões de opção ou um menu suspenso), defina esse campo para apenas um item. |
start | Object | Para menus de seleção múltipla, o URL do ícone exibido ao lado do campo de texto do item. Compatível com arquivos PNG e JPEG. |
bottom | Object | Para menus de seleção múltipla, uma descrição ou um rótulo de texto exibido abaixo do campo de texto do item. |
Retornar
Selection: este objeto, para encadeamento.
set External Data Source(action)
Define uma fonte de dados externa, como um banco de dados relacional.
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'), );
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
action | Action | A fonte de dados externa. |
Retornar
Selection: este objeto, para encadeamento.
set Field Name(fieldName)
Define a chave que identifica essa entrada de seleção no objeto de evento gerado quando há uma interação da interface. Não visível para o usuário. Obrigatório e precisa ser exclusivo.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
field | String | O nome a ser atribuído a essa entrada. |
Retornar
Selection: este objeto, para encadeamento.
set Id(id)
Define o ID exclusivo atribuído que é usado para identificar o widget a ser alterado. A mutação de widget só é compatível com complementos.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
id | String | O ID do widget, com um limite de 64 caracteres e no formato `[a-zA-Z0-9-]+`. |
Retornar
Widget: este objeto, para encadeamento.
set Multi Select Max Selected Items(maxSelectedItems)
Define o número máximo de itens que um usuário pode selecionar.
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', );
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
max | Integer | O número máximo de itens. |
Retornar
Selection: este objeto, para encadeamento.
set Multi Select Min Query Length(queryLength)
Define o número de caracteres de texto que um usuário insere antes que o app consulte o preenchimento automático e mostre itens sugeridos no card.
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', );
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
query | Integer | O número de caracteres de texto. |
Retornar
Selection: este objeto, para encadeamento.
set On Change Action(action)
Define um Action a ser executado sempre que a entrada de seleção mudar.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
action | Action | A ação a ser tomada. |
Retornar
Selection: este objeto, para encadeamento.
set Platform Data Source(platformDataSource)
Define uma fonte de dados do Google Workspace. Usado para preencher itens em um menu de seleção múltipla.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .setPlatformDataSource( CardService.newPlatformDataSource().setCommonDataSource( CardService.CommonDataSource.USER, ), );
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
platform | Platform | A fonte de dados. |
Retornar
Selection: este objeto, para encadeamento.
set Title(title)
Define o título a ser mostrado antes do campo de entrada.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
title | String | O título do campo de entrada. |
Retornar
Selection: este objeto, para encadeamento.
set Type(type)
Define o tipo desta entrada. O valor padrão é CHECKBOX.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
type | Selection | O tipo de seleção. |
Retornar
Selection: este objeto, para encadeamento.
set Visibility(visibility)
Define a visibilidade do widget. O valor padrão é "VISIBLE".
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
visibility | Visibility | O Visibility do widget. |
Retornar
Widget: o objeto para encadeamento.