Обновление до последней версии Microsoft Graph Toolkit
В этой статье приводятся сведения о критических изменениях, внесенных в версии Microsoft Graph Toolkit, и о том, как эти изменения могут повлиять на решение.
Набор средств Microsoft Graph версии 4.0
Удаление поддержки для ES5 и mgt-loader
Microsoft Graph Toolkit версии 4.0 снижает поддержку ES5 и использует mgt-loader
в качестве способа импорта набора средств в приложении через CDN. Если вы используете mgt-loader
, необходимо изменить код для импорта модулей.
Следующий код:
<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>
Становится следующим:
<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>
Удаление пакета для сборки mgt-spfx
веб-частей SharePoint Framework
Microsoft Graph Toolkit версии 4.0 удаляет @microsoft/mgt-spfx
пакет для создания SharePoint Framework веб-частей. Чтобы обеспечить отличные возможности для разработчиков SharePoint, мы улучшили наш @microsoft/mgt-spfx-utils
пакет и возможности дизамбига , чтобы обеспечить беспроблемную интеграцию между SPFx и набором средств. Это критическое изменение открывает путь к лучшему интерфейсу разработки и дополнительным функциям в будущем.
Перечисления теперь являются строковыми объединениями.
Microsoft Graph Toolkit версии 4.0 изменяет способ определения перечислений. Вместо использования для enum
определения значений набор средств теперь использует строковые объединения. Это изменение обеспечивает улучшенные типизации, а также улучшенный и единообразный интерфейс для разработчиков, особенно для React разработчиков. Это изменение влияет на AvatarType
, ViewType
, UserType
, PersonType
, GroupType
, ResponseType
и PersonCardInteraction
. Например, вместо следующего:ViewType
<Person personQuery="me" view={ViewType.twolines}></Person>
Теперь вы используете ViewType
следующее:
<Person personQuery="me" view="twolines"></Person>
mgt-tasks
— сейчас mgt-planner
Чтобы лучше соответствовать именованию Microsoft 365, mgt-tasks
был переименован в mgt-planner
. Это также означает, что обновленный mgt-planner
компонент больше не поддерживает data-source
переключение на задачи Outlook.
Необходимые разрешения для mgt-person
и mgt-planner
Мы воспользовались возможностью, чтобы упростить и придерживаться подхода с наименьшими привилегиями для разрешений, необходимых mgt-person
для и mgt-planner
.
- В приложениях, использующих
mgt-person
, пользователям может потребоваться согласие на новые области разрешений. Дополнительные сведения см. в таблице разрешений для компонента. - Минимальное разрешение для
mgt-planner
измененных сGroup.ReadWrite.All
наTasks.ReadWrite
для операций записи и сGroup.Read.All
наTasks.Read
для операций чтения.
prepScopes()
теперь известно о областях разрешений, разрешенных
Функция prepScopes()
теперь принимает массив областей, которые проверяются на соответствие набору областей разрешений, разрешенных в настоящее время для текущего пользователя. При обнаружении любой из указанных областей дополнительные области не запрашиваются. Если совпадение не найдено, пользователю предлагается предоставить согласие на первую область в предоставленном массиве областей. Это помогает обеспечить взаимодействие с пользователем и позволяет разработчикам использовать наименее привилегированный подход.
Теперь требуется регистрация компонентов
Разработчики должны явно вызывать функцию register для всех веб-компонентов, используемых в их приложении при использовании компонентов из @microsoft/mgt-components
. Импорт из корневого @microsoft/mgt-components
каталога больше не имеет побочного эффекта автоматической регистрации. Например, вместо использования import { Person } from '@microsoft/mgt-components';
необходимо использовать import { Person } from '@microsoft/mgt-components;
и вызывать registerMgtPersonComponent()
.
Примечание.
Компоненты из @microsoft/mgt-react
автоматически регистрируют базовый веб-компонент при первом использовании. В случаях, когда компоненты React не используются, компоненты не регистрируются автоматически в браузере. Это приводит к критическому изменению, когда эти приложения выдают необработанную разметку веб-компонента, а не используют компоненты оболочки. Убедитесь, что вы используете registerMgt{Name}Component()
функции.
MgtPersonCard
Больше не имеет свойства статической конфигурации
Эта конфигурация перемещена в MgtPersonCardConfig
класс , чтобы позволить разработчикам импортировать конфигурацию и связанную getMgtPersonCardScopes()
функцию на верхнем уровне приложения без автоматического добавления веса полного mgt-person-card
компонента и зависимостей в файл записи для своих приложений. Это помогает уменьшить размер пакетов и улучшить общий опыт разработчика.
mgt-people-picker
не отображает присутствие по умолчанию
Поведение по умолчанию mgt-people-picker
изменяется таким образом, что присутствие пользователя не отображается, если show-presence
не задан атрибут или showPresence
свойство. Это изменение помогает повысить производительность приложений, которым не нужно показывать присутствие и использовать подход с наименьшими привилегиями.
Набор средств Microsoft Graph версии 3.0
Изменена платформа проектирования на веб-компоненты пользовательского интерфейса Fluent
Чтобы обеспечить соответствие требованиям и соответствие современному интерфейсу Microsoft 365, Microsoft Graph Toolkit теперь использует веб-компоненты пользовательского интерфейса Fluent. Мы рекомендуем обновить некоторые стили с помощью системы проектирования Fluent 2.
Многие маркеры проектирования, предоставляемые для настройки внешнего вида наших компонентов, изменились. Дополнительные сведения см. в разделе Пользовательские свойства CSS в статьях для каждого компонента.
Пакет SDK microsoft Graph JS обновлен с версии 2.x до 3.x
Если вы использовали клиент Microsoft Graph через globalProvider
, он был обновлен до версии 3.x. Дополнительные сведения о том, как это изменение может повлиять на вас, см. в руководстве по обновлению пакета SDK для Microsoft Graph JS.
Обновлено с Lit 1.x до Lit 2.x
Если вы создали пользовательские компоненты поверх набора средств, ознакомьтесь с руководством по обновлению lit , чтобы узнать, как это изменение может повлиять на вас.
Изменены структуры объектов и доступны типы для событий, создаваемых нашими компонентами
В этом выпуске структуры объектов некоторых событий изменились, чтобы обеспечить более эффективное взаимодействие с разработчиком. Все события точно типируются с помощью универсального CustomEvent<T>
типа, чтобы помочь вам в доставке высококачественного кода. Дополнительные сведения см. в разделе События статей для каждого компонента.
Разрешения, измененные в средства выбора каналов Teams
Объект MgtTeamsChannelPickerConfig
был удален, а компонент выбора каналов Teams теперь использует Team.ReadBasic.All
только области и Channel.ReadBasic.All
, а не области прежних версий User.Read.All
и Group.Read.All
. Это изменение позволяет приложению использовать подход с наименьшими привилегиями.
Удалено несколько поставщиков
В этом выпуске было удалено несколько поставщиков, чтобы обеспечить безопасность приложений и обеспечить максимальное удобство работы для пользователей (поддержка условного доступа, непрерывная оценка доступа и т. д.). Следующие поставщики были удалены:
- Поставщик Teams
- Поставщик MSAL2 Teams
- Поставщик MSAL
Дальнейшие действия
- Обновите решения до версии 3 набора средств.
- Сообщайте об ошибках и оставляйте запросы на создание функций в GitHub.