Componente Agenda no Microsoft Graph Toolkit

Cuidado

O Microsoft Graph Toolkit foi preterido. O período de aposentadoria começa em 1º de setembro de 2025, com aposentadoria total planejada para 28 de agosto de 2026. Os desenvolvedores devem migrar para o uso dos SDKs do Microsoft Graph ou outras ferramentas do Microsoft Graph com suporte para criar experiências na Web. Para obter mais informações, consulte o anúncio de substituição.

O mgt-agenda componente Web representa eventos em um calendário de usuário ou grupo. Por padrão, o calendário exibe os eventos atuais do usuário conectado para o dia atual. O componente também pode usar qualquer ponto de extremidade que retorne eventos do Microsoft Graph.

Exemplo

O exemplo a seguir mostra os eventos de calendário do usuário conectado exibidos usando o mgt-agenda componente. Você pode usar o editor de código para ver como as propriedades alteram o comportamento do componente.

Propriedades

Por padrão, o mgt-agenda componente busca eventos do /me/calendarview ponto de extremidade e exibe eventos do dia atual. Existem várias propriedades que você pode usar para alterar esse comportamento.

Atributo Propriedade Descrição
data data Uma cadeia de caracteres que representa a data de início dos eventos a serem obtidos no Microsoft Graph. O valor deve estar em um formato adequado para o construtor Date. Esse valor não terá efeito se o event-query atributo estiver definido.
dias dias O número de dias para buscar no Microsoft Graph. O padrão é 3. Esse valor não terá efeito se o event-query atributo estiver definido.
Mostrar máx. Mostrar Max Um número para indicar o número máximo de eventos a serem mostrados. O valor padrão não está definido (nenhum máximo).
ID de grupo groupId Uma ID de cadeia de caracteres para um calendário de grupo usar em vez do calendário do usuário conectado atual.
consulta de evento eventQuery Uma cadeia de caracteres que representa uma consulta alternativa a ser usada ao buscar eventos do Microsoft Graph. Opcionalmente, adicione o escopo delegado no final da cadeia de caracteres, delimitando-o com | (/groups/GROUP-ID-GUID/calendar/calendarView | group.read.all).
eventos eventos Uma matriz de eventos para obter ou definir a lista de eventos renderizados pelo componente. Use essa propriedade para acessar os eventos carregados pelo componente. Defina esse valor para carregar seus próprios eventos. Os dateatributos , days, ou event-query não terão efeito se definidos pelo desenvolvedor.
Agrupar por dia groupByDay Um valor booliano para agrupar eventos por dia. Por padrão, os eventos não são agrupados.
Fuso horário preferencial preferredTimezone Nome do fuso horário IANA a ser usado ao exibir eventos recuperados do Microsoft Graph; Por exemplo, America/Los_Angeles. Para obter uma lista de fusos horários IANA, consulte Lista de fusos horários do banco de dados de tz (fusos horários do banco de dados tz). Por padrão, os eventos são renderizados usando as configurações de fuso horário atual do dispositivo.

O exemplo a seguir altera o comportamento do componente para buscar dados para uma data específica e até três dias.

<mgt-agenda group-by-day date="May 7, 2019" days="3"></mgt-agenda>

O exemplo a seguir altera o comportamento do componente para buscar dados de uma consulta específica.

<mgt-agenda event-query="/me/events?orderby=start/dateTime"></mgt-agenda>

Propriedades personalizadas CSS

O mgt-agenda componente define essas propriedades personalizadas CSS

<mgt-agenda class="agenda" group-by-day></mgt-agenda>
.agenda {
  --agenda-event-box-shadow: 0px 2px 30px pink;
  --agenda-event-margin: 0px 10px 40px 10px;
  --agenda-event-padding: 8px 0px;
  --agenda-event-background-color: #8d696f;
  --agenda-event-border: dotted 2px white;

  --agenda-header-margin: 3px;
  --agenda-header-font-size: 20px;
  --agenda-header-color: #8d696f;

  --agenda-event-time-font-size: 20px;
  --agenda-event-time-color: white;

  --agenda-event-subject-font-size: 12px;
  --agenda-event-subject-color: white;

  --agenda-event-location-font-size: 20px;
  --agenda-event-location-color: white;

  --agenda-event-attendees-color: gold;
}

