Atualizar para a versão mais recente do Microsoft Graph Toolkit

Este artigo fornece um resumo das alterações de interrupção introduzidas nas versões do Microsoft Graph Toolkit e como essas alterações podem afetar sua solução.

Microsoft Graph Toolkit v4.0

Baixar o suporte para eS5 e mgt-loader

O Microsoft Graph Toolkit v4.0 descarta o suporte ao ES5 e usa mgt-loader como forma de importar o kit de ferramentas em seu aplicativo por meio da CDN. Se você estiver usando mgt-loader, deverá alterar o código para importar os módulos.

O seguinte código:

<script src="https://unpkg.com/@microsoft/mgt@3/dist/bundle/mgt-loader.js"></script>
<mgt-msal2-provider client-id="[CLIENT-ID]"></mgt-msal2-provider>
<mgt-login></mgt-login>

Torna-se o seguinte:

<script type="module">
  import { registerMgtComponents, Providers, Msal2Provider } from 'https://unpkg.com/@microsoft/mgt@4';
  Providers.globalProvider = new Msal2Provider({clientId: '[CLIENT-ID]'});
  registerMgtComponents();
</script>

<mgt-login></mgt-login>

Removendo o mgt-spfx pacote para criar web parts Estrutura do SharePoint

O Microsoft Graph Toolkit v4.0 remove o @microsoft/mgt-spfx pacote para criar Estrutura do SharePoint Web Parts. Para garantir uma grande experiência para nossos desenvolvedores do SharePoint, aprimoramos nosso @microsoft/mgt-spfx-utils pacote e nossas funcionalidades de disambiguação para oferecer uma integração contínua entre o SPFx e o kit de ferramentas. Essa alteração de interrupção abre caminho para uma melhor experiência de desenvolvedor e mais recursos no futuro.

Enumes agora são uniões de cadeia de caracteres

O Microsoft Graph Toolkit v4.0 altera a forma como os enumerações são definidos. Em vez de usar enum para definir os valores, o kit de ferramentas agora usa uniões de cadeia de caracteres. Essa alteração fornece melhores digitações e uma experiência de desenvolvedor melhor e uniforme, especialmente para desenvolvedores React. Essa alteração afeta AvatarType, ViewType, UserType, PersonType, GroupType, ResponseTypee PersonCardInteraction. Por exemplo, em vez de usar ViewType assim:

<Person personQuery="me" view={ViewType.twolines}></Person>

Agora você usa ViewType assim:

<Person personQuery="me" view="twolines"></Person>

mgt-tasks é agora mgt-planner

Para se alinhar melhor com a nomenclatura do Microsoft 365, mgt-tasks foi renomeada para mgt-planner. Isso também significa que o componente atualizado mgt-planner não dá mais suporte data-source à alteração para tarefas do Outlook.

Permissões necessárias para mgt-person e mgt-planner

Aproveitamos a oportunidade para simplificar e aderir a uma abordagem menos privilegiada para as permissões exigidas por mgt-person e mgt-planner.

  • Em aplicativos que usam mgt-person, os usuários podem precisar consentir com novos escopos de permissões; para obter detalhes, confira a tabela de permissões do componente.
  • Permissão mínima para mgt-planner alterações de Group.ReadWrite.All para Tasks.ReadWrite para operações de gravação e de para para Tasks.Read operações de Group.Read.All leitura.

prepScopes() agora está ciente dos escopos de permissão consentidos

A prepScopes() função agora aceita uma matriz de escopos que é verificada no conjunto de escopos de permissão consentidos atualmente para o usuário atual. Se algum dos escopos fornecidos for encontrado, nenhum escopo extra será solicitado. Se nenhuma correspondência for encontrada, o usuário será solicitado a consentir com o primeiro escopo na matriz de escopos fornecida. Isso ajuda na experiência do usuário e permite que os desenvolvedores usem uma abordagem menos privilegiada.

O registro de componentes agora é necessário

