@pnp/cli-microsoft365 12.0.0-beta.f682e10 → 12.0.0
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 +19 -2
- package/dist/Command.js +11 -8
- package/dist/cli/cli.js +15 -0
- package/dist/config.js +2 -0
- package/dist/m365/cli/commands/cli-consent.js +9 -2
- package/dist/m365/entra/commands/agent/agent-blueprint-list.js +52 -0
- package/dist/m365/entra/commands/agent/agent-blueprintprincipal-list.js +56 -0
- package/dist/m365/entra/commands/m365group/m365group-add.js +52 -97
- package/dist/m365/entra/commands/m365group/m365group-conversation-list.js +20 -33
- package/dist/m365/entra/commands/m365group/m365group-conversation-post-list.js +20 -39
- package/dist/m365/entra/commands/m365group/m365group-get.js +20 -41
- package/dist/m365/entra/commands/m365group/m365group-list.js +11 -31
- package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-clear.js +8 -22
- package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-list.js +9 -25
- package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-remove.js +21 -43
- package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-restore.js +21 -41
- package/dist/m365/entra/commands/m365group/m365group-remove.js +25 -46
- package/dist/m365/entra/commands/m365group/m365group-renew.js +19 -32
- package/dist/m365/entra/commands/m365group/m365group-set.js +86 -141
- package/dist/m365/entra/commands/m365group/m365group-teamify.js +20 -43
- package/dist/m365/entra/commands/m365group/m365group-user-add.js +44 -77
- package/dist/m365/entra/commands/m365group/m365group-user-list.js +28 -55
- package/dist/m365/entra/commands/m365group/m365group-user-remove.js +37 -74
- package/dist/m365/entra/commands/m365group/m365group-user-set.js +45 -77
- package/dist/m365/entra/commands.js +2 -0
- package/dist/m365/graph/commands/schemaextension/schemaextension-list.js +14 -16
- package/dist/m365/outlook/commands/calendargroup/calendargroup-add.js +97 -0
- package/dist/m365/outlook/commands/event/event-add.js +324 -0
- package/dist/m365/outlook/commands.js +2 -0
- package/dist/m365/spe/commands/container/container-activate.js +8 -16
- package/dist/m365/spe/commands/container/container-list.js +21 -42
- package/dist/m365/spe/commands/container/container-permission-add.js +114 -0
- package/dist/m365/spe/commands/container/container-permission-remove.js +94 -0
- package/dist/m365/spe/commands/container/container-permission-set.js +90 -0
- package/dist/m365/spe/commands/containertype/containertype-list.js +5 -0
- package/dist/m365/spe/commands.js +3 -0
- package/dist/m365/spfx/commands/SpfxCompatibilityMatrix.js +30 -0
- package/dist/m365/spfx/commands/project/project-doctor/doctor-1.24.0.js +19 -0
- package/dist/m365/spfx/commands/project/project-doctor/doctor-1.24.1.js +19 -0
- package/dist/m365/spfx/commands/project/project-doctor.js +3 -1
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN012021_TSC_excludeDirectories.js +43 -0
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN027002_OVERRIDES_qs.js +33 -0
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN027003_OVERRIDES_uuid.js +33 -0
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN027004_OVERRIDES_serialize_javascript.js +34 -0
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.24.0.js +77 -0
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.24.1.js +57 -0
- package/dist/m365/spfx/commands/project/project-upgrade.js +3 -1
- package/dist/m365/spo/commands/app/app-add.js +35 -56
- package/dist/m365/spo/commands/app/app-deploy.js +41 -59
- package/dist/m365/spo/commands/app/app-get.js +40 -56
- package/dist/m365/spo/commands/app/app-install.js +20 -41
- package/dist/m365/spo/commands/app/app-instance-list.js +12 -24
- package/dist/m365/spo/commands/app/app-list.js +26 -44
- package/dist/m365/spo/commands/app/app-remove.js +32 -52
- package/dist/m365/spo/commands/app/app-retract.js +32 -51
- package/dist/m365/spo/commands/app/app-teamspackage-download.js +35 -54
- package/dist/m365/spo/commands/app/app-uninstall.js +21 -44
- package/dist/m365/spo/commands/app/app-upgrade.js +20 -41
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-add.js +38 -71
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-get.js +25 -59
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-list.js +11 -34
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +25 -54
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-set.js +52 -83
- package/dist/m365/spo/commands/apppage/apppage-add.js +21 -39
- package/dist/m365/spo/commands/apppage/apppage-set.js +20 -30
- package/dist/m365/spo/commands/commandset/commandset-add.js +17 -59
- package/dist/m365/spo/commands/commandset/commandset-get.js +24 -62
- package/dist/m365/spo/commands/commandset/commandset-list.js +11 -34
- package/dist/m365/spo/commands/commandset/commandset-remove.js +21 -54
- package/dist/m365/spo/commands/commandset/commandset-set.js +30 -83
- package/dist/m365/spo/commands/contenttype/contenttype-add.js +22 -51
- package/dist/m365/spo/commands/contenttype/contenttype-field-list.js +38 -62
- package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +25 -54
- package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +20 -43
- package/dist/m365/spo/commands/contenttype/contenttype-get.js +29 -54
- package/dist/m365/spo/commands/contenttype/contenttype-list.js +13 -30
- package/dist/m365/spo/commands/contenttype/contenttype-remove.js +24 -39
- package/dist/m365/spo/commands/contenttype/contenttype-set.js +42 -63
- package/dist/m365/spo/commands/contenttype/contenttype-sync.js +37 -59
- package/dist/m365/spo/commands/contenttypehub/contenttypehub-get.js +5 -0
- package/dist/m365/spo/commands/customaction/customaction-add.js +124 -145
- package/dist/m365/spo/commands/customaction/customaction-clear.js +12 -43
- package/dist/m365/spo/commands/customaction/customaction-get.js +28 -59
- package/dist/m365/spo/commands/customaction/customaction-list.js +12 -42
- package/dist/m365/spo/commands/customaction/customaction-remove.js +26 -54
- package/dist/m365/spo/commands/customaction/customaction-set.js +75 -132
- package/dist/m365/spo/commands/externaluser/externaluser-list.js +5 -14
- package/dist/m365/spo/commands/feature/feature-disable.js +20 -50
- package/dist/m365/spo/commands/feature/feature-enable.js +22 -50
- package/dist/m365/spo/commands/feature/feature-list.js +11 -36
- package/dist/m365/spo/commands/field/field-add.js +33 -62
- package/dist/m365/spo/commands/field/field-get.js +30 -57
- package/dist/m365/spo/commands/field/field-list.js +21 -46
- package/dist/m365/spo/commands/field/field-remove.js +32 -63
- package/dist/m365/spo/commands/field/field-set.js +34 -66
- package/dist/m365/spo/commands/hubsite/hubsite-connect.js +38 -63
- package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +11 -27
- package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +25 -47
- package/dist/m365/spo/commands/hubsite/hubsite-get.js +25 -37
- package/dist/m365/spo/commands/hubsite/hubsite-list.js +12 -24
- package/dist/m365/spo/commands/hubsite/hubsite-register.js +10 -18
- package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +14 -32
- package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +12 -29
- package/dist/m365/spo/commands/hubsite/hubsite-set.js +19 -46
- package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +11 -27
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-get.js +5 -0
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +8 -22
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-set.js +10 -18
- package/dist/m365/spo/commands/listitem/listitem-add.js +27 -55
- package/dist/m365/spo/commands/listitem/listitem-attachment-add.js +30 -58
- package/dist/m365/spo/commands/listitem/listitem-attachment-get.js +27 -52
- package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +26 -50
- package/dist/m365/spo/commands/listitem/listitem-attachment-remove.js +28 -55
- package/dist/m365/spo/commands/listitem/listitem-attachment-set.js +30 -57
- package/dist/m365/spo/commands/listitem/listitem-batch-add.js +36 -58
- package/dist/m365/spo/commands/listitem/listitem-batch-remove.js +68 -92
- package/dist/m365/spo/commands/listitem/listitem-batch-set.js +37 -57
- package/dist/m365/spo/commands/listitem/listitem-get.js +45 -68
- package/dist/m365/spo/commands/listitem/listitem-isrecord.js +31 -55
- package/dist/m365/spo/commands/listitem/listitem-list.js +47 -81
- package/dist/m365/spo/commands/listitem/listitem-record-declare.js +37 -60
- package/dist/m365/spo/commands/listitem/listitem-record-lock.js +30 -52
- package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +31 -52
- package/dist/m365/spo/commands/listitem/listitem-record-unlock.js +30 -52
- package/dist/m365/spo/commands/listitem/listitem-remove.js +33 -61
- package/dist/m365/spo/commands/listitem/listitem-retentionlabel-ensure.js +46 -67
- package/dist/m365/spo/commands/listitem/listitem-retentionlabel-remove.js +33 -56
- package/dist/m365/spo/commands/listitem/listitem-roleassignment-add.js +55 -98
- package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +48 -74
- package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +33 -56
- package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +31 -53
- package/dist/m365/spo/commands/listitem/listitem-set.js +33 -58
- package/dist/m365/spo/commands/navigation/navigation-node-add.js +74 -120
- package/dist/m365/spo/commands/navigation/navigation-node-get.js +4 -13
- package/dist/m365/spo/commands/navigation/navigation-node-list.js +1 -1
- package/dist/m365/spo/commands/navigation/navigation-node-remove.js +13 -47
- package/dist/m365/spo/commands/navigation/navigation-node-set.js +53 -114
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +15 -49
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-list.js +6 -1
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +9 -17
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-list.js +5 -0
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +11 -27
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-set.js +10 -18
- package/dist/m365/spo/commands/page/page-column-list.js +7 -8
- package/dist/m365/spo/commands/page/page-section-list.js +15 -17
- package/dist/m365/spo/commands/page/page-unpublish.js +53 -0
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-add.js +9 -17
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-list.js +5 -0
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-revoke.js +9 -17
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-approve.js +29 -39
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-deny.js +10 -23
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-list.js +5 -0
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +19 -28
- package/dist/m365/spo/commands/sitedesign/sitedesign-add.js +24 -59
- package/dist/m365/spo/commands/sitedesign/sitedesign-apply.js +10 -34
- package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +19 -36
- package/dist/m365/spo/commands/sitedesign/sitedesign-list.js +8 -0
- package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +9 -32
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-grant.js +10 -31
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-list.js +8 -23
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +10 -34
- package/dist/m365/spo/commands/sitedesign/sitedesign-run-list.js +9 -38
- package/dist/m365/spo/commands/sitedesign/sitedesign-run-status-get.js +9 -29
- package/dist/m365/spo/commands/sitedesign/sitedesign-set.js +27 -80
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-get.js +8 -23
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-list.js +8 -18
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +9 -32
- package/dist/m365/spo/commands/sitescript/sitescript-add.js +22 -37
- package/dist/m365/spo/commands/sitescript/sitescript-get.js +9 -26
- package/dist/m365/spo/commands/sitescript/sitescript-list.js +5 -0
- package/dist/m365/spo/commands/sitescript/sitescript-remove.js +9 -33
- package/dist/m365/spo/commands/sitescript/sitescript-set.js +29 -56
- package/dist/m365/spo/commands/spo-search.js +43 -116
- package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +15 -46
- package/dist/m365/spo/commands/tenant/tenant-appcatalogurl-get.js +5 -0
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-add.js +20 -57
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-get.js +25 -49
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-list.js +5 -1
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +25 -49
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-set.js +47 -79
- package/dist/m365/spo/commands/tenant/tenant-commandset-add.js +23 -54
- package/dist/m365/spo/commands/tenant/tenant-commandset-get.js +25 -50
- package/dist/m365/spo/commands/tenant/tenant-commandset-list.js +5 -1
- package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +25 -49
- package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +41 -65
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-list.js +5 -0
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +10 -30
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-restore.js +8 -21
- package/dist/m365/spo/commands/tenant/tenant-settings-list.js +5 -0
- package/dist/m365/spo/commands/tenant/tenant-settings-set.js +104 -386
- package/dist/m365/spo/commands/term/term-add.js +95 -110
- package/dist/m365/spo/commands/term/term-get.js +63 -75
- package/dist/m365/spo/commands/term/term-group-add.js +11 -41
- package/dist/m365/spo/commands/term/term-group-get.js +16 -47
- package/dist/m365/spo/commands/term/term-group-list.js +16 -42
- package/dist/m365/spo/commands/term/term-list.js +42 -57
- package/dist/m365/spo/commands/term/term-set-add.js +50 -71
- package/dist/m365/spo/commands/term/term-set-get.js +41 -58
- package/dist/m365/spo/commands/term/term-set-list.js +22 -56
- package/dist/m365/spo/commands/theme/theme-apply.js +27 -43
- package/dist/m365/spo/commands/theme/theme-get.js +8 -15
- package/dist/m365/spo/commands/theme/theme-list.js +5 -0
- package/dist/m365/spo/commands/theme/theme-remove.js +9 -24
- package/dist/m365/spo/commands/theme/theme-set.js +12 -34
- package/dist/m365/spo/commands.js +1 -0
- package/dist/m365/spp/commands/contentcenter/contentcenter-list.js +5 -0
- package/dist/m365/spp/commands/model/model-get.js +25 -45
- package/dist/m365/spp/commands/model/model-list.js +12 -23
- package/dist/m365/spp/commands/model/model-remove.js +25 -45
- package/dist/m365/teams/commands/app/app-install.js +35 -44
- package/dist/m365/teams/commands/app/app-list.js +8 -33
- package/dist/m365/teams/commands/app/app-publish.js +21 -27
- package/dist/m365/teams/commands/app/app-remove.js +22 -39
- package/dist/m365/teams/commands/app/app-uninstall.js +12 -34
- package/dist/m365/teams/commands/app/app-update.js +35 -45
- package/dist/m365/teams/commands/chat/chat-get.js +30 -45
- package/dist/m365/teams/commands/chat/chat-list.js +22 -42
- package/dist/m365/teams/commands/chat/chat-member-add.js +43 -64
- package/dist/m365/teams/commands/chat/chat-member-list.js +10 -23
- package/dist/m365/teams/commands/chat/chat-member-remove.js +28 -50
- package/dist/m365/teams/commands/chat/chat-message-send.js +32 -55
- package/dist/m365/teams/commands/funsettings/funsettings-list.js +12 -23
- package/dist/m365/teams/commands/funsettings/funsettings-set.js +18 -54
- package/dist/m365/teams/commands/guestsettings/guestsettings-list.js +12 -23
- package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +15 -40
- package/dist/m365/teams/commands/meeting/meeting-add.js +57 -68
- package/dist/m365/teams/commands/meeting/meeting-attendancereport-get.js +33 -58
- package/dist/m365/teams/commands/meeting/meeting-attendancereport-list.js +14 -38
- package/dist/m365/teams/commands/meeting/meeting-get.js +14 -38
- package/dist/m365/teams/commands/meeting/meeting-list.js +34 -59
- package/dist/m365/teams/commands/meeting/meeting-transcript-get.js +34 -58
- package/dist/m365/teams/commands/meeting/meeting-transcript-list.js +29 -50
- package/dist/m365/teams/commands/membersettings/membersettings-list.js +12 -23
- package/dist/m365/teams/commands/membersettings/membersettings-set.js +18 -49
- package/dist/m365/teams/commands/message/message-get.js +19 -30
- package/dist/m365/teams/commands/message/message-list.js +26 -43
- package/dist/m365/teams/commands/message/message-remove.js +43 -58
- package/dist/m365/teams/commands/message/message-reply-list.js +19 -30
- package/dist/m365/teams/commands/message/message-restore.js +40 -50
- package/dist/m365/teams/commands/message/message-send.js +19 -30
- package/dist/m365/teams/commands/messagingsettings/messagingsettings-list.js +12 -23
- package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +18 -60
- package/dist/m365/teams/commands/report/report-deviceusagedistributionusercounts.js +10 -0
- package/dist/m365/teams/commands/report/report-deviceusageusercounts.js +10 -0
- package/dist/m365/teams/commands/report/report-deviceusageuserdetail.js +22 -0
- package/dist/m365/teams/commands/report/report-directroutingcalls.js +19 -39
- package/dist/m365/teams/commands/report/report-pstncalls.js +19 -39
- package/dist/m365/teams/commands/report/report-useractivitycounts.js +10 -0
- package/dist/m365/teams/commands/report/report-useractivityusercounts.js +10 -0
- package/dist/m365/teams/commands/report/report-useractivityuserdetail.js +22 -0
- package/dist/m365/teams/commands/tab/tab-add.js +23 -49
- package/dist/m365/teams/commands/tab/tab-get.js +55 -56
- package/dist/m365/teams/commands/tab/tab-list.js +17 -28
- package/dist/m365/teams/commands/tab/tab-remove.js +23 -42
- package/dist/m365/teams/commands/team/team-add.js +76 -114
- package/dist/m365/teams/commands/team/team-app-list.js +23 -36
- package/dist/m365/teams/commands/team/team-archive.js +24 -39
- package/dist/m365/teams/commands/team/team-clone.js +28 -62
- package/dist/m365/teams/commands/team/team-get.js +23 -36
- package/dist/m365/teams/commands/team/team-list.js +43 -57
- package/dist/m365/teams/commands/team/team-remove.js +24 -37
- package/dist/m365/teams/commands/team/team-set.js +23 -52
- package/dist/m365/teams/commands/team/team-unarchive.js +23 -28
- package/dist/m365/teams/commands/user/user-app-add.js +40 -49
- package/dist/m365/teams/commands/user/user-app-list.js +26 -39
- package/dist/m365/teams/commands/user/user-app-remove.js +37 -49
- package/dist/m365/teams/commands/user/user-app-upgrade.js +36 -52
- package/dist/m365/teams/commands/user/user-list.js +17 -39
- package/dist/m365/tenant/commands/id/id-get.js +8 -22
- package/dist/m365/tenant/commands/info/info-get.js +23 -36
- package/dist/m365/tenant/commands/people/people-profilecardproperty-add.js +67 -55
- package/dist/m365/tenant/commands/people/people-profilecardproperty-get.js +11 -24
- package/dist/m365/tenant/commands/people/people-profilecardproperty-list.js +5 -0
- package/dist/m365/tenant/commands/people/people-profilecardproperty-remove.js +12 -33
- package/dist/m365/tenant/commands/people/people-profilecardproperty-set.js +31 -51
- package/dist/m365/tenant/commands/people/people-pronouns-get.js +5 -0
- package/dist/m365/tenant/commands/people/profileCardProperties.js +10 -7
- package/dist/m365/tenant/commands/report/report-activeusercounts.js +2 -1
- package/dist/m365/tenant/commands/report/report-activeuserdetail.js +2 -1
- package/dist/m365/tenant/commands/report/report-office365activationcounts.js +9 -0
- package/dist/m365/tenant/commands/report/report-office365activationsusercounts.js +9 -0
- package/dist/m365/tenant/commands/report/report-office365activationsuserdetail.js +9 -0
- package/dist/m365/tenant/commands/report/report-servicesusercounts.js +2 -1
- package/dist/m365/tenant/commands/report/report-settings-get.js +5 -0
- package/dist/m365/tenant/commands/security/security-alerts-list.js +8 -20
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-get.js +9 -20
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-list.js +8 -20
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-get.js +8 -15
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-list.js +8 -15
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-get.js +12 -26
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-list.js +8 -22
- package/dist/utils/calendar.js +1 -1
- package/dist/utils/formatting.js +16 -0
- package/dist/utils/pid.js +7 -16
- package/dist/utils/spe.js +1 -1
- package/dist/utils/spo.js +39 -0
- package/dist/utils/validation.js +36 -0
- package/dist/utils/zod.js +18 -7
- package/docs/docs/cmd/entra/agent/agent-blueprint-list.mdx +175 -0
- package/docs/docs/cmd/entra/agent/agent-blueprintprincipal-list.mdx +156 -0
- package/docs/docs/cmd/login.mdx +15 -2
- package/docs/docs/cmd/outlook/calendargroup/calendargroup-add.mdx +126 -0
- package/docs/docs/cmd/outlook/event/event-add.mdx +390 -0
- package/docs/docs/cmd/spe/container/container-add.mdx +0 -8
- package/docs/docs/cmd/spe/container/container-list.mdx +0 -8
- package/docs/docs/cmd/spe/container/container-permission-add.mdx +140 -0
- package/docs/docs/cmd/spe/container/container-permission-remove.mdx +78 -0
- package/docs/docs/cmd/spe/container/container-permission-set.mdx +78 -0
- package/docs/docs/cmd/spe/container/container-recyclebinitem-list.mdx +0 -8
- package/docs/docs/cmd/spe/container/container-recyclebinitem-restore.mdx +0 -8
- package/docs/docs/cmd/spe/container/container-remove.mdx +0 -8
- package/docs/docs/cmd/spe/containertype/containertype-add.mdx +1 -1
- package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
- package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-set.mdx +1 -1
- package/docs/docs/cmd/spo/externaluser/externaluser-list.mdx +17 -30
- package/docs/docs/cmd/spo/file/file-checkin.mdx +2 -2
- package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-checkout.mdx +2 -2
- package/docs/docs/cmd/spo/file/file-copy.mdx +2 -2
- package/docs/docs/cmd/spo/file/file-get.mdx +6 -6
- package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +3 -3
- package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +2 -2
- package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +2 -2
- package/docs/docs/cmd/spo/file/file-sharinglink-add.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-get.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-list.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-set.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-clear.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-get.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-keep.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-list.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-remove.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-restore.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-copy.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-get.mdx +2 -2
- package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-sharinglink-add.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-sharinglink-list.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-sharinglink-remove.mdx +1 -1
- package/docs/docs/cmd/spo/navigation/navigation-node-add.mdx +45 -30
- package/docs/docs/cmd/spo/navigation/navigation-node-get.mdx +64 -42
- package/docs/docs/cmd/spo/navigation/navigation-node-set.mdx +10 -8
- package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-list.mdx +0 -21
- package/docs/docs/cmd/spo/page/page-unpublish.mdx +63 -0
- package/docs/docs/cmd/spp/model/model-get.mdx +1 -1
- package/docs/docs/cmd/spp/model/model-remove.mdx +1 -1
- package/docs/docs/cmd/teams/tab/tab-add.mdx +19 -0
- package/docs/docs/cmd/teams/tab/tab-get.mdx +19 -0
- package/docs/docs/cmd/teams/tab/tab-list.mdx +19 -0
- package/docs/docs/cmd/teams/tab/tab-remove.mdx +21 -0
- package/docs/docs/cmd/viva/engage/engage-message-add.mdx +17 -0
- package/docs/docs/cmd/viva/engage/engage-message-get.mdx +17 -0
- package/docs/docs/cmd/viva/engage/engage-message-list.mdx +17 -0
- package/docs/docs/cmd/viva/engage/engage-message-remove.mdx +19 -0
- package/package.json +5 -7
package/dist/Auth.js
CHANGED
|
@@ -212,7 +212,10 @@ export class Auth {
|
|
|
212
212
|
};
|
|
213
213
|
this.connection.active = true;
|
|
214
214
|
this.connection.identityName = accessTokenUtil.accessToken.getUserNameFromAccessToken(response.accessToken);
|
|
215
|
-
|
|
215
|
+
// the oid claim is not available on app-only access tokens issued while
|
|
216
|
+
// the service principal hasn't been provisioned in the tenant yet. Fall
|
|
217
|
+
// back to the appId so that the connection still has a valid identity
|
|
218
|
+
this.connection.identityId = accessTokenUtil.accessToken.getUserIdFromAccessToken(response.accessToken) || this.connection.appId;
|
|
216
219
|
this.connection.identityTenantId = accessTokenUtil.accessToken.getTenantIdFromAccessToken(response.accessToken);
|
|
217
220
|
this.connection.name = this.connection.name || this.connection.identityId;
|
|
218
221
|
try {
|
|
@@ -606,8 +609,22 @@ export class Auth {
|
|
|
606
609
|
const federationToken = await this.getFederationTokenFromAzureDevOps(logger, debug, serviceConnectionId);
|
|
607
610
|
return this.getAccessTokenWithFederatedToken(resource, federationToken, logger, debug);
|
|
608
611
|
}
|
|
612
|
+
else if (process.env.GITLAB_CI) {
|
|
613
|
+
if (debug) {
|
|
614
|
+
await logger.logToStderr('GITLAB_CI env variable found. The context is GitLab CI/CD...');
|
|
615
|
+
}
|
|
616
|
+
if (!process.env.GITLAB_OIDC_TOKEN) {
|
|
617
|
+
throw new CommandError('The `GITLAB_OIDC_TOKEN` environment variable is not available. Please add an id_tokens entry named GITLAB_OIDC_TOKEN with audience `api://AzureADTokenExchange` to the job.');
|
|
618
|
+
}
|
|
619
|
+
if (!this.connection.appId || this.connection.tenant === 'common') {
|
|
620
|
+
throw new CommandError('The appId and tenant parameters are required when using federated identity in GitLab CI/CD.');
|
|
621
|
+
}
|
|
622
|
+
// GitLab's id_tokens feature mints the OIDC JWT directly into the configured job variable, so no
|
|
623
|
+
// separate request to GitLab is needed to obtain the federation token before exchanging it with Entra ID.
|
|
624
|
+
return this.getAccessTokenWithFederatedToken(resource, process.env.GITLAB_OIDC_TOKEN, logger, debug);
|
|
625
|
+
}
|
|
609
626
|
else {
|
|
610
|
-
throw new CommandError('Federated identity is currently only supported in GitHub Actions
|
|
627
|
+
throw new CommandError('Federated identity is currently only supported in GitHub Actions, Azure DevOps and GitLab.');
|
|
611
628
|
}
|
|
612
629
|
}
|
|
613
630
|
async getFederationTokenFromGithub(logger, debug) {
|
package/dist/Command.js
CHANGED
|
@@ -424,7 +424,7 @@ class Command {
|
|
|
424
424
|
if (this.schema) {
|
|
425
425
|
const telemetryProperties = {};
|
|
426
426
|
this.optionsInfo.forEach(o => {
|
|
427
|
-
if (o.required) {
|
|
427
|
+
if (o.required && !o.autocomplete) {
|
|
428
428
|
return;
|
|
429
429
|
}
|
|
430
430
|
if (typeof args.options[o.name] === 'undefined') {
|
|
@@ -432,23 +432,26 @@ class Command {
|
|
|
432
432
|
}
|
|
433
433
|
switch (o.type) {
|
|
434
434
|
case 'string':
|
|
435
|
-
telemetryProperties[o.name] = o.autocomplete ? args.options[o.name] :
|
|
435
|
+
telemetryProperties[o.name] = o.autocomplete ? args.options[o.name] : true;
|
|
436
436
|
break;
|
|
437
437
|
case 'boolean':
|
|
438
438
|
telemetryProperties[o.name] = args.options[o.name];
|
|
439
439
|
break;
|
|
440
440
|
case 'number':
|
|
441
|
-
telemetryProperties[o.name] =
|
|
441
|
+
telemetryProperties[o.name] = true;
|
|
442
442
|
break;
|
|
443
443
|
}
|
|
444
|
-
;
|
|
445
444
|
});
|
|
445
|
+
if (this.allowUnknownOptions()) {
|
|
446
|
+
const unknownOptions = optionsUtils.getUnknownOptions(args.options, zod.schemaToOptions(this.schema));
|
|
447
|
+
Object.keys(unknownOptions).forEach(optionName => {
|
|
448
|
+
telemetryProperties[optionName] = true;
|
|
449
|
+
});
|
|
450
|
+
}
|
|
446
451
|
return telemetryProperties;
|
|
447
452
|
}
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
return this.telemetryProperties;
|
|
451
|
-
}
|
|
453
|
+
this.telemetry.forEach(t => t(args));
|
|
454
|
+
return this.telemetryProperties;
|
|
452
455
|
}
|
|
453
456
|
async getTextOutput(logStatement) {
|
|
454
457
|
// display object as a list of key-value pairs
|
package/dist/cli/cli.js
CHANGED
|
@@ -191,12 +191,24 @@ async function execute(rawArgs) {
|
|
|
191
191
|
return cli.closeWithError(e.message, cli.optionsFromArgs, true);
|
|
192
192
|
}
|
|
193
193
|
}
|
|
194
|
+
try {
|
|
195
|
+
await cli.commandToExecute.command.processOptions(cli.optionsFromArgs.options);
|
|
196
|
+
}
|
|
197
|
+
catch (e) {
|
|
198
|
+
return cli.closeWithError(e.message, cli.optionsFromArgs, false);
|
|
199
|
+
}
|
|
194
200
|
continue;
|
|
195
201
|
}
|
|
196
202
|
if (optionSetErrors.length > 0) {
|
|
197
203
|
for (const error of optionSetErrors) {
|
|
198
204
|
await promptForOptionSetNameAndValue(cli.optionsFromArgs, error.params?.options);
|
|
199
205
|
}
|
|
206
|
+
try {
|
|
207
|
+
await cli.commandToExecute.command.processOptions(cli.optionsFromArgs.options);
|
|
208
|
+
}
|
|
209
|
+
catch (e) {
|
|
210
|
+
return cli.closeWithError(e.message, cli.optionsFromArgs, false);
|
|
211
|
+
}
|
|
200
212
|
continue;
|
|
201
213
|
}
|
|
202
214
|
}
|
|
@@ -924,6 +936,9 @@ async function promptForOptionSetNameAndValue(args, options) {
|
|
|
924
936
|
coercedValue = Number(trimmed);
|
|
925
937
|
}
|
|
926
938
|
}
|
|
939
|
+
options
|
|
940
|
+
.filter(optionName => optionName !== selectedOptionName)
|
|
941
|
+
.forEach(optionName => args.options[optionName] = undefined);
|
|
927
942
|
args.options[selectedOptionName] = coercedValue;
|
|
928
943
|
await cli.error('');
|
|
929
944
|
}
|
package/dist/config.js
CHANGED
|
@@ -3,6 +3,8 @@ export default {
|
|
|
3
3
|
allScopes: [
|
|
4
4
|
'https://management.azure.com/user_impersonation',
|
|
5
5
|
'https://admin.services.crm.dynamics.com/user_impersonation',
|
|
6
|
+
'https://graph.microsoft.com/AgentIdentityBlueprint.Read.All',
|
|
7
|
+
'https://graph.microsoft.com/AgentIdentityBlueprintPrincipal.Read.All',
|
|
6
8
|
'https://graph.microsoft.com/AppCatalog.ReadWrite.All',
|
|
7
9
|
'https://graph.microsoft.com/AuditLog.Read.All',
|
|
8
10
|
'https://graph.microsoft.com/Bookings.Read.All',
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
+
import auth from '../../../Auth.js';
|
|
2
3
|
import { cli } from '../../../cli/cli.js';
|
|
3
|
-
import { globalOptionsZod } from '../../../Command.js';
|
|
4
|
+
import { CommandError, globalOptionsZod } from '../../../Command.js';
|
|
4
5
|
import AnonymousCommand from '../../base/AnonymousCommand.js';
|
|
5
6
|
import commands from '../commands.js';
|
|
6
7
|
export const options = z.strictObject({
|
|
@@ -22,9 +23,15 @@ class CliConsentCommand extends AnonymousCommand {
|
|
|
22
23
|
if (args.options.service === 'VivaEngage') {
|
|
23
24
|
scope = 'https://api.yammer.com/user_impersonation';
|
|
24
25
|
}
|
|
25
|
-
|
|
26
|
+
const appId = auth.connection.active ? auth.connection.appId : cli.getClientId();
|
|
27
|
+
if (!appId) {
|
|
28
|
+
throw new CommandError(`Unable to determine the client ID of the Microsoft Entra application used by the CLI. Log in to Microsoft 365 first or store the client ID using 'm365 cli config set --key clientId --value <appId>'.`);
|
|
29
|
+
}
|
|
30
|
+
const tenant = auth.connection.active ? auth.connection.tenant : cli.getTenant();
|
|
31
|
+
await logger.log(`To consent permissions for executing ${args.options.service} commands, navigate in your web browser to https://login.microsoftonline.com/${tenant}/oauth2/v2.0/authorize?client_id=${appId}&response_type=code&scope=${encodeURIComponent(scope)}`);
|
|
26
32
|
}
|
|
27
33
|
async action(logger, args) {
|
|
34
|
+
await auth.restoreAuth();
|
|
28
35
|
await this.initAction(args, logger);
|
|
29
36
|
await this.commandAction(logger, args);
|
|
30
37
|
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { globalOptionsZod } from '../../../../Command.js';
|
|
3
|
+
import { odata } from '../../../../utils/odata.js';
|
|
4
|
+
import GraphCommand from '../../../base/GraphCommand.js';
|
|
5
|
+
import commands from '../../commands.js';
|
|
6
|
+
import { formatting } from '../../../../utils/formatting.js';
|
|
7
|
+
export const options = z.strictObject({
|
|
8
|
+
...globalOptionsZod.shape,
|
|
9
|
+
properties: z.string().optional().alias('p')
|
|
10
|
+
});
|
|
11
|
+
class EntraAgentBlueprintListCommand extends GraphCommand {
|
|
12
|
+
get name() {
|
|
13
|
+
return commands.AGENT_BLUEPRINT_LIST;
|
|
14
|
+
}
|
|
15
|
+
get description() {
|
|
16
|
+
return 'Retrieves a list of templates defining the agent identity type';
|
|
17
|
+
}
|
|
18
|
+
get schema() {
|
|
19
|
+
return options;
|
|
20
|
+
}
|
|
21
|
+
defaultProperties() {
|
|
22
|
+
return ['id', 'displayName', 'appId'];
|
|
23
|
+
}
|
|
24
|
+
async commandAction(logger, args) {
|
|
25
|
+
const queryParameters = [];
|
|
26
|
+
if (args.options.properties) {
|
|
27
|
+
const allProperties = args.options.properties
|
|
28
|
+
.split(',')
|
|
29
|
+
.map(prop => prop.trim())
|
|
30
|
+
.filter(prop => prop.length > 0);
|
|
31
|
+
const selectProperties = allProperties.filter(prop => !prop.includes('/'));
|
|
32
|
+
if (selectProperties.length > 0) {
|
|
33
|
+
queryParameters.push(`$select=${formatting.encodeQueryParameter(selectProperties.join(','))}`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
const queryString = queryParameters.length > 0
|
|
37
|
+
? `?${queryParameters.join('&')}`
|
|
38
|
+
: '';
|
|
39
|
+
try {
|
|
40
|
+
if (this.verbose) {
|
|
41
|
+
await logger.logToStderr('Retrieving agent identity blueprints...');
|
|
42
|
+
}
|
|
43
|
+
const results = await odata.getAllItems(`${this.resource}/v1.0/applications/microsoft.graph.agentIdentityBlueprint${queryString}`);
|
|
44
|
+
await logger.log(results);
|
|
45
|
+
}
|
|
46
|
+
catch (err) {
|
|
47
|
+
this.handleRejectedODataJsonPromise(err);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export default new EntraAgentBlueprintListCommand();
|
|
52
|
+
//# sourceMappingURL=agent-blueprint-list.js.map
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { cli } from '../../../../cli/cli.js';
|
|
3
|
+
import { globalOptionsZod } from '../../../../Command.js';
|
|
4
|
+
import { odata } from '../../../../utils/odata.js';
|
|
5
|
+
import GraphCommand from '../../../base/GraphCommand.js';
|
|
6
|
+
import commands from '../../commands.js';
|
|
7
|
+
import { formatting } from '../../../../utils/formatting.js';
|
|
8
|
+
export const options = z.strictObject({
|
|
9
|
+
...globalOptionsZod.shape,
|
|
10
|
+
properties: z.string().optional().alias('p')
|
|
11
|
+
});
|
|
12
|
+
class EntraAgentBlueprintPrincipalListCommand extends GraphCommand {
|
|
13
|
+
get name() {
|
|
14
|
+
return commands.AGENT_BLUEPRINTPRINCIPAL_LIST;
|
|
15
|
+
}
|
|
16
|
+
get description() {
|
|
17
|
+
return 'Retrieves a list of agent blueprint principals';
|
|
18
|
+
}
|
|
19
|
+
get schema() {
|
|
20
|
+
return options;
|
|
21
|
+
}
|
|
22
|
+
defaultProperties() {
|
|
23
|
+
return ['id', 'appDisplayName', 'appId'];
|
|
24
|
+
}
|
|
25
|
+
async commandAction(logger, args) {
|
|
26
|
+
const queryParameters = [];
|
|
27
|
+
if (args.options.properties) {
|
|
28
|
+
const allProperties = args.options.properties
|
|
29
|
+
.split(',')
|
|
30
|
+
.map(prop => prop.trim())
|
|
31
|
+
.filter(prop => prop.length > 0);
|
|
32
|
+
const selectProperties = [...new Set(allProperties.map(prop => prop.split('/')[0]))];
|
|
33
|
+
if (selectProperties.length > 0) {
|
|
34
|
+
queryParameters.push(`$select=${selectProperties.map(property => formatting.encodeQueryParameter(property)).join(',')}`);
|
|
35
|
+
if (cli.commandToExecute) {
|
|
36
|
+
cli.commandToExecute.defaultProperties = selectProperties;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
const queryString = queryParameters.length > 0
|
|
41
|
+
? `?${queryParameters.join('&')}`
|
|
42
|
+
: '';
|
|
43
|
+
try {
|
|
44
|
+
if (this.verbose) {
|
|
45
|
+
await logger.logToStderr(`Retrieving a list of agent blueprint principals...`);
|
|
46
|
+
}
|
|
47
|
+
const results = await odata.getAllItems(`${this.resource}/v1.0/servicePrincipals/microsoft.graph.agentIdentityBlueprintPrincipal${queryString}`);
|
|
48
|
+
await logger.log(results);
|
|
49
|
+
}
|
|
50
|
+
catch (err) {
|
|
51
|
+
this.handleRejectedODataJsonPromise(err);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
export default new EntraAgentBlueprintPrincipalListCommand();
|
|
56
|
+
//# sourceMappingURL=agent-blueprintprincipal-list.js.map
|
|
@@ -1,32 +1,69 @@
|
|
|
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 _EntraM365GroupAddCommand_instances, _EntraM365GroupAddCommand_initTelemetry, _EntraM365GroupAddCommand_initOptions, _EntraM365GroupAddCommand_initTypes, _EntraM365GroupAddCommand_initValidators;
|
|
7
1
|
import { setTimeout } from 'timers/promises';
|
|
8
2
|
import fs from 'fs';
|
|
9
3
|
import path from 'path';
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
import { globalOptionsZod } from '../../../../Command.js';
|
|
10
6
|
import request from '../../../../request.js';
|
|
11
7
|
import { formatting } from '../../../../utils/formatting.js';
|
|
8
|
+
import { zod } from '../../../../utils/zod.js';
|
|
12
9
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
13
10
|
import commands from '../../commands.js';
|
|
11
|
+
const VisibilityEnum = {
|
|
12
|
+
Private: 'Private',
|
|
13
|
+
Public: 'Public',
|
|
14
|
+
HiddenMembership: 'HiddenMembership'
|
|
15
|
+
};
|
|
16
|
+
export const options = z.strictObject({
|
|
17
|
+
...globalOptionsZod.shape,
|
|
18
|
+
displayName: z.string().alias('n'),
|
|
19
|
+
mailNickname: z.string().alias('m'),
|
|
20
|
+
description: z.string().optional().alias('d'),
|
|
21
|
+
owners: z.string()
|
|
22
|
+
.refine(owners => owners.split(',').map(o => o.trim()).every(o => o.indexOf('@') > -1), {
|
|
23
|
+
error: e => `${e.input.split(',').map(o => o.trim()).find(o => o.indexOf('@') < 0)} is not a valid userPrincipalName`
|
|
24
|
+
}).optional(),
|
|
25
|
+
members: z.string()
|
|
26
|
+
.refine(members => members.split(',').map(m => m.trim()).every(m => m.indexOf('@') > -1), {
|
|
27
|
+
error: e => `${e.input.split(',').map(m => m.trim()).find(m => m.indexOf('@') < 0)} is not a valid userPrincipalName`
|
|
28
|
+
}).optional(),
|
|
29
|
+
visibility: zod.coercedEnum(VisibilityEnum).optional(),
|
|
30
|
+
logoPath: z.string()
|
|
31
|
+
.refine(logoPath => {
|
|
32
|
+
const fullPath = path.resolve(logoPath);
|
|
33
|
+
return fs.existsSync(fullPath) && !fs.lstatSync(fullPath).isDirectory();
|
|
34
|
+
}, {
|
|
35
|
+
error: e => {
|
|
36
|
+
const fullPath = path.resolve(e.input);
|
|
37
|
+
return fs.existsSync(fullPath) ? `Path '${fullPath}' points to a directory` : `File '${fullPath}' not found`;
|
|
38
|
+
}
|
|
39
|
+
})
|
|
40
|
+
.optional()
|
|
41
|
+
.alias('l'),
|
|
42
|
+
allowMembersToPost: z.boolean().optional(),
|
|
43
|
+
hideGroupInOutlook: z.boolean().optional(),
|
|
44
|
+
subscribeNewGroupMembers: z.boolean().optional(),
|
|
45
|
+
welcomeEmailDisabled: z.boolean().optional()
|
|
46
|
+
});
|
|
14
47
|
class EntraM365GroupAddCommand extends GraphCommand {
|
|
48
|
+
constructor() {
|
|
49
|
+
super(...arguments);
|
|
50
|
+
this.pollingInterval = 500;
|
|
51
|
+
}
|
|
15
52
|
get name() {
|
|
16
53
|
return commands.M365GROUP_ADD;
|
|
17
54
|
}
|
|
18
55
|
get description() {
|
|
19
56
|
return 'Creates a Microsoft 365 Group';
|
|
20
57
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
58
|
+
get schema() {
|
|
59
|
+
return options;
|
|
60
|
+
}
|
|
61
|
+
getRefinedSchema(schema) {
|
|
62
|
+
return schema
|
|
63
|
+
.refine(opts => opts.mailNickname.indexOf(' ') === -1, {
|
|
64
|
+
error: 'The option mailNickname cannot contain spaces.',
|
|
65
|
+
path: ['mailNickname']
|
|
66
|
+
});
|
|
30
67
|
}
|
|
31
68
|
async commandAction(logger, args) {
|
|
32
69
|
let group;
|
|
@@ -177,88 +214,6 @@ class EntraM365GroupAddCommand extends GraphCommand {
|
|
|
177
214
|
}
|
|
178
215
|
}
|
|
179
216
|
}
|
|
180
|
-
_EntraM365GroupAddCommand_instances = new WeakSet(), _EntraM365GroupAddCommand_initTelemetry = function _EntraM365GroupAddCommand_initTelemetry() {
|
|
181
|
-
this.telemetry.push((args) => {
|
|
182
|
-
Object.assign(this.telemetryProperties, {
|
|
183
|
-
description: typeof args.options.description !== 'undefined',
|
|
184
|
-
owners: typeof args.options.owners !== 'undefined',
|
|
185
|
-
members: typeof args.options.members !== 'undefined',
|
|
186
|
-
logoPath: typeof args.options.logoPath !== 'undefined',
|
|
187
|
-
visibility: typeof args.options.visibility !== 'undefined',
|
|
188
|
-
allowMembersToPost: !!args.options.allowMembersToPost,
|
|
189
|
-
hideGroupInOutlook: !!args.options.hideGroupInOutlook,
|
|
190
|
-
subscribeNewGroupMembers: !!args.options.subscribeNewGroupMembers,
|
|
191
|
-
welcomeEmailDisabled: !!args.options.welcomeEmailDisabled
|
|
192
|
-
});
|
|
193
|
-
});
|
|
194
|
-
}, _EntraM365GroupAddCommand_initOptions = function _EntraM365GroupAddCommand_initOptions() {
|
|
195
|
-
this.options.unshift({
|
|
196
|
-
option: '-n, --displayName <displayName>'
|
|
197
|
-
}, {
|
|
198
|
-
option: '-m, --mailNickname <mailNickname>'
|
|
199
|
-
}, {
|
|
200
|
-
option: '-d, --description [description]'
|
|
201
|
-
}, {
|
|
202
|
-
option: '--owners [owners]'
|
|
203
|
-
}, {
|
|
204
|
-
option: '--members [members]'
|
|
205
|
-
}, {
|
|
206
|
-
option: '--visibility [visibility]',
|
|
207
|
-
autocomplete: this.allowedVisibilities
|
|
208
|
-
}, {
|
|
209
|
-
option: '--allowMembersToPost [allowMembersToPost]',
|
|
210
|
-
autocomplete: ['true', 'false']
|
|
211
|
-
}, {
|
|
212
|
-
option: '--hideGroupInOutlook [hideGroupInOutlook]',
|
|
213
|
-
autocomplete: ['true', 'false']
|
|
214
|
-
}, {
|
|
215
|
-
option: '--subscribeNewGroupMembers [subscribeNewGroupMembers]',
|
|
216
|
-
autocomplete: ['true', 'false']
|
|
217
|
-
}, {
|
|
218
|
-
option: '--welcomeEmailDisabled [welcomeEmailDisabled]',
|
|
219
|
-
autocomplete: ['true', 'false']
|
|
220
|
-
}, {
|
|
221
|
-
option: '-l, --logoPath [logoPath]'
|
|
222
|
-
});
|
|
223
|
-
}, _EntraM365GroupAddCommand_initTypes = function _EntraM365GroupAddCommand_initTypes() {
|
|
224
|
-
this.types.string.push('displayName', 'mailNickname', 'description', 'owners', 'members', 'visibility', 'logoPath');
|
|
225
|
-
this.types.boolean.push('allowMembersToPost', 'hideGroupInOutlook', 'subscribeNewGroupMembers', 'welcomeEmailDisabled');
|
|
226
|
-
}, _EntraM365GroupAddCommand_initValidators = function _EntraM365GroupAddCommand_initValidators() {
|
|
227
|
-
this.validators.push(async (args) => {
|
|
228
|
-
if (args.options.owners) {
|
|
229
|
-
const owners = args.options.owners.split(',').map(o => o.trim());
|
|
230
|
-
for (let i = 0; i < owners.length; i++) {
|
|
231
|
-
if (owners[i].indexOf('@') < 0) {
|
|
232
|
-
return `${owners[i]} is not a valid userPrincipalName`;
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
if (args.options.members) {
|
|
237
|
-
const members = args.options.members.split(',').map(m => m.trim());
|
|
238
|
-
for (let i = 0; i < members.length; i++) {
|
|
239
|
-
if (members[i].indexOf('@') < 0) {
|
|
240
|
-
return `${members[i]} is not a valid userPrincipalName`;
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
if (args.options.mailNickname.indexOf(' ') !== -1) {
|
|
245
|
-
return 'The option mailNickname cannot contain spaces.';
|
|
246
|
-
}
|
|
247
|
-
if (args.options.logoPath) {
|
|
248
|
-
const fullPath = path.resolve(args.options.logoPath);
|
|
249
|
-
if (!fs.existsSync(fullPath)) {
|
|
250
|
-
return `File '${fullPath}' not found`;
|
|
251
|
-
}
|
|
252
|
-
if (fs.lstatSync(fullPath).isDirectory()) {
|
|
253
|
-
return `Path '${fullPath}' points to a directory`;
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
if (args.options.visibility && this.allowedVisibilities.map(x => x.toLowerCase()).indexOf(args.options.visibility.toLowerCase()) === -1) {
|
|
257
|
-
return `${args.options.visibility} is not a valid visibility. Allowed values are ${this.allowedVisibilities.join(', ')}`;
|
|
258
|
-
}
|
|
259
|
-
return true;
|
|
260
|
-
});
|
|
261
|
-
};
|
|
262
217
|
EntraM365GroupAddCommand.numRepeat = 15;
|
|
263
218
|
export default new EntraM365GroupAddCommand();
|
|
264
219
|
//# sourceMappingURL=m365group-add.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
-
};
|
|
6
|
-
var _EntraM365GroupConversationListCommand_instances, _EntraM365GroupConversationListCommand_initOptions, _EntraM365GroupConversationListCommand_initValidators, _EntraM365GroupConversationListCommand_initOptionSets, _EntraM365GroupConversationListCommand_initTypes;
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { globalOptionsZod } from '../../../../Command.js';
|
|
3
|
+
import { entraGroup } from '../../../../utils/entraGroup.js';
|
|
7
4
|
import { odata } from '../../../../utils/odata.js';
|
|
8
|
-
import { validation } from '../../../../utils/validation.js';
|
|
9
5
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
10
6
|
import commands from '../../commands.js';
|
|
11
|
-
|
|
7
|
+
export const options = z.strictObject({
|
|
8
|
+
...globalOptionsZod.shape,
|
|
9
|
+
groupId: z.uuid().optional().alias('i'),
|
|
10
|
+
groupName: z.string().optional().alias('n')
|
|
11
|
+
});
|
|
12
12
|
class EntraM365GroupConversationListCommand extends GraphCommand {
|
|
13
13
|
get name() {
|
|
14
14
|
return commands.M365GROUP_CONVERSATION_LIST;
|
|
@@ -19,13 +19,18 @@ class EntraM365GroupConversationListCommand extends GraphCommand {
|
|
|
19
19
|
defaultProperties() {
|
|
20
20
|
return ['topic', 'lastDeliveredDateTime', 'id'];
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
22
|
+
get schema() {
|
|
23
|
+
return options;
|
|
24
|
+
}
|
|
25
|
+
getRefinedSchema(schema) {
|
|
26
|
+
return schema
|
|
27
|
+
.refine(opts => [opts.groupId, opts.groupName].filter(o => o !== undefined).length === 1, {
|
|
28
|
+
error: 'Use one of the following options: groupId or groupName.',
|
|
29
|
+
params: {
|
|
30
|
+
customCode: 'optionSet',
|
|
31
|
+
options: ['groupId', 'groupName']
|
|
32
|
+
}
|
|
33
|
+
});
|
|
29
34
|
}
|
|
30
35
|
async commandAction(logger, args) {
|
|
31
36
|
if (this.verbose) {
|
|
@@ -48,23 +53,5 @@ class EntraM365GroupConversationListCommand extends GraphCommand {
|
|
|
48
53
|
}
|
|
49
54
|
}
|
|
50
55
|
}
|
|
51
|
-
_EntraM365GroupConversationListCommand_instances = new WeakSet(), _EntraM365GroupConversationListCommand_initOptions = function _EntraM365GroupConversationListCommand_initOptions() {
|
|
52
|
-
this.options.unshift({
|
|
53
|
-
option: '-i, --groupId [groupId]'
|
|
54
|
-
}, {
|
|
55
|
-
option: '-n, --groupName [groupName]'
|
|
56
|
-
});
|
|
57
|
-
}, _EntraM365GroupConversationListCommand_initValidators = function _EntraM365GroupConversationListCommand_initValidators() {
|
|
58
|
-
this.validators.push(async (args) => {
|
|
59
|
-
if (args.options.groupId && !validation.isValidGuid(args.options.groupId)) {
|
|
60
|
-
return `${args.options.groupId} is not a valid GUID`;
|
|
61
|
-
}
|
|
62
|
-
return true;
|
|
63
|
-
});
|
|
64
|
-
}, _EntraM365GroupConversationListCommand_initOptionSets = function _EntraM365GroupConversationListCommand_initOptionSets() {
|
|
65
|
-
this.optionSets.push({ options: ['groupId', 'groupName'] });
|
|
66
|
-
}, _EntraM365GroupConversationListCommand_initTypes = function _EntraM365GroupConversationListCommand_initTypes() {
|
|
67
|
-
this.types.string.push('groupId', 'groupName');
|
|
68
|
-
};
|
|
69
56
|
export default new EntraM365GroupConversationListCommand();
|
|
70
57
|
//# sourceMappingURL=m365group-conversation-list.js.map
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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 _EntraM365GroupConversationPostListCommand_instances, _EntraM365GroupConversationPostListCommand_initTelemetry, _EntraM365GroupConversationPostListCommand_initOptions, _EntraM365GroupConversationPostListCommand_initValidators, _EntraM365GroupConversationPostListCommand_initOptionSets;
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { globalOptionsZod } from '../../../../Command.js';
|
|
7
3
|
import { entraGroup } from '../../../../utils/entraGroup.js';
|
|
8
4
|
import { formatting } from '../../../../utils/formatting.js';
|
|
9
5
|
import { odata } from '../../../../utils/odata.js';
|
|
10
|
-
import { validation } from '../../../../utils/validation.js';
|
|
11
6
|
import GraphCommand from '../../../base/GraphCommand.js';
|
|
12
7
|
import commands from '../../commands.js';
|
|
8
|
+
export const options = z.strictObject({
|
|
9
|
+
...globalOptionsZod.shape,
|
|
10
|
+
groupId: z.uuid().optional().alias('i'),
|
|
11
|
+
groupName: z.string().optional().alias('d'),
|
|
12
|
+
threadId: z.string().alias('t')
|
|
13
|
+
});
|
|
13
14
|
class EntraM365GroupConversationPostListCommand extends GraphCommand {
|
|
14
15
|
get name() {
|
|
15
16
|
return commands.M365GROUP_CONVERSATION_POST_LIST;
|
|
@@ -17,13 +18,18 @@ class EntraM365GroupConversationPostListCommand extends GraphCommand {
|
|
|
17
18
|
get description() {
|
|
18
19
|
return 'Lists conversation posts of a Microsoft 365 group';
|
|
19
20
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
21
|
+
get schema() {
|
|
22
|
+
return options;
|
|
23
|
+
}
|
|
24
|
+
getRefinedSchema(schema) {
|
|
25
|
+
return schema
|
|
26
|
+
.refine(opts => [opts.groupId, opts.groupName].filter(o => o !== undefined).length === 1, {
|
|
27
|
+
error: 'Use one of the following options: groupId or groupName.',
|
|
28
|
+
params: {
|
|
29
|
+
customCode: 'optionSet',
|
|
30
|
+
options: ['groupId', 'groupName']
|
|
31
|
+
}
|
|
32
|
+
});
|
|
27
33
|
}
|
|
28
34
|
defaultProperties() {
|
|
29
35
|
return ['receivedDateTime', 'id'];
|
|
@@ -50,30 +56,5 @@ class EntraM365GroupConversationPostListCommand extends GraphCommand {
|
|
|
50
56
|
return group.id;
|
|
51
57
|
}
|
|
52
58
|
}
|
|
53
|
-
_EntraM365GroupConversationPostListCommand_instances = new WeakSet(), _EntraM365GroupConversationPostListCommand_initTelemetry = function _EntraM365GroupConversationPostListCommand_initTelemetry() {
|
|
54
|
-
this.telemetry.push((args) => {
|
|
55
|
-
Object.assign(this.telemetryProperties, {
|
|
56
|
-
groupId: typeof args.options.groupId !== 'undefined',
|
|
57
|
-
groupName: typeof args.options.groupName !== 'undefined'
|
|
58
|
-
});
|
|
59
|
-
});
|
|
60
|
-
}, _EntraM365GroupConversationPostListCommand_initOptions = function _EntraM365GroupConversationPostListCommand_initOptions() {
|
|
61
|
-
this.options.unshift({
|
|
62
|
-
option: '-i, --groupId [groupId]'
|
|
63
|
-
}, {
|
|
64
|
-
option: '-d, --groupName [groupName]'
|
|
65
|
-
}, {
|
|
66
|
-
option: '-t, --threadId <threadId>'
|
|
67
|
-
});
|
|
68
|
-
}, _EntraM365GroupConversationPostListCommand_initValidators = function _EntraM365GroupConversationPostListCommand_initValidators() {
|
|
69
|
-
this.validators.push(async (args) => {
|
|
70
|
-
if (args.options.groupId && !validation.isValidGuid(args.options.groupId)) {
|
|
71
|
-
return `${args.options.groupId} is not a valid GUID`;
|
|
72
|
-
}
|
|
73
|
-
return true;
|
|
74
|
-
});
|
|
75
|
-
}, _EntraM365GroupConversationPostListCommand_initOptionSets = function _EntraM365GroupConversationPostListCommand_initOptionSets() {
|
|
76
|
-
this.optionSets.push({ options: ['groupId', 'groupName'] });
|
|
77
|
-
};
|
|
78
59
|
export default new EntraM365GroupConversationPostListCommand();
|
|
79
60
|
//# sourceMappingURL=m365group-conversation-post-list.js.map
|