@pnp/cli-microsoft365 7.3.0-beta.73848f3 → 7.3.0-beta.9479ed4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/allCommands.json +1 -1
- package/allCommandsFull.json +1 -1
- package/dist/Auth.js +7 -5
- package/dist/Command.js +10 -13
- package/dist/api.js +2 -3
- package/dist/appInsights.js +2 -1
- package/dist/autocomplete.js +4 -6
- package/dist/chili/chili.js +1 -2
- package/dist/cli/cli.js +880 -0
- package/dist/index.js +2 -10
- package/dist/m365/aad/commands/administrativeunit/administrativeunit-member-add.js +137 -0
- package/dist/m365/aad/commands/administrativeunit/administrativeunit-member-get.js +112 -0
- package/dist/m365/aad/commands/administrativeunit/administrativeunit-member-list.js +138 -0
- package/dist/m365/aad/commands/administrativeunit/administrativeunit-remove.js +2 -2
- package/dist/m365/aad/commands/app/app-get.js +2 -2
- package/dist/m365/aad/commands/app/app-permission-add.js +237 -0
- package/dist/m365/aad/commands/app/app-remove.js +3 -3
- package/dist/m365/aad/commands/app/app-role-add.js +2 -2
- package/dist/m365/aad/commands/app/app-role-list.js +2 -2
- package/dist/m365/aad/commands/app/app-role-remove.js +4 -4
- package/dist/m365/aad/commands/app/app-set.js +2 -2
- package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +2 -2
- package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +2 -2
- package/dist/m365/aad/commands/group/group-list.js +71 -3
- package/dist/m365/aad/commands/group/group-remove.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-remove.js +2 -2
- package/dist/m365/aad/commands/m365group/m365group-recyclebinitem-clear.js +2 -2
- package/dist/m365/aad/commands/m365group/m365group-recyclebinitem-remove.js +3 -3
- package/dist/m365/aad/commands/m365group/m365group-recyclebinitem-restore.js +2 -2
- package/dist/m365/aad/commands/m365group/m365group-remove.js +2 -2
- package/dist/m365/aad/commands/m365group/m365group-teamify.js +2 -2
- package/dist/m365/aad/commands/m365group/m365group-user-remove.js +2 -2
- package/dist/m365/aad/commands/oauth2grant/oauth2grant-remove.js +2 -2
- package/dist/m365/aad/commands/siteclassification/siteclassification-disable.js +2 -2
- package/dist/m365/aad/commands/sp/sp-add.js +2 -2
- package/dist/m365/aad/commands/sp/sp-get.js +2 -2
- package/dist/m365/aad/commands/user/user-get.js +2 -2
- package/dist/m365/aad/commands/user/user-license-remove.js +2 -2
- package/dist/m365/aad/commands/user/user-recyclebinitem-clear.js +2 -2
- package/dist/m365/aad/commands/user/user-recyclebinitem-remove.js +2 -2
- package/dist/m365/aad/commands/user/user-remove.js +2 -2
- package/dist/m365/aad/commands.js +5 -1
- package/dist/m365/app/commands/app-get.js +2 -2
- package/dist/m365/app/commands/app-open.js +2 -2
- package/dist/m365/app/commands/permission/permission-list.js +2 -2
- package/dist/m365/base/AppCommand.js +2 -2
- package/dist/m365/base/PowerAutomateCommand.js +18 -0
- package/dist/m365/booking/commands/business/business-get.js +2 -2
- package/dist/m365/cli/commands/cli-doctor.js +2 -2
- package/dist/m365/cli/commands/cli-reconsent.js +2 -2
- package/dist/m365/cli/commands/config/config-get.js +2 -2
- package/dist/m365/cli/commands/config/config-list.js +2 -2
- package/dist/m365/cli/commands/config/config-reset.js +3 -3
- package/dist/m365/cli/commands/config/config-set.js +4 -4
- package/dist/m365/commands/docs.js +2 -2
- package/dist/m365/commands/login.js +4 -4
- package/dist/m365/commands/setup.js +8 -8
- package/dist/m365/context/commands/context-remove.js +2 -2
- package/dist/m365/context/commands/option/option-remove.js +2 -2
- package/dist/m365/external/commands/connection/connection-doctor.js +423 -0
- package/dist/m365/external/commands/connection/connection-remove.js +3 -3
- package/dist/m365/external/commands/connection/connection-schema-add.js +36 -3
- package/dist/m365/external/commands/item/item-add.js +144 -0
- package/dist/m365/external/commands.js +3 -1
- package/dist/m365/flow/commands/environment/environment-get.js +3 -3
- package/dist/m365/flow/commands/environment/environment-list.js +3 -3
- package/dist/m365/flow/commands/flow-disable.js +3 -3
- package/dist/m365/flow/commands/flow-enable.js +3 -3
- package/dist/m365/flow/commands/flow-get.js +3 -3
- package/dist/m365/flow/commands/flow-list.js +14 -12
- package/dist/m365/flow/commands/flow-remove.js +5 -5
- package/dist/m365/flow/commands/owner/owner-ensure.js +3 -3
- package/dist/m365/flow/commands/owner/owner-list.js +5 -5
- package/dist/m365/flow/commands/owner/owner-remove.js +5 -5
- package/dist/m365/flow/commands/run/run-cancel.js +5 -5
- package/dist/m365/flow/commands/run/run-get.js +3 -3
- package/dist/m365/flow/commands/run/run-list.js +8 -7
- package/dist/m365/flow/commands/run/run-resubmit.js +6 -6
- package/dist/m365/graph/commands/changelog/changelog-list.js +3 -3
- package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +2 -2
- package/dist/m365/outlook/commands/message/message-list.js +2 -2
- package/dist/m365/outlook/commands/message/message-move.js +2 -2
- package/dist/m365/pa/commands/app/app-consent-set.js +2 -2
- package/dist/m365/pa/commands/app/app-get.js +2 -2
- package/dist/m365/pa/commands/app/app-permission-remove.js +2 -2
- package/dist/m365/pa/commands/app/app-remove.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-get.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-remove.js +3 -3
- package/dist/m365/planner/commands/bucket/bucket-set.js +2 -2
- package/dist/m365/planner/commands/plan/plan-remove.js +2 -2
- package/dist/m365/planner/commands/roster/roster-member-remove.js +3 -3
- package/dist/m365/planner/commands/roster/roster-remove.js +2 -2
- package/dist/m365/planner/commands/task/task-checklistitem-add.js +2 -2
- package/dist/m365/planner/commands/task/task-checklistitem-list.js +2 -2
- package/dist/m365/planner/commands/task/task-checklistitem-remove.js +2 -2
- package/dist/m365/planner/commands/task/task-get.js +3 -3
- package/dist/m365/planner/commands/task/task-reference-remove.js +2 -2
- package/dist/m365/planner/commands/task/task-remove.js +4 -4
- package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-get.js +2 -2
- package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-remove.js +3 -3
- package/dist/m365/pp/commands/card/card-clone.js +2 -2
- package/dist/m365/pp/commands/card/card-get.js +2 -2
- package/dist/m365/pp/commands/card/card-remove.js +3 -3
- package/dist/m365/pp/commands/chatbot/chatbot-get.js +2 -2
- package/dist/m365/pp/commands/chatbot/chatbot-remove.js +3 -3
- package/dist/m365/pp/commands/dataverse/dataverse-table-remove.js +2 -2
- package/dist/m365/pp/commands/dataverse/dataverse-table-row-remove.js +2 -2
- package/dist/m365/pp/commands/managementapp/managementapp-add.js +2 -2
- package/dist/m365/pp/commands/solution/solution-get.js +2 -2
- package/dist/m365/pp/commands/solution/solution-list.js +2 -2
- package/dist/m365/pp/commands/solution/solution-publish.js +2 -2
- package/dist/m365/pp/commands/solution/solution-publisher-remove.js +3 -3
- package/dist/m365/pp/commands/solution/solution-remove.js +3 -3
- package/dist/m365/purview/commands/retentionevent/retentionevent-remove.js +2 -2
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-remove.js +2 -2
- package/dist/m365/purview/commands/retentionlabel/retentionlabel-remove.js +2 -2
- package/dist/m365/spfx/commands/project/project-permissions-grant.js +2 -2
- package/dist/m365/spo/commands/app/app-add.js +2 -2
- package/dist/m365/spo/commands/app/app-remove.js +2 -2
- package/dist/m365/spo/commands/app/app-retract.js +2 -2
- package/dist/m365/spo/commands/app/app-uninstall.js +2 -2
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-get.js +2 -2
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +3 -3
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-set.js +2 -2
- package/dist/m365/spo/commands/cdn/cdn-origin-remove.js +2 -2
- package/dist/m365/spo/commands/commandset/commandset-get.js +2 -2
- package/dist/m365/spo/commands/commandset/commandset-remove.js +3 -3
- package/dist/m365/spo/commands/commandset/commandset-set.js +2 -2
- package/dist/m365/spo/commands/contenttype/contenttype-add.js +2 -2
- package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +2 -2
- package/dist/m365/spo/commands/contenttype/contenttype-remove.js +2 -2
- package/dist/m365/spo/commands/customaction/customaction-add.js +1 -1
- package/dist/m365/spo/commands/customaction/customaction-clear.js +2 -2
- package/dist/m365/spo/commands/customaction/customaction-get.js +3 -3
- package/dist/m365/spo/commands/customaction/customaction-remove.js +3 -3
- package/dist/m365/spo/commands/eventreceiver/eventreceiver-get.js +2 -2
- package/dist/m365/spo/commands/eventreceiver/eventreceiver-remove.js +3 -3
- package/dist/m365/spo/commands/field/field-remove.js +2 -2
- package/dist/m365/spo/commands/file/file-add.js +1 -1
- package/dist/m365/spo/commands/file/file-checkout-undo.js +2 -2
- package/dist/m365/spo/commands/file/file-remove.js +2 -2
- package/dist/m365/spo/commands/file/file-rename.js +2 -2
- package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +2 -2
- package/dist/m365/spo/commands/file/file-roleassignment-add.js +5 -5
- package/dist/m365/spo/commands/file/file-roleassignment-remove.js +5 -5
- package/dist/m365/spo/commands/file/file-roleinheritance-break.js +3 -3
- package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +3 -3
- package/dist/m365/spo/commands/file/file-sharinginfo-get.js +2 -2
- package/dist/m365/spo/commands/file/file-sharinglink-clear.js +3 -3
- package/dist/m365/spo/commands/file/file-sharinglink-list.js +2 -2
- package/dist/m365/spo/commands/file/file-sharinglink-remove.js +2 -2
- package/dist/m365/spo/commands/file/file-version-clear.js +2 -2
- package/dist/m365/spo/commands/file/file-version-remove.js +2 -2
- package/dist/m365/spo/commands/file/file-version-restore.js +2 -2
- package/dist/m365/spo/commands/folder/folder-remove.js +2 -2
- package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +2 -2
- package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +4 -4
- package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +4 -4
- package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +2 -2
- package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +2 -2
- package/dist/m365/spo/commands/group/group-list.js +2 -2
- package/dist/m365/spo/commands/group/group-member-remove.js +9 -9
- package/dist/m365/spo/commands/group/group-remove.js +2 -2
- package/dist/m365/spo/commands/group/group-set.js +2 -2
- package/dist/m365/spo/commands/homesite/homesite-remove.js +2 -2
- package/dist/m365/spo/commands/hubsite/hubsite-connect.js +2 -2
- package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +3 -3
- package/dist/m365/spo/commands/hubsite/hubsite-get.js +4 -4
- package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +2 -2
- package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +2 -2
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +2 -2
- package/dist/m365/spo/commands/list/list-contenttype-remove.js +2 -2
- package/dist/m365/spo/commands/list/list-remove.js +2 -2
- package/dist/m365/spo/commands/list/list-retentionlabel-remove.js +2 -2
- package/dist/m365/spo/commands/list/list-roleassignment-remove.js +4 -4
- package/dist/m365/spo/commands/list/list-roleinheritance-break.js +2 -2
- package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +2 -2
- package/dist/m365/spo/commands/list/list-view-field-remove.js +2 -2
- package/dist/m365/spo/commands/list/list-view-remove.js +2 -2
- package/dist/m365/spo/commands/list/list-webhook-remove.js +2 -2
- package/dist/m365/spo/commands/listitem/listitem-attachment-remove.js +2 -2
- package/dist/m365/spo/commands/listitem/listitem-batch-add.js +18 -7
- package/dist/m365/spo/commands/listitem/listitem-list.js +2 -2
- package/dist/m365/spo/commands/listitem/listitem-remove.js +2 -2
- package/dist/m365/spo/commands/listitem/listitem-retentionlabel-remove.js +2 -2
- package/dist/m365/spo/commands/listitem/listitem-roleassignment-add.js +4 -4
- package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +4 -4
- package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +2 -2
- package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +2 -2
- package/dist/m365/spo/commands/navigation/navigation-node-remove.js +2 -2
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +2 -2
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +2 -2
- package/dist/m365/spo/commands/page/page-add.js +10 -31
- package/dist/m365/spo/commands/page/page-column-get.js +2 -2
- package/dist/m365/spo/commands/page/page-column-list.js +2 -2
- package/dist/m365/spo/commands/page/page-remove.js +2 -2
- package/dist/m365/spo/commands/page/page-section-get.js +2 -2
- package/dist/m365/spo/commands/page/page-section-list.js +2 -2
- package/dist/m365/spo/commands/page/page-set.js +5 -5
- package/dist/m365/spo/commands/propertybag/propertybag-remove.js +2 -2
- package/dist/m365/spo/commands/roledefinition/roledefinition-remove.js +2 -2
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-approve.js +2 -2
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +2 -2
- package/dist/m365/spo/commands/site/site-apppermission-remove.js +2 -2
- package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +2 -2
- package/dist/m365/spo/commands/site/site-recyclebinitem-clear.js +2 -2
- package/dist/m365/spo/commands/site/site-recyclebinitem-move.js +2 -2
- package/dist/m365/spo/commands/site/site-recyclebinitem-remove.js +2 -2
- package/dist/m365/spo/commands/site/site-remove.js +2 -2
- package/dist/m365/spo/commands/site/site-set.js +3 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +2 -2
- package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +2 -2
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +2 -2
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +2 -2
- package/dist/m365/spo/commands/sitescript/sitescript-remove.js +2 -2
- package/dist/m365/spo/commands/spo-search.js +2 -2
- package/dist/m365/spo/commands/storageentity/storageentity-remove.js +2 -2
- package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +5 -5
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-add.js +5 -5
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-get.js +2 -2
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +3 -3
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-set.js +4 -4
- package/dist/m365/spo/commands/tenant/tenant-commandset-add.js +5 -5
- package/dist/m365/spo/commands/tenant/tenant-commandset-get.js +2 -2
- package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +3 -3
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +2 -2
- package/dist/m365/spo/commands/term/term-get.js +2 -2
- package/dist/m365/spo/commands/term/term-list.js +2 -2
- package/dist/m365/spo/commands/theme/theme-remove.js +2 -2
- package/dist/m365/spo/commands/user/user-remove.js +2 -2
- package/dist/m365/spo/commands/userprofile/userprofile-get.js +2 -2
- package/dist/m365/spo/commands/web/web-remove.js +2 -2
- package/dist/m365/spo/commands/web/web-roleassignment-add.js +4 -4
- package/dist/m365/spo/commands/web/web-roleassignment-remove.js +4 -4
- package/dist/m365/spo/commands/web/web-roleinheritance-break.js +2 -2
- package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +2 -2
- package/dist/m365/teams/commands/app/app-install.js +32 -5
- package/dist/m365/teams/commands/app/app-remove.js +3 -3
- package/dist/m365/teams/commands/app/app-uninstall.js +2 -2
- package/dist/m365/teams/commands/app/app-update.js +2 -2
- package/dist/m365/teams/commands/cache/cache-remove.js +2 -2
- package/dist/m365/teams/commands/channel/channel-add.js +2 -2
- package/dist/m365/teams/commands/channel/channel-member-add.js +2 -2
- package/dist/m365/teams/commands/channel/channel-member-remove.js +3 -3
- package/dist/m365/teams/commands/channel/channel-member-set.js +2 -2
- package/dist/m365/teams/commands/channel/channel-remove.js +2 -2
- package/dist/m365/teams/commands/chat/chat-get.js +3 -3
- package/dist/m365/teams/commands/chat/chat-member-remove.js +2 -2
- package/dist/m365/teams/commands/chat/chat-message-send.js +3 -3
- package/dist/m365/teams/commands/meeting/meeting-add.js +151 -0
- package/dist/m365/teams/commands/meeting/meeting-attendancereport-list.js +2 -2
- package/dist/m365/teams/commands/tab/tab-remove.js +2 -2
- package/dist/m365/teams/commands/team/team-app-list.js +3 -3
- package/dist/m365/teams/commands/team/team-remove.js +2 -2
- package/dist/m365/teams/commands/user/user-app-add.js +23 -5
- package/dist/m365/teams/commands/user/user-app-list.js +2 -2
- package/dist/m365/teams/commands/user/user-app-remove.js +35 -4
- package/dist/m365/teams/commands.js +2 -1
- package/dist/m365/tenant/commands/people/people-profilecardproperty-remove.js +2 -2
- package/dist/m365/todo/commands/list/list-remove.js +2 -2
- package/dist/m365/todo/commands/task/task-get.js +2 -2
- package/dist/m365/todo/commands/task/task-list.js +2 -2
- package/dist/m365/todo/commands/task/task-remove.js +2 -2
- package/dist/m365/viva/commands/connections/connections-app-create.js +2 -2
- package/dist/m365/yammer/commands/group/group-user-remove.js +2 -2
- package/dist/m365/yammer/commands/message/message-like-set.js +2 -2
- package/dist/m365/yammer/commands/message/message-remove.js +2 -2
- package/dist/m365/yammer/commands/yammer-search.js +2 -2
- package/dist/telemetry.js +2 -10
- package/dist/utils/aadAdministrativeUnit.js +5 -5
- package/dist/utils/aadDevice.js +25 -0
- package/dist/utils/aadGroup.js +3 -3
- package/dist/utils/prompt.js +4 -7
- package/dist/utils/validation.js +5 -2
- package/docs/docs/cmd/aad/administrativeunit/administrativeunit-member-add.mdx +93 -0
- package/docs/docs/cmd/aad/administrativeunit/administrativeunit-member-get.mdx +130 -0
- package/docs/docs/cmd/aad/administrativeunit/administrativeunit-member-list.mdx +312 -0
- package/docs/docs/cmd/aad/app/app-permission-add.mdx +62 -0
- package/docs/docs/cmd/aad/group/group-list.mdx +11 -0
- package/docs/docs/cmd/aad/user/user-password-validate.mdx +2 -2
- package/docs/docs/cmd/adaptivecard/adaptivecard-send.mdx +1 -1
- package/docs/docs/cmd/external/connection/connection-doctor.mdx +182 -0
- package/docs/docs/cmd/external/connection/connection-schema-add.mdx +14 -1
- package/docs/docs/cmd/external/item/item-add.mdx +145 -0
- package/docs/docs/cmd/flow/environment/environment-get.mdx +1 -1
- package/docs/docs/cmd/flow/environment/environment-list.mdx +1 -1
- package/docs/docs/cmd/flow/flow-disable.mdx +1 -1
- package/docs/docs/cmd/flow/flow-enable.mdx +1 -1
- package/docs/docs/cmd/flow/flow-export.mdx +1 -1
- package/docs/docs/cmd/flow/flow-get.mdx +1 -1
- package/docs/docs/cmd/flow/flow-list.mdx +1 -1
- package/docs/docs/cmd/flow/run/run-cancel.mdx +1 -1
- package/docs/docs/cmd/flow/run/run-get.mdx +1 -1
- package/docs/docs/cmd/flow/run/run-list.mdx +1 -1
- package/docs/docs/cmd/flow/run/run-resubmit.mdx +1 -1
- package/docs/docs/cmd/graph/changelog/changelog-list.mdx +1 -1
- package/docs/docs/cmd/graph/schemaextension/schemaextension-add.mdx +1 -1
- package/docs/docs/cmd/graph/schemaextension/schemaextension-set.mdx +1 -1
- package/docs/docs/cmd/onedrive/report/report-activityfilecounts.mdx +0 -3
- package/docs/docs/cmd/onedrive/report/report-activityusercounts.mdx +0 -3
- package/docs/docs/cmd/onedrive/report/report-activityuserdetail.mdx +0 -3
- package/docs/docs/cmd/onedrive/report/report-usageaccountcounts.mdx +0 -3
- package/docs/docs/cmd/onedrive/report/report-usageaccountdetail.mdx +0 -3
- package/docs/docs/cmd/onedrive/report/report-usagefilecounts.mdx +0 -3
- package/docs/docs/cmd/onedrive/report/report-usagestorage.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailactivitycounts.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailactivityusercounts.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailactivityuserdetail.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailappusageappsusercounts.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailappusageusercounts.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailappusageuserdetail.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailappusageversionsusercounts.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailboxusagedetail.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailboxusagemailboxcount.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailboxusagequotastatusmailboxcounts.mdx +0 -3
- package/docs/docs/cmd/outlook/report/report-mailboxusagestorage.mdx +0 -3
- package/docs/docs/cmd/pa/app/app-get.mdx +1 -1
- package/docs/docs/cmd/pa/app/app-list.mdx +1 -1
- package/docs/docs/cmd/pa/connector/connector-export.mdx +1 -1
- package/docs/docs/cmd/pa/connector/connector-list.mdx +1 -1
- package/docs/docs/cmd/pa/environment/environment-get.mdx +1 -1
- package/docs/docs/cmd/pa/environment/environment-list.mdx +1 -1
- package/docs/docs/cmd/planner/bucket/bucket-add.mdx +1 -1
- package/docs/docs/cmd/planner/bucket/bucket-get.mdx +1 -1
- package/docs/docs/cmd/planner/bucket/bucket-list.mdx +1 -1
- package/docs/docs/cmd/planner/bucket/bucket-remove.mdx +1 -1
- package/docs/docs/cmd/planner/bucket/bucket-set.mdx +1 -1
- package/docs/docs/cmd/planner/plan/plan-get.mdx +1 -1
- package/docs/docs/cmd/planner/plan/plan-list.mdx +1 -1
- package/docs/docs/cmd/planner/plan/plan-set.mdx +1 -1
- package/docs/docs/cmd/planner/roster/roster-add.mdx +2 -2
- package/docs/docs/cmd/planner/roster/roster-get.mdx +1 -1
- package/docs/docs/cmd/planner/roster/roster-member-add.mdx +1 -1
- package/docs/docs/cmd/planner/roster/roster-member-get.mdx +1 -1
- package/docs/docs/cmd/planner/roster/roster-member-list.mdx +1 -1
- package/docs/docs/cmd/planner/roster/roster-member-remove.mdx +2 -2
- package/docs/docs/cmd/planner/roster/roster-plan-list.mdx +1 -1
- package/docs/docs/cmd/planner/roster/roster-remove.mdx +2 -2
- package/docs/docs/cmd/planner/task/task-add.mdx +1 -1
- package/docs/docs/cmd/planner/task/task-list.mdx +2 -2
- package/docs/docs/cmd/planner/task/task-remove.mdx +1 -1
- package/docs/docs/cmd/planner/task/task-set.mdx +1 -1
- package/docs/docs/cmd/pp/environment/environment-get.mdx +1 -1
- package/docs/docs/cmd/pp/environment/environment-list.mdx +1 -1
- package/docs/docs/cmd/pp/tenant/tenant-settings-list.mdx +1 -1
- package/docs/docs/cmd/pp/tenant/tenant-settings-set.mdx +1 -1
- package/docs/docs/cmd/purview/retentionevent/retentionevent-add.mdx +1 -1
- package/docs/docs/cmd/purview/retentionevent/retentionevent-get.mdx +1 -1
- package/docs/docs/cmd/purview/retentionevent/retentionevent-list.mdx +1 -1
- package/docs/docs/cmd/purview/retentionevent/retentionevent-remove.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-add.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-get.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-list.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-remove.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-set.mdx +1 -1
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-add.mdx +1 -1
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-get.mdx +1 -1
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-list.mdx +1 -1
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-remove.mdx +1 -1
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-set.mdx +1 -1
- package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-get.mdx +2 -2
- package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-list.mdx +2 -2
- package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-policysettings-list.mdx +2 -2
- package/docs/docs/cmd/skype/report/report-activitycounts.mdx +0 -2
- package/docs/docs/cmd/skype/report/report-activityusercounts.mdx +0 -3
- package/docs/docs/cmd/skype/report/report-activityuserdetail.mdx +0 -3
- package/docs/docs/cmd/spfx/project/project-externalize.mdx +1 -1
- package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-add.mdx +1 -1
- package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-set.mdx +1 -1
- package/docs/docs/cmd/spo/commandset/commandset-add.mdx +1 -1
- package/docs/docs/cmd/spo/commandset/commandset-set.mdx +1 -1
- package/docs/docs/cmd/spo/contenttype/contenttype-set.mdx +1 -1
- package/docs/docs/cmd/spo/customaction/customaction-add.mdx +1 -1
- package/docs/docs/cmd/spo/customaction/customaction-set.mdx +1 -1
- package/docs/docs/cmd/spo/eventreceiver/eventreceiver-remove.mdx +1 -1
- package/docs/docs/cmd/spo/field/field-set.mdx +1 -1
- package/docs/docs/cmd/spo/list/list-sensitivitylabel-ensure.mdx +1 -1
- package/docs/docs/cmd/spo/list/list-view-set.mdx +1 -1
- package/docs/docs/cmd/spo/listitem/listitem-add.mdx +1 -1
- package/docs/docs/cmd/spo/listitem/listitem-batch-add.mdx +26 -4
- package/docs/docs/cmd/spo/listitem/listitem-set.mdx +1 -1
- package/docs/docs/cmd/spo/page/page-clientsidewebpart-add.mdx +1 -1
- package/docs/docs/cmd/spo/page/page-control-set.mdx +1 -1
- package/docs/docs/cmd/spo/page/page-set.mdx +1 -1
- package/docs/docs/cmd/spo/report/report-activityfilecounts.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-activitypages.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-activityusercounts.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-activityuserdetail.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-siteusagedetail.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-siteusagefilecounts.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-siteusagepages.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-siteusagesitecounts.mdx +0 -3
- package/docs/docs/cmd/spo/report/report-siteusagestorage.mdx +0 -3
- package/docs/docs/cmd/spo/site/site-groupify.mdx +1 -1
- package/docs/docs/cmd/spo/site/site-recyclebinitem-clear.mdx +1 -1
- package/docs/docs/cmd/spo/site/site-recyclebinitem-remove.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-add.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-set.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-commandset-add.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-commandset-set.mdx +1 -1
- package/docs/docs/cmd/spo/term/term-add.mdx +1 -1
- package/docs/docs/cmd/spo/term/term-group-add.mdx +1 -1
- package/docs/docs/cmd/spo/term/term-set-add.mdx +1 -1
- package/docs/docs/cmd/teams/app/app-install.mdx +11 -2
- package/docs/docs/cmd/teams/meeting/meeting-add.mdx +283 -0
- package/docs/docs/cmd/teams/meeting/meeting-transcript-list.mdx +2 -2
- package/docs/docs/cmd/teams/report/report-deviceusagedistributionusercounts.mdx +0 -3
- package/docs/docs/cmd/teams/report/report-deviceusageusercounts.mdx +0 -3
- package/docs/docs/cmd/teams/report/report-deviceusageuserdetail.mdx +0 -3
- package/docs/docs/cmd/teams/report/report-useractivitycounts.mdx +0 -3
- package/docs/docs/cmd/teams/report/report-useractivityusercounts.mdx +0 -3
- package/docs/docs/cmd/teams/report/report-useractivityuserdetail.mdx +0 -3
- package/docs/docs/cmd/teams/user/user-app-add.mdx +12 -3
- package/docs/docs/cmd/teams/user/user-app-remove.mdx +15 -6
- package/docs/docs/cmd/tenant/people/people-profilecardproperty-add.mdx +1 -1
- package/docs/docs/cmd/tenant/people/people-profilecardproperty-remove.mdx +1 -1
- package/docs/docs/cmd/tenant/people/people-profilecardproperty-set.mdx +1 -1
- package/docs/docs/cmd/tenant/report/report-activeusercounts.mdx +0 -3
- package/docs/docs/cmd/tenant/report/report-activeuserdetail.mdx +0 -3
- package/docs/docs/cmd/tenant/report/report-servicesusercounts.mdx +0 -3
- package/docs/docs/cmd/yammer/group/group-list.mdx +1 -1
- package/docs/docs/cmd/yammer/group/group-user-add.mdx +1 -1
- package/docs/docs/cmd/yammer/group/group-user-remove.mdx +1 -1
- package/docs/docs/cmd/yammer/message/message-add.mdx +1 -1
- package/docs/docs/cmd/yammer/message/message-get.mdx +1 -1
- package/docs/docs/cmd/yammer/message/message-like-set.mdx +1 -1
- package/docs/docs/cmd/yammer/message/message-list.mdx +1 -1
- package/docs/docs/cmd/yammer/message/message-remove.mdx +1 -1
- package/docs/docs/cmd/yammer/network/network-list.mdx +1 -1
- package/docs/docs/cmd/yammer/report/report-activitycounts.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-activityusercounts.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-activityuserdetail.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-deviceusagedistributionusercounts.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-deviceusageusercounts.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-deviceusageuserdetail.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-groupsactivitycounts.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-groupsactivitydetail.mdx +0 -3
- package/docs/docs/cmd/yammer/report/report-groupsactivitygroupcounts.mdx +0 -3
- package/docs/docs/cmd/yammer/user/user-get.mdx +1 -1
- package/docs/docs/cmd/yammer/user/user-list.mdx +1 -1
- package/docs/docs/cmd/yammer/yammer-search.mdx +1 -1
- package/npm-shrinkwrap.json +1012 -410
- package/package.json +26 -25
- package/dist/cli/Cli.js +0 -857
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
2
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
3
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
+
};
|
|
6
|
+
var _AadAppPermissionAddCommand_instances, _AadAppPermissionAddCommand_initTelemetry, _AadAppPermissionAddCommand_initOptions, _AadAppPermissionAddCommand_initValidators, _AadAppPermissionAddCommand_initOptionSets;
|
|
7
|
+
import { odata } from "../../../../utils/odata.js";
|
|
8
|
+
import GraphCommand from "../../../base/GraphCommand.js";
|
|
9
|
+
import commands from "../../commands.js";
|
|
10
|
+
import request from "../../../../request.js";
|
|
11
|
+
import { validation } from "../../../../utils/validation.js";
|
|
12
|
+
var ScopeType;
|
|
13
|
+
(function (ScopeType) {
|
|
14
|
+
ScopeType["Role"] = "Role";
|
|
15
|
+
ScopeType["Scope"] = "Scope";
|
|
16
|
+
})(ScopeType || (ScopeType = {}));
|
|
17
|
+
class AadAppPermissionAddCommand extends GraphCommand {
|
|
18
|
+
get name() {
|
|
19
|
+
return commands.APP_PERMISSION_ADD;
|
|
20
|
+
}
|
|
21
|
+
get description() {
|
|
22
|
+
return 'Adds the specified application and/or delegated permissions to a specified Entra ID (Azure AD) app';
|
|
23
|
+
}
|
|
24
|
+
constructor() {
|
|
25
|
+
super();
|
|
26
|
+
_AadAppPermissionAddCommand_instances.add(this);
|
|
27
|
+
__classPrivateFieldGet(this, _AadAppPermissionAddCommand_instances, "m", _AadAppPermissionAddCommand_initTelemetry).call(this);
|
|
28
|
+
__classPrivateFieldGet(this, _AadAppPermissionAddCommand_instances, "m", _AadAppPermissionAddCommand_initOptions).call(this);
|
|
29
|
+
__classPrivateFieldGet(this, _AadAppPermissionAddCommand_instances, "m", _AadAppPermissionAddCommand_initValidators).call(this);
|
|
30
|
+
__classPrivateFieldGet(this, _AadAppPermissionAddCommand_instances, "m", _AadAppPermissionAddCommand_initOptionSets).call(this);
|
|
31
|
+
}
|
|
32
|
+
async commandAction(logger, args) {
|
|
33
|
+
try {
|
|
34
|
+
const appObject = await this.getAppObject(args.options);
|
|
35
|
+
const servicePrincipals = await this.getServicePrincipals();
|
|
36
|
+
const appPermissions = [];
|
|
37
|
+
if (args.options.delegatedPermissions) {
|
|
38
|
+
const delegatedPermissions = await this.getRequiredResourceAccessForApis(servicePrincipals, args.options.delegatedPermissions, ScopeType.Scope, appPermissions, logger);
|
|
39
|
+
this.addPermissionsToResourceArray(delegatedPermissions, appObject.requiredResourceAccess);
|
|
40
|
+
}
|
|
41
|
+
if (args.options.applicationPermissions) {
|
|
42
|
+
const applicationPermissions = await this.getRequiredResourceAccessForApis(servicePrincipals, args.options.applicationPermissions, ScopeType.Role, appPermissions, logger);
|
|
43
|
+
this.addPermissionsToResourceArray(applicationPermissions, appObject.requiredResourceAccess);
|
|
44
|
+
}
|
|
45
|
+
const addPermissionsRequestOptions = {
|
|
46
|
+
url: `${this.resource}/v1.0/applications/${appObject.id}`,
|
|
47
|
+
headers: {
|
|
48
|
+
accept: 'application/json;odata.metadata=none'
|
|
49
|
+
},
|
|
50
|
+
responseType: 'json',
|
|
51
|
+
data: {
|
|
52
|
+
requiredResourceAccess: appObject.requiredResourceAccess
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
await request.patch(addPermissionsRequestOptions);
|
|
56
|
+
if (args.options.grantAdminConsent) {
|
|
57
|
+
const appServicePrincipal = servicePrincipals.find(sp => sp.appId === appObject.appId);
|
|
58
|
+
await this.grantAdminConsent(appServicePrincipal, appPermissions, logger);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
this.handleRejectedODataJsonPromise(err);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
async getAppObject(options) {
|
|
66
|
+
let apps;
|
|
67
|
+
if (options.appObjectId) {
|
|
68
|
+
apps = await odata.getAllItems(`${this.resource}/v1.0/applications/${options.appObjectId}?$select=id,appId,requiredResourceAccess`);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
apps = await odata.getAllItems(`${this.resource}/v1.0/applications(appId='${options.appId}')?$select=id,appId,requiredResourceAccess`);
|
|
72
|
+
}
|
|
73
|
+
if (apps.length === 0) {
|
|
74
|
+
throw `App with ${options.appObjectId ? 'object id' : 'client id'} ${options.appObjectId ? options.appObjectId : options.appId} not found in Entra ID (Azure AD)`;
|
|
75
|
+
}
|
|
76
|
+
return apps[0];
|
|
77
|
+
}
|
|
78
|
+
async getServicePrincipals() {
|
|
79
|
+
return await odata.getAllItems(`${this.resource}/v1.0/servicePrincipals?$select=appId,appRoles,id,oauth2PermissionScopes,servicePrincipalNames`);
|
|
80
|
+
}
|
|
81
|
+
async grantAdminConsent(servicePrincipal, appPermissions, logger) {
|
|
82
|
+
for await (const permission of appPermissions) {
|
|
83
|
+
if (permission.scope.length > 0) {
|
|
84
|
+
if (this.verbose) {
|
|
85
|
+
await logger.logToStderr(`Granting consent for delegated permission(s) with resourceId ${permission.resourceId} and scope(s) ${permission.scope.join(' ')}`);
|
|
86
|
+
}
|
|
87
|
+
await this.grantOAuth2Permission(servicePrincipal.id, permission.resourceId, permission.scope.join(' '));
|
|
88
|
+
}
|
|
89
|
+
for await (const access of permission.resourceAccess.filter(acc => acc.type === ScopeType.Role)) {
|
|
90
|
+
if (this.verbose) {
|
|
91
|
+
await logger.logToStderr(`Granting consent for application permission with resourceId ${permission.resourceId} and appRoleId ${access.id}`);
|
|
92
|
+
}
|
|
93
|
+
await this.addRoleToServicePrincipal(servicePrincipal.id, permission.resourceId, access.id);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
async grantOAuth2Permission(servicePrincipalId, resourceId, scope) {
|
|
98
|
+
const grantAdminConsentApplicationRequestOptions = {
|
|
99
|
+
url: `${this.resource}/v1.0/oauth2PermissionGrants`,
|
|
100
|
+
headers: {
|
|
101
|
+
accept: 'application/json;odata.metadata=none'
|
|
102
|
+
},
|
|
103
|
+
responseType: 'json',
|
|
104
|
+
data: {
|
|
105
|
+
clientId: servicePrincipalId,
|
|
106
|
+
consentType: 'AllPrincipals',
|
|
107
|
+
principalId: null,
|
|
108
|
+
resourceId: resourceId,
|
|
109
|
+
scope: scope
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
return request.post(grantAdminConsentApplicationRequestOptions);
|
|
113
|
+
}
|
|
114
|
+
async addRoleToServicePrincipal(servicePrincipalId, resourceId, appRoleId) {
|
|
115
|
+
const requestOptions = {
|
|
116
|
+
url: `${this.resource}/v1.0/servicePrincipals/${servicePrincipalId}/appRoleAssignments`,
|
|
117
|
+
headers: {
|
|
118
|
+
'content-type': 'application/json;odata.metadata=none'
|
|
119
|
+
},
|
|
120
|
+
responseType: 'json',
|
|
121
|
+
data: {
|
|
122
|
+
appRoleId: appRoleId,
|
|
123
|
+
principalId: servicePrincipalId,
|
|
124
|
+
resourceId: resourceId
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
return request.post(requestOptions);
|
|
128
|
+
}
|
|
129
|
+
async getRequiredResourceAccessForApis(servicePrincipals, apis, scopeType, appPermissions, logger) {
|
|
130
|
+
const resolvedApis = [];
|
|
131
|
+
const requestedApis = apis.split(' ').map(a => a.trim());
|
|
132
|
+
for await (const api of requestedApis) {
|
|
133
|
+
const pos = api.lastIndexOf('/');
|
|
134
|
+
const permissionName = api.substring(pos + 1);
|
|
135
|
+
const servicePrincipalName = api.substring(0, pos);
|
|
136
|
+
if (this.verbose) {
|
|
137
|
+
await logger.logToStderr(`Resolving ${api}...`);
|
|
138
|
+
await logger.logToStderr(`Permission name: ${permissionName}`);
|
|
139
|
+
await logger.logToStderr(`Service principal name: ${servicePrincipalName}`);
|
|
140
|
+
}
|
|
141
|
+
const servicePrincipal = servicePrincipals.find(sp => (sp.servicePrincipalNames.indexOf(servicePrincipalName) > -1 ||
|
|
142
|
+
sp.servicePrincipalNames.indexOf(`${servicePrincipalName}/`) > -1));
|
|
143
|
+
if (!servicePrincipal) {
|
|
144
|
+
throw `Service principal ${servicePrincipalName} not found`;
|
|
145
|
+
}
|
|
146
|
+
let permission = undefined;
|
|
147
|
+
if (scopeType === ScopeType.Scope) {
|
|
148
|
+
permission = servicePrincipal.oauth2PermissionScopes.find(scope => scope.value === permissionName);
|
|
149
|
+
}
|
|
150
|
+
else if (scopeType === ScopeType.Role) {
|
|
151
|
+
permission = servicePrincipal.appRoles.find(scope => scope.value === permissionName);
|
|
152
|
+
}
|
|
153
|
+
if (!permission) {
|
|
154
|
+
throw `Permission ${permissionName} for service principal ${servicePrincipalName} not found`;
|
|
155
|
+
}
|
|
156
|
+
let resolvedApi = resolvedApis.find(a => a.resourceAppId === servicePrincipal.appId);
|
|
157
|
+
if (!resolvedApi) {
|
|
158
|
+
resolvedApi = {
|
|
159
|
+
resourceAppId: servicePrincipal.appId,
|
|
160
|
+
resourceAccess: []
|
|
161
|
+
};
|
|
162
|
+
resolvedApis.push(resolvedApi);
|
|
163
|
+
}
|
|
164
|
+
const resourceAccessPermission = {
|
|
165
|
+
id: permission.id,
|
|
166
|
+
type: scopeType
|
|
167
|
+
};
|
|
168
|
+
resolvedApi.resourceAccess.push(resourceAccessPermission);
|
|
169
|
+
this.updateAppPermissions(servicePrincipal.id, resourceAccessPermission, permission.value, appPermissions);
|
|
170
|
+
}
|
|
171
|
+
return resolvedApis;
|
|
172
|
+
}
|
|
173
|
+
updateAppPermissions(spId, resourceAccessPermission, oAuth2PermissionValue, appPermissions) {
|
|
174
|
+
let existingPermission = appPermissions.find(oauth => oauth.resourceId === spId);
|
|
175
|
+
if (!existingPermission) {
|
|
176
|
+
existingPermission = {
|
|
177
|
+
resourceId: spId,
|
|
178
|
+
resourceAccess: [],
|
|
179
|
+
scope: []
|
|
180
|
+
};
|
|
181
|
+
appPermissions.push(existingPermission);
|
|
182
|
+
}
|
|
183
|
+
if (resourceAccessPermission.type === ScopeType.Scope && oAuth2PermissionValue && !existingPermission.scope.find(scp => scp === oAuth2PermissionValue)) {
|
|
184
|
+
existingPermission.scope.push(oAuth2PermissionValue);
|
|
185
|
+
}
|
|
186
|
+
if (!existingPermission.resourceAccess.find(res => res.id === resourceAccessPermission.id)) {
|
|
187
|
+
existingPermission.resourceAccess.push(resourceAccessPermission);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
addPermissionsToResourceArray(permissions, existingArray) {
|
|
191
|
+
permissions.forEach(resolvedRequiredResource => {
|
|
192
|
+
const requiredResource = existingArray.find(api => api.resourceAppId === resolvedRequiredResource.resourceAppId);
|
|
193
|
+
if (requiredResource) {
|
|
194
|
+
// make sure that permission does not yet exist on the app or it will be added twice
|
|
195
|
+
resolvedRequiredResource.resourceAccess.forEach(resAccess => {
|
|
196
|
+
if (!requiredResource.resourceAccess.some(res => res.id === resAccess.id)) {
|
|
197
|
+
requiredResource.resourceAccess.push(resAccess);
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
existingArray.push(resolvedRequiredResource);
|
|
203
|
+
}
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
_AadAppPermissionAddCommand_instances = new WeakSet(), _AadAppPermissionAddCommand_initTelemetry = function _AadAppPermissionAddCommand_initTelemetry() {
|
|
208
|
+
this.telemetry.push((args) => {
|
|
209
|
+
Object.assign(this.telemetryProperties, {
|
|
210
|
+
appId: typeof args.options.appId !== 'undefined',
|
|
211
|
+
appObjectId: typeof args.options.appObjectId !== 'undefined',
|
|
212
|
+
applicationPermissions: typeof args.options.applicationPermissions !== 'undefined',
|
|
213
|
+
delegatedPermissions: typeof args.options.delegatedPermissions !== 'undefined',
|
|
214
|
+
grantAdminConsent: !!args.options.grantAdminConsent
|
|
215
|
+
});
|
|
216
|
+
});
|
|
217
|
+
}, _AadAppPermissionAddCommand_initOptions = function _AadAppPermissionAddCommand_initOptions() {
|
|
218
|
+
this.options.unshift({ option: '-i, --appId [appId]' }, { option: '--appObjectId [appObjectId]' }, { option: '-a, --applicationPermissions [applicationPermissions]' }, { option: '-d, --delegatedPermissions [delegatedPermissions]' }, { option: '--grantAdminConsent' });
|
|
219
|
+
}, _AadAppPermissionAddCommand_initValidators = function _AadAppPermissionAddCommand_initValidators() {
|
|
220
|
+
this.validators.push(async (args) => {
|
|
221
|
+
if (args.options.appId && !validation.isValidGuid(args.options.appId)) {
|
|
222
|
+
return `${args.options.appId} is not a valid GUID`;
|
|
223
|
+
}
|
|
224
|
+
if (args.options.appObjectId && !validation.isValidGuid(args.options.appObjectId)) {
|
|
225
|
+
return `${args.options.appObjectId} is not a valid GUID`;
|
|
226
|
+
}
|
|
227
|
+
return true;
|
|
228
|
+
});
|
|
229
|
+
}, _AadAppPermissionAddCommand_initOptionSets = function _AadAppPermissionAddCommand_initOptionSets() {
|
|
230
|
+
this.optionSets.push({ options: ['appId', 'appObjectId'] });
|
|
231
|
+
this.optionSets.push({
|
|
232
|
+
options: ['applicationPermissions', 'delegatedPermissions'],
|
|
233
|
+
runsWhen: (args) => args.options.delegatedPermissions === undefined && args.options.applicationPermissions === undefined
|
|
234
|
+
});
|
|
235
|
+
};
|
|
236
|
+
export default new AadAppPermissionAddCommand();
|
|
237
|
+
//# sourceMappingURL=app-permission-add.js.map
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadAppRemoveCommand_instances, _AadAppRemoveCommand_initTelemetry, _AadAppRemoveCommand_initOptions, _AadAppRemoveCommand_initValidators, _AadAppRemoveCommand_initOptionSets;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { formatting } from '../../../../utils/formatting.js';
|
|
10
10
|
import { validation } from '../../../../utils/validation.js';
|
|
@@ -49,7 +49,7 @@ class AadAppRemoveCommand extends GraphCommand {
|
|
|
49
49
|
await deleteApp();
|
|
50
50
|
}
|
|
51
51
|
else {
|
|
52
|
-
const result = await
|
|
52
|
+
const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the app?` });
|
|
53
53
|
if (result) {
|
|
54
54
|
await deleteApp();
|
|
55
55
|
}
|
|
@@ -82,7 +82,7 @@ class AadAppRemoveCommand extends GraphCommand {
|
|
|
82
82
|
throw `No Azure AD application registration with ${applicationIdentifier} found`;
|
|
83
83
|
}
|
|
84
84
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', res.value);
|
|
85
|
-
const result = await
|
|
85
|
+
const result = await cli.handleMultipleResultsFound(`Multiple Azure AD application registration with name '${name}' found.`, resultAsKeyValuePair);
|
|
86
86
|
return result.id;
|
|
87
87
|
}
|
|
88
88
|
}
|
|
@@ -9,7 +9,7 @@ import request from '../../../../request.js';
|
|
|
9
9
|
import { formatting } from '../../../../utils/formatting.js';
|
|
10
10
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
11
11
|
import commands from '../../commands.js';
|
|
12
|
-
import {
|
|
12
|
+
import { cli } from '../../../../cli/cli.js';
|
|
13
13
|
class AadAppRoleAddCommand extends GraphCommand {
|
|
14
14
|
get name() {
|
|
15
15
|
return commands.APP_ROLE_ADD;
|
|
@@ -106,7 +106,7 @@ class AadAppRoleAddCommand extends GraphCommand {
|
|
|
106
106
|
throw `No Azure AD application registration with ${applicationIdentifier} found`;
|
|
107
107
|
}
|
|
108
108
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', res.value);
|
|
109
|
-
const result = await
|
|
109
|
+
const result = await cli.handleMultipleResultsFound(`Multiple Azure AD application registration with name '${appName}' found.`, resultAsKeyValuePair);
|
|
110
110
|
return result.id;
|
|
111
111
|
}
|
|
112
112
|
}
|
|
@@ -9,7 +9,7 @@ import { formatting } from '../../../../utils/formatting.js';
|
|
|
9
9
|
import { odata } from '../../../../utils/odata.js';
|
|
10
10
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
11
11
|
import commands from '../../commands.js';
|
|
12
|
-
import {
|
|
12
|
+
import { cli } from '../../../../cli/cli.js';
|
|
13
13
|
class AadAppRoleListCommand extends GraphCommand {
|
|
14
14
|
get name() {
|
|
15
15
|
return commands.APP_ROLE_LIST;
|
|
@@ -64,7 +64,7 @@ class AadAppRoleListCommand extends GraphCommand {
|
|
|
64
64
|
throw `No Azure AD application registration with ${applicationIdentifier} found`;
|
|
65
65
|
}
|
|
66
66
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', res.value);
|
|
67
|
-
const result = await
|
|
67
|
+
const result = await cli.handleMultipleResultsFound(`Multiple Azure AD application registration with name '${appName}' found.`, resultAsKeyValuePair);
|
|
68
68
|
return result.id;
|
|
69
69
|
}
|
|
70
70
|
}
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadAppRoleRemoveCommand_instances, _AadAppRoleRemoveCommand_initTelemetry, _AadAppRoleRemoveCommand_initOptions, _AadAppRoleRemoveCommand_initValidators, _AadAppRoleRemoveCommand_initOptionSets;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { formatting } from "../../../../utils/formatting.js";
|
|
10
10
|
import { validation } from '../../../../utils/validation.js';
|
|
@@ -38,7 +38,7 @@ class AadAppRoleRemoveCommand extends GraphCommand {
|
|
|
38
38
|
await deleteAppRole();
|
|
39
39
|
}
|
|
40
40
|
else {
|
|
41
|
-
const result = await
|
|
41
|
+
const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the app role?` });
|
|
42
42
|
if (result) {
|
|
43
43
|
await deleteAppRole();
|
|
44
44
|
}
|
|
@@ -59,7 +59,7 @@ class AadAppRoleRemoveCommand extends GraphCommand {
|
|
|
59
59
|
appRoleToDelete !== undefined &&
|
|
60
60
|
appRoleToDelete.length > 1) {
|
|
61
61
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', appRoleToDelete);
|
|
62
|
-
appRoleToDelete[0] = await
|
|
62
|
+
appRoleToDelete[0] = await cli.handleMultipleResultsFound(`Multiple roles with name '${args.options.name}' found.`, resultAsKeyValuePair);
|
|
63
63
|
}
|
|
64
64
|
if (appRoleToDelete.length === 0) {
|
|
65
65
|
throw `No app role with ${appRoleDeleteIdentifierNameValue} found.`;
|
|
@@ -148,7 +148,7 @@ class AadAppRoleRemoveCommand extends GraphCommand {
|
|
|
148
148
|
throw `No Azure AD application registration with ${applicationIdentifier} found`;
|
|
149
149
|
}
|
|
150
150
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', res.value);
|
|
151
|
-
const result = (await
|
|
151
|
+
const result = (await cli.handleMultipleResultsFound(`Multiple Azure AD application registration with name '${appName}' found.`, resultAsKeyValuePair));
|
|
152
152
|
return result.id;
|
|
153
153
|
}
|
|
154
154
|
}
|
|
@@ -9,7 +9,7 @@ import request from '../../../../request.js';
|
|
|
9
9
|
import { formatting } from '../../../../utils/formatting.js';
|
|
10
10
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
11
11
|
import commands from '../../commands.js';
|
|
12
|
-
import {
|
|
12
|
+
import { cli } from '../../../../cli/cli.js';
|
|
13
13
|
class AadAppSetCommand extends GraphCommand {
|
|
14
14
|
get name() {
|
|
15
15
|
return commands.APP_SET;
|
|
@@ -63,7 +63,7 @@ class AadAppSetCommand extends GraphCommand {
|
|
|
63
63
|
throw `No Azure AD application registration with ${applicationIdentifier} found`;
|
|
64
64
|
}
|
|
65
65
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', res.value);
|
|
66
|
-
const result = await
|
|
66
|
+
const result = await cli.handleMultipleResultsFound(`Multiple Azure AD application registration with name '${name}' found.`, resultAsKeyValuePair);
|
|
67
67
|
return result.id;
|
|
68
68
|
}
|
|
69
69
|
async configureUri(args, objectId, logger) {
|
|
@@ -10,7 +10,7 @@ import { formatting } from '../../../../utils/formatting.js';
|
|
|
10
10
|
import { validation } from '../../../../utils/validation.js';
|
|
11
11
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
12
12
|
import commands from '../../commands.js';
|
|
13
|
-
import {
|
|
13
|
+
import { cli } from '../../../../cli/cli.js';
|
|
14
14
|
class AadAppRoleAssignmentAddCommand extends GraphCommand {
|
|
15
15
|
get name() {
|
|
16
16
|
return commands.APPROLEASSIGNMENT_ADD;
|
|
@@ -52,7 +52,7 @@ class AadAppRoleAssignmentAddCommand extends GraphCommand {
|
|
|
52
52
|
}
|
|
53
53
|
if (servicePrincipalResult.value.length > 1) {
|
|
54
54
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', servicePrincipalResult.value);
|
|
55
|
-
const result = await
|
|
55
|
+
const result = await cli.handleMultipleResultsFound(`Multiple service principal found.`, resultAsKeyValuePair);
|
|
56
56
|
objectId = result.id;
|
|
57
57
|
}
|
|
58
58
|
else {
|
|
@@ -5,7 +5,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
5
5
|
};
|
|
6
6
|
var _AadAppRoleAssignmentRemoveCommand_instances, _AadAppRoleAssignmentRemoveCommand_initTelemetry, _AadAppRoleAssignmentRemoveCommand_initOptions, _AadAppRoleAssignmentRemoveCommand_initValidators, _AadAppRoleAssignmentRemoveCommand_initOptionSets;
|
|
7
7
|
import os from 'os';
|
|
8
|
-
import {
|
|
8
|
+
import { cli } from '../../../../cli/cli.js';
|
|
9
9
|
import request from '../../../../request.js';
|
|
10
10
|
import { formatting } from '../../../../utils/formatting.js';
|
|
11
11
|
import { validation } from '../../../../utils/validation.js';
|
|
@@ -111,7 +111,7 @@ class AadAppRoleAssignmentRemoveCommand extends GraphCommand {
|
|
|
111
111
|
await removeAppRoleAssignment();
|
|
112
112
|
}
|
|
113
113
|
else {
|
|
114
|
-
const result = await
|
|
114
|
+
const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the appRoleAssignment with scope ${args.options.scope} for resource ${args.options.resource}?` });
|
|
115
115
|
if (result) {
|
|
116
116
|
await removeAppRoleAssignment();
|
|
117
117
|
}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
2
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
3
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
+
};
|
|
6
|
+
var _AadGroupListCommand_instances, _a, _AadGroupListCommand_initTelemetry, _AadGroupListCommand_initOptions, _AadGroupListCommand_initValidators;
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
2
8
|
import { odata } from '../../../../utils/odata.js';
|
|
3
9
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
4
10
|
import commands from '../../commands.js';
|
|
@@ -12,10 +18,52 @@ class AadGroupListCommand extends GraphCommand {
|
|
|
12
18
|
defaultProperties() {
|
|
13
19
|
return ['id', 'displayName', 'groupType'];
|
|
14
20
|
}
|
|
21
|
+
constructor() {
|
|
22
|
+
super();
|
|
23
|
+
_AadGroupListCommand_instances.add(this);
|
|
24
|
+
__classPrivateFieldGet(this, _AadGroupListCommand_instances, "m", _AadGroupListCommand_initTelemetry).call(this);
|
|
25
|
+
__classPrivateFieldGet(this, _AadGroupListCommand_instances, "m", _AadGroupListCommand_initOptions).call(this);
|
|
26
|
+
__classPrivateFieldGet(this, _AadGroupListCommand_instances, "m", _AadGroupListCommand_initValidators).call(this);
|
|
27
|
+
}
|
|
15
28
|
async commandAction(logger, args) {
|
|
16
29
|
try {
|
|
17
|
-
|
|
18
|
-
|
|
30
|
+
let requestUrl = `${this.resource}/v1.0/groups`;
|
|
31
|
+
let useConsistencyLevelHeader = false;
|
|
32
|
+
if (args.options.type) {
|
|
33
|
+
const groupType = _a.groupTypes.find(g => g.toLowerCase() === args.options.type?.toLowerCase());
|
|
34
|
+
switch (groupType) {
|
|
35
|
+
case 'microsoft365':
|
|
36
|
+
requestUrl += `?$filter=groupTypes/any(c:c+eq+'Unified')`;
|
|
37
|
+
break;
|
|
38
|
+
case 'security':
|
|
39
|
+
requestUrl += '?$filter=securityEnabled eq true and mailEnabled eq false';
|
|
40
|
+
break;
|
|
41
|
+
case 'distribution':
|
|
42
|
+
requestUrl += '?$filter=securityEnabled eq false and mailEnabled eq true';
|
|
43
|
+
break;
|
|
44
|
+
case 'mailEnabledSecurity':
|
|
45
|
+
useConsistencyLevelHeader = true;
|
|
46
|
+
requestUrl += `?$filter=securityEnabled eq true and mailEnabled eq true and not(groupTypes/any(t:t eq 'Unified'))&$count=true`;
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
let groups = [];
|
|
51
|
+
if (useConsistencyLevelHeader) {
|
|
52
|
+
// While using not() function in the filter, we need to specify the ConsistencyLevel header.
|
|
53
|
+
const requestOptions = {
|
|
54
|
+
url: requestUrl,
|
|
55
|
+
headers: {
|
|
56
|
+
accept: 'application/json;odata.metadata=none',
|
|
57
|
+
ConsistencyLevel: 'eventual'
|
|
58
|
+
},
|
|
59
|
+
responseType: 'json'
|
|
60
|
+
};
|
|
61
|
+
groups = await odata.getAllItems(requestOptions);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
groups = await odata.getAllItems(requestUrl);
|
|
65
|
+
}
|
|
66
|
+
if (cli.shouldTrimOutput(args.options.output)) {
|
|
19
67
|
groups.forEach((group) => {
|
|
20
68
|
if (group.groupTypes && group.groupTypes.length > 0 && group.groupTypes[0] === 'Unified') {
|
|
21
69
|
group.groupType = 'Microsoft 365';
|
|
@@ -38,5 +86,25 @@ class AadGroupListCommand extends GraphCommand {
|
|
|
38
86
|
}
|
|
39
87
|
}
|
|
40
88
|
}
|
|
89
|
+
_a = AadGroupListCommand, _AadGroupListCommand_instances = new WeakSet(), _AadGroupListCommand_initTelemetry = function _AadGroupListCommand_initTelemetry() {
|
|
90
|
+
this.telemetry.push((args) => {
|
|
91
|
+
Object.assign(this.telemetryProperties, {
|
|
92
|
+
type: typeof args.options.type !== 'undefined'
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
}, _AadGroupListCommand_initOptions = function _AadGroupListCommand_initOptions() {
|
|
96
|
+
this.options.unshift({
|
|
97
|
+
option: '--type [type]',
|
|
98
|
+
autocomplete: _a.groupTypes
|
|
99
|
+
});
|
|
100
|
+
}, _AadGroupListCommand_initValidators = function _AadGroupListCommand_initValidators() {
|
|
101
|
+
this.validators.push(async (args) => {
|
|
102
|
+
if (args.options.type && _a.groupTypes.every(g => g.toLowerCase() !== args.options.type?.toLowerCase())) {
|
|
103
|
+
return `${args.options.type} is not a valid type value. Allowed values microsoft365|security|distribution|mailEnabledSecurity.`;
|
|
104
|
+
}
|
|
105
|
+
return true;
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
AadGroupListCommand.groupTypes = ['microsoft365', 'security', 'distribution', 'mailEnabledSecurity'];
|
|
41
109
|
export default new AadGroupListCommand();
|
|
42
110
|
//# sourceMappingURL=group-list.js.map
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadGroupRemoveCommand_instances, _AadGroupRemoveCommand_initTelemetry, _AadGroupRemoveCommand_initOptions, _AadGroupRemoveCommand_initOptionSets, _AadGroupRemoveCommand_initValidators, _AadGroupRemoveCommand_initTypes;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
9
9
|
import commands from '../../commands.js';
|
|
10
10
|
import request from '../../../../request.js';
|
|
@@ -52,7 +52,7 @@ class AadGroupRemoveCommand extends GraphCommand {
|
|
|
52
52
|
await removeGroup();
|
|
53
53
|
}
|
|
54
54
|
else {
|
|
55
|
-
const result = await
|
|
55
|
+
const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove group '${args.options.id || args.options.displayName}'?` });
|
|
56
56
|
if (result) {
|
|
57
57
|
await removeGroup();
|
|
58
58
|
}
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadGroupSettingRemoveCommand_instances, _AadGroupSettingRemoveCommand_initTelemetry, _AadGroupSettingRemoveCommand_initOptions, _AadGroupSettingRemoveCommand_initValidators;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { validation } from '../../../../utils/validation.js';
|
|
10
10
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
@@ -45,7 +45,7 @@ class AadGroupSettingRemoveCommand extends GraphCommand {
|
|
|
45
45
|
await removeGroupSetting();
|
|
46
46
|
}
|
|
47
47
|
else {
|
|
48
|
-
const result = await
|
|
48
|
+
const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the group setting ${args.options.id}?` });
|
|
49
49
|
if (result) {
|
|
50
50
|
await removeGroupSetting();
|
|
51
51
|
}
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadM365GroupRecycleBinItemClearCommand_instances, _AadM365GroupRecycleBinItemClearCommand_initTelemetry, _AadM365GroupRecycleBinItemClearCommand_initOptions;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { odata } from '../../../../utils/odata.js';
|
|
10
10
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
@@ -35,7 +35,7 @@ class AadM365GroupRecycleBinItemClearCommand extends GraphCommand {
|
|
|
35
35
|
await clearM365GroupRecycleBinItems();
|
|
36
36
|
}
|
|
37
37
|
else {
|
|
38
|
-
const response = await
|
|
38
|
+
const response = await cli.promptForConfirmation({ message: `Are you sure you want to clear all M365 Groups from recycle bin?` });
|
|
39
39
|
if (response) {
|
|
40
40
|
await clearM365GroupRecycleBinItems();
|
|
41
41
|
}
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadM365GroupRecycleBinItemRemoveCommand_instances, _AadM365GroupRecycleBinItemRemoveCommand_initTelemetry, _AadM365GroupRecycleBinItemRemoveCommand_initOptions, _AadM365GroupRecycleBinItemRemoveCommand_initValidators, _AadM365GroupRecycleBinItemRemoveCommand_initOptionSets;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { formatting } from '../../../../utils/formatting.js';
|
|
10
10
|
import { validation } from '../../../../utils/validation.js';
|
|
@@ -46,7 +46,7 @@ class AadM365GroupRecycleBinItemRemoveCommand extends GraphCommand {
|
|
|
46
46
|
await removeGroup();
|
|
47
47
|
}
|
|
48
48
|
else {
|
|
49
|
-
const result = await
|
|
49
|
+
const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the group '${args.options.id || args.options.displayName || args.options.mailNickname}'?` });
|
|
50
50
|
if (result) {
|
|
51
51
|
await removeGroup();
|
|
52
52
|
}
|
|
@@ -78,7 +78,7 @@ class AadM365GroupRecycleBinItemRemoveCommand extends GraphCommand {
|
|
|
78
78
|
}
|
|
79
79
|
if (groups.length > 1) {
|
|
80
80
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', groups);
|
|
81
|
-
const result = await
|
|
81
|
+
const result = await cli.handleMultipleResultsFound(`Multiple groups with name '${displayName || mailNickname}' found.`, resultAsKeyValuePair);
|
|
82
82
|
return result.id;
|
|
83
83
|
}
|
|
84
84
|
return groups[0].id;
|
|
@@ -9,7 +9,7 @@ import { formatting } from '../../../../utils/formatting.js';
|
|
|
9
9
|
import { validation } from '../../../../utils/validation.js';
|
|
10
10
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
11
11
|
import commands from '../../commands.js';
|
|
12
|
-
import {
|
|
12
|
+
import { cli } from '../../../../cli/cli.js';
|
|
13
13
|
class AadM365GroupRecycleBinItemRestoreCommand extends GraphCommand {
|
|
14
14
|
get name() {
|
|
15
15
|
return commands.M365GROUP_RECYCLEBINITEM_RESTORE;
|
|
@@ -71,7 +71,7 @@ class AadM365GroupRecycleBinItemRestoreCommand extends GraphCommand {
|
|
|
71
71
|
}
|
|
72
72
|
if (groups.length > 1) {
|
|
73
73
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', groups);
|
|
74
|
-
const result = await
|
|
74
|
+
const result = await cli.handleMultipleResultsFound(`Multiple groups with name '${displayName || mailNickname}' found.`, resultAsKeyValuePair);
|
|
75
75
|
return result.id;
|
|
76
76
|
}
|
|
77
77
|
return groups[0].id;
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadM365GroupRemoveCommand_instances, _AadM365GroupRemoveCommand_initTelemetry, _AadM365GroupRemoveCommand_initOptions, _AadM365GroupRemoveCommand_initValidators;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { aadGroup } from '../../../../utils/aadGroup.js';
|
|
10
10
|
import { validation } from '../../../../utils/validation.js';
|
|
@@ -56,7 +56,7 @@ class AadM365GroupRemoveCommand extends GraphCommand {
|
|
|
56
56
|
await removeGroup();
|
|
57
57
|
}
|
|
58
58
|
else {
|
|
59
|
-
const result = await
|
|
59
|
+
const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the group ${args.options.id}?` });
|
|
60
60
|
if (result) {
|
|
61
61
|
await removeGroup();
|
|
62
62
|
}
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _AadM365GroupTeamifyCommand_instances, _AadM365GroupTeamifyCommand_initTelemetry, _AadM365GroupTeamifyCommand_initOptions, _AadM365GroupTeamifyCommand_initValidators, _AadM365GroupTeamifyCommand_initOptionSets;
|
|
7
|
-
import {
|
|
7
|
+
import { cli } from '../../../../cli/cli.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { aadGroup } from '../../../../utils/aadGroup.js';
|
|
10
10
|
import { formatting } from '../../../../utils/formatting.js';
|
|
@@ -44,7 +44,7 @@ class AadM365GroupTeamifyCommand extends GraphCommand {
|
|
|
44
44
|
}
|
|
45
45
|
if (response.value.length > 1) {
|
|
46
46
|
const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', response.value);
|
|
47
|
-
const result = await
|
|
47
|
+
const result = await cli.handleMultipleResultsFound(`Multiple Microsoft 365 Groups with name '${options.mailNickname}' found.`, resultAsKeyValuePair);
|
|
48
48
|
return result.id;
|
|
49
49
|
}
|
|
50
50
|
return groupItem.id;
|