Os desenvolvedores devem chamar explicitamente a função de registro para todos os componentes Web usados em seu aplicativo ao usar componentes do @microsoft/mgt-components . Importar da raiz de @microsoft/mgt-components não tem mais um efeito colateral de registro automático. Por exemplo, em vez de usar import { Person } from '@microsoft/mgt-components'; você deve usar import { Person } from '@microsoft/mgt-components; e chamar registerMgtPersonComponent().

Observação

Os componentes do @microsoft/mgt-react registro automático do componente Web subjacente quando são usados pela primeira vez. Nos casos em que os componentes React não forem usados, os componentes não serão registrados automaticamente no navegador. Isso leva a uma alteração de interrupção quando esses aplicativos emitem marcação de componente web bruto em vez de usar os componentes do wrapper. Certifique-se de usar as registerMgt{Name}Component() funções.

MgtPersonCard não tem mais uma propriedade de configuração estática

Essa configuração foi movida para a classe para permitir que os MgtPersonCardConfig desenvolvedores importem a configuração e a função associada getMgtPersonCardScopes() no nível superior de seu aplicativo sem adicionar automaticamente o peso do componente completo mgt-person-card e das dependências ao arquivo de entrada para seus aplicativos. Isso ajuda com tamanhos de pacote menores e uma melhor experiência geral do desenvolvedor.

mgt-people-picker não mostra a presença por padrão

O comportamento padrão das mgt-people-picker alterações para que a presença do usuário não seja mostrada, a menos que o show-presence atributo ou a showPresence propriedade seja definido. Essa alteração ajuda a melhorar o desempenho de aplicativos que não precisam mostrar presença e adotar uma abordagem menos privilegiada.

Microsoft Graph Toolkit v3.0

Alterou a estrutura de design para componentes web da interface do usuário fluentes

Para se manter em conformidade e se alinhar com a aparência moderna do Microsoft 365, o Microsoft Graph Toolkit agora usa componentes web fluentes da interface do usuário. Recomendamos que você atualize alguns de seus estilos com o sistema de design fluente 2.

Muitos dos tokens de design fornecidos para personalizar a aparência de nossos componentes foram alterados. Para obter detalhes, consulte a seção propriedades personalizadas do CSS dos artigos para cada componente.

SDK do Microsoft Graph JS atualizado de 2.x para 3.x

Se você estiver usando o cliente do Microsoft Graph por meio do globalProvider, ele foi atualizado para 3.x. Para obter detalhes sobre como essa alteração pode afetar você, consulte Guia de atualização do SDK do Microsoft Graph JS.

Atualizado de Lit 1.x para Lit 2.x

Se você estiver criando componentes personalizados em cima do kit de ferramentas, examine o guia de atualização lit para obter detalhes sobre como essa alteração pode afetar você.

Estruturas de objeto alteradas e digitações estão disponíveis para eventos emitidos por nossos componentes

Nesta versão, as estruturas de objeto de alguns eventos foram alteradas para proporcionar uma melhor experiência de desenvolvedor. Todos os eventos são digitado com precisão usando o CustomEvent<T> tipo genérico para ajudá-lo a fornecer código de alta qualidade. Para obter detalhes, consulte a seção Eventos dos artigos para cada componente.

Permissões alteradas no seletor de canais do Teams

O MgtTeamsChannelPickerConfig foi removido e o componente seletor de canais do Teams agora só usa Team.ReadBasic.All e Channel.ReadBasic.All escopos em vez dos escopos e Group.Read.All herdadosUser.Read.All. Essa alteração permite que seu aplicativo use uma abordagem menos privilegiada.

Removeu vários provedores

Nesta versão, vários provedores foram removidos para garantir que seus aplicativos permaneçam seguros e forneçam a melhor experiência possível para seus usuários (suporte para acesso condicional, avaliação de acesso contínuo e assim por diante). Os seguintes provedores foram removidos:

  • Provedor do Teams
  • Provedor MSAL2 do Teams
  • Provedor MSAL

Próximas etapas

  • Atualize suas soluções para o Kit de Ferramentas versão 3.
  • Relate bugs ou deixe uma solicitação de recurso no GitHub.