Para saber mais, consulte Componentes de estilo.

Métodos

Método Descrição
reload() Chame o método para recarregar o componente com novos dados potenciais com base em suas propriedades.

Modelos

O mgt-agenda componente suporta vários modelos que permitem substituir certas partes do componente. Para especificar um modelo, inclua um <template> elemento dentro de um componente e defina como data-type um dos seguintes valores:

Tipo de dados Contexto de dados Descrição
default events: lista de objetos de evento O modelo padrão substitui todo o componente pelo seu.
event event: objeto de evento O modelo usado para renderizar cada evento.
event-other event: objeto de evento O modelo usado para renderizar outro conteúdo para cada evento.
header header: string O modelo usado para renderizar o cabeçalho para cada dia.
loading Nenhum contexto de dados é passado O modelo usado quando os dados estão sendo carregados.
no-data Nenhum contexto de dados é passado O modelo usado quando nenhum evento está disponível.

Os exemplos a seguir ilustram como usar o event modelo:

<mgt-agenda>
  <template data-type="event">
    <button class="eventButton">
      <div class="event-subject">{{ event.subject }}</div>
      <div data-for="attendee in event.attendees">
        <mgt-person
          person-query="{{ attendee.emailAddress.name }}"
          view="twolines"
        >
        </mgt-person>
      </div>
    </button>
  </template>
  <template data-type="no-data"> There are no events found! </template>
</mgt-agenda>

Para saber mais, consulte modelos.

Eventos

Os eventos a seguir são disparados do controle.

Evento Quando é emitido Dados personalizados Cancelável Bolhas Funciona com modelo personalizado
eventClick O usuário seleciona ou toca em um evento. O evento selecionado Não Não Sim, com o modelo de evento personalizado

Para obter mais informações sobre como lidar com eventos, consulte eventos.

Permissões do Microsoft Graph

Este componente usa as seguintes APIs do Microsoft Graph. Para cada chamada à API, uma das permissões listadas é necessária.

Configuração Permissão API
Padrão. Calendars.ReadBasic, Calendars.Read, Calendars.ReadWrite /me/calendarview
group-id especificado Group.Read.All, Group.ReadWrite.All /groups/{groupId}/calendar/calendarview
event-query especificado Conforme fornecido opcionalmente na event-query A API fornecida no event-query

O componente permite que você especifique uma consulta diferente do Microsoft Graph para chamar (como /groups/{id}/calendar/calendarView). Nesse caso, acrescente a permissão ao final da cadeia de caracteres, delimitada por |.

Subcomponentes

O mgt-agenda componente consiste em um ou mais subcomponentes que podem exigir permissões diferentes das listadas anteriormente. Para obter mais informações, consulte a documentação de cada subcomponente: mgt-people.

Autenticação

O controle usa o provedor de autenticação global descrito na documentação de autenticação.

Cache

O mgt-agenda componente não armazena nenhum dado em cache.

Estenda para mais controle

Para cenários mais complexos ou uma experiência de usuário verdadeiramente personalizada, esse componente expõe vários protected métodos render* para substituição em extensões de componente.

Método Descrição
renderLoading Renderiza um estado de carregamento enquanto o componente é carregado.
renderNoData Renderiza um estado de dados vazio.
renderGroups Classifica os dados do evento em grupos e os renderiza com cabeçalhos de grupo.
renderHeader Renderiza um cabeçalho de grupo.
renderEvents Renderiza uma lista de objetos de evento.
renderEvent Renderiza um evento singular e todas as suas partes.
renderTitle Renderiza a parte do título do evento.
renderLocation Renderiza a parte do local do evento.
renderAttendees Renderiza a parte dos participantes do evento.
renderOther Renderiza outros conteúdos de evento.

Localização

O controle não expõe nenhuma variável de localização.