Class TextButton

TextButton

Uma TextButton com um rótulo de texto. Você pode definir a cor do plano de fundo e desativar o botão quando necessário.

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

var textButton = CardService.newTextButton()
    .setText("Open Link")
    .setOpenLink(CardService.newOpenLink()
        .setUrl("https://www.google.com"));

Métodos

MétodoTipo de retornoBreve descrição
setAltText(altText)TextButtonDefine o texto alternativo do botão para acessibilidade.
setAuthorizationAction(action)TextButtonDefine uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado.
setBackgroundColor(backgroundColor)TextButtonDefine a cor do plano de fundo para o botão TextButtonStyle.FILLED.
setComposeAction(action, composedEmailType)TextButtonDefine uma ação que compõe um rascunho de e-mail quando o objeto é clicado.
setDisabled(disabled)TextButtonDefine se o botão está desativado.
setOnClickAction(action)TextButtonDefine uma ação que é executada quando o objeto é clicado.
setOnClickOpenLinkAction(action)TextButtonDefine uma ação que abre um URL em uma guia quando o objeto é clicado.
setOpenLink(openLink)TextButtonDefine um URL que será aberto quando o objeto for clicado.
setText(text)TextButtonDefine o texto que aparece no botão.
setTextButtonStyle(textButtonStyle)TextButtonDefine o estilo do botão.

Documentação detalhada

setAltText(altText)

Define o texto alternativo do botão para acessibilidade. Se não for definido, o padrão será o texto mostrado no botão.

Parâmetros

NomeTipoDescrição
altTextStringO texto alternativo a atribuir a este botão.

Retorno

TextButton: este 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. O URL será aberto em uma nova janela. Quando o usuário conclui o fluxo de autorização e retorna ao aplicativo, o complemento é recarregado.

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

// ...

var 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.

Retorno

TextButton: este objeto para encadeamento.


setBackgroundColor(backgroundColor)

Define a cor do plano de fundo para o botão TextButtonStyle.FILLED. Se a política não for definida para um botão TextButtonStyle.FILLED, ele usará a cor secundária definida no manifesto do complemento. Esse método é um ambiente autônomo para botões TextButtonStyle.OUTLINED.

Parâmetros

NomeTipoDescrição
backgroundColorStringA cor no formato #rgb.

Retorno

TextButton: este objeto para encadeamento.


setComposeAction(action, composedEmailType)

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

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

// ...

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

// ...

function composeEmailCallback() {
  var thread = GmailApp.getThreadById(e.threadId);
  var 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 composição a ser realizada quando esse elemento é clicado.
composedEmailTypeComposedEmailTypeUm valor de enumeração que especifica se o rascunho composto é independente ou de resposta.

Retorno

TextButton: este objeto para encadeamento.


setDisabled(disabled)

Define se o botão está desativado. Um botão desativado está esmaecido e não pode ser clicado.

Parâmetros

NomeTipoDescrição
disabledBooleanO estado desativado.

Retorno

TextButton: este objeto para encadeamento.


setOnClickAction(action)

Define uma ação que é executada quando o objeto é clicado. Um objeto de interface só pode ter um destes 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 retorne um objeto ActionResponse.

// ...

var 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.

Retorno

TextButton: este 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 da criação do objeto OpenLink. Um objeto de interface só pode ter um dos seguintes valores: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType) definido.

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

// ...

var 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 abrir o link a ser realizada quando esse elemento é clicado.

Retorno

TextButton: este objeto para encadeamento.


Define um URL que será aberto quando o objeto for 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: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

Parâmetros

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

Retorno

TextButton: este objeto para encadeamento.


setText(text)

Define o texto que aparece no botão.

Parâmetros

NomeTipoDescrição
textStringO texto que aparece no botão.

Retorno

TextButton: este objeto para encadeamento.


setTextButtonStyle(textButtonStyle)

Define o estilo do botão. Se não for definido, o padrão será o botão TextButtonStyle.OUTLINED.

Parâmetros

NomeTipoDescrição
textButtonStyleTextButtonStyleO estilo do botão.

Retorno

TextButton: este objeto para encadeamento.