@pnp/cli-microsoft365 5.0.0-beta.fe151d6 → 5.1.0-beta.6ab68db
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/.devcontainer/devcontainer.json +13 -2
- package/.eslintrc.js +3 -0
- package/.mocharc.json +9 -0
- package/README.md +3 -3
- package/dist/Auth.js +22 -9
- package/dist/Command.js +1 -1
- package/dist/api.d.ts +13 -0
- package/dist/api.js +17 -0
- package/dist/appInsights.js +3 -2
- package/dist/cli/Cli.js +59 -12
- package/dist/cli/index.js +5 -1
- package/dist/m365/aad/commands/app/app-add.js +54 -18
- package/dist/m365/aad/commands/app/app-delete.js +123 -0
- package/dist/m365/aad/commands/app/app-get.js +142 -0
- package/dist/m365/aad/commands/app/app-role-delete.js +2 -2
- package/dist/m365/aad/commands/app/app-role-list.js +6 -5
- package/dist/m365/aad/commands/app/app-set.js +98 -3
- package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +4 -4
- package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +3 -3
- package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +4 -4
- package/dist/m365/aad/commands/group/group-list.js +55 -0
- package/dist/m365/aad/commands/groupsetting/groupsetting-add.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-get.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-list.js +7 -6
- package/dist/m365/aad/commands/groupsetting/groupsetting-remove.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-set.js +2 -2
- package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-get.js +8 -8
- package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-list.js +7 -6
- package/dist/m365/{spo/commands/site/SpoOperation.js → aad/commands/o365group/GroupExtended.js} +1 -1
- package/dist/m365/aad/commands/o365group/o365group-add.js +41 -3
- package/dist/m365/aad/commands/o365group/o365group-conversation-list.js +41 -0
- package/dist/m365/aad/commands/o365group/o365group-conversation-post-list.js +87 -0
- package/dist/m365/aad/commands/o365group/o365group-get.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-list.js +15 -12
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-clear.js +8 -7
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-list.js +7 -6
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-restore.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-remove.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-renew.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-set.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-teamify.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-user-add.js +3 -3
- package/dist/m365/aad/commands/o365group/o365group-user-list.js +21 -15
- package/dist/m365/aad/commands/o365group/o365group-user-remove.js +3 -3
- package/dist/m365/aad/commands/o365group/o365group-user-set.js +23 -17
- package/dist/m365/aad/commands/oauth2grant/oauth2grant-add.js +3 -3
- package/dist/m365/aad/commands/oauth2grant/oauth2grant-list.js +2 -2
- package/dist/m365/aad/commands/sp/sp-add.js +3 -3
- package/dist/m365/aad/commands/sp/sp-get.js +3 -3
- package/dist/m365/aad/commands/user/user-get.js +35 -8
- package/dist/m365/aad/commands/user/user-hibp.js +67 -0
- package/dist/m365/aad/commands/user/user-list.js +14 -10
- package/dist/m365/aad/commands/user/user-password-validate.js +42 -0
- package/dist/m365/aad/commands/user/user-set.js +2 -2
- package/dist/m365/aad/commands.js +7 -0
- package/dist/m365/app/commands/permission/permission-list.js +266 -0
- package/dist/m365/app/commands.js +7 -0
- package/dist/m365/base/AppCommand.js +76 -0
- package/dist/m365/base/SpoCommand.js +0 -260
- package/dist/m365/cli/commands/cli-doctor.js +4 -2
- package/dist/m365/cli/commands/config/config-set.js +5 -1
- package/dist/m365/commands/status.js +3 -3
- package/dist/m365/file/commands/file-add.js +3 -3
- package/dist/m365/file/commands/file-list.js +14 -12
- package/dist/m365/flow/commands/flow-export.js +2 -2
- package/dist/m365/flow/commands/flow-get.js +2 -2
- package/dist/m365/flow/commands/flow-remove.js +2 -2
- package/dist/m365/flow/commands/run/run-cancel.js +2 -2
- package/dist/m365/flow/commands/run/run-resubmit.js +2 -2
- package/dist/m365/graph/commands/schemaextension/schemaextension-add.js +2 -2
- package/dist/m365/graph/commands/schemaextension/schemaextension-list.js +2 -2
- package/dist/m365/graph/commands/schemaextension/schemaextension-set.js +2 -2
- package/dist/m365/graph/commands/subscription/subscription-add.js +2 -2
- package/dist/m365/onedrive/commands/onedrive-list.js +3 -2
- package/dist/m365/outlook/commands/message/message-list.js +6 -5
- package/dist/m365/outlook/commands/room/room-list.js +44 -0
- package/dist/m365/outlook/commands/roomlist/roomlist-list.js +26 -0
- package/dist/m365/outlook/commands.js +2 -0
- package/dist/m365/pa/cds-project-mutator.js +1 -1
- package/dist/m365/pa/commands/app/app-get.js +2 -2
- package/dist/m365/pa/commands/app/app-list.js +28 -1
- package/dist/m365/pa/commands/app/app-remove.js +2 -2
- package/dist/m365/pa/commands/pcf/pcf-init.js +4 -4
- package/dist/m365/pa/commands/solution/solution-init.js +2 -2
- package/dist/m365/{base/AzmgmtResponse.js → planner/AppliedCategories.js} +1 -1
- package/dist/m365/planner/commands/bucket/bucket-add.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-list.js +7 -7
- package/dist/m365/planner/commands/plan/plan-add.js +2 -2
- package/dist/m365/planner/commands/plan/plan-details-get.js +134 -0
- package/dist/m365/planner/commands/plan/plan-get.js +7 -7
- package/dist/m365/planner/commands/plan/plan-list.js +2 -2
- package/dist/m365/planner/commands/task/task-add.js +288 -0
- package/dist/m365/planner/commands/task/task-details-get.js +39 -0
- package/dist/m365/planner/commands/task/task-get.js +37 -0
- package/dist/m365/planner/commands/task/task-list.js +46 -16
- package/dist/m365/planner/commands/task/task-set.js +357 -0
- package/dist/m365/planner/commands.js +6 -1
- package/dist/m365/search/commands/externalconnection/externalconnection-add.js +99 -0
- package/dist/m365/search/commands.js +7 -0
- package/dist/m365/spfx/commands/package/package-generate.js +4 -4
- package/dist/m365/spfx/commands/project/base-project-command.js +18 -19
- package/dist/m365/spfx/commands/project/model/index.js +5 -1
- package/dist/m365/spfx/commands/project/project-externalize/index.js +5 -1
- package/dist/m365/spfx/commands/project/project-externalize/rules/index.js +5 -1
- package/dist/m365/spfx/commands/project/project-upgrade/index.js +5 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001005_DEP_types_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001006_DEP_types_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001008_DEP_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001009_DEP_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001015_DEP_types_react_addons_shallow_compare.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001016_DEP_types_react_addons_update.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001017_DEP_types_react_addons_update.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001019_DEP_knockout.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001020_DEP_types_knockout.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001022_DEP_office_ui_fabric_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002015_DEVDEP_types_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002016_DEVDEP_types_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN006005_CFG_PS_metadata.js +63 -0
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN006006_CFG_PS_features.js +60 -0
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN014008_CODE_launch_hostedWorkbench_type.js +62 -0
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN020001_RES_types_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN022001_SCSS_remove_fabric_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN022002_SCSS_add_fabric_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.14.0.js +59 -0
- package/dist/m365/spfx/commands/project/project-upgrade.js +2 -1
- package/dist/m365/spfx/commands/spfx-doctor.js +25 -6
- package/dist/m365/spo/commands/app/app-add.js +3 -2
- package/dist/m365/spo/commands/app/app-deploy.js +4 -4
- package/dist/m365/spo/commands/app/app-get.js +4 -4
- package/dist/m365/spo/commands/app/app-install.js +3 -3
- package/dist/m365/spo/commands/app/app-instance-list.js +2 -1
- package/dist/m365/spo/commands/app/app-list.js +3 -2
- package/dist/m365/spo/commands/app/app-remove.js +4 -5
- package/dist/m365/spo/commands/app/app-retract.js +4 -5
- package/dist/m365/spo/commands/app/app-uninstall.js +3 -3
- package/dist/m365/spo/commands/app/app-upgrade.js +3 -3
- package/dist/m365/spo/commands/apppage/apppage-add.js +2 -2
- package/dist/m365/spo/commands/apppage/apppage-set.js +2 -2
- package/dist/m365/spo/commands/cdn/cdn-get.js +4 -3
- package/dist/m365/spo/commands/cdn/cdn-origin-add.js +5 -5
- package/dist/m365/spo/commands/cdn/cdn-origin-list.js +4 -3
- package/dist/m365/spo/commands/cdn/cdn-origin-remove.js +5 -5
- package/dist/m365/spo/commands/cdn/cdn-policy-list.js +4 -3
- package/dist/m365/spo/commands/cdn/cdn-policy-set.js +5 -5
- package/dist/m365/spo/commands/cdn/cdn-set.js +3 -2
- package/dist/m365/spo/commands/contenttype/contenttype-add.js +6 -6
- package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +6 -6
- package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +6 -6
- package/dist/m365/spo/commands/contenttype/contenttype-get.js +2 -1
- package/dist/m365/spo/commands/contenttype/contenttype-list.js +2 -1
- package/dist/m365/spo/commands/contenttype/contenttype-remove.js +2 -1
- package/dist/m365/spo/commands/contenttypehub/contenttypehub-get.js +3 -2
- package/dist/m365/spo/commands/customaction/customaction-add.js +3 -3
- package/dist/m365/spo/commands/customaction/customaction-clear.js +2 -1
- package/dist/m365/spo/commands/customaction/customaction-get.js +3 -3
- package/dist/m365/spo/commands/customaction/customaction-list.js +2 -1
- package/dist/m365/spo/commands/customaction/customaction-remove.js +3 -3
- package/dist/m365/spo/commands/customaction/customaction-set.js +4 -4
- package/dist/m365/spo/commands/externaluser/externaluser-list.js +6 -6
- package/dist/m365/spo/commands/feature/feature-enable.js +2 -1
- package/dist/m365/spo/commands/feature/feature-list.js +2 -1
- package/dist/m365/spo/commands/field/field-add.js +3 -2
- package/dist/m365/spo/commands/field/field-get.js +5 -5
- package/dist/m365/spo/commands/field/field-remove.js +5 -5
- package/dist/m365/spo/commands/field/field-set.js +10 -10
- package/dist/m365/spo/commands/file/file-add.js +5 -7
- package/dist/m365/spo/commands/file/file-checkin.js +3 -3
- package/dist/m365/spo/commands/file/file-checkout.js +3 -3
- package/dist/m365/spo/commands/file/file-copy.js +18 -7
- package/dist/m365/spo/commands/file/file-get.js +3 -3
- package/dist/m365/spo/commands/file/file-list.js +3 -3
- package/dist/m365/spo/commands/file/file-move.js +18 -7
- package/dist/m365/spo/commands/file/file-remove.js +3 -3
- package/dist/m365/spo/commands/file/file-sharinginfo-get.js +3 -3
- package/dist/m365/spo/commands/folder/folder-add.js +3 -3
- package/dist/m365/spo/commands/folder/folder-copy.js +16 -5
- package/dist/m365/spo/commands/folder/folder-get.js +3 -3
- package/dist/m365/spo/commands/folder/folder-list.js +3 -3
- package/dist/m365/spo/commands/folder/folder-move.js +16 -5
- package/dist/m365/spo/commands/folder/folder-remove.js +3 -3
- package/dist/m365/spo/commands/folder/folder-rename.js +6 -8
- package/dist/m365/spo/commands/group/group-get.js +2 -1
- package/dist/m365/spo/commands/group/group-list.js +2 -1
- package/dist/m365/spo/commands/group/group-remove.js +2 -1
- package/dist/m365/spo/commands/group/group-user-add.js +76 -17
- package/dist/m365/spo/commands/group/group-user-list.js +2 -1
- package/dist/m365/spo/commands/group/group-user-remove.js +101 -0
- package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-get.js +2 -1
- package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-set.js +2 -1
- package/dist/m365/spo/commands/homesite/homesite-get.js +2 -1
- package/dist/m365/spo/commands/homesite/homesite-remove.js +3 -2
- package/dist/m365/spo/commands/homesite/homesite-set.js +5 -5
- package/dist/m365/spo/commands/hubsite/hubsite-connect.js +4 -4
- package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +2 -1
- package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +3 -2
- package/dist/m365/spo/commands/hubsite/hubsite-get.js +3 -3
- package/dist/m365/spo/commands/hubsite/hubsite-list.js +2 -1
- package/dist/m365/spo/commands/hubsite/hubsite-register.js +3 -2
- package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +6 -6
- package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +6 -6
- package/dist/m365/spo/commands/hubsite/hubsite-set.js +8 -8
- package/dist/m365/spo/commands/hubsite/hubsite-theme-sync.js +2 -1
- package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +3 -2
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-get.js +3 -2
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +3 -2
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-set.js +5 -5
- package/dist/m365/spo/commands/list/list-add.js +5 -5
- package/dist/m365/spo/commands/list/list-contenttype-add.js +3 -3
- package/dist/m365/spo/commands/list/list-contenttype-default-set.js +3 -3
- package/dist/m365/spo/commands/list/list-contenttype-list.js +3 -3
- package/dist/m365/spo/commands/list/list-contenttype-remove.js +3 -3
- package/dist/m365/spo/commands/list/list-get.js +3 -3
- package/dist/m365/spo/commands/list/list-label-get.js +4 -4
- package/dist/m365/spo/commands/list/list-label-set.js +5 -5
- package/dist/m365/spo/commands/list/list-list.js +2 -1
- package/dist/m365/spo/commands/list/list-remove.js +3 -3
- package/dist/m365/spo/commands/list/list-set.js +6 -6
- package/dist/m365/spo/commands/list/list-sitescript-get.js +4 -4
- package/dist/m365/spo/commands/list/list-view-field-add.js +5 -5
- package/dist/m365/spo/commands/list/list-view-field-remove.js +5 -5
- package/dist/m365/spo/commands/list/list-view-field-set.js +5 -5
- package/dist/m365/spo/commands/list/list-view-get.js +5 -5
- package/dist/m365/spo/commands/list/list-view-list.js +3 -3
- package/dist/m365/spo/commands/list/list-view-remove.js +4 -4
- package/dist/m365/spo/commands/list/list-view-set.js +5 -5
- package/dist/m365/spo/commands/list/list-webhook-add.js +3 -3
- package/dist/m365/spo/commands/list/list-webhook-get.js +4 -4
- package/dist/m365/spo/commands/list/list-webhook-list.js +4 -4
- package/dist/m365/spo/commands/list/list-webhook-remove.js +4 -4
- package/dist/m365/spo/commands/list/list-webhook-set.js +4 -4
- package/dist/m365/spo/commands/listitem/listitem-add.js +5 -7
- package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +3 -3
- package/dist/m365/spo/commands/listitem/listitem-get.js +3 -3
- package/dist/m365/spo/commands/listitem/listitem-isrecord.js +5 -7
- package/dist/m365/spo/commands/listitem/listitem-list.js +4 -4
- package/dist/m365/spo/commands/listitem/listitem-record-declare.js +6 -8
- package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +5 -7
- package/dist/m365/spo/commands/listitem/listitem-remove.js +3 -3
- package/dist/m365/spo/commands/listitem/listitem-set.js +4 -4
- package/dist/m365/spo/commands/mail/mail-send.js +2 -1
- package/dist/m365/spo/commands/navigation/navigation-node-add.js +2 -1
- package/dist/m365/spo/commands/navigation/navigation-node-list.js +2 -1
- package/dist/m365/spo/commands/navigation/navigation-node-remove.js +3 -2
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +5 -4
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-list.js +3 -2
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +3 -2
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-list.js +3 -2
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +5 -5
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-set.js +5 -5
- package/dist/m365/spo/commands/page/Page.js +2 -2
- package/dist/m365/spo/commands/page/page-add.js +4 -4
- package/dist/m365/spo/commands/page/page-clientsidewebpart-add.js +3 -3
- package/dist/m365/spo/commands/page/page-column-get.js +2 -1
- package/dist/m365/spo/commands/page/page-column-list.js +2 -1
- package/dist/m365/spo/commands/page/page-control-get.js +3 -3
- package/dist/m365/spo/commands/page/page-control-list.js +2 -1
- package/dist/m365/spo/commands/page/page-control-set.js +3 -3
- package/dist/m365/spo/commands/page/page-copy.js +2 -1
- package/dist/m365/spo/commands/page/page-get.js +3 -3
- package/dist/m365/spo/commands/page/page-header-set.js +2 -1
- package/dist/m365/spo/commands/page/page-list.js +2 -1
- package/dist/m365/spo/commands/page/page-remove.js +4 -4
- package/dist/m365/spo/commands/page/page-section-add.js +2 -1
- package/dist/m365/spo/commands/page/page-section-get.js +2 -1
- package/dist/m365/spo/commands/page/page-section-list.js +2 -1
- package/dist/m365/spo/commands/page/page-set.js +4 -4
- package/dist/m365/spo/commands/page/page-template-list.js +2 -1
- package/dist/m365/spo/commands/page/page-text-add.js +4 -4
- package/dist/m365/spo/commands/propertybag/propertybag-base.js +4 -4
- package/dist/m365/spo/commands/propertybag/propertybag-get.js +4 -6
- package/dist/m365/spo/commands/propertybag/propertybag-list.js +4 -6
- package/dist/m365/spo/commands/propertybag/propertybag-remove.js +6 -9
- package/dist/m365/spo/commands/propertybag/propertybag-set.js +8 -10
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-add.js +4 -4
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-list.js +3 -2
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-revoke.js +4 -4
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-approve.js +5 -5
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-deny.js +5 -5
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-list.js +3 -2
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +3 -2
- package/dist/m365/spo/commands/site/site-add.js +36 -16
- package/dist/m365/spo/commands/site/site-appcatalog-add.js +5 -5
- package/dist/m365/spo/commands/site/site-appcatalog-remove.js +5 -5
- package/dist/m365/spo/commands/site/site-apppermission-add.js +3 -4
- package/dist/m365/spo/commands/site/site-apppermission-get.js +2 -2
- package/dist/m365/spo/commands/site/site-apppermission-list.js +2 -2
- package/dist/m365/spo/commands/site/site-apppermission-remove.js +3 -4
- package/dist/m365/spo/commands/site/site-apppermission-set.js +3 -4
- package/dist/m365/spo/commands/site/site-chrome-set.js +2 -1
- package/dist/m365/spo/commands/site/site-classic-add.js +33 -13
- package/dist/m365/spo/commands/site/site-classic-list.js +4 -4
- package/dist/m365/spo/commands/site/site-classic-set.js +33 -13
- package/dist/m365/spo/commands/site/site-commsite-enable.js +6 -6
- package/dist/m365/spo/commands/site/site-ensure.js +3 -2
- package/dist/m365/spo/commands/site/site-get.js +2 -1
- package/dist/m365/spo/commands/site/site-groupify.js +2 -1
- package/dist/m365/spo/commands/site/site-inplacerecordsmanagement-set.js +3 -3
- package/dist/m365/spo/commands/site/site-list.js +4 -4
- package/dist/m365/spo/commands/site/site-recyclebinitem-list.js +77 -0
- package/dist/m365/spo/commands/site/site-remove.js +34 -14
- package/dist/m365/spo/commands/site/site-rename.js +3 -2
- package/dist/m365/spo/commands/site/site-set.js +12 -12
- package/dist/m365/spo/commands/sitedesign/sitedesign-add.js +4 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-apply.js +4 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +3 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-list.js +2 -1
- package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +4 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-grant.js +4 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-list.js +4 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +4 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-run-list.js +3 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-run-status-get.js +3 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-set.js +4 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-get.js +3 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-list.js +2 -1
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +3 -3
- package/dist/m365/spo/commands/sitescript/sitescript-add.js +3 -2
- package/dist/m365/spo/commands/sitescript/sitescript-get.js +4 -4
- package/dist/m365/spo/commands/sitescript/sitescript-list.js +3 -2
- package/dist/m365/spo/commands/sitescript/sitescript-remove.js +4 -4
- package/dist/m365/spo/commands/sitescript/sitescript-set.js +4 -4
- package/dist/m365/spo/commands/spo-search.js +4 -4
- package/dist/m365/spo/commands/spo-set.js +2 -1
- package/dist/m365/spo/commands/storageentity/storageentity-get.js +2 -1
- package/dist/m365/spo/commands/storageentity/storageentity-list.js +2 -1
- package/dist/m365/spo/commands/storageentity/storageentity-remove.js +5 -5
- package/dist/m365/spo/commands/storageentity/storageentity-set.js +5 -5
- package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +2 -1
- package/dist/m365/spo/commands/tenant/tenant-appcatalogurl-get.js +2 -1
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-list.js +3 -2
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +16 -6
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-restore.js +16 -6
- package/dist/m365/spo/commands/tenant/tenant-settings-list.js +3 -2
- package/dist/m365/spo/commands/tenant/tenant-settings-set.js +5 -5
- package/dist/m365/spo/commands/term/term-add.js +13 -13
- package/dist/m365/spo/commands/term/term-get.js +9 -9
- package/dist/m365/spo/commands/term/term-group-add.js +6 -6
- package/dist/m365/spo/commands/term/term-group-get.js +5 -5
- package/dist/m365/spo/commands/term/term-group-list.js +3 -2
- package/dist/m365/spo/commands/term/term-list.js +7 -7
- package/dist/m365/spo/commands/term/term-set-add.js +9 -9
- package/dist/m365/spo/commands/term/term-set-get.js +7 -7
- package/dist/m365/spo/commands/term/term-set-list.js +5 -5
- package/dist/m365/spo/commands/theme/theme-apply.js +5 -5
- package/dist/m365/spo/commands/theme/theme-get.js +4 -4
- package/dist/m365/spo/commands/theme/theme-list.js +2 -1
- package/dist/m365/spo/commands/theme/theme-remove.js +2 -1
- package/dist/m365/spo/commands/theme/theme-set.js +5 -5
- package/dist/m365/spo/commands/user/user-get.js +2 -1
- package/dist/m365/spo/commands/user/user-list.js +2 -1
- package/dist/m365/spo/commands/user/user-remove.js +2 -1
- package/dist/m365/spo/commands/userprofile/userprofile-get.js +3 -3
- package/dist/m365/spo/commands/userprofile/userprofile-set.js +3 -2
- package/dist/m365/spo/commands/web/web-add.js +4 -3
- package/dist/m365/spo/commands/web/web-clientsidewebpart-list.js +2 -1
- package/dist/m365/spo/commands/web/web-get.js +2 -1
- package/dist/m365/spo/commands/web/web-installedlanguage-list.js +49 -0
- package/dist/m365/spo/commands/web/web-list.js +2 -1
- package/dist/m365/spo/commands/web/web-reindex.js +10 -11
- package/dist/m365/spo/commands/web/web-remove.js +2 -1
- package/dist/m365/spo/commands/web/web-set.js +2 -1
- package/dist/m365/spo/commands.js +3 -0
- package/dist/m365/teams/commands/app/app-install.js +77 -23
- package/dist/m365/teams/commands/app/app-list.js +17 -14
- package/dist/m365/teams/commands/app/app-remove.js +2 -2
- package/dist/m365/teams/commands/app/app-uninstall.js +2 -2
- package/dist/m365/teams/commands/app/app-update.js +55 -13
- package/dist/m365/teams/commands/channel/channel-add.js +2 -2
- package/dist/m365/teams/commands/channel/channel-get.js +32 -10
- package/dist/m365/teams/commands/channel/channel-list.js +7 -8
- package/dist/m365/teams/commands/channel/channel-remove.js +3 -3
- package/dist/m365/teams/commands/channel/channel-set.js +2 -2
- package/dist/m365/teams/commands/chat/chat-list.js +44 -0
- package/dist/m365/teams/commands/chat/chat-member-list.js +42 -0
- package/dist/m365/teams/commands/chat/chat-message-list.js +60 -0
- package/dist/m365/teams/commands/chat/chat-message-send.js +217 -0
- package/dist/m365/teams/commands/conversationmember/conversationmember-add.js +3 -3
- package/dist/m365/teams/commands/conversationmember/conversationmember-list.js +9 -9
- package/dist/m365/teams/commands/funsettings/funsettings-list.js +2 -2
- package/dist/m365/teams/commands/funsettings/funsettings-set.js +2 -2
- package/dist/m365/teams/commands/guestsettings/guestsettings-list.js +2 -2
- package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +2 -2
- package/dist/m365/teams/commands/membersettings/membersettings-list.js +2 -2
- package/dist/m365/teams/commands/membersettings/membersettings-set.js +2 -2
- package/dist/m365/teams/commands/message/message-get.js +4 -4
- package/dist/m365/teams/commands/message/message-list.js +12 -12
- package/dist/m365/teams/commands/message/message-reply-list.js +10 -10
- package/dist/m365/teams/commands/messagingsettings/messagingsettings-list.js +2 -2
- package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +3 -3
- package/dist/m365/teams/commands/report/report-directroutingcalls.js +3 -3
- package/dist/m365/teams/commands/report/report-pstncalls.js +3 -3
- package/dist/m365/teams/commands/tab/tab-add.js +5 -5
- package/dist/m365/teams/commands/tab/tab-get.js +13 -10
- package/dist/m365/teams/commands/tab/tab-list.js +10 -10
- package/dist/m365/teams/commands/tab/tab-remove.js +4 -4
- package/dist/m365/teams/commands/team/team-archive.js +2 -2
- package/dist/m365/teams/commands/team/team-clone.js +2 -2
- package/dist/m365/teams/commands/team/team-get.js +2 -2
- package/dist/m365/teams/commands/team/team-list.js +10 -12
- package/dist/m365/teams/commands/team/team-remove.js +2 -2
- package/dist/m365/teams/commands/team/team-set.js +2 -2
- package/dist/m365/teams/commands/team/team-unarchive.js +2 -2
- package/dist/m365/teams/commands/user/user-app-add.js +3 -3
- package/dist/m365/teams/commands/user/user-app-list.js +10 -10
- package/dist/m365/teams/commands/user/user-app-remove.js +2 -2
- package/dist/m365/teams/commands/user/user-list.js +14 -8
- package/dist/m365/teams/commands.js +4 -0
- package/dist/m365/tenant/commands/auditlog/auditlog-report.js +2 -2
- package/dist/m365/tenant/commands/id/id-get.js +2 -2
- package/dist/m365/tenant/commands/report/report-office365activationcounts.js +2 -2
- package/dist/m365/tenant/commands/report/report-office365activationsusercounts.js +2 -2
- package/dist/m365/tenant/commands/report/report-office365activationsuserdetail.js +2 -2
- package/dist/m365/tenant/commands/service/service-list.js +2 -2
- package/dist/m365/tenant/commands/service/service-message-list.js +2 -2
- package/dist/m365/tenant/commands/service/service-report-historicalservicestatus.js +2 -2
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-get.js +57 -0
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-list.js +56 -0
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-get.js +39 -0
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-list.js +39 -0
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-get.js +51 -0
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-list.js +39 -0
- package/dist/m365/tenant/commands/status/status-list.js +2 -2
- package/dist/m365/tenant/commands.js +6 -0
- package/dist/m365/todo/commands/list/list-list.js +7 -6
- package/dist/m365/todo/commands/task/task-list.js +7 -6
- package/dist/request.js +11 -6
- package/dist/settingsNames.js +7 -0
- package/dist/utils/accessToken.js +44 -0
- package/dist/utils/formatting.js +66 -0
- package/dist/utils/fsUtil.js +36 -0
- package/dist/utils/index.js +26 -0
- package/dist/utils/odata.js +37 -0
- package/dist/utils/sinonUtil.js +19 -0
- package/dist/{m365/spfx/commands/project/project-upgrade/Utils.js → utils/spfx.js} +7 -19
- package/dist/utils/spo.js +432 -0
- package/dist/utils/urlUtil.js +174 -0
- package/dist/utils/validation.js +310 -0
- package/docs/docs/cmd/_global.md +2 -2
- package/docs/docs/cmd/aad/app/app-delete.md +51 -0
- package/docs/docs/cmd/aad/app/app-get.md +59 -0
- package/docs/docs/cmd/aad/app/app-set.md +21 -0
- package/docs/docs/cmd/aad/group/group-list.md +30 -0
- package/docs/docs/cmd/aad/o365group/o365group-add.md +42 -6
- package/docs/docs/cmd/aad/o365group/o365group-conversation-list.md +24 -0
- package/docs/docs/cmd/aad/o365group/o365group-conversation-post-list.md +36 -0
- package/docs/docs/cmd/aad/user/user-get.md +13 -4
- package/docs/docs/cmd/aad/user/user-hibp.md +46 -0
- package/docs/docs/cmd/aad/user/user-list.md +9 -0
- package/docs/docs/cmd/aad/user/user-password-validate.md +29 -0
- package/docs/docs/cmd/app/permission/permission-list.md +36 -0
- package/docs/docs/cmd/outlook/room/room-list.md +30 -0
- package/docs/docs/cmd/outlook/roomlist/roomlist-list.md +21 -0
- package/docs/docs/cmd/pa/app/app-list.md +17 -1
- package/docs/docs/cmd/planner/plan/plan-details-get.md +45 -0
- package/docs/docs/cmd/planner/task/task-add.md +78 -0
- package/docs/docs/cmd/planner/task/task-details-get.md +24 -0
- package/docs/docs/cmd/planner/task/task-get.md +29 -0
- package/docs/docs/cmd/planner/task/task-list.md +5 -0
- package/docs/docs/cmd/planner/task/task-set.md +99 -0
- package/docs/docs/cmd/search/externalconnection/externalconnection-add.md +43 -0
- package/docs/docs/cmd/spfx/project/project-externalize.md +1 -1
- package/docs/docs/cmd/spfx/project/project-rename.md +1 -1
- package/docs/docs/cmd/spfx/project/project-upgrade.md +8 -8
- package/docs/docs/cmd/spfx/spfx-doctor.md +1 -1
- package/docs/docs/cmd/spo/group/group-user-add.md +28 -6
- package/docs/docs/cmd/spo/group/group-user-remove.md +39 -0
- package/docs/docs/cmd/spo/site/site-recyclebinitem-list.md +40 -0
- package/docs/docs/cmd/spo/web/web-installedlanguage-list.md +24 -0
- package/docs/docs/cmd/teams/app/app-install.md +22 -4
- package/docs/docs/cmd/teams/app/app-update.md +12 -3
- package/docs/docs/cmd/teams/channel/channel-get.md +11 -2
- package/docs/docs/cmd/teams/chat/chat-list.md +30 -0
- package/docs/docs/cmd/teams/chat/chat-member-list.md +24 -0
- package/docs/docs/cmd/teams/chat/chat-message-list.md +24 -0
- package/docs/docs/cmd/teams/chat/chat-message-send.md +55 -0
- package/docs/docs/cmd/teams/message/message-get.md +0 -3
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-get.md +33 -0
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-list.md +30 -0
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-get.md +24 -0
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-list.md +34 -0
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-get.md +28 -0
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-list.md +34 -0
- package/npm-shrinkwrap.json +1313 -1498
- package/package.json +39 -27
- package/dist/Utils.js +0 -568
- package/dist/m365/aad/commands/o365group/Group.js +0 -3
- package/dist/m365/aad/commands/o365group/GroupUser.js +0 -3
- package/dist/m365/base/AadCommand.js +0 -10
- package/dist/m365/base/GraphItemsListCommand.js +0 -46
- package/dist/m365/base/GraphResponse.js +0 -3
- package/dist/m365/base/GraphResponseError.js +0 -3
- package/dist/m365/spo/ClientSvc.js +0 -128
- package/dist/m365/spo/FolderExtensions.js +0 -101
- package/dist/m365/spo/spo.js +0 -3
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.urlUtil = void 0;
|
|
4
|
+
const url = require("url");
|
|
5
|
+
exports.urlUtil = {
|
|
6
|
+
/**
|
|
7
|
+
* Returns server relative path.
|
|
8
|
+
* @param webUrl web full or web relative url e.g. https://contoso.sharepoint.com/sites/team1
|
|
9
|
+
* @param folderRelativePath folder relative path e.g. /Shared Documents
|
|
10
|
+
* @example
|
|
11
|
+
* // returns "/sites/team1"
|
|
12
|
+
* urlUtil.getServerRelativePath("https://contoso.sharepoint.com/sites/team1", "");
|
|
13
|
+
* @example
|
|
14
|
+
* // returns "/sites/team1/Shared Documents"
|
|
15
|
+
* urlUtil.getServerRelativePath("https://contoso.sharepoint.com/sites/team1", "/Shared Documents");
|
|
16
|
+
* @example
|
|
17
|
+
* // returns "/sites/team1/Shared Documents"
|
|
18
|
+
* urlUtil.getServerRelativePath("/sites/team1/", "/Shared Documents");
|
|
19
|
+
*/
|
|
20
|
+
getServerRelativePath(webUrl, folderRelativePath) {
|
|
21
|
+
const tenantUrl = `${url.parse(webUrl).protocol}//${url.parse(webUrl).hostname}`;
|
|
22
|
+
// if webUrl is a server-relative URL then tenantUrl will resolve to null//null
|
|
23
|
+
// in which case we should keep webUrl
|
|
24
|
+
let webRelativePath = tenantUrl !== 'null//null' ? webUrl.substr(tenantUrl.length) : webUrl;
|
|
25
|
+
// will be used to remove relative path from the folderRelativePath
|
|
26
|
+
// in case the web relative url is included
|
|
27
|
+
let relativePathToRemove = webRelativePath;
|
|
28
|
+
// add '/' at 0
|
|
29
|
+
if (webRelativePath[0] !== '/') {
|
|
30
|
+
webRelativePath = `/${webRelativePath}`;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
relativePathToRemove = webRelativePath.substring(1);
|
|
34
|
+
}
|
|
35
|
+
// remove last '/' of webRelativePath
|
|
36
|
+
const webPathLastCharPos = webRelativePath.length - 1;
|
|
37
|
+
if (webRelativePath.length > 1 &&
|
|
38
|
+
webRelativePath[webPathLastCharPos] === '/') {
|
|
39
|
+
webRelativePath = webRelativePath.substring(0, webPathLastCharPos);
|
|
40
|
+
}
|
|
41
|
+
// remove the web relative path if it is contained in the folder relative path
|
|
42
|
+
const relativePathToRemoveIdx = folderRelativePath.toLowerCase().indexOf(relativePathToRemove.toLowerCase());
|
|
43
|
+
if (relativePathToRemoveIdx > -1) {
|
|
44
|
+
const pos = relativePathToRemoveIdx + relativePathToRemove.length;
|
|
45
|
+
folderRelativePath = folderRelativePath.substring(pos, folderRelativePath.length);
|
|
46
|
+
}
|
|
47
|
+
if (folderRelativePath !== '') {
|
|
48
|
+
// add '/' at 0 for siteRelativePath
|
|
49
|
+
if (folderRelativePath[0] !== '/') {
|
|
50
|
+
folderRelativePath = `/${folderRelativePath}`;
|
|
51
|
+
}
|
|
52
|
+
// remove last '/' of siteRelativePath
|
|
53
|
+
const folderPathLastCharPos = folderRelativePath.length - 1;
|
|
54
|
+
if (folderRelativePath[folderPathLastCharPos] === '/') {
|
|
55
|
+
folderRelativePath = folderRelativePath.substring(0, folderPathLastCharPos);
|
|
56
|
+
}
|
|
57
|
+
if (webRelativePath === '/' && folderRelativePath !== '') {
|
|
58
|
+
webRelativePath = folderRelativePath;
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
webRelativePath = `${webRelativePath}${folderRelativePath}`;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return webRelativePath.replace('//', '/');
|
|
65
|
+
},
|
|
66
|
+
/**
|
|
67
|
+
* Returns server relative site url.
|
|
68
|
+
* @param webUrl web full or web relative url e.g. https://contoso.sharepoint.com/sites/team1
|
|
69
|
+
* @example
|
|
70
|
+
* // returns "/sites/team1"
|
|
71
|
+
* urlUtil.getServerRelativeSiteUrl("https://contoso.sharepoint.com/sites/team1";
|
|
72
|
+
* @example
|
|
73
|
+
* // returns ""
|
|
74
|
+
* urlUtil.getServerRelativeSiteUrl("https://contoso.sharepoint.com");
|
|
75
|
+
* @example
|
|
76
|
+
* // returns "/sites/team1/Shared Documents"
|
|
77
|
+
* urlUtil.getServerRelativePath("/sites/team1/", "/Shared Documents");
|
|
78
|
+
*/
|
|
79
|
+
getServerRelativeSiteUrl(webUrl) {
|
|
80
|
+
const serverRelativeSiteUrl = exports.urlUtil.getServerRelativePath(webUrl, '');
|
|
81
|
+
// return an empty string instead of / to prevent // replies
|
|
82
|
+
return serverRelativeSiteUrl === '/' ? "" : serverRelativeSiteUrl;
|
|
83
|
+
},
|
|
84
|
+
/**
|
|
85
|
+
* Returns web relative path from webUrl and folderUrl.
|
|
86
|
+
* @param webUrl web full or web relative url e.g. https://contoso.sharepoint.com/sites/team1/
|
|
87
|
+
* @param folderUrl folder server relative url e.g. /sites/team1/Lists/MyList
|
|
88
|
+
* @example
|
|
89
|
+
* // returns "/Lists/MyList"
|
|
90
|
+
* Utils.getWebRelativePath("https://contoso.sharepoint.com/sites/team1/", "/sites/team1/Lists/MyList");
|
|
91
|
+
* @example
|
|
92
|
+
* // returns "/Shared Documents"
|
|
93
|
+
* Utils.getWebRelativePath("/sites/team1/", "/sites/team1/Shared Documents");
|
|
94
|
+
*/
|
|
95
|
+
getWebRelativePath(webUrl, folderUrl) {
|
|
96
|
+
let folderWebRelativePath = '';
|
|
97
|
+
const tenantUrl = `${url.parse(webUrl).protocol}//${url.parse(webUrl).hostname}`;
|
|
98
|
+
// if webUrl is a server-relative URL then tenantUrl will resolve to null//null
|
|
99
|
+
// in which case we should keep webUrl
|
|
100
|
+
let webRelativePath = tenantUrl !== 'null//null' ? webUrl.substr(tenantUrl.length) : webUrl;
|
|
101
|
+
// will be used to remove relative path from the folderRelativePath
|
|
102
|
+
// in case the web relative url is included
|
|
103
|
+
let relativePathToRemove = webRelativePath;
|
|
104
|
+
// add '/' at 0
|
|
105
|
+
if (webRelativePath[0] !== '/') {
|
|
106
|
+
webRelativePath = `/${webRelativePath}`;
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
relativePathToRemove = webRelativePath.substring(1);
|
|
110
|
+
}
|
|
111
|
+
// remove last '/' of webRelativePath
|
|
112
|
+
const webPathLastCharPos = webRelativePath.length - 1;
|
|
113
|
+
if (webRelativePath.length > 1 &&
|
|
114
|
+
webRelativePath[webPathLastCharPos] === '/') {
|
|
115
|
+
webRelativePath = webRelativePath.substring(0, webPathLastCharPos);
|
|
116
|
+
}
|
|
117
|
+
// remove the web relative path if it is contained in the folder relative path
|
|
118
|
+
const relativePathToRemoveIdx = folderUrl.toLowerCase().indexOf(relativePathToRemove.toLowerCase());
|
|
119
|
+
if (relativePathToRemoveIdx > -1) {
|
|
120
|
+
const pos = relativePathToRemoveIdx + relativePathToRemove.length;
|
|
121
|
+
folderWebRelativePath = folderUrl.substring(pos, folderUrl.length);
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
folderWebRelativePath = folderUrl;
|
|
125
|
+
}
|
|
126
|
+
// add '/' at 0 for folderWebRelativePath
|
|
127
|
+
if (folderWebRelativePath[0] !== '/') {
|
|
128
|
+
folderWebRelativePath = `/${folderWebRelativePath}`;
|
|
129
|
+
}
|
|
130
|
+
// remove last '/' of folderWebRelativePath
|
|
131
|
+
const folderPathLastCharPos = folderWebRelativePath.length - 1;
|
|
132
|
+
if (folderWebRelativePath.length > 1 && folderWebRelativePath[folderPathLastCharPos] === '/') {
|
|
133
|
+
folderWebRelativePath = folderWebRelativePath.substring(0, folderPathLastCharPos);
|
|
134
|
+
}
|
|
135
|
+
return folderWebRelativePath.replace('//', '/');
|
|
136
|
+
},
|
|
137
|
+
/**
|
|
138
|
+
* Returns the absolute URL according to a Web URL and the server relative URL of a folder
|
|
139
|
+
* @param webUrl The full URL of a web
|
|
140
|
+
* @param serverRelativeUrl The server relative URL of a folder
|
|
141
|
+
* @example
|
|
142
|
+
* // returns "https://contoso.sharepoint.com/sites/team1/Lists/MyList"
|
|
143
|
+
* urlUtil.getAbsoluteUrl("https://contoso.sharepoint.com/sites/team1/", "/sites/team1/Lists/MyList");
|
|
144
|
+
*/
|
|
145
|
+
getAbsoluteUrl(webUrl, serverRelativeUrl) {
|
|
146
|
+
const uri = url.parse(webUrl);
|
|
147
|
+
const tenantUrl = `${uri.protocol}//${uri.hostname}`;
|
|
148
|
+
if (serverRelativeUrl[0] !== '/') {
|
|
149
|
+
serverRelativeUrl = `/${serverRelativeUrl}`;
|
|
150
|
+
}
|
|
151
|
+
return `${tenantUrl}${serverRelativeUrl}`;
|
|
152
|
+
},
|
|
153
|
+
/**
|
|
154
|
+
* Combines base and relative url considering any missing slashes
|
|
155
|
+
* @param baseUrl https://contoso.com
|
|
156
|
+
* @param relativeUrl sites/abc
|
|
157
|
+
*/
|
|
158
|
+
urlCombine(baseUrl, relativeUrl) {
|
|
159
|
+
// remove last '/' of base if exists
|
|
160
|
+
if (baseUrl.lastIndexOf('/') === baseUrl.length - 1) {
|
|
161
|
+
baseUrl = baseUrl.substring(0, baseUrl.length - 1);
|
|
162
|
+
}
|
|
163
|
+
// remove '/' at 0
|
|
164
|
+
if (relativeUrl.charAt(0) === '/') {
|
|
165
|
+
relativeUrl = relativeUrl.substring(1, relativeUrl.length);
|
|
166
|
+
}
|
|
167
|
+
// remove last '/' of next if exists
|
|
168
|
+
if (relativeUrl.lastIndexOf('/') === relativeUrl.length - 1) {
|
|
169
|
+
relativeUrl = relativeUrl.substring(0, relativeUrl.length - 1);
|
|
170
|
+
}
|
|
171
|
+
return `${baseUrl}/${relativeUrl}`;
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
//# sourceMappingURL=urlUtil.js.map
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validation = void 0;
|
|
4
|
+
exports.validation = {
|
|
5
|
+
isValidGuidArray(guids) {
|
|
6
|
+
return guids.every(guid => this.isValidGuid(guid));
|
|
7
|
+
},
|
|
8
|
+
isValidGuid(guid) {
|
|
9
|
+
const guidRegEx = new RegExp(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i);
|
|
10
|
+
return guidRegEx.test(guid);
|
|
11
|
+
},
|
|
12
|
+
isValidTeamsChannelId(guid) {
|
|
13
|
+
const guidRegEx = new RegExp(/^19:[0-9a-zA-Z-_]+@thread\.(skype|tacv2)$/i);
|
|
14
|
+
return guidRegEx.test(guid);
|
|
15
|
+
},
|
|
16
|
+
isValidTeamsChatId(guid) {
|
|
17
|
+
const guidRegEx = new RegExp(/^19:[0-9a-zA-Z-_]+(@thread\.v2|@unq\.gbl\.spaces)$/i);
|
|
18
|
+
return guidRegEx.test(guid);
|
|
19
|
+
},
|
|
20
|
+
isValidUserPrincipalName(upn) {
|
|
21
|
+
const upnRegEx = new RegExp(/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/i);
|
|
22
|
+
return upnRegEx.test(upn);
|
|
23
|
+
},
|
|
24
|
+
isDateInRange(date, monthOffset) {
|
|
25
|
+
const d = new Date(date);
|
|
26
|
+
const cutoffDate = new Date();
|
|
27
|
+
cutoffDate.setMonth(cutoffDate.getMonth() - monthOffset);
|
|
28
|
+
return d > cutoffDate;
|
|
29
|
+
},
|
|
30
|
+
isValidISODate(date) {
|
|
31
|
+
const dateRegEx = new RegExp(/^(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])$/i);
|
|
32
|
+
return dateRegEx.test(date);
|
|
33
|
+
},
|
|
34
|
+
isValidISODateDashOnly(date) {
|
|
35
|
+
const dateTimeRegEx = new RegExp(/^(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))$/i);
|
|
36
|
+
const dateOnlyRegEx = new RegExp(/^(19|20)\d\d[-](0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])$/i);
|
|
37
|
+
return dateTimeRegEx.test(date) ? true : dateOnlyRegEx.test(date);
|
|
38
|
+
},
|
|
39
|
+
isValidISODateTime(dateTime) {
|
|
40
|
+
const withMilliSecsPattern = new RegExp(/^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|[12][0-9]))T(0[0-9]|1[0-9]|2[0-3]):(0[0-9]|[1-5][0-9]):(0[0-9]|[1-5][0-9])\.[0-9]{3}Z$/);
|
|
41
|
+
if (withMilliSecsPattern.test(dateTime)) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
const withSecsPattern = new RegExp(/^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|[12][0-9]))T(0[0-9]|1[0-9]|2[0-3]):(0[0-9]|[1-5][0-9]):(0[0-9]|[1-5][0-9])Z$/);
|
|
45
|
+
if (withSecsPattern.test(dateTime)) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
const withMinutesPattern = new RegExp(/^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|[12][0-9]))T(0[0-9]|1[0-9]|2[0-3]):(0[0-9]|[1-5][0-9])Z$/);
|
|
49
|
+
if (withMinutesPattern.test(dateTime)) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
const withHoursPattern = new RegExp(/^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|[12][0-9]))T(0[0-9]|1[0-9]|2[0-3])Z$/);
|
|
53
|
+
if (withHoursPattern.test(dateTime)) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
const withoutTimePattern = new RegExp(/^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|[12][0-9]))$/);
|
|
57
|
+
if (withoutTimePattern.test(dateTime)) {
|
|
58
|
+
return true;
|
|
59
|
+
}
|
|
60
|
+
return false;
|
|
61
|
+
},
|
|
62
|
+
isValidBoolean(value) {
|
|
63
|
+
return value.toLowerCase() === 'true' || value.toLowerCase() === 'false';
|
|
64
|
+
},
|
|
65
|
+
isJavaScriptReservedWord(input) {
|
|
66
|
+
const javascriptReservedWords = [
|
|
67
|
+
"arguments",
|
|
68
|
+
"await",
|
|
69
|
+
"break",
|
|
70
|
+
"case",
|
|
71
|
+
"catch",
|
|
72
|
+
"class",
|
|
73
|
+
"const",
|
|
74
|
+
"continue",
|
|
75
|
+
"debugger",
|
|
76
|
+
"default",
|
|
77
|
+
"delete",
|
|
78
|
+
"do",
|
|
79
|
+
"else",
|
|
80
|
+
"enum",
|
|
81
|
+
"eval",
|
|
82
|
+
"export",
|
|
83
|
+
"extends",
|
|
84
|
+
"false",
|
|
85
|
+
"finally",
|
|
86
|
+
"for",
|
|
87
|
+
"function",
|
|
88
|
+
"if",
|
|
89
|
+
"implements",
|
|
90
|
+
"import",
|
|
91
|
+
"in",
|
|
92
|
+
"instanceof",
|
|
93
|
+
"interface",
|
|
94
|
+
"let",
|
|
95
|
+
"new",
|
|
96
|
+
"null",
|
|
97
|
+
"package",
|
|
98
|
+
"private",
|
|
99
|
+
"protected",
|
|
100
|
+
"public",
|
|
101
|
+
"return",
|
|
102
|
+
"static",
|
|
103
|
+
"super",
|
|
104
|
+
"switch",
|
|
105
|
+
"this",
|
|
106
|
+
"throw",
|
|
107
|
+
"true",
|
|
108
|
+
"try",
|
|
109
|
+
"typeof",
|
|
110
|
+
"var",
|
|
111
|
+
"void",
|
|
112
|
+
"while",
|
|
113
|
+
"with",
|
|
114
|
+
"yield",
|
|
115
|
+
"Array",
|
|
116
|
+
"Date",
|
|
117
|
+
"eval",
|
|
118
|
+
"function",
|
|
119
|
+
"hasOwnProperty",
|
|
120
|
+
"Infinity",
|
|
121
|
+
"isFinite",
|
|
122
|
+
"isNaN",
|
|
123
|
+
"isPrototypeOf",
|
|
124
|
+
"length",
|
|
125
|
+
"Math",
|
|
126
|
+
"NaN",
|
|
127
|
+
"name",
|
|
128
|
+
"Number",
|
|
129
|
+
"Object",
|
|
130
|
+
"prototype",
|
|
131
|
+
"String",
|
|
132
|
+
"toString",
|
|
133
|
+
"undefined",
|
|
134
|
+
"valueOf",
|
|
135
|
+
"alert",
|
|
136
|
+
"all",
|
|
137
|
+
"anchor",
|
|
138
|
+
"anchors",
|
|
139
|
+
"area",
|
|
140
|
+
"assign",
|
|
141
|
+
"blur",
|
|
142
|
+
"button",
|
|
143
|
+
"checkbox",
|
|
144
|
+
"clearInterval",
|
|
145
|
+
"clearTimeout",
|
|
146
|
+
"clientInformation",
|
|
147
|
+
"close",
|
|
148
|
+
"closed",
|
|
149
|
+
"confirm",
|
|
150
|
+
"constructor",
|
|
151
|
+
"crypto",
|
|
152
|
+
"decodeURI",
|
|
153
|
+
"decodeURIComponent",
|
|
154
|
+
"defaultStatus",
|
|
155
|
+
"document",
|
|
156
|
+
"element",
|
|
157
|
+
"elements",
|
|
158
|
+
"embed",
|
|
159
|
+
"embeds",
|
|
160
|
+
"encodeURI",
|
|
161
|
+
"encodeURIComponent",
|
|
162
|
+
"escape",
|
|
163
|
+
"event",
|
|
164
|
+
"fileUpload",
|
|
165
|
+
"focus",
|
|
166
|
+
"form",
|
|
167
|
+
"forms",
|
|
168
|
+
"frame",
|
|
169
|
+
"innerHeight",
|
|
170
|
+
"innerWidth",
|
|
171
|
+
"layer",
|
|
172
|
+
"layers",
|
|
173
|
+
"link",
|
|
174
|
+
"location",
|
|
175
|
+
"mimeTypes",
|
|
176
|
+
"navigate",
|
|
177
|
+
"navigator",
|
|
178
|
+
"frames",
|
|
179
|
+
"frameRate",
|
|
180
|
+
"hidden",
|
|
181
|
+
"history",
|
|
182
|
+
"image",
|
|
183
|
+
"images",
|
|
184
|
+
"offscreenBuffering",
|
|
185
|
+
"open",
|
|
186
|
+
"opener",
|
|
187
|
+
"option",
|
|
188
|
+
"outerHeight",
|
|
189
|
+
"outerWidth",
|
|
190
|
+
"packages",
|
|
191
|
+
"pageXOffset",
|
|
192
|
+
"pageYOffset",
|
|
193
|
+
"parent",
|
|
194
|
+
"parseFloat",
|
|
195
|
+
"parseInt",
|
|
196
|
+
"password",
|
|
197
|
+
"pkcs11",
|
|
198
|
+
"plugin",
|
|
199
|
+
"prompt",
|
|
200
|
+
"propertyIsEnum",
|
|
201
|
+
"radio",
|
|
202
|
+
"reset",
|
|
203
|
+
"screenX",
|
|
204
|
+
"screenY",
|
|
205
|
+
"scroll",
|
|
206
|
+
"secure",
|
|
207
|
+
"select",
|
|
208
|
+
"self",
|
|
209
|
+
"setInterval",
|
|
210
|
+
"setTimeout",
|
|
211
|
+
"status",
|
|
212
|
+
"submit",
|
|
213
|
+
"taint",
|
|
214
|
+
"text",
|
|
215
|
+
"textarea",
|
|
216
|
+
"top",
|
|
217
|
+
"unescape",
|
|
218
|
+
"untaint",
|
|
219
|
+
"window",
|
|
220
|
+
"onblur",
|
|
221
|
+
"onclick",
|
|
222
|
+
"onerror",
|
|
223
|
+
"onfocus",
|
|
224
|
+
"onkeydown",
|
|
225
|
+
"onkeypress",
|
|
226
|
+
"onkeyup",
|
|
227
|
+
"onmouseover",
|
|
228
|
+
"onload",
|
|
229
|
+
"onmouseup",
|
|
230
|
+
"onmousedown",
|
|
231
|
+
"onsubmit"
|
|
232
|
+
];
|
|
233
|
+
return !!input && !input.split('.').every(value => !~javascriptReservedWords.indexOf(value));
|
|
234
|
+
},
|
|
235
|
+
isValidFileName(input) {
|
|
236
|
+
return !!input && !/^((\..*)|COM\d|CLOCK\$|LPT\d|AUX|NUL|CON|PRN|(.*[\u{d800}-\u{dfff}]+.*))$/iu.test(input) && !/^(.*\.\..*)$/i.test(input);
|
|
237
|
+
},
|
|
238
|
+
isValidTheme(input) {
|
|
239
|
+
const validThemeProperties = [
|
|
240
|
+
"themePrimary",
|
|
241
|
+
"themeLighterAlt",
|
|
242
|
+
"themeLighter",
|
|
243
|
+
"themeLight",
|
|
244
|
+
"themeTertiary",
|
|
245
|
+
"themeSecondary",
|
|
246
|
+
"themeDarkAlt",
|
|
247
|
+
"themeDark",
|
|
248
|
+
"themeDarker",
|
|
249
|
+
"neutralLighterAlt",
|
|
250
|
+
"neutralLighter",
|
|
251
|
+
"neutralLight",
|
|
252
|
+
"neutralQuaternaryAlt",
|
|
253
|
+
"neutralQuaternary",
|
|
254
|
+
"neutralTertiaryAlt",
|
|
255
|
+
"neutralTertiary",
|
|
256
|
+
"neutralSecondary",
|
|
257
|
+
"neutralPrimaryAlt",
|
|
258
|
+
"neutralPrimary",
|
|
259
|
+
"neutralDark",
|
|
260
|
+
"black",
|
|
261
|
+
"white"
|
|
262
|
+
];
|
|
263
|
+
let theme;
|
|
264
|
+
try {
|
|
265
|
+
theme = JSON.parse(input);
|
|
266
|
+
}
|
|
267
|
+
catch (_a) {
|
|
268
|
+
return false;
|
|
269
|
+
}
|
|
270
|
+
if (Array.isArray(theme)) {
|
|
271
|
+
return false;
|
|
272
|
+
}
|
|
273
|
+
const hasInvalidProperties = validThemeProperties.map((property) => {
|
|
274
|
+
return theme.hasOwnProperty(property);
|
|
275
|
+
}).includes(false);
|
|
276
|
+
if (hasInvalidProperties) {
|
|
277
|
+
return false;
|
|
278
|
+
}
|
|
279
|
+
const regex = new RegExp(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/);
|
|
280
|
+
const hasInvalidValues = validThemeProperties.map((property) => {
|
|
281
|
+
return regex.test(theme[property]);
|
|
282
|
+
}).includes(false);
|
|
283
|
+
if (hasInvalidValues) {
|
|
284
|
+
return false;
|
|
285
|
+
}
|
|
286
|
+
return true;
|
|
287
|
+
},
|
|
288
|
+
isValidSharePointUrl(url) {
|
|
289
|
+
if (!url) {
|
|
290
|
+
return false;
|
|
291
|
+
}
|
|
292
|
+
if (url.indexOf('https://') !== 0) {
|
|
293
|
+
return `${url} is not a valid SharePoint Online site URL`;
|
|
294
|
+
}
|
|
295
|
+
else {
|
|
296
|
+
return true;
|
|
297
|
+
}
|
|
298
|
+
},
|
|
299
|
+
isValidFormDigest(contextInfo) {
|
|
300
|
+
if (!contextInfo) {
|
|
301
|
+
return false;
|
|
302
|
+
}
|
|
303
|
+
const now = new Date();
|
|
304
|
+
if (contextInfo.FormDigestValue && now < contextInfo.FormDigestExpiresAt) {
|
|
305
|
+
return true;
|
|
306
|
+
}
|
|
307
|
+
return false;
|
|
308
|
+
}
|
|
309
|
+
};
|
|
310
|
+
//# sourceMappingURL=validation.js.map
|
package/docs/docs/cmd/_global.md
CHANGED
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
: JMESPath query string. See [http://jmespath.org/](http://jmespath.org/) for more information and examples
|
|
6
6
|
|
|
7
7
|
`-o, --output [output]`
|
|
8
|
-
: Output type. `json,text`. Default `
|
|
8
|
+
: Output type. `json,text,csv`. Default `json`
|
|
9
9
|
|
|
10
10
|
`--verbose`
|
|
11
11
|
: Runs command with verbose logging
|
|
12
12
|
|
|
13
13
|
`--debug`
|
|
14
|
-
: Runs command with debug logging
|
|
14
|
+
: Runs command with debug logging
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# aad app delete
|
|
2
|
+
|
|
3
|
+
Removes an Azure AD app registration
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 aad app delete [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`--appId [appId]`
|
|
14
|
+
: Application (client) ID of the Azure AD application registration to remove. Specify either `appId`, `objectId` or `name`
|
|
15
|
+
|
|
16
|
+
`--objectId [objectId]`
|
|
17
|
+
: Object ID of the Azure AD application registration to remove. Specify either `appId`, `objectId` or `name`
|
|
18
|
+
|
|
19
|
+
`--name [name]`
|
|
20
|
+
: Name of the Azure AD application registration to remove. Specify either `appId`, `objectId` or `name`
|
|
21
|
+
|
|
22
|
+
`--confirm`:
|
|
23
|
+
: Don't prompt for confirmation to delete the app
|
|
24
|
+
|
|
25
|
+
--8<-- "docs/cmd/_global.md"
|
|
26
|
+
|
|
27
|
+
## Remarks
|
|
28
|
+
|
|
29
|
+
For best performance use the `objectId` option to reference the Azure AD application registration to delete. If you use `appId` or `name`, this command will first need to find the corresponding object ID for that application.
|
|
30
|
+
|
|
31
|
+
If the command finds multiple Azure AD application registrations with the specified app name, it will prompt you to disambiguate which app it should use, listing the discovered object IDs.
|
|
32
|
+
|
|
33
|
+
## Examples
|
|
34
|
+
|
|
35
|
+
Delete the Azure AD application registration by its app (client) ID
|
|
36
|
+
|
|
37
|
+
```sh
|
|
38
|
+
m365 aad app delete --appId d75be2e1-0204-4f95-857d-51a37cf40be8
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Delete the Azure AD application registration by its object ID
|
|
42
|
+
|
|
43
|
+
```sh
|
|
44
|
+
m365 aad app delete --objectId d75be2e1-0204-4f95-857d-51a37cf40be8
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Delete the Azure AD application registration by its name. Will NOT prompt for confirmation before deleting.
|
|
48
|
+
|
|
49
|
+
```sh
|
|
50
|
+
m365 aad app delete --name "My app" --confirm
|
|
51
|
+
```
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# aad app get
|
|
2
|
+
|
|
3
|
+
Gets an Azure AD app registration
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 aad app get [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`--appId [appId]`
|
|
14
|
+
: Application (client) ID of the Azure AD application registration to get. Specify either `appId`, `objectId` or `name`
|
|
15
|
+
|
|
16
|
+
`--objectId [objectId]`
|
|
17
|
+
: Object ID of the Azure AD application registration to get. Specify either `appId`, `objectId` or `name`
|
|
18
|
+
|
|
19
|
+
`--name [name]`
|
|
20
|
+
: Name of the Azure AD application registration to get. Specify either `appId`, `objectId` or `name`
|
|
21
|
+
|
|
22
|
+
`--save`
|
|
23
|
+
: Use to store the information about the created app in a local file
|
|
24
|
+
|
|
25
|
+
--8<-- "docs/cmd/_global.md"
|
|
26
|
+
|
|
27
|
+
## Remarks
|
|
28
|
+
|
|
29
|
+
For best performance use the `objectId` option to reference the Azure AD application registration to get. If you use `appId` or `name`, this command will first need to find the corresponding object ID for that application.
|
|
30
|
+
|
|
31
|
+
If the command finds multiple Azure AD application registrations with the specified app name, it will prompt you to disambiguate which app it should use, listing the discovered object IDs.
|
|
32
|
+
|
|
33
|
+
If you want to store the information about the Azure AD app registration, use the `--save` option. This is useful when you build solutions connected to Microsoft 365 and want to easily manage app registrations used with your solution. When you use the `--save` option, after you get the app registration, the command will write its ID and name to the `.m365rc.json` file in the current directory. If the file already exists, it will add the information about the App registration to it if it's not already present, allowing you to track multiple apps. If the file doesn't exist, the command will create it.
|
|
34
|
+
|
|
35
|
+
## Examples
|
|
36
|
+
|
|
37
|
+
Get the Azure AD application registration by its app (client) ID
|
|
38
|
+
|
|
39
|
+
```sh
|
|
40
|
+
m365 aad app get --appId d75be2e1-0204-4f95-857d-51a37cf40be8
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Get the Azure AD application registration by its object ID
|
|
44
|
+
|
|
45
|
+
```sh
|
|
46
|
+
m365 aad app get --objectId d75be2e1-0204-4f95-857d-51a37cf40be8
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Get the Azure AD application registration by its name
|
|
50
|
+
|
|
51
|
+
```sh
|
|
52
|
+
m365 aad app get --name "My app"
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Get the Azure AD application registration by its name. Store information about the retrieved app registration in the _.m365rc.json_ file in the current directory.
|
|
56
|
+
|
|
57
|
+
```sh
|
|
58
|
+
m365 aad app get --name "My app" --save
|
|
59
|
+
```
|
|
@@ -22,6 +22,15 @@ m365 aad app set [options]
|
|
|
22
22
|
`-u, --uri [uri]`
|
|
23
23
|
: Application ID URI to update
|
|
24
24
|
|
|
25
|
+
`-r, --redirectUris [redirectUris]`
|
|
26
|
+
: Comma-separated list of redirect URIs to add to the app registration. Requires `platform` to be specified
|
|
27
|
+
|
|
28
|
+
`-p, --platform [platform]`
|
|
29
|
+
: Platform for which the `redirectUri` should be configured. Allowed values `spa,web,publicClient`
|
|
30
|
+
|
|
31
|
+
`--redirectUrisToRemove [redirectUrisToRemove]`
|
|
32
|
+
: Comma-separated list of existing redirect URIs to remove. Specify, when you want to replace existing redirect URIs with another
|
|
33
|
+
|
|
25
34
|
--8<-- "docs/cmd/_global.md"
|
|
26
35
|
|
|
27
36
|
## Remarks
|
|
@@ -49,3 +58,15 @@ Update the app URI of the Azure AD application registration specified by its nam
|
|
|
49
58
|
```sh
|
|
50
59
|
m365 aad app set --name "My app" --uri https://contoso.com/e75be2e1-0204-4f95-857d-51a37cf40be8
|
|
51
60
|
```
|
|
61
|
+
|
|
62
|
+
Add a new redirect URI for SPA authentication
|
|
63
|
+
|
|
64
|
+
```sh
|
|
65
|
+
m365 aad app set --objectId 95cfe30d-ed44-4f9d-b73d-c66560f72e83 --redirectUris https://contoso.com/auth --platform spa
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Replace one redirect URI with another for SPA authentication
|
|
69
|
+
|
|
70
|
+
```sh
|
|
71
|
+
m365 aad app set --objectId 95cfe30d-ed44-4f9d-b73d-c66560f72e83 --redirectUris https://contoso.com/auth --platform spa --redirectUrisToRemove https://contoso.com/old-auth
|
|
72
|
+
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# aad group list
|
|
2
|
+
|
|
3
|
+
Lists Azure AD groups
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 aad group list [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`-d, --deleted`
|
|
14
|
+
: Use to retrieve deleted groups
|
|
15
|
+
|
|
16
|
+
--8<-- "docs/cmd/_global.md"
|
|
17
|
+
|
|
18
|
+
## Examples
|
|
19
|
+
|
|
20
|
+
Lists all groups defined in Azure Active Directory.
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
m365 aad group list
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
List all recently deleted groups in the tenant
|
|
27
|
+
|
|
28
|
+
```sh
|
|
29
|
+
m365 aad group list --deleted
|
|
30
|
+
```
|