@pnp/cli-microsoft365 6.9.0-beta.41bb38c → 6.9.0-beta.8393174
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/Dockerfile +12 -19
- package/.devcontainer/devcontainer.json +24 -17
- package/Dockerfile +5 -2
- package/dist/Auth.js +2 -8
- package/dist/AuthServer.js +2 -4
- package/dist/cli/Cli.js +16 -0
- package/dist/m365/aad/commands/app/app-add.js +258 -249
- package/dist/m365/aad/commands/app/app-get.js +65 -62
- package/dist/m365/aad/commands/app/app-remove.js +22 -23
- package/dist/m365/aad/commands/app/app-role-add.js +35 -34
- package/dist/m365/aad/commands/app/app-role-list.js +22 -23
- package/dist/m365/aad/commands/app/app-role-remove.js +76 -73
- package/dist/m365/aad/commands/app/app-set.js +103 -103
- package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +16 -14
- package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +43 -52
- package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +20 -16
- package/dist/m365/aad/commands/o365group/o365group-add.js +40 -37
- package/dist/m365/aad/commands/o365group/o365group-conversation-post-list.js +7 -6
- package/dist/m365/aad/commands/o365group/o365group-list.js +6 -11
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-clear.js +7 -8
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-restore.js +23 -24
- package/dist/m365/aad/commands/o365group/o365group-set.js +15 -20
- package/dist/m365/aad/commands/o365group/o365group-teamify.js +15 -16
- package/dist/m365/aad/commands/o365group/o365group-user-list.js +17 -10
- package/dist/m365/aad/commands/o365group/o365group-user-set.js +17 -10
- package/dist/m365/aad/commands/policy/policy-list.js +12 -13
- package/dist/m365/aad/commands/siteclassification/siteclassification-enable.js +1 -3
- package/dist/m365/aad/commands/siteclassification/siteclassification-set.js +19 -20
- package/dist/m365/aad/commands/sp/sp-add.js +22 -23
- package/dist/m365/aad/commands/sp/sp-get.js +22 -23
- package/dist/m365/app/commands/app-open.js +4 -14
- package/dist/m365/cli/commands/cli-issue.js +4 -10
- package/dist/m365/cli/commands/cli-reconsent.js +2 -8
- package/dist/m365/cli/commands/config/config-set.js +1 -0
- package/dist/m365/commands/docs.js +2 -8
- package/dist/m365/commands/login.js +20 -0
- package/dist/m365/commands/setupPresets.js +2 -0
- package/dist/m365/file/commands/convert/convert-pdf.js +147 -143
- package/dist/m365/file/commands/file-add.js +87 -93
- package/dist/m365/file/commands/file-list.js +49 -55
- package/dist/m365/flow/commands/flow-list.js +35 -2
- package/dist/m365/flow/commands/flow-remove.js +2 -3
- package/dist/m365/flow/commands/run/run-resubmit.js +11 -10
- package/dist/m365/onedrive/commands/onedrive-list.js +21 -32
- package/dist/m365/outlook/commands/message/message-list.js +18 -23
- package/dist/m365/outlook/commands/message/message-move.js +15 -20
- package/dist/m365/pa/commands/app/app-export.js +3 -4
- package/dist/m365/pa/commands/app/app-get.js +11 -9
- package/dist/m365/pa/commands/app/app-remove.js +1 -1
- package/dist/m365/pa/commands/pcf/pcf-init.js +1 -2
- package/dist/m365/pa/commands/solution/solution-init.js +1 -2
- package/dist/m365/pa/commands/solution/solution-reference-add.js +1 -2
- package/dist/m365/planner/commands/bucket/bucket-add.js +15 -13
- package/dist/m365/planner/commands/bucket/bucket-get.js +27 -28
- package/dist/m365/planner/commands/bucket/bucket-list.js +15 -13
- package/dist/m365/planner/commands/bucket/bucket-remove.js +33 -34
- package/dist/m365/planner/commands/bucket/bucket-set.js +33 -34
- package/dist/m365/planner/commands/plan/plan-add.js +49 -52
- package/dist/m365/planner/commands/plan/plan-set.js +19 -20
- package/dist/m365/planner/commands/task/task-add.js +75 -78
- package/dist/m365/planner/commands/task/task-checklistitem-add.js +11 -10
- package/dist/m365/planner/commands/task/task-checklistitem-remove.js +10 -8
- package/dist/m365/planner/commands/task/task-get.js +53 -56
- package/dist/m365/planner/commands/task/task-list.js +23 -24
- package/dist/m365/planner/commands/task/task-reference-add.js +11 -10
- package/dist/m365/planner/commands/task/task-reference-remove.js +13 -14
- package/dist/m365/planner/commands/task/task-remove.js +44 -48
- package/dist/m365/planner/commands/task/task-set.js +83 -87
- package/dist/m365/pp/commands/card/card-get.js +6 -1
- package/dist/m365/purview/commands/retentionevent/retentionevent-add.js +0 -5
- package/dist/m365/purview/commands/retentionevent/retentionevent-get.js +0 -5
- package/dist/m365/purview/commands/retentionevent/retentionevent-list.js +0 -5
- package/dist/m365/purview/commands/retentionevent/retentionevent-remove.js +0 -5
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-add.js +0 -5
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-get.js +0 -5
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-list.js +0 -5
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-remove.js +0 -5
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-set.js +0 -5
- package/dist/m365/purview/commands/retentionlabel/retentionlabel-add.js +0 -5
- package/dist/m365/purview/commands/retentionlabel/retentionlabel-get.js +0 -5
- package/dist/m365/purview/commands/retentionlabel/retentionlabel-list.js +0 -5
- package/dist/m365/purview/commands/retentionlabel/retentionlabel-remove.js +19 -22
- package/dist/m365/purview/commands/retentionlabel/retentionlabel-set.js +0 -5
- package/dist/m365/spfx/commands/project/JsonRule.js +1 -1
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021003_PKG_engines_node.js +1 -0
- package/dist/m365/spo/commands/app/app-teamspackage-download.js +17 -24
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-set.js +154 -0
- package/dist/m365/spo/commands/commandset/commandset-set.js +11 -2
- package/dist/m365/spo/commands/contenttype/contenttype-set.js +49 -2
- package/dist/m365/spo/commands/file/file-checkout-undo.js +119 -0
- package/dist/m365/spo/commands/homesite/homesite-remove.js +1 -1
- package/dist/m365/spo/commands/list/list-sensitivitylabel-ensure.js +127 -0
- package/dist/m365/spo/commands/navigation/navigation-node-add.js +31 -1
- package/dist/m365/spo/commands/navigation/navigation-node-set.js +31 -2
- package/dist/m365/{teams/Message.js → spo/commands/tenant/Solution.js} +1 -1
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-set.js +156 -0
- package/dist/m365/spo/commands/tenant/tenant-commandset-add.js +215 -0
- package/dist/m365/spo/commands/tenant/tenant-commandset-get.js +114 -0
- package/dist/m365/spo/commands/tenant/tenant-commandset-list.js +50 -0
- package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +1 -1
- package/dist/m365/spo/commands/term/term-group-add.js +14 -10
- package/dist/m365/spo/commands.js +7 -0
- package/dist/m365/teams/commands/team/team-add.js +53 -50
- package/dist/m365/util/commands/accesstoken/accesstoken-get.js +10 -7
- package/dist/settingsNames.js +1 -0
- package/dist/utils/browserUtil.js +23 -0
- package/dist/utils/md.js +1 -3
- package/dist/utils/spo.js +60 -0
- package/docs/docs/cmd/aad/app/app-add.mdx +113 -0
- package/docs/docs/cmd/aad/app/app-get.mdx +217 -0
- package/docs/docs/cmd/aad/app/app-list.mdx +21 -0
- package/docs/docs/cmd/aad/app/app-role-add.mdx +4 -0
- package/docs/docs/cmd/aad/app/app-role-list.mdx +63 -0
- package/docs/docs/cmd/aad/app/app-role-remove.mdx +4 -0
- package/docs/docs/cmd/aad/app/app-set.mdx +4 -0
- package/docs/docs/cmd/aad/approleassignment/approleassignment-add.mdx +61 -0
- package/docs/docs/cmd/aad/approleassignment/approleassignment-list.mdx +59 -0
- package/docs/docs/cmd/aad/approleassignment/approleassignment-remove.mdx +4 -0
- package/docs/docs/cmd/aad/group/group-get.mdx +24 -0
- package/docs/docs/cmd/aad/group/group-list.mdx +98 -0
- package/docs/docs/cmd/aad/groupsetting/groupsetting-add.mdx +114 -0
- package/docs/docs/cmd/aad/groupsetting/groupsetting-get.mdx +115 -0
- package/docs/docs/cmd/aad/groupsetting/groupsetting-list.mdx +115 -0
- package/docs/docs/cmd/aad/groupsetting/groupsetting-remove.mdx +4 -0
- package/docs/docs/cmd/aad/groupsetting/groupsetting-set.mdx +4 -0
- package/docs/docs/cmd/aad/groupsettingtemplate/groupsettingtemplate-get.mdx +63 -0
- package/docs/docs/cmd/aad/groupsettingtemplate/groupsettingtemplate-list.mdx +63 -0
- package/docs/docs/cmd/aad/o365group/o365group-add.mdx +122 -0
- package/docs/docs/cmd/aad/o365group/o365group-conversation-list.mdx +68 -0
- package/docs/docs/cmd/aad/o365group/o365group-conversation-post-list.mdx +77 -0
- package/docs/docs/cmd/aad/o365group/o365group-get.mdx +122 -0
- package/docs/docs/cmd/aad/o365group/o365group-list.mdx +99 -0
- package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-clear.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-list.mdx +96 -0
- package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-remove.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-restore.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-remove.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-renew.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-report-activitycounts.mdx +48 -0
- package/docs/docs/cmd/aad/o365group/o365group-report-activitydetail.mdx +60 -0
- package/docs/docs/cmd/aad/o365group/o365group-report-activityfilecounts.mdx +46 -0
- package/docs/docs/cmd/aad/o365group/o365group-report-activitygroupcounts.mdx +46 -0
- package/docs/docs/cmd/aad/o365group/o365group-report-activitystorage.mdx +46 -0
- package/docs/docs/cmd/aad/o365group/o365group-set.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-teamify.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-user-add.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-user-list.mdx +56 -0
- package/docs/docs/cmd/aad/o365group/o365group-user-remove.mdx +4 -0
- package/docs/docs/cmd/aad/o365group/o365group-user-set.mdx +8 -4
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-add.mdx +4 -0
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-list.mdx +59 -0
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-remove.mdx +4 -0
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-set.mdx +4 -0
- package/docs/docs/cmd/aad/policy/policy-list.mdx +77 -0
- package/docs/docs/cmd/aad/siteclassification/siteclassification-disable.mdx +4 -0
- package/docs/docs/cmd/aad/siteclassification/siteclassification-enable.mdx +4 -0
- package/docs/docs/cmd/aad/siteclassification/siteclassification-get.mdx +57 -0
- package/docs/docs/cmd/aad/siteclassification/siteclassification-set.mdx +4 -0
- package/docs/docs/cmd/aad/sp/sp-add.mdx +136 -0
- package/docs/docs/cmd/aad/sp/sp-get.mdx +166 -0
- package/docs/docs/cmd/aad/user/user-get.mdx +75 -0
- package/docs/docs/cmd/aad/user/user-guest-add.mdx +23 -0
- package/docs/docs/cmd/aad/user/user-hibp.mdx +82 -0
- package/docs/docs/cmd/aad/user/user-license-add.mdx +2 -2
- package/docs/docs/cmd/aad/user/user-license-remove.mdx +2 -2
- package/docs/docs/cmd/aad/user/user-list.mdx +52 -0
- package/docs/docs/cmd/aad/user/user-password-validate.mdx +67 -0
- package/docs/docs/cmd/aad/user/user-signin-list.mdx +131 -0
- package/docs/docs/cmd/flow/flow-list.mdx +11 -3
- package/docs/docs/cmd/login.mdx +39 -0
- package/docs/docs/cmd/purview/retentionevent/retentionevent-add.mdx +0 -6
- package/docs/docs/cmd/purview/retentionevent/retentionevent-get.mdx +0 -6
- package/docs/docs/cmd/purview/retentionevent/retentionevent-list.mdx +0 -7
- package/docs/docs/cmd/purview/retentionevent/retentionevent-remove.mdx +0 -6
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-add.mdx +0 -6
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-get.mdx +0 -6
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-list.mdx +0 -6
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-remove.mdx +0 -6
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-set.mdx +0 -6
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-add.mdx +0 -6
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-get.mdx +0 -6
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-list.mdx +0 -6
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-remove.mdx +0 -6
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-set.mdx +0 -6
- package/docs/docs/cmd/setup.mdx +2 -0
- package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-set.mdx +72 -0
- package/docs/docs/cmd/spo/commandset/commandset-set.mdx +12 -3
- package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +55 -0
- package/docs/docs/cmd/spo/list/list-sensitivitylabel-ensure.mdx +64 -0
- package/docs/docs/cmd/spo/navigation/navigation-node-add.mdx +7 -4
- package/docs/docs/cmd/spo/navigation/navigation-node-set.mdx +9 -0
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-set.mdx +81 -0
- package/docs/docs/cmd/spo/tenant/tenant-commandset-add.mdx +183 -0
- package/docs/docs/cmd/spo/tenant/tenant-commandset-get.mdx +155 -0
- package/docs/docs/cmd/spo/tenant/tenant-commandset-list.mdx +114 -0
- package/docs/docs/cmd/spo/tenant/tenant-commandset-set.mdx +1 -1
- package/docs/docs/cmd/spo/term/term-group-add.mdx +63 -4
- package/docs/docs/cmd/status.mdx +6 -3
- package/docs/docs/cmd/util/accesstoken/accesstoken-get.mdx +12 -2
- package/npm-shrinkwrap.json +299 -272
- package/package.json +17 -17
- package/dist/m365/aad/commands/approleassignment/AppRoleAssignment.js +0 -3
- package/dist/m365/aad/commands/approleassignment/ServicePrincipal.js +0 -3
- package/dist/m365/aad/commands/groupsetting/GroupSetting.js +0 -3
- package/dist/m365/aad/commands/groupsettingtemplate/GroupSettingTemplate.js +0 -3
- package/dist/m365/aad/commands/siteclassification/DirectorySetting.js +0 -10
- package/dist/m365/aad/commands/siteclassification/DirectorySettingTemplatesRsp.js +0 -3
- package/dist/m365/aad/commands/siteclassification/DirectorySettingValue.js +0 -3
- package/dist/m365/outlook/Message.js +0 -3
- package/dist/m365/spo/commands/site/SitePermission.js +0 -3
- package/dist/m365/teams/Channel.js +0 -3
- package/dist/m365/teams/ConversationMember.js +0 -3
- package/dist/m365/teams/Reply.js +0 -3
- package/dist/m365/teams/Tab.js +0 -3
- package/dist/m365/teams/Team.js +0 -3
- package/dist/m365/teams/TeamsApp.js +0 -3
- package/dist/m365/teams/TeamsAppInstallation.js +0 -3
- package/dist/m365/teams/TeamsTabConfiguration.js +0 -3
- package/dist/m365/teams/commands/Meeting.js +0 -3
|
@@ -76,13 +76,12 @@ class PlannerPlanAddCommand extends GraphCommand_1.default {
|
|
|
76
76
|
});
|
|
77
77
|
}
|
|
78
78
|
updatePlanDetails(options, newPlan) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
.all([this.generateSharedWith(options), this.getPlanDetailsEtag(planId)])
|
|
85
|
-
.then(resArray => {
|
|
79
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
80
|
+
const planId = newPlan.id;
|
|
81
|
+
if (!options.shareWithUserIds && !options.shareWithUserNames) {
|
|
82
|
+
return newPlan;
|
|
83
|
+
}
|
|
84
|
+
const resArray = yield Promise.all([this.generateSharedWith(options), this.getPlanDetailsEtag(planId)]);
|
|
86
85
|
const sharedWith = resArray[0];
|
|
87
86
|
const etag = resArray[1];
|
|
88
87
|
const requestOptionsPlanDetails = {
|
|
@@ -97,70 +96,68 @@ class PlannerPlanAddCommand extends GraphCommand_1.default {
|
|
|
97
96
|
sharedWith: sharedWith
|
|
98
97
|
}
|
|
99
98
|
};
|
|
100
|
-
|
|
101
|
-
})
|
|
102
|
-
.then(planDetails => {
|
|
99
|
+
const planDetails = yield request_1.default.patch(requestOptionsPlanDetails);
|
|
103
100
|
return Object.assign(Object.assign({}, newPlan), planDetails);
|
|
104
101
|
});
|
|
105
102
|
}
|
|
106
103
|
getPlanDetailsEtag(planId) {
|
|
107
|
-
|
|
108
|
-
url: `${this.resource}/v1.0/planner/plans/${planId}/details`,
|
|
109
|
-
headers: {
|
|
110
|
-
accept: 'application/json'
|
|
111
|
-
},
|
|
112
|
-
responseType: 'json'
|
|
113
|
-
};
|
|
114
|
-
return request_1.default
|
|
115
|
-
.get(requestOptions)
|
|
116
|
-
.then((response) => response['@odata.etag']);
|
|
117
|
-
}
|
|
118
|
-
generateSharedWith(options) {
|
|
119
|
-
const sharedWith = {};
|
|
120
|
-
return this
|
|
121
|
-
.getUserIds(options)
|
|
122
|
-
.then((userIds) => {
|
|
123
|
-
userIds.map(x => sharedWith[x] = true);
|
|
124
|
-
return Promise.resolve(sharedWith);
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
getUserIds(options) {
|
|
128
|
-
if (options.shareWithUserIds) {
|
|
129
|
-
return Promise.resolve(options.shareWithUserIds.split(','));
|
|
130
|
-
}
|
|
131
|
-
// Hitting this section means assignedToUserNames won't be undefined
|
|
132
|
-
const userNames = options.shareWithUserNames;
|
|
133
|
-
const userArr = userNames.split(',').map(o => o.trim());
|
|
134
|
-
const promises = userArr.map(user => {
|
|
104
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
135
105
|
const requestOptions = {
|
|
136
|
-
url: `${this.resource}/v1.0/
|
|
106
|
+
url: `${this.resource}/v1.0/planner/plans/${planId}/details`,
|
|
137
107
|
headers: {
|
|
138
|
-
|
|
108
|
+
accept: 'application/json'
|
|
139
109
|
},
|
|
140
110
|
responseType: 'json'
|
|
141
111
|
};
|
|
142
|
-
|
|
112
|
+
const response = yield request_1.default.get(requestOptions);
|
|
113
|
+
return response['@odata.etag'];
|
|
143
114
|
});
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
115
|
+
}
|
|
116
|
+
generateSharedWith(options) {
|
|
117
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
118
|
+
const sharedWith = {};
|
|
119
|
+
const userIds = yield this.getUserIds(options);
|
|
120
|
+
userIds.map(x => sharedWith[x] = true);
|
|
121
|
+
return sharedWith;
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
getUserIds(options) {
|
|
125
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
if (options.shareWithUserIds) {
|
|
127
|
+
return options.shareWithUserIds.split(',');
|
|
128
|
+
}
|
|
129
|
+
// Hitting this section means assignedToUserNames won't be undefined
|
|
130
|
+
const userNames = options.shareWithUserNames;
|
|
131
|
+
const userArr = userNames.split(',').map(o => o.trim());
|
|
132
|
+
const promises = userArr.map(user => {
|
|
133
|
+
const requestOptions = {
|
|
134
|
+
url: `${this.resource}/v1.0/users?$filter=userPrincipalName eq '${formatting_1.formatting.encodeQueryParameter(user)}'&$select=id,userPrincipalName`,
|
|
135
|
+
headers: {
|
|
136
|
+
'content-type': 'application/json'
|
|
137
|
+
},
|
|
138
|
+
responseType: 'json'
|
|
139
|
+
};
|
|
140
|
+
return request_1.default.get(requestOptions);
|
|
141
|
+
});
|
|
142
|
+
const usersRes = yield Promise.all(promises);
|
|
147
143
|
const userUpns = usersRes.map(res => { var _a; return (_a = res.value[0]) === null || _a === void 0 ? void 0 : _a.userPrincipalName; });
|
|
148
144
|
const userIds = usersRes.map(res => { var _a; return (_a = res.value[0]) === null || _a === void 0 ? void 0 : _a.id; });
|
|
149
145
|
// Find the members where no graph response was found
|
|
150
146
|
const invalidUsers = userArr.filter(user => !userUpns.some((upn) => (upn === null || upn === void 0 ? void 0 : upn.toLowerCase()) === user.toLowerCase()));
|
|
151
147
|
if (invalidUsers && invalidUsers.length > 0) {
|
|
152
|
-
|
|
148
|
+
throw `Cannot proceed with planner plan creation. The following users provided are invalid : ${invalidUsers.join(',')}`;
|
|
153
149
|
}
|
|
154
|
-
return
|
|
150
|
+
return userIds;
|
|
155
151
|
});
|
|
156
152
|
}
|
|
157
153
|
getGroupId(args) {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
.getGroupByDisplayName(args.options.ownerGroupName)
|
|
163
|
-
|
|
154
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
155
|
+
if (args.options.ownerGroupId) {
|
|
156
|
+
return args.options.ownerGroupId;
|
|
157
|
+
}
|
|
158
|
+
const group = yield aadGroup_1.aadGroup.getGroupByDisplayName(args.options.ownerGroupName);
|
|
159
|
+
return group.id;
|
|
160
|
+
});
|
|
164
161
|
}
|
|
165
162
|
}
|
|
166
163
|
_PlannerPlanAddCommand_instances = new WeakSet(), _PlannerPlanAddCommand_initTelemetry = function _PlannerPlanAddCommand_initTelemetry() {
|
|
@@ -72,32 +72,31 @@ class PlannerPlanSetCommand extends GraphCommand_1.default {
|
|
|
72
72
|
});
|
|
73
73
|
}
|
|
74
74
|
getUserIds(options) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
.all(promises)
|
|
92
|
-
.then((usersRes) => {
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
if (options.shareWithUserIds) {
|
|
77
|
+
return options.shareWithUserIds.split(',');
|
|
78
|
+
}
|
|
79
|
+
const userNames = options.shareWithUserNames;
|
|
80
|
+
const userArr = userNames.split(',').map(o => o.trim());
|
|
81
|
+
const promises = userArr.map(user => {
|
|
82
|
+
const requestOptions = {
|
|
83
|
+
url: `${this.resource}/v1.0/users?$filter=userPrincipalName eq '${formatting_1.formatting.encodeQueryParameter(user)}'&$select=id,userPrincipalName`,
|
|
84
|
+
headers: {
|
|
85
|
+
'content-type': 'application/json'
|
|
86
|
+
},
|
|
87
|
+
responseType: 'json'
|
|
88
|
+
};
|
|
89
|
+
return request_1.default.get(requestOptions);
|
|
90
|
+
});
|
|
91
|
+
const usersRes = yield Promise.all(promises);
|
|
93
92
|
const userUpns = usersRes.map(res => { var _a; return (_a = res.value[0]) === null || _a === void 0 ? void 0 : _a.userPrincipalName; });
|
|
94
93
|
const userIds = usersRes.map(res => { var _a; return (_a = res.value[0]) === null || _a === void 0 ? void 0 : _a.id; });
|
|
95
94
|
// Find the members where no graph response was found
|
|
96
95
|
const invalidUsers = userArr.filter(user => !userUpns.some((upn) => (upn === null || upn === void 0 ? void 0 : upn.toLowerCase()) === user.toLowerCase()));
|
|
97
96
|
if (invalidUsers && invalidUsers.length > 0) {
|
|
98
|
-
|
|
97
|
+
throw `Cannot proceed with planner plan creation. The following users provided are invalid: ${invalidUsers.join(',')}`;
|
|
99
98
|
}
|
|
100
|
-
return
|
|
99
|
+
return userIds;
|
|
101
100
|
});
|
|
102
101
|
}
|
|
103
102
|
generateSharedWith(options) {
|
|
@@ -80,16 +80,17 @@ class PlannerTaskAddCommand extends GraphCommand_1.default {
|
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
getTaskDetailsEtag(taskId) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
.get(requestOptions)
|
|
92
|
-
|
|
83
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
const requestOptions = {
|
|
85
|
+
url: `${this.resource}/v1.0/planner/tasks/${formatting_1.formatting.encodeQueryParameter(taskId)}/details`,
|
|
86
|
+
headers: {
|
|
87
|
+
accept: 'application/json'
|
|
88
|
+
},
|
|
89
|
+
responseType: 'json'
|
|
90
|
+
};
|
|
91
|
+
const response = yield request_1.default.get(requestOptions);
|
|
92
|
+
return response['@odata.etag'];
|
|
93
|
+
});
|
|
93
94
|
}
|
|
94
95
|
generateAppliedCategories(options) {
|
|
95
96
|
if (!options.appliedCategories) {
|
|
@@ -100,13 +101,12 @@ class PlannerTaskAddCommand extends GraphCommand_1.default {
|
|
|
100
101
|
return categories;
|
|
101
102
|
}
|
|
102
103
|
updateTaskDetails(options, newTask) {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
.getTaskDetailsEtag(taskId)
|
|
109
|
-
.then(etag => {
|
|
104
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
105
|
+
const taskId = newTask.id;
|
|
106
|
+
if (!options.description && !options.previewType) {
|
|
107
|
+
return newTask;
|
|
108
|
+
}
|
|
109
|
+
const etag = yield this.getTaskDetailsEtag(taskId);
|
|
110
110
|
const requestOptionsTaskDetails = {
|
|
111
111
|
url: `${this.resource}/v1.0/planner/tasks/${taskId}/details`,
|
|
112
112
|
headers: {
|
|
@@ -120,95 +120,92 @@ class PlannerTaskAddCommand extends GraphCommand_1.default {
|
|
|
120
120
|
previewType: options.previewType
|
|
121
121
|
}
|
|
122
122
|
};
|
|
123
|
-
|
|
124
|
-
})
|
|
125
|
-
.then(taskDetails => {
|
|
123
|
+
const taskDetails = yield request_1.default.patch(requestOptionsTaskDetails);
|
|
126
124
|
return Object.assign(Object.assign({}, newTask), taskDetails);
|
|
127
125
|
});
|
|
128
126
|
}
|
|
129
127
|
generateUserAssignments(args) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
.getUserIds(args.options)
|
|
136
|
-
.then((userIds) => {
|
|
128
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
129
|
+
const assignments = {};
|
|
130
|
+
if (!args.options.assignedToUserIds && !args.options.assignedToUserNames) {
|
|
131
|
+
return assignments;
|
|
132
|
+
}
|
|
133
|
+
const userIds = yield this.getUserIds(args.options);
|
|
137
134
|
userIds.map(x => assignments[x] = {
|
|
138
135
|
'@odata.type': '#microsoft.graph.plannerAssignment',
|
|
139
136
|
orderHint: ' !'
|
|
140
137
|
});
|
|
141
|
-
return
|
|
138
|
+
return assignments;
|
|
142
139
|
});
|
|
143
140
|
}
|
|
144
141
|
getBucketId(args, planId) {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
.get(requestOptions)
|
|
157
|
-
.then((response) => {
|
|
142
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
143
|
+
if (args.options.bucketId) {
|
|
144
|
+
return args.options.bucketId;
|
|
145
|
+
}
|
|
146
|
+
const requestOptions = {
|
|
147
|
+
url: `${this.resource}/v1.0/planner/plans/${planId}/buckets`,
|
|
148
|
+
headers: {
|
|
149
|
+
accept: 'application/json;odata.metadata=none'
|
|
150
|
+
},
|
|
151
|
+
responseType: 'json'
|
|
152
|
+
};
|
|
153
|
+
const response = yield request_1.default.get(requestOptions);
|
|
158
154
|
const bucket = response.value.find(val => val.name === args.options.bucketName);
|
|
159
155
|
if (!bucket) {
|
|
160
|
-
|
|
156
|
+
throw `The specified bucket does not exist`;
|
|
161
157
|
}
|
|
162
|
-
return
|
|
158
|
+
return bucket.id;
|
|
163
159
|
});
|
|
164
160
|
}
|
|
165
161
|
getPlanId(args) {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
.getGroupId(args)
|
|
171
|
-
|
|
172
|
-
|
|
162
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
163
|
+
if (args.options.planId) {
|
|
164
|
+
return args.options.planId;
|
|
165
|
+
}
|
|
166
|
+
const groupId = yield this.getGroupId(args);
|
|
167
|
+
const plan = yield planner_1.planner.getPlanByTitle(args.options.planTitle, groupId);
|
|
168
|
+
return plan.id;
|
|
169
|
+
});
|
|
173
170
|
}
|
|
174
171
|
getGroupId(args) {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
.getGroupByDisplayName(args.options.ownerGroupName)
|
|
180
|
-
|
|
172
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
173
|
+
if (args.options.ownerGroupId) {
|
|
174
|
+
return args.options.ownerGroupId;
|
|
175
|
+
}
|
|
176
|
+
const group = yield aadGroup_1.aadGroup.getGroupByDisplayName(args.options.ownerGroupName);
|
|
177
|
+
return group.id;
|
|
178
|
+
});
|
|
181
179
|
}
|
|
182
180
|
getUserIds(options) {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
const
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
.all(promises)
|
|
202
|
-
.then((usersRes) => {
|
|
181
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
182
|
+
if (options.assignedToUserIds) {
|
|
183
|
+
return options.assignedToUserIds.split(',');
|
|
184
|
+
}
|
|
185
|
+
// Hitting this section means assignedToUserNames won't be undefined
|
|
186
|
+
const userNames = options.assignedToUserNames;
|
|
187
|
+
const userArr = userNames.split(',').map(o => o.trim());
|
|
188
|
+
let userIds = [];
|
|
189
|
+
const promises = userArr.map(user => {
|
|
190
|
+
const requestOptions = {
|
|
191
|
+
url: `${this.resource}/v1.0/users?$filter=userPrincipalName eq '${formatting_1.formatting.encodeQueryParameter(user)}'&$select=id,userPrincipalName`,
|
|
192
|
+
headers: {
|
|
193
|
+
'content-type': 'application/json'
|
|
194
|
+
},
|
|
195
|
+
responseType: 'json'
|
|
196
|
+
};
|
|
197
|
+
return request_1.default.get(requestOptions);
|
|
198
|
+
});
|
|
199
|
+
const usersRes = yield Promise.all(promises);
|
|
203
200
|
let userUpns = [];
|
|
204
201
|
userUpns = usersRes.map(res => { var _a; return (_a = res.value[0]) === null || _a === void 0 ? void 0 : _a.userPrincipalName; });
|
|
205
202
|
userIds = usersRes.map(res => { var _a; return (_a = res.value[0]) === null || _a === void 0 ? void 0 : _a.id; });
|
|
206
203
|
// Find the members where no graph response was found
|
|
207
204
|
const invalidUsers = userArr.filter(user => !userUpns.some((upn) => (upn === null || upn === void 0 ? void 0 : upn.toLowerCase()) === user.toLowerCase()));
|
|
208
205
|
if (invalidUsers && invalidUsers.length > 0) {
|
|
209
|
-
|
|
206
|
+
throw `Cannot proceed with planner task creation. The following users provided are invalid : ${invalidUsers.join(',')}`;
|
|
210
207
|
}
|
|
211
|
-
return
|
|
208
|
+
return userIds;
|
|
212
209
|
});
|
|
213
210
|
}
|
|
214
211
|
}
|
|
@@ -77,16 +77,17 @@ class PlannerTaskChecklistItemAddCommand extends GraphCommand_1.default {
|
|
|
77
77
|
});
|
|
78
78
|
}
|
|
79
79
|
getTaskDetailsEtag(taskId) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
.get(requestOptions)
|
|
89
|
-
|
|
80
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
81
|
+
const requestOptions = {
|
|
82
|
+
url: `${this.resource}/v1.0/planner/tasks/${formatting_1.formatting.encodeQueryParameter(taskId)}/details`,
|
|
83
|
+
headers: {
|
|
84
|
+
accept: 'application/json;odata.metadata=minimal'
|
|
85
|
+
},
|
|
86
|
+
responseType: 'json'
|
|
87
|
+
};
|
|
88
|
+
const task = yield request_1.default.get(requestOptions);
|
|
89
|
+
return task['@odata.etag'];
|
|
90
|
+
});
|
|
90
91
|
}
|
|
91
92
|
}
|
|
92
93
|
_PlannerTaskChecklistItemAddCommand_instances = new WeakSet(), _PlannerTaskChecklistItemAddCommand_initTelemetry = function _PlannerTaskChecklistItemAddCommand_initTelemetry() {
|
|
@@ -80,14 +80,16 @@ class PlannerTaskChecklistItemRemoveCommand extends GraphCommand_1.default {
|
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
getTaskDetails(taskId) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
83
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
const requestOptions = {
|
|
85
|
+
url: `${this.resource}/v1.0/planner/tasks/${formatting_1.formatting.encodeQueryParameter(taskId)}/details?$select=checklist`,
|
|
86
|
+
headers: {
|
|
87
|
+
accept: 'application/json;odata.metadata=minimal'
|
|
88
|
+
},
|
|
89
|
+
responseType: 'json'
|
|
90
|
+
};
|
|
91
|
+
return yield request_1.default.get(requestOptions);
|
|
92
|
+
});
|
|
91
93
|
}
|
|
92
94
|
}
|
|
93
95
|
_PlannerTaskChecklistItemRemoveCommand_instances = new WeakSet(), _PlannerTaskChecklistItemRemoveCommand_initTelemetry = function _PlannerTaskChecklistItemRemoveCommand_initTelemetry() {
|
|
@@ -51,37 +51,37 @@ class PlannerTaskGetCommand extends GraphCommand_1.default {
|
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
getTask(taskId) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
const requestOptions = {
|
|
56
|
+
url: `${this.resource}/v1.0/planner/tasks/${formatting_1.formatting.encodeQueryParameter(taskId)}`,
|
|
57
|
+
headers: {
|
|
58
|
+
accept: 'application/json;odata.metadata=none'
|
|
59
|
+
},
|
|
60
|
+
responseType: 'json'
|
|
61
|
+
};
|
|
62
|
+
return yield request_1.default.get(requestOptions);
|
|
63
|
+
});
|
|
62
64
|
}
|
|
63
65
|
getTaskDetails(task) {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
.get(requestOptionsTaskDetails)
|
|
74
|
-
.then(taskDetails => {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
const requestOptionsTaskDetails = {
|
|
68
|
+
url: `${this.resource}/v1.0/planner/tasks/${task.id}/details`,
|
|
69
|
+
headers: {
|
|
70
|
+
'accept': 'application/json;odata.metadata=none',
|
|
71
|
+
'Prefer': 'return=representation'
|
|
72
|
+
},
|
|
73
|
+
responseType: 'json'
|
|
74
|
+
};
|
|
75
|
+
const taskDetails = yield request_1.default.get(requestOptionsTaskDetails);
|
|
75
76
|
return Object.assign(Object.assign({}, task), taskDetails);
|
|
76
77
|
});
|
|
77
78
|
}
|
|
78
79
|
getTaskId(options) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
.getBucketId(options)
|
|
84
|
-
.then(bucketId => {
|
|
80
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
81
|
+
if (options.id) {
|
|
82
|
+
return options.id;
|
|
83
|
+
}
|
|
84
|
+
const bucketId = yield this.getBucketId(options);
|
|
85
85
|
const requestOptions = {
|
|
86
86
|
url: `${this.resource}/v1.0/planner/buckets/${bucketId}/tasks?$select=id,title`,
|
|
87
87
|
headers: {
|
|
@@ -89,27 +89,24 @@ class PlannerTaskGetCommand extends GraphCommand_1.default {
|
|
|
89
89
|
},
|
|
90
90
|
responseType: 'json'
|
|
91
91
|
};
|
|
92
|
-
|
|
93
|
-
})
|
|
94
|
-
.then((response) => {
|
|
92
|
+
const response = yield request_1.default.get(requestOptions);
|
|
95
93
|
const title = options.title;
|
|
96
94
|
const tasks = response.value.filter(val => { var _a; return ((_a = val.title) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === title.toLocaleLowerCase(); });
|
|
97
95
|
if (!tasks.length) {
|
|
98
|
-
|
|
96
|
+
throw `The specified task ${options.title} does not exist`;
|
|
99
97
|
}
|
|
100
98
|
if (tasks.length > 1) {
|
|
101
|
-
|
|
99
|
+
throw `Multiple tasks with title ${options.title} found: ${tasks.map(x => x.id)}`;
|
|
102
100
|
}
|
|
103
|
-
return
|
|
101
|
+
return tasks[0].id;
|
|
104
102
|
});
|
|
105
103
|
}
|
|
106
104
|
getBucketId(options) {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
.getPlanId(options)
|
|
112
|
-
.then(planId => {
|
|
105
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
106
|
+
if (options.bucketId) {
|
|
107
|
+
return options.bucketId;
|
|
108
|
+
}
|
|
109
|
+
const planId = yield this.getPlanId(options);
|
|
113
110
|
const requestOptions = {
|
|
114
111
|
url: `${this.resource}/v1.0/planner/plans/${planId}/buckets?$select=id,name`,
|
|
115
112
|
headers: {
|
|
@@ -117,36 +114,36 @@ class PlannerTaskGetCommand extends GraphCommand_1.default {
|
|
|
117
114
|
},
|
|
118
115
|
responseType: 'json'
|
|
119
116
|
};
|
|
120
|
-
|
|
121
|
-
})
|
|
122
|
-
.then((response) => {
|
|
117
|
+
const response = yield request_1.default.get(requestOptions);
|
|
123
118
|
const bucketName = options.bucketName;
|
|
124
119
|
const buckets = response.value.filter(val => { var _a; return ((_a = val.name) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === bucketName.toLocaleLowerCase(); });
|
|
125
120
|
if (!buckets.length) {
|
|
126
|
-
|
|
121
|
+
throw `The specified bucket ${options.bucketName} does not exist`;
|
|
127
122
|
}
|
|
128
123
|
if (buckets.length > 1) {
|
|
129
|
-
|
|
124
|
+
throw `Multiple buckets with name ${options.bucketName} found: ${buckets.map(x => x.id)}`;
|
|
130
125
|
}
|
|
131
|
-
return
|
|
126
|
+
return buckets[0].id;
|
|
132
127
|
});
|
|
133
128
|
}
|
|
134
129
|
getPlanId(options) {
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
.getGroupId(options)
|
|
140
|
-
|
|
141
|
-
|
|
130
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
131
|
+
if (options.planId) {
|
|
132
|
+
return options.planId;
|
|
133
|
+
}
|
|
134
|
+
const groupId = yield this.getGroupId(options);
|
|
135
|
+
const plan = yield planner_1.planner.getPlanByTitle(options.planTitle, groupId);
|
|
136
|
+
return plan.id;
|
|
137
|
+
});
|
|
142
138
|
}
|
|
143
139
|
getGroupId(options) {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
.getGroupByDisplayName(options.ownerGroupName)
|
|
149
|
-
|
|
140
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
141
|
+
if (options.ownerGroupId) {
|
|
142
|
+
return options.ownerGroupId;
|
|
143
|
+
}
|
|
144
|
+
const group = yield aadGroup_1.aadGroup.getGroupByDisplayName(options.ownerGroupName);
|
|
145
|
+
return group.id;
|
|
146
|
+
});
|
|
150
147
|
}
|
|
151
148
|
}
|
|
152
149
|
_PlannerTaskGetCommand_instances = new WeakSet(), _PlannerTaskGetCommand_initTelemetry = function _PlannerTaskGetCommand_initTelemetry() {
|