@pnp/cli-microsoft365 5.0.0-beta.c423952 → 5.0.0-beta.c75d5fc

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/.eslintrc.js CHANGED
@@ -23,6 +23,7 @@ const dictionary = [
23
23
  'group',
24
24
  'groupify',
25
25
  'guest',
26
+ 'health',
26
27
  'hide',
27
28
  'historical',
28
29
  'home',
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const request_1 = require("../../../../request");
4
+ const GraphItemsListCommand_1 = require("../../../base/GraphItemsListCommand");
5
+ const commands_1 = require("../../commands");
6
+ class PlannerTaskDetailsGetCommand extends GraphItemsListCommand_1.GraphItemsListCommand {
7
+ get name() {
8
+ return commands_1.default.TASK_DETAILS_GET;
9
+ }
10
+ get description() {
11
+ return 'Retrieve the details of the specified planner task';
12
+ }
13
+ commandAction(logger, args, cb) {
14
+ const requestOptions = {
15
+ url: `${this.resource}/v1.0/planner/tasks/${encodeURIComponent(args.options.taskId)}/details`,
16
+ headers: {
17
+ accept: 'application/json;odata.metadata=none'
18
+ },
19
+ responseType: 'json'
20
+ };
21
+ request_1.default
22
+ .get(requestOptions)
23
+ .then((res) => {
24
+ logger.log(res);
25
+ cb();
26
+ }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
27
+ }
28
+ options() {
29
+ const options = [
30
+ {
31
+ option: '-i, --taskId <taskId>'
32
+ }
33
+ ];
34
+ const parentOptions = super.options();
35
+ return options.concat(parentOptions);
36
+ }
37
+ }
38
+ module.exports = new PlannerTaskDetailsGetCommand();
39
+ //# sourceMappingURL=task-details-get.js.map
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const request_1 = require("../../../../request");
4
+ const GraphCommand_1 = require("../../../base/GraphCommand");
5
+ const commands_1 = require("../../commands");
6
+ class PlannerTaskGetCommand extends GraphCommand_1.default {
7
+ get name() {
8
+ return commands_1.default.TASK_GET;
9
+ }
10
+ get description() {
11
+ return 'Retrieve the the specified planner task';
12
+ }
13
+ commandAction(logger, args, cb) {
14
+ const requestOptions = {
15
+ url: `${this.resource}/v1.0/planner/tasks/${encodeURIComponent(args.options.id)}`,
16
+ headers: {
17
+ accept: 'application/json;odata.metadata=none'
18
+ },
19
+ responseType: 'json'
20
+ };
21
+ request_1.default
22
+ .get(requestOptions)
23
+ .then((res) => {
24
+ logger.log(res);
25
+ cb();
26
+ }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
27
+ }
28
+ options() {
29
+ const options = [
30
+ { option: '-i, --id <id>' }
31
+ ];
32
+ const parentOptions = super.options();
33
+ return options.concat(parentOptions);
34
+ }
35
+ }
36
+ module.exports = new PlannerTaskGetCommand();
37
+ //# sourceMappingURL=task-get.js.map
@@ -8,6 +8,8 @@ exports.default = {
8
8
  PLAN_GET: `${prefix} plan get`,
9
9
  PLAN_LIST: `${prefix} plan list`,
10
10
  TASK_ADD: `${prefix} task add`,
11
+ TASK_DETAILS_GET: `${prefix} task details get`,
12
+ TASK_GET: `${prefix} task get`,
11
13
  TASK_LIST: `${prefix} task list`,
12
14
  TASK_SET: `${prefix} task set`
13
15
  };
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const cli_1 = require("../../../../cli");
4
+ const request_1 = require("../../../../request");
5
+ const SpoCommand_1 = require("../../../base/SpoCommand");
6
+ const commands_1 = require("../../commands");
7
+ class SpoGroupUserRemoveCommand extends SpoCommand_1.default {
8
+ get name() {
9
+ return commands_1.default.GROUP_USER_REMOVE;
10
+ }
11
+ get description() {
12
+ return 'Removes the specified user from a SharePoint group';
13
+ }
14
+ getTelemetryProperties(args) {
15
+ const telemetryProps = super.getTelemetryProperties(args);
16
+ telemetryProps.groupId = (!(!args.options.groupId)).toString();
17
+ telemetryProps.groupName = (!(!args.options.groupName)).toString();
18
+ telemetryProps.confirm = (!(!args.options.confirm)).toString();
19
+ return telemetryProps;
20
+ }
21
+ commandAction(logger, args, cb) {
22
+ const removeUserfromSPGroup = () => {
23
+ if (this.verbose) {
24
+ logger.logToStderr(`Removing User with Username ${args.options.userName} from Group: ${args.options.groupId ? args.options.groupId : args.options.groupName}`);
25
+ }
26
+ const loginName = `i:0#.f|membership|${args.options.userName}`;
27
+ const requestUrl = `${args.options.webUrl}/_api/web/sitegroups/${args.options.groupId
28
+ ? `GetById('${encodeURIComponent(args.options.groupId)}')`
29
+ : `GetByName('${encodeURIComponent(args.options.groupName)}')`}/users/removeByLoginName(@LoginName)?@LoginName='${encodeURIComponent(loginName)}'`;
30
+ const requestOptions = {
31
+ url: requestUrl,
32
+ headers: {
33
+ 'accept': 'application/json;odata=nometadata'
34
+ },
35
+ responseType: 'json'
36
+ };
37
+ request_1.default
38
+ .post(requestOptions)
39
+ .then(() => {
40
+ cb();
41
+ }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
42
+ };
43
+ if (args.options.confirm) {
44
+ if (this.debug) {
45
+ logger.logToStderr('Confirmation bypassed by entering confirm option. Removing the user from SharePoint Group...');
46
+ }
47
+ removeUserfromSPGroup();
48
+ }
49
+ else {
50
+ cli_1.Cli.prompt({
51
+ type: 'confirm',
52
+ name: 'continue',
53
+ default: false,
54
+ message: `Are you sure you want to remove user User ${args.options.userName} from SharePoint group?`
55
+ }, (result) => {
56
+ if (!result.continue) {
57
+ cb();
58
+ }
59
+ else {
60
+ removeUserfromSPGroup();
61
+ }
62
+ });
63
+ }
64
+ }
65
+ options() {
66
+ const options = [
67
+ {
68
+ option: '-u, --webUrl <webUrl>'
69
+ },
70
+ {
71
+ option: '--groupId [groupId]'
72
+ },
73
+ {
74
+ option: '--groupName [groupName]'
75
+ },
76
+ {
77
+ option: '--userName <userName>'
78
+ },
79
+ {
80
+ option: '--confirm'
81
+ }
82
+ ];
83
+ const parentOptions = super.options();
84
+ return options.concat(parentOptions);
85
+ }
86
+ validate(args) {
87
+ if (args.options.groupId && args.options.groupName) {
88
+ return 'Use either "groupName" or "groupId", but not both';
89
+ }
90
+ if (!args.options.groupId && !args.options.groupName) {
91
+ return 'Either "groupName" or "groupId" is required';
92
+ }
93
+ if (args.options.groupId && isNaN(args.options.groupId)) {
94
+ return `Specified "groupId" ${args.options.groupId} is not valid`;
95
+ }
96
+ return SpoCommand_1.default.isValidSharePointUrl(args.options.webUrl);
97
+ }
98
+ }
99
+ module.exports = new SpoGroupUserRemoveCommand();
100
+ //# sourceMappingURL=group-user-remove.js.map
@@ -64,6 +64,7 @@ exports.default = {
64
64
  GROUP_REMOVE: `${prefix} group remove`,
65
65
  GROUP_USER_ADD: `${prefix} group user add`,
66
66
  GROUP_USER_LIST: `${prefix} group user list`,
67
+ GROUP_USER_REMOVE: `${prefix} group user remove`,
67
68
  HIDEDEFAULTTHEMES_GET: `${prefix} hidedefaultthemes get`,
68
69
  HIDEDEFAULTTHEMES_SET: `${prefix} hidedefaultthemes set`,
69
70
  HOMESITE_GET: `${prefix} homesite get`,
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const request_1 = require("../../../../request");
4
+ const GraphCommand_1 = require("../../../base/GraphCommand");
5
+ const commands_1 = require("../../commands");
6
+ class TenantServiceAnnouncementHealthIssueGetCommand extends GraphCommand_1.default {
7
+ get name() {
8
+ return commands_1.default.SERVICEANNOUNCEMENT_HEALTHISSUE_GET;
9
+ }
10
+ get description() {
11
+ return 'Gets a specified service health issue for tenant';
12
+ }
13
+ commandAction(logger, args, cb) {
14
+ const requestOptions = {
15
+ url: `${this.resource}/v1.0/admin/serviceAnnouncement/issues/${encodeURIComponent(args.options.id)}`,
16
+ headers: {
17
+ accept: 'application/json;odata.metadata=none'
18
+ },
19
+ responseType: 'json'
20
+ };
21
+ request_1.default
22
+ .get(requestOptions)
23
+ .then((res) => {
24
+ logger.log(res);
25
+ cb();
26
+ }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
27
+ }
28
+ options() {
29
+ const options = [
30
+ {
31
+ option: '-i, --id <id>'
32
+ }
33
+ ];
34
+ const parentOptions = super.options();
35
+ return options.concat(parentOptions);
36
+ }
37
+ }
38
+ module.exports = new TenantServiceAnnouncementHealthIssueGetCommand();
39
+ //# sourceMappingURL=serviceannouncement-healthissue-get.js.map
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const request_1 = require("../../../../request");
4
3
  const GraphItemsListCommand_1 = require("../../../base/GraphItemsListCommand");
5
4
  const commands_1 = require("../../commands");
6
- class TenantServiceAnnouncementHealthissueListCommand extends GraphItemsListCommand_1.GraphItemsListCommand {
5
+ class TenantServiceAnnouncementHealthIssueListCommand extends GraphItemsListCommand_1.GraphItemsListCommand {
7
6
  get name() {
8
7
  return commands_1.default.SERVICEANNOUNCEMENT_HEALTHISSUE_LIST;
9
8
  }
@@ -18,29 +17,22 @@ class TenantServiceAnnouncementHealthissueListCommand extends GraphItemsListComm
18
17
  if (args.options.service) {
19
18
  endpoint += `?$filter=service eq '${encodeURIComponent(args.options.service)}'`;
20
19
  }
21
- const requestOptions = {
22
- url: endpoint,
23
- headers: {
24
- accept: 'application/json;odata.metadata=none'
25
- },
26
- responseType: 'json'
27
- };
28
- request_1.default
29
- .get(requestOptions)
30
- .then((res) => {
31
- logger.log(res.value);
20
+ this
21
+ .getAllItems(endpoint, logger, true)
22
+ .then(() => {
23
+ logger.log(this.items);
32
24
  cb();
33
25
  }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
34
26
  }
35
27
  options() {
36
28
  const options = [
37
29
  {
38
- option: '-s, --service [service] '
30
+ option: '-s, --service [service]'
39
31
  }
40
32
  ];
41
33
  const parentOptions = super.options();
42
34
  return options.concat(parentOptions);
43
35
  }
44
36
  }
45
- module.exports = new TenantServiceAnnouncementHealthissueListCommand();
37
+ module.exports = new TenantServiceAnnouncementHealthIssueListCommand();
46
38
  //# sourceMappingURL=serviceannouncement-healthissue-list.js.map
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const GraphCommand_1 = require("../../../base/GraphCommand");
4
3
  const request_1 = require("../../../../request");
4
+ const GraphCommand_1 = require("../../../base/GraphCommand");
5
5
  const commands_1 = require("../../commands");
6
6
  class TenantServiceAnnouncementMessageGetCommand extends GraphCommand_1.default {
7
7
  get name() {
@@ -10,12 +10,9 @@ class TenantServiceAnnouncementMessageGetCommand extends GraphCommand_1.default
10
10
  get description() {
11
11
  return 'Retrieves a specified service update message for the tenant';
12
12
  }
13
- defaultProperties() {
14
- return ['startDateTime', 'endDateTime', 'lastModifiedDateTime', 'title', 'id', 'category', 'severity', 'tags', 'isMajorChange', 'actionRequiredByDateTime', 'services', 'expiryDateTime', 'hasAttachments', 'viewPoint'];
15
- }
16
13
  commandAction(logger, args, cb) {
17
14
  if (this.verbose) {
18
- logger.logToStderr(`Retrieving service update message ${args.id}`);
15
+ logger.logToStderr(`Retrieving service update message ${args.options.id}`);
19
16
  }
20
17
  const requestOptions = {
21
18
  url: `${this.resource}/v1.0/admin/serviceAnnouncement/messages/${args.options.id}`,
@@ -34,7 +31,7 @@ class TenantServiceAnnouncementMessageGetCommand extends GraphCommand_1.default
34
31
  options() {
35
32
  const options = [
36
33
  {
37
- option: '-i, --id [id]'
34
+ option: '-i, --id <id>'
38
35
  }
39
36
  ];
40
37
  const parentOptions = super.options();
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const request_1 = require("../../../../request");
4
3
  const GraphItemsListCommand_1 = require("../../../base/GraphItemsListCommand");
5
4
  const commands_1 = require("../../commands");
6
5
  class TenantServiceAnnouncementMessageListCommand extends GraphItemsListCommand_1.GraphItemsListCommand {
@@ -18,24 +17,17 @@ class TenantServiceAnnouncementMessageListCommand extends GraphItemsListCommand_
18
17
  if (args.options.service) {
19
18
  endpoint += `?$filter=services/any(c:c+eq+'${encodeURIComponent(args.options.service)}')`;
20
19
  }
21
- const requestOptions = {
22
- url: endpoint,
23
- headers: {
24
- accept: 'application/json;odata.metadata=none'
25
- },
26
- responseType: 'json'
27
- };
28
- request_1.default
29
- .get(requestOptions)
30
- .then((res) => {
31
- logger.log(res.value);
20
+ this
21
+ .getAllItems(endpoint, logger, true)
22
+ .then(() => {
23
+ logger.log(this.items);
32
24
  cb();
33
25
  }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
34
26
  }
35
27
  options() {
36
28
  const options = [
37
29
  {
38
- option: '-s, --service [service] '
30
+ option: '-s, --service [service]'
39
31
  }
40
32
  ];
41
33
  const parentOptions = super.options();
@@ -10,6 +10,7 @@ exports.default = {
10
10
  REPORT_OFFICE365ACTIVATIONSUSERDETAIL: `${prefix} report office365activationsuserdetail`,
11
11
  REPORT_OFFICE365ACTIVATIONSUSERCOUNTS: `${prefix} report office365activationsusercounts`,
12
12
  REPORT_SERVICESUSERCOUNTS: `${prefix} report servicesusercounts`,
13
+ SERVICEANNOUNCEMENT_HEALTHISSUE_GET: `${prefix} serviceannouncement healthissue get`,
13
14
  SERVICE_LIST: `${prefix} service list`,
14
15
  SERVICE_MESSAGE_LIST: `${prefix} service message list`,
15
16
  SERVICE_REPORT_HISTORICALSERVICESTATUS: `${prefix} service report historicalservicestatus`,
@@ -0,0 +1,24 @@
1
+ # planner task details get
2
+
3
+ Retrieve the details of the specified planner task
4
+
5
+ ## Usage
6
+
7
+ ```sh
8
+ m365 planner task details get [options]
9
+ ```
10
+
11
+ ## Options
12
+
13
+ `-i, --taskId <taskId>`
14
+ : ID of the task to retrieve details from
15
+
16
+ --8<-- "docs/cmd/_global.md"
17
+
18
+ ## Examples
19
+
20
+ Retrieve the details of the specified planner task
21
+
22
+ ```sh
23
+ m365 planner task details get --taskId 'vzCcZoOv-U27PwydxHB8opcADJo-'
24
+ ```
@@ -0,0 +1,24 @@
1
+ # planner task get
2
+
3
+ Retrieve the the specified planner task
4
+
5
+ ## Usage
6
+
7
+ ```sh
8
+ m365 planner task get [options]
9
+ ```
10
+
11
+ ## Options
12
+
13
+ `-i, --id <id>`
14
+ : ID of the task to retrieve details from
15
+
16
+ --8<-- "docs/cmd/_global.md"
17
+
18
+ ## Examples
19
+
20
+ Retrieve the the specified planner task
21
+
22
+ ```sh
23
+ m365 planner task get --id 'vzCcZoOv-U27PwydxHB8opcADJo-'
24
+ ```
@@ -0,0 +1,39 @@
1
+ # spo group user remove
2
+
3
+ Removes the specified user from a SharePoint group
4
+
5
+ ## Usage
6
+
7
+ ```sh
8
+ m365 spo group user remove [options]
9
+ ```
10
+
11
+ ## Options
12
+
13
+ `-u, --webUrl <webUrl>`
14
+ : URL of the site where the SharePoint group is available
15
+
16
+ `--groupId [groupId]`
17
+ : Id of the SharePoint group from which user has to be removed from. Use either `groupName` or `groupId`, but not both
18
+
19
+ `--groupName [groupName]`
20
+ : Name of the SharePoint group from which user has to be removed from. Use either `groupName` or `groupId`, but not both
21
+
22
+ `--userName <userName>`
23
+ : User's UPN (user principal name, eg. megan.bowen@contoso.com).
24
+
25
+ --8<-- "docs/cmd/_global.md"
26
+
27
+ ## Examples
28
+
29
+ Remove a user from SharePoint group with id _5_ available on the web _https://contoso.sharepoint.com/sites/SiteA_
30
+
31
+ ```sh
32
+ m365 spo group user remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --userName "Alex.Wilber@contoso.com"
33
+ ```
34
+
35
+ Remove a user from SharePoint group with Name _Site A Visitors_ available on the web _https://contoso.sharepoint.com/sites/SiteA_
36
+
37
+ ```sh
38
+ m365 spo group user remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupName "Site A Visitors" --userName "Alex.Wilber@contoso.com"
39
+ ```
@@ -16,7 +16,7 @@ m365 teams channel get [options]
16
16
  `--teamName [teamName]`
17
17
  : The display name of the team to which the channel belongs to. Specify either teamId or teamName but not both
18
18
 
19
- `-c, --channelId <channelId>`
19
+ `-c, --channelId [channelId]`
20
20
  : The ID of the channel for which to retrieve more information. Specify either channelId or channelName but not both
21
21
 
22
22
  `--channelName [channelName]`
@@ -0,0 +1,24 @@
1
+ # tenant serviceannouncement healthissue get
2
+
3
+ Gets a specified service health issue for tenant.
4
+
5
+ ## Usage
6
+
7
+ ```sh
8
+ m365 tenant serviceannouncement healthissue get [options]
9
+ ```
10
+
11
+ ## Options
12
+
13
+ `-i, --id <id>`
14
+ : The issue id to get details for
15
+
16
+ --8<-- "docs/cmd/_global.md"
17
+
18
+ ## Examples
19
+
20
+ Gets information about issue with ID _MO226784_
21
+
22
+ ```sh
23
+ m365 tenant serviceannouncement healthissue get --id MO226784
24
+ ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pnp/cli-microsoft365",
3
- "version": "5.0.0-beta.c423952",
3
+ "version": "5.0.0-beta.c75d5fc",
4
4
  "description": "Manage Microsoft 365 and SharePoint Framework projects on any platform",
5
5
  "license": "MIT",
6
6
  "main": "./dist/index.js",
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Command_1 = require("../../Command");
4
- class AadCommand extends Command_1.default {
5
- get resource() {
6
- return 'https://graph.windows.net';
7
- }
8
- }
9
- exports.default = AadCommand;
10
- //# sourceMappingURL=AadCommand.js.map