Class ImageButton

ImageButton

Um ImageButton com uma imagem exibida nele.

Disponível para complementos do Google Workspace e apps do Google Chat.

const imageButton =
    CardService.newImageButton()
        .setAltText('An image button with an airplane icon.')
        .setIcon(CardService.Icon.AIRPLANE)
        .setOpenLink(CardService.newOpenLink().setUrl('https://airplane.com'));

Métodos

MétodoTipo de retornoBreve descrição
setAltText(altText)ImageButtonDefine o texto alternativo do botão para acessibilidade.
setAuthorizationAction(action)ImageButtonDefine uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado.
setComposeAction(action, composedEmailType)ImageButtonDefine uma ação que cria um rascunho de e-mail quando o objeto é clicado.
setIcon(icon)ImageButtonDefine um Icon predefinido para exibição no botão.
setIconUrl(url)ImageButtonDefine o URL de uma imagem a ser usada como ícone desse botão.
setImageButtonStyle(imageButtonStyle)ImageButtonDefine o estilo do botão.
setMaterialIcon(icon)ImageButtonDefine o ícone do Material Design.
setOnClickAction(action)ImageButtonDefine uma ação que é executada quando o objeto é clicado.
setOnClickOpenLinkAction(action)ImageButtonDefine uma ação que abre um URL em uma guia quando o objeto é clicado.
setOpenLink(openLink)ImageButtonDefine um URL a ser aberto quando o objeto é clicado.
setOverflowMenu(menu)ImageButtonDefine um menu pop-up a ser aberto quando o objeto é clicado.

Documentação detalhada

setAltText(altText)

Define o texto alternativo do botão para acessibilidade. Obrigatório.

Parâmetros

NomeTipoDescrição
altTextStringO texto alternativo a ser atribuído a esse botão.

Retornar

ImageButton: esse objeto, para encadeamento.


setAuthorizationAction(action)

Define uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado. Isso abre o URL em uma nova janela. Quando o usuário termina o fluxo de autorização e retorna ao aplicativo, o complemento é recarregado.

Um objeto de interface só pode ter um dos seguintes valores definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

// ...

const action = CardService.newAuthorizationAction().setAuthorizationUrl('url');
CardService.newTextButton().setText('Authorize').setAuthorizationAction(action);

Parâmetros

NomeTipoDescrição
actionAuthorizationActionO objeto que especifica a ação de autorização a ser realizada quando esse elemento é clicado.

Retornar

ImageButton: esse objeto, para encadeamento.


setComposeAction(action, composedEmailType)

Define uma ação que cria um rascunho de e-mail quando o objeto é clicado. Um objeto de interface só pode ter um dos seguintes valores definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

O parâmetro Action precisa especificar uma função de callback que retorna um objeto ComposeActionResponse configurado usando ComposeActionResponseBuilder.setGmailDraft(draft).

// ...

const action = CardService.newAction().setFunctionName('composeEmailCallback');
CardService.newTextButton()
    .setText('Compose Email')
    .setComposeAction(action, CardService.ComposedEmailType.REPLY_AS_DRAFT);

// ...

function composeEmailCallback(e) {
  const thread = GmailApp.getThreadById(e.threadId);
  const draft = thread.createDraftReply('This is a reply');
  return CardService.newComposeActionResponseBuilder()
      .setGmailDraft(draft)
      .build();
}

Parâmetros

NomeTipoDescrição
actionActionO objeto que especifica a ação de criação a ser realizada quando esse elemento é clicado.
composedEmailTypeComposedEmailTypeUm valor de enumeração que especifica se o rascunho criado é um rascunho independente ou de resposta.

Retornar

ImageButton: esse objeto, para encadeamento.


setIcon(icon)

Define um Icon predefinido para exibição no botão. É necessário usar esse ou setIconUrl(url) para definir a imagem do botão.

Parâmetros

NomeTipoDescrição
iconIconUm dos valores Icon predefinidos.

Retornar

ImageButton: esse objeto, para encadeamento.


setIconUrl(url)

Define o URL de uma imagem a ser usada como ícone desse botão. É necessário usar esse ou setIcon(icon) para definir a imagem do botão.

Parâmetros

NomeTipoDescrição
urlStringO endereço URL de uma imagem hospedada a ser usada como ícone desse botão.

