Class SelectionInput

SelectionInput

Un campo de entrada que permite elegir entre un conjunto de opciones predefinidas.

Está disponible para complementos de Google Workspace y apps de Google Chat.

var 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"));

var 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étodoTipo de datos que se muestraDescripción breve
addItem(text, value, selected)SelectionInputAgrega un nuevo elemento que se puede seleccionar.
addMultiSelectItem(text, value, selected, startIconUri, bottomText)SelectionInputAgrega un nuevo elemento que se puede seleccionar para menús de selección múltiple.
setExternalDataSource(action)SelectionInputConfigura una fuente de datos externa, como una base de datos relacional.
setFieldName(fieldName)SelectionInputEstablece la clave que identifica esta entrada de selección en el objeto de evento que se genera cuando hay una interacción con la IU.
setMultiSelectMaxSelectedItems(maxSelectedItems)SelectionInputEstablece la cantidad máxima de elementos que puede seleccionar un usuario.
setMultiSelectMinQueryLength(queryLength)SelectionInputEstablece la cantidad de caracteres de texto que un usuario ingresa antes de que se autocompletan las consultas de la app y muestra los elementos sugeridos en la tarjeta.
setOnChangeAction(action)SelectionInputEstablece un Action que se realizará cada vez que cambie la entrada de selección.
setPlatformDataSource(platformDataSource)SelectionInputConfigura una fuente de datos de Google Workspace.
setTitle(title)SelectionInputEstablece el título que se mostrará antes del campo de entrada.
setType(type)SelectionInputEstablece el tipo de esta entrada.

Documentación detallada

addItem(text, value, selected)

Agrega un nuevo elemento que se puede seleccionar.

Parámetros

NombreTipoDescripción
textObjectEs el texto que se mostrará para este elemento. Los argumentos primitivos que no son de cadena se convierten en cadenas automáticamente.
valueObjectEl valor de entrada del formulario que se envía a través de la devolución de llamada. Los argumentos primitivos que no son de cadena se convierten en cadenas automáticamente.
selectedBooleanIndica si el elemento se selecciona de forma predeterminada. Si la entrada de selección solo acepta un valor (como para los botones de selección o un menú desplegable), establece este campo solo para un elemento.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


addMultiSelectItem(text, value, selected, startIconUri, bottomText)

Agrega un nuevo elemento que se puede seleccionar para menús de selección múltiple.

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

NombreTipoDescripción
textObjectEs el texto que se mostrará para este elemento. Los argumentos primitivos que no son de cadena se convierten en cadenas automáticamente.
valueObjectEl valor de entrada del formulario que se envía a través de la devolución de llamada. Los argumentos primitivos que no son de cadena se convierten en cadenas automáticamente.
selectedBooleanIndica si el elemento se selecciona de forma predeterminada. Si la entrada de selección solo acepta un valor (como para los botones de selección o un menú desplegable), establece este campo solo para un elemento.
startIconUriObjectEn el caso de los menús de selección múltiple, la URL del ícono que se muestra junto al campo de texto del elemento. Admite archivos PNG y JPEG.
bottomTextObjectPara los menús de selección múltiple, una descripción de texto o etiqueta que se muestra debajo del campo de texto del elemento.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setExternalDataSource(action)

Configura una fuente de datos externa, como una base de datos 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

NombreTipoDescripción
actionActionLa fuente de datos externa.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setFieldName(fieldName)

Establece la clave que identifica esta entrada de selección en el objeto de evento que se genera cuando hay una interacción con la IU. No visible para el usuario Obligatorio debe ser único.

Parámetros

NombreTipoDescripción
fieldNameStringEl nombre que se asignará a esta entrada.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setMultiSelectMaxSelectedItems(maxSelectedItems)

Establece la cantidad máxima de elementos que puede seleccionar un usuario.

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

NombreTipoDescripción
maxSelectedItemsIntegerIndica la cantidad máxima de elementos.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setMultiSelectMinQueryLength(queryLength)

Establece la cantidad de caracteres de texto que un usuario ingresa antes de que se autocompletan las consultas de la app y muestra los elementos sugeridos en la tarjeta.

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

NombreTipoDescripción
queryLengthIntegerLa cantidad de caracteres de texto.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setOnChangeAction(action)

Establece un Action que se realizará cada vez que cambie la entrada de selección.

Parámetros

NombreTipoDescripción
actionActionLa acción por realizar.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setPlatformDataSource(platformDataSource)

Configura una fuente de datos de Google Workspace. Se usa para propagar elementos en un menú de selección múltiple.

const multiSelect = CardService.newSelectionInput()
    .setType(CardService.SelectionInputType.MULTI_SELECT)
    .setFieldName("contacts")
    .setTitle("Selected contacts")
    .setPlatformDataSource(
       CardService.newPlatformDataSource()
         .setCommonDataSource(CardService.CommonDataSource.USER));
Solo está disponible para las apps de Google Chat. No está disponible para los complementos de Google Workspace.

Parámetros

NombreTipoDescripción
platformDataSourcePlatformDataSourceEs la fuente de datos.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setTitle(title)

Establece el título que se mostrará antes del campo de entrada.

Parámetros

NombreTipoDescripción
titleStringEs el título del campo de entrada.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.


setType(type)

Establece el tipo de esta entrada. La configuración predeterminada es CHECKBOX.

Parámetros

NombreTipoDescripción
typeSelectionInputTypeEs el tipo de selección.

Devolvedor

SelectionInput: Este objeto se usa para encadenar.