Class OverflowMenuItem

OverflowMenuItem

Um OverflowMenuItem com um ícone e um rótulo de texto. É possível desativar o item de menu quando preciso.

Disponível para apps do Google Chat. Na prévia para desenvolvedores dos 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'));

Métodos

MétodoTipo de retornoBreve descrição
setAuthorizationAction(action)OverflowMenuItemDefine uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado.
setComposeAction(action, composedEmailType)OverflowMenuItemDefine uma ação que compõe um e-mail de rascunho quando o objeto é clicado.
setDisabled(disabled)OverflowMenuItemDefine se o item de menu está desativado.
setOnClickAction(action)OverflowMenuItemDefine uma ação que é executada quando o objeto é clicado.
setOnClickOpenLinkAction(action)OverflowMenuItemDefine uma ação que abre um URL em uma guia quando o objeto é clicado.
setOpenLink(openLink)OverflowMenuItemDefine um URL para ser aberto quando o objeto é clicado.
setStartIcon(icon)OverflowMenuItemDefine o ícone principal do item de menu.
setText(text)OverflowMenuItemDefine o título do item de menu.

Documentação detalhada

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 vai ser aberto 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 este elemento é clicado.

Retornar

OverflowMenuItem: este objeto, para encadeamento.


setComposeAction(action, composedEmailType)

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

O parâmetro Action precisa especificar uma função de callback que retorne 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 composição a ser realizada quando este elemento é clicado.
composedEmailTypeComposedEmailTypeUm valor de tipo enumerado que especifica se o rascunho composto é independente ou de resposta.

Retornar

OverflowMenuItem: este objeto, para encadeamento.


setDisabled(disabled)

Define se o item de menu está desativado. Um item desativado fica esmaecido e não pode ser clicado.

Parâmetros

NomeTipoDescrição
disabledBooleanO estado desativado.

Retornar

OverflowMenuItem: este objeto, para encadeamento.


setOnClickAction(action)

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

O parâmetro Action precisa especificar uma função de callback que retorne 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 for clicado.

Retornar

OverflowMenuItem: 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 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 retorne 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 abrir link a ser realizada quando este elemento for clicado.

Retornar

OverflowMenuItem: este objeto, para encadeamento.


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

Parâmetros

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

Retornar

OverflowMenuItem: este objeto, para encadeamento.


setStartIcon(icon)

Define o ícone principal do item de menu.

Parâmetros

NomeTipoDescrição
iconIconImageO ícone a ser mostrado.

Retornar

OverflowMenuItem: este objeto, para encadeamento.


setText(text)

Define o título do item de menu. Obrigatório.

Parâmetros

NomeTipoDescrição
textStringO texto a ser exibido.

Retornar

OverflowMenuItem: este objeto, para encadeamento.