Retornar

ImageButton: esse objeto, para encadeamento.


setImageButtonStyle(imageButtonStyle)

Define o estilo do botão. Se não estiver definido, o padrão será o botão ImageButtonStyle.BORDERLESS.

Disponível para apps do Google Chat. Na prévia para desenvolvedores de complementos do Google Workspace.

const imageButton = CardService.newImageButton().setImageButtonStyle(
    CardService.ImageButtonStyle.BORDERLESS,
);

Parâmetros

NomeTipoDescrição
imageButtonStyleImageButtonStyleO estilo do botão.

Retornar

ImageButton: esse objeto, para encadeamento.


setMaterialIcon(icon)

Define o ícone do Material Design.

const imageButton = CardService.newImageButton().setMaterialIcon(
    CardService.newMaterialIcon().setName('search'),
);

Parâmetros

NomeTipoDescrição
iconMaterialIconO ícone do Material Design.

Retornar

ImageButton: esse objeto, para encadeamento.


setOnClickAction(action)

Define uma ação que é executada quando o objeto é clicado. Um objeto de interface só pode ter um dos seguintes valores definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

O parâmetro Action precisa especificar uma função de callback que retorna um objeto ActionResponse.

// ...

const action = CardService.newAction().setFunctionName('notificationCallback');
CardService.newTextButton()
    .setText('Create notification')
    .setOnClickAction(action);

// ...

function notificationCallback() {
  return CardService.newActionResponseBuilder()
      .setNotification(
          CardService.newNotification().setText('Some info to display to user'),
          )
      .build();
}

Parâmetros

NomeTipoDescrição
actionActionA ação a ser realizada quando esse elemento é clicado.

Retornar

ImageButton: esse objeto, para encadeamento.


setOnClickOpenLinkAction(action)

Define uma ação que abre um URL em uma guia quando o objeto é clicado. Use essa função quando o URL precisar ser criado ou quando você precisar realizar outras ações além de criar o objeto OpenLink. Um objeto de interface só pode ter um dos seguintes valores definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

O parâmetro Action precisa especificar uma função de callback que retorna um objeto ActionResponse configurado usando ActionResponseBuilder.setOpenLink(openLink).

// ...

const action = CardService.newAction().setFunctionName('openLinkCallback');
CardService.newTextButton()
    .setText('Open Link')
    .setOnClickOpenLinkAction(action);

// ...

function openLinkCallback() {
  return CardService.newActionResponseBuilder()
      .setOpenLink(CardService.newOpenLink().setUrl('https://www.google.com'))
      .build();
}

Parâmetros

NomeTipoDescrição
actionActionO objeto que especifica a ação de link aberto a ser realizada quando esse elemento é clicado.

Retornar

ImageButton: esse objeto, para encadeamento.


Define um URL a ser aberto quando o objeto é clicado. Use essa função quando o URL já for conhecido e só precisar ser aberto. Um objeto de interface só pode ter um dos seguintes valores definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

Parâmetros

NomeTipoDescrição
openLinkOpenLinkUm OpenLink objeto que descreve o URL a ser aberto.

Retornar

ImageButton: esse objeto, para encadeamento.


setOverflowMenu(menu)

Define um menu pop-up a ser aberto quando o objeto é clicado. Cada item no menu pode especificar uma ação a ser acionada quando clicada. Os menus aninhados não são compatíveis. As ações para itens de menu não podem especificar um menu flutuante.

Disponível para apps do Google Chat. Na prévia para desenvolvedores de complementos do Google Workspace.

const overflowMenuItem =
    CardService.newOverflowMenuItem()
        .setStartIcon(
            CardService.newIconImage().setIconUrl(
                'https://www.google.com/images/branding/googleg/1x/googleg_standard_color_64dp.png',
                ),
            )
        .setText('Open Link')
        .setOpenLink(
            CardService.newOpenLink().setUrl('https://www.google.com'));

const overflowMenu =
    CardService.newOverflowMenu().addMenuItem(overflowMenuItem).build();

Parâmetros

NomeTipoDescrição
menuOverflowMenuO objeto que especifica o menu flutuante a ser exibido quando esse elemento é clicado.

Retornar

ImageButton: esse objeto, para encadeamento.