@pnp/cli-microsoft365 10.9.0-beta.bc13e90 → 10.10.0-beta.1bb5ba0
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 +1 -1
- package/.devproxy/api-specs/sharepoint-admin.yaml +67 -0
- package/.devproxy/api-specs/sharepoint.yaml +230 -0
- package/.devproxy/devproxyrc.json +48 -0
- package/.devproxy/generate-openapi-spec.json +24 -0
- package/.devproxy/spo-csom-types.json +54 -0
- package/.eslintrc.cjs +8 -0
- package/Dockerfile +3 -3
- package/allCommands.json +1 -1
- package/allCommandsFull.json +1 -1
- package/dist/cli/cli.js +2 -2
- package/dist/m365/app/commands/permission/permission-add.js +8 -1
- package/dist/m365/base/SpoCommand.js +1 -0
- package/dist/m365/entra/commands/app/app-permission-add.js +5 -18
- package/dist/m365/entra/commands/m365group/m365group-get.js +16 -3
- package/dist/m365/entra/commands/m365group/m365group-list.js +7 -1
- package/dist/m365/entra/commands/organization/organization-set.js +104 -0
- package/dist/m365/entra/commands/pim/pim-role-assignment-eligibility-list.js +9 -3
- package/dist/m365/entra/commands/pim/pim-role-assignment-list.js +9 -3
- package/dist/m365/entra/commands/pim/pim-role-request-list.js +9 -3
- package/dist/m365/entra/commands.js +1 -0
- package/dist/m365/file/commands/file-copy.js +2 -2
- package/dist/m365/file/commands/file-move.js +1 -1
- package/dist/m365/flow/commands/flow-list.js +14 -7
- package/dist/m365/flow/commands/run/run-get.js +1 -1
- package/dist/m365/graph/commands/subscription/subscription-add.js +10 -3
- package/dist/m365/planner/commands/tenant/tenant-settings-list.js +0 -3
- package/dist/m365/pp/commands/solution/solution-publisher-list.js +8 -1
- package/dist/m365/purview/commands/threatassessment/threatassessment-get.js +9 -2
- package/dist/m365/spo/commands/contenttype/contenttype-add.js +3 -65
- package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +5 -50
- package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +4 -48
- package/dist/m365/spo/commands/contenttype/contenttype-set.js +8 -58
- package/dist/m365/spo/commands/contenttype/contenttype-sync.js +2 -2
- package/dist/m365/spo/commands/file/file-move.js +8 -2
- package/dist/m365/spo/commands/folder/folder-sharinglink-add.js +1 -1
- package/dist/m365/spo/commands/folder/folder-sharinglink-clear.js +1 -1
- package/dist/m365/spo/commands/folder/folder-sharinglink-get.js +1 -1
- package/dist/m365/spo/commands/folder/folder-sharinglink-list.js +1 -1
- package/dist/m365/spo/commands/folder/folder-sharinglink-remove.js +1 -1
- package/dist/m365/spo/commands/folder/folder-sharinglink-set.js +1 -1
- package/dist/m365/spo/commands/hubsite/hubsite-get.js +14 -5
- package/dist/m365/spo/commands/hubsite/hubsite-list.js +9 -2
- package/dist/m365/spo/commands/list/list-view-add.js +140 -87
- package/dist/m365/spo/commands/listitem/listitem-batch-set.js +3 -27
- package/dist/m365/spo/commands/page/Page.js +16 -1
- package/dist/m365/spo/commands/page/clientsidepages.js +53 -17
- package/dist/m365/spo/commands/page/page-add.js +1 -1
- package/dist/m365/spo/commands/page/page-clientsidewebpart-add.js +2 -8
- package/dist/m365/spo/commands/page/page-control-remove.js +99 -0
- package/dist/m365/spo/commands/page/page-control-set.js +1 -1
- package/dist/m365/spo/commands/page/page-header-set.js +9 -40
- package/dist/m365/spo/commands/page/page-publish.js +2 -10
- package/dist/m365/spo/commands/page/page-section-add.js +75 -21
- package/dist/m365/spo/commands/page/page-set.js +1 -1
- package/dist/m365/spo/commands/site/site-admin-add.js +1 -12
- package/dist/m365/spo/commands/site/site-set.js +2 -2
- package/dist/m365/spo/commands/tenant/tenant-site-list.js +16 -5
- package/dist/m365/spo/commands/term/term-list.js +10 -3
- package/dist/m365/spo/commands.js +1 -0
- package/dist/m365/teams/commands/chat/chat-member-add.js +10 -4
- package/dist/m365/viva/commands/engage/engage-community-remove.js +99 -0
- package/dist/m365/viva/commands/engage/engage-network-list.js +8 -2
- package/dist/m365/viva/commands.js +1 -0
- package/dist/utils/entraServicePrincipal.js +21 -0
- package/dist/utils/md.js +3 -3
- package/dist/utils/spo.js +87 -3
- package/docs/docs/cmd/_global.mdx +1 -1
- package/docs/docs/cmd/entra/m365group/m365group-get.mdx +8 -5
- package/docs/docs/cmd/entra/m365group/m365group-list.mdx +14 -12
- package/docs/docs/cmd/entra/organization/organization-set.mdx +84 -0
- package/docs/docs/cmd/entra/pim/pim-role-assignment-eligibility-list.mdx +7 -4
- package/docs/docs/cmd/entra/pim/pim-role-assignment-list.mdx +9 -6
- package/docs/docs/cmd/entra/pim/pim-role-request-list.mdx +7 -4
- package/docs/docs/cmd/flow/flow-list.mdx +8 -5
- package/docs/docs/cmd/flow/run/run-get.mdx +1 -1
- package/docs/docs/cmd/graph/subscription/subscription-add.mdx +6 -3
- package/docs/docs/cmd/planner/bucket/bucket-add.mdx +19 -0
- package/docs/docs/cmd/planner/bucket/bucket-get.mdx +19 -0
- package/docs/docs/cmd/planner/bucket/bucket-list.mdx +19 -0
- package/docs/docs/cmd/planner/bucket/bucket-remove.mdx +21 -0
- package/docs/docs/cmd/planner/bucket/bucket-set.mdx +21 -0
- package/docs/docs/cmd/planner/plan/plan-add.mdx +19 -0
- package/docs/docs/cmd/planner/plan/plan-get.mdx +19 -0
- package/docs/docs/cmd/planner/plan/plan-list.mdx +19 -0
- package/docs/docs/cmd/planner/plan/plan-remove.mdx +21 -0
- package/docs/docs/cmd/planner/plan/plan-set.mdx +19 -0
- package/docs/docs/cmd/planner/roster/roster-add.mdx +19 -0
- package/docs/docs/cmd/planner/roster/roster-get.mdx +19 -0
- package/docs/docs/cmd/planner/roster/roster-member-add.mdx +19 -0
- package/docs/docs/cmd/planner/roster/roster-member-get.mdx +19 -0
- package/docs/docs/cmd/planner/roster/roster-member-list.mdx +19 -0
- package/docs/docs/cmd/planner/roster/roster-member-remove.mdx +21 -0
- package/docs/docs/cmd/planner/roster/roster-plan-list.mdx +19 -0
- package/docs/docs/cmd/planner/roster/roster-remove.mdx +21 -0
- package/docs/docs/cmd/planner/task/task-add.mdx +19 -0
- package/docs/docs/cmd/planner/task/task-checklistitem-add.mdx +19 -0
- package/docs/docs/cmd/planner/task/task-checklistitem-list.mdx +19 -0
- package/docs/docs/cmd/planner/task/task-checklistitem-remove.mdx +21 -0
- package/docs/docs/cmd/planner/task/task-get.mdx +27 -0
- package/docs/docs/cmd/planner/task/task-list.mdx +19 -0
- package/docs/docs/cmd/planner/task/task-reference-add.mdx +19 -0
- package/docs/docs/cmd/planner/task/task-reference-list.mdx +19 -0
- package/docs/docs/cmd/planner/task/task-reference-remove.mdx +21 -0
- package/docs/docs/cmd/planner/task/task-remove.mdx +21 -0
- package/docs/docs/cmd/planner/task/task-set.mdx +19 -0
- package/docs/docs/cmd/planner/tenant/tenant-settings-list.mdx +44 -7
- package/docs/docs/cmd/planner/tenant/tenant-settings-set.mdx +43 -8
- package/docs/docs/cmd/pp/solution/solution-publisher-list.mdx +7 -4
- package/docs/docs/cmd/purview/threatassessment/threatassessment-get.mdx +7 -4
- package/docs/docs/cmd/spo/file/file-move.mdx +4 -1
- package/docs/docs/cmd/spo/hubsite/hubsite-get.mdx +6 -3
- package/docs/docs/cmd/spo/hubsite/hubsite-list.mdx +7 -4
- package/docs/docs/cmd/spo/list/list-add.mdx +1 -1
- package/docs/docs/cmd/spo/list/list-set.mdx +2 -2
- package/docs/docs/cmd/spo/list/list-view-add.mdx +53 -10
- package/docs/docs/cmd/spo/page/page-control-remove.mdx +56 -0
- package/docs/docs/cmd/spo/page/page-section-add.mdx +22 -2
- package/docs/docs/cmd/spo/tenant/tenant-site-list.mdx +10 -7
- package/docs/docs/cmd/spo/term/term-list.mdx +7 -4
- package/docs/docs/cmd/teams/chat/chat-member-add.mdx +6 -3
- package/docs/docs/cmd/viva/engage/engage-community-remove.mdx +61 -0
- package/docs/docs/cmd/viva/engage/engage-network-list.mdx +7 -4
- package/npm-shrinkwrap.json +2390 -587
- package/package.json +20 -17
|
@@ -24,11 +24,15 @@ class PurviewThreatAssessmentGetCommand extends GraphCommand {
|
|
|
24
24
|
}
|
|
25
25
|
async commandAction(logger, args) {
|
|
26
26
|
try {
|
|
27
|
+
if (args.options.includeResults) {
|
|
28
|
+
await this.warn(logger, `Parameter 'includeResults' is deprecated. Please use 'withResults' instead`);
|
|
29
|
+
}
|
|
27
30
|
if (this.verbose) {
|
|
28
31
|
await logger.logToStderr(`Retrieving threat assessment with id ${args.options.id}`);
|
|
29
32
|
}
|
|
33
|
+
const shouldIncludeResults = args.options.includeResults || args.options.withResults;
|
|
30
34
|
const requestOptions = {
|
|
31
|
-
url: `${this.resource}/v1.0/informationProtection/threatAssessmentRequests/${args.options.id}${
|
|
35
|
+
url: `${this.resource}/v1.0/informationProtection/threatAssessmentRequests/${args.options.id}${shouldIncludeResults ? '?$expand=results' : ''}`,
|
|
32
36
|
headers: {
|
|
33
37
|
accept: 'application/json;odata.metadata=none'
|
|
34
38
|
},
|
|
@@ -45,7 +49,8 @@ class PurviewThreatAssessmentGetCommand extends GraphCommand {
|
|
|
45
49
|
_PurviewThreatAssessmentGetCommand_instances = new WeakSet(), _PurviewThreatAssessmentGetCommand_initTelemetry = function _PurviewThreatAssessmentGetCommand_initTelemetry() {
|
|
46
50
|
this.telemetry.push((args) => {
|
|
47
51
|
Object.assign(this.telemetryProperties, {
|
|
48
|
-
includeResults: !!args.options.includeResults
|
|
52
|
+
includeResults: !!args.options.includeResults,
|
|
53
|
+
withResults: !!args.options.withResults
|
|
49
54
|
});
|
|
50
55
|
});
|
|
51
56
|
}, _PurviewThreatAssessmentGetCommand_initOptions = function _PurviewThreatAssessmentGetCommand_initOptions() {
|
|
@@ -53,6 +58,8 @@ _PurviewThreatAssessmentGetCommand_instances = new WeakSet(), _PurviewThreatAsse
|
|
|
53
58
|
option: '-i, --id <id>'
|
|
54
59
|
}, {
|
|
55
60
|
option: '--includeResults'
|
|
61
|
+
}, {
|
|
62
|
+
option: '--withResults'
|
|
56
63
|
});
|
|
57
64
|
}, _PurviewThreatAssessmentGetCommand_initValidators = function _PurviewThreatAssessmentGetCommand_initValidators() {
|
|
58
65
|
this.validators.push(async (args) => {
|
|
@@ -9,7 +9,6 @@ import config from '../../../../config.js';
|
|
|
9
9
|
import request from '../../../../request.js';
|
|
10
10
|
import { formatting } from '../../../../utils/formatting.js';
|
|
11
11
|
import { spo } from '../../../../utils/spo.js';
|
|
12
|
-
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
13
12
|
import { validation } from '../../../../utils/validation.js';
|
|
14
13
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
15
14
|
import commands from '../../commands.js';
|
|
@@ -87,72 +86,11 @@ class SpoContentTypeAddCommand extends SpoCommand {
|
|
|
87
86
|
}
|
|
88
87
|
}
|
|
89
88
|
async getParentInfo(options, logger) {
|
|
90
|
-
const siteId = await
|
|
91
|
-
const webId = await
|
|
92
|
-
const listId = await
|
|
89
|
+
const siteId = await spo.getSiteIdBySPApi(options.webUrl, logger, this.verbose);
|
|
90
|
+
const webId = await spo.getWebId(options.webUrl, logger, this.verbose);
|
|
91
|
+
const listId = options.listId ? options.listId : await spo.getListId(options.webUrl, options.listTitle, options.listUrl, logger, this.verbose);
|
|
93
92
|
return `<Identity Id="5" Name="1a48869e-c092-0000-1f61-81ec89809537|740c6a0b-85e2-48a0-a494-e0f1759d4aa7:site:${siteId}:web:${webId}:list:${listId}" />`;
|
|
94
93
|
}
|
|
95
|
-
async getSiteId(webUrl, logger) {
|
|
96
|
-
if (this.verbose) {
|
|
97
|
-
await logger.logToStderr(`Retrieving site collection id...`);
|
|
98
|
-
}
|
|
99
|
-
const requestOptions = {
|
|
100
|
-
url: `${webUrl}/_api/site?$select=Id`,
|
|
101
|
-
headers: {
|
|
102
|
-
accept: 'application/json;odata=nometadata'
|
|
103
|
-
},
|
|
104
|
-
responseType: 'json'
|
|
105
|
-
};
|
|
106
|
-
const siteResponse = await request.get(requestOptions);
|
|
107
|
-
return siteResponse.Id;
|
|
108
|
-
}
|
|
109
|
-
async getWebId(webUrl, logger) {
|
|
110
|
-
if (this.verbose) {
|
|
111
|
-
await logger.logToStderr(`Retrieving web id...`);
|
|
112
|
-
}
|
|
113
|
-
const requestOptions = {
|
|
114
|
-
url: `${webUrl}/_api/web?$select=Id`,
|
|
115
|
-
headers: {
|
|
116
|
-
accept: 'application/json;odata=nometadata'
|
|
117
|
-
},
|
|
118
|
-
responseType: 'json'
|
|
119
|
-
};
|
|
120
|
-
const webResponse = await request.get(requestOptions);
|
|
121
|
-
return webResponse.Id;
|
|
122
|
-
}
|
|
123
|
-
async getListId(options, logger) {
|
|
124
|
-
if (this.verbose) {
|
|
125
|
-
await logger.logToStderr(`Retrieving list id...`);
|
|
126
|
-
}
|
|
127
|
-
let listId = '';
|
|
128
|
-
if (options.listId) {
|
|
129
|
-
return options.listId;
|
|
130
|
-
}
|
|
131
|
-
else if (options.listTitle) {
|
|
132
|
-
const requestOptions = {
|
|
133
|
-
url: `${options.webUrl}/_api/web/lists/getByTitle('${formatting.encodeQueryParameter(options.listTitle)}')?$select=Id`,
|
|
134
|
-
headers: {
|
|
135
|
-
accept: 'application/json;odata=nometadata'
|
|
136
|
-
},
|
|
137
|
-
responseType: 'json'
|
|
138
|
-
};
|
|
139
|
-
const listResponse = await request.get(requestOptions);
|
|
140
|
-
listId = listResponse.Id;
|
|
141
|
-
}
|
|
142
|
-
else if (options.listUrl) {
|
|
143
|
-
const listServerRelativeUrl = urlUtil.getServerRelativePath(options.webUrl, options.listUrl);
|
|
144
|
-
const requestOptions = {
|
|
145
|
-
url: `${options.webUrl}/_api/web/GetList('${formatting.encodeQueryParameter(listServerRelativeUrl)}')?$select=Id`,
|
|
146
|
-
headers: {
|
|
147
|
-
accept: 'application/json;odata=nometadata'
|
|
148
|
-
},
|
|
149
|
-
responseType: 'json'
|
|
150
|
-
};
|
|
151
|
-
const listResponse = await request.get(requestOptions);
|
|
152
|
-
listId = listResponse.Id;
|
|
153
|
-
}
|
|
154
|
-
return listId;
|
|
155
|
-
}
|
|
156
94
|
}
|
|
157
95
|
_SpoContentTypeAddCommand_instances = new WeakSet(), _SpoContentTypeAddCommand_initTelemetry = function _SpoContentTypeAddCommand_initTelemetry() {
|
|
158
96
|
this.telemetry.push((args) => {
|
|
@@ -8,7 +8,6 @@ import { cli } from '../../../../cli/cli.js';
|
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { formatting } from '../../../../utils/formatting.js';
|
|
10
10
|
import { spo } from '../../../../utils/spo.js';
|
|
11
|
-
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
12
11
|
import { validation } from '../../../../utils/validation.js';
|
|
13
12
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
14
13
|
import commands from '../../commands.js';
|
|
@@ -33,30 +32,12 @@ class SpoContentTypeFieldRemoveCommand extends SpoCommand {
|
|
|
33
32
|
if (this.debug) {
|
|
34
33
|
await logger.logToStderr(`Get SiteId required by ProcessQuery endpoint.`);
|
|
35
34
|
}
|
|
36
|
-
|
|
37
|
-
let requestOptions = {
|
|
38
|
-
url: `${args.options.webUrl}/_api/site?$select=Id`,
|
|
39
|
-
headers: {
|
|
40
|
-
accept: 'application/json;odata=nometadata'
|
|
41
|
-
},
|
|
42
|
-
responseType: 'json'
|
|
43
|
-
};
|
|
44
|
-
const site = await request.get(requestOptions);
|
|
45
|
-
const siteId = site.Id;
|
|
35
|
+
const siteId = await spo.getSiteIdBySPApi(args.options.webUrl, logger, this.verbose);
|
|
46
36
|
if (this.debug) {
|
|
47
37
|
await logger.logToStderr(`SiteId: ${siteId}`);
|
|
48
38
|
await logger.logToStderr(`Get WebId required by ProcessQuery endpoint.`);
|
|
49
39
|
}
|
|
50
|
-
|
|
51
|
-
requestOptions = {
|
|
52
|
-
url: `${args.options.webUrl}/_api/web?$select=Id`,
|
|
53
|
-
headers: {
|
|
54
|
-
accept: 'application/json;odata=nometadata'
|
|
55
|
-
},
|
|
56
|
-
responseType: 'json'
|
|
57
|
-
};
|
|
58
|
-
const web = await request.get(requestOptions);
|
|
59
|
-
const webId = web.Id;
|
|
40
|
+
const webId = await spo.getWebId(args.options.webUrl, logger, this.verbose);
|
|
60
41
|
if (this.debug) {
|
|
61
42
|
await logger.logToStderr(`WebId: ${webId}`);
|
|
62
43
|
}
|
|
@@ -64,11 +45,8 @@ class SpoContentTypeFieldRemoveCommand extends SpoCommand {
|
|
|
64
45
|
if (args.options.listId) {
|
|
65
46
|
listId = args.options.listId;
|
|
66
47
|
}
|
|
67
|
-
|
|
68
|
-
listId = await
|
|
69
|
-
}
|
|
70
|
-
else if (args.options.listUrl) {
|
|
71
|
-
listId = await this.getListIdFromListUrl(args.options.webUrl, args.options.listUrl);
|
|
48
|
+
if (args.options.listTitle || args.options.listUrl) {
|
|
49
|
+
listId = await spo.getListId(args.options.webUrl, args.options.listTitle, args.options.listUrl, logger, this.verbose);
|
|
72
50
|
}
|
|
73
51
|
if (this.debug) {
|
|
74
52
|
await logger.logToStderr(`ListId: ${listId}`);
|
|
@@ -88,7 +66,7 @@ class SpoContentTypeFieldRemoveCommand extends SpoCommand {
|
|
|
88
66
|
else {
|
|
89
67
|
requestBody = `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName=".NET Library" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="77" ObjectPathId="76" /><ObjectPath Id="79" ObjectPathId="78" /><Method Name="DeleteObject" Id="80" ObjectPathId="78" /><Method Name="Update" Id="81" ObjectPathId="24"><Parameters><Parameter Type="Boolean">${updateChildContentTypes}</Parameter></Parameters></Method></Actions><ObjectPaths><Property Id="76" ParentId="24" Name="FieldLinks" /><Method Id="78" ParentId="76" Name="GetById"><Parameters><Parameter Type="Guid">{${formatting.escapeXml(args.options.id)}}</Parameter></Parameters></Method><Identity Id="24" Name="6b3ec69e-00a7-0000-55a3-61f8d779d2b3|740c6a0b-85e2-48a0-a494-e0f1759d4aa7:site:${siteId}:web:${webId}:contenttype:${formatting.escapeXml(args.options.contentTypeId)}" /></ObjectPaths></Request>`;
|
|
90
68
|
}
|
|
91
|
-
requestOptions = {
|
|
69
|
+
const requestOptions = {
|
|
92
70
|
url: `${args.options.webUrl}/_vti_bin/client.svc/ProcessQuery`,
|
|
93
71
|
headers: {
|
|
94
72
|
'X-RequestDigest': requestDigest
|
|
@@ -116,29 +94,6 @@ class SpoContentTypeFieldRemoveCommand extends SpoCommand {
|
|
|
116
94
|
}
|
|
117
95
|
}
|
|
118
96
|
}
|
|
119
|
-
async getListIdFromListTitle(webUrl, listTitle) {
|
|
120
|
-
const requestOptions = {
|
|
121
|
-
url: `${webUrl}/_api/lists/GetByTitle('${formatting.encodeQueryParameter(listTitle)}')?$select=Id`,
|
|
122
|
-
headers: {
|
|
123
|
-
accept: 'application/json;odata=nometadata'
|
|
124
|
-
},
|
|
125
|
-
responseType: 'json'
|
|
126
|
-
};
|
|
127
|
-
const list = await request.get(requestOptions);
|
|
128
|
-
return list.Id;
|
|
129
|
-
}
|
|
130
|
-
async getListIdFromListUrl(webUrl, listUrl) {
|
|
131
|
-
const listServerRelativeUrl = urlUtil.getServerRelativePath(webUrl, listUrl);
|
|
132
|
-
const requestOptions = {
|
|
133
|
-
url: `${webUrl}/_api/web/GetList('${formatting.encodeQueryParameter(listServerRelativeUrl)}')?$select=Id`,
|
|
134
|
-
headers: {
|
|
135
|
-
accept: 'application/json;odata=nometadata'
|
|
136
|
-
},
|
|
137
|
-
responseType: 'json'
|
|
138
|
-
};
|
|
139
|
-
const list = await request.get(requestOptions);
|
|
140
|
-
return list.Id;
|
|
141
|
-
}
|
|
142
97
|
}
|
|
143
98
|
_SpoContentTypeFieldRemoveCommand_instances = new WeakSet(), _SpoContentTypeFieldRemoveCommand_initTelemetry = function _SpoContentTypeFieldRemoveCommand_initTelemetry() {
|
|
144
99
|
this.telemetry.push((args) => {
|
|
@@ -102,32 +102,10 @@ class SpoContentTypeFieldSetCommand extends SpoCommand {
|
|
|
102
102
|
throw 'DONE';
|
|
103
103
|
}
|
|
104
104
|
if (!this.siteId) {
|
|
105
|
-
|
|
106
|
-
await logger.logToStderr(`Retrieving site collection id...`);
|
|
107
|
-
}
|
|
108
|
-
requestOptions = {
|
|
109
|
-
url: `${args.options.webUrl}/_api/site?$select=Id`,
|
|
110
|
-
headers: {
|
|
111
|
-
accept: 'application/json;odata=nometadata'
|
|
112
|
-
},
|
|
113
|
-
responseType: 'json'
|
|
114
|
-
};
|
|
115
|
-
const site = await request.get(requestOptions);
|
|
116
|
-
this.siteId = site.Id;
|
|
105
|
+
this.siteId = await spo.getSiteIdBySPApi(args.options.webUrl, logger, this.verbose);
|
|
117
106
|
}
|
|
118
107
|
if (!this.webId) {
|
|
119
|
-
|
|
120
|
-
await logger.logToStderr(`Retrieving site id...`);
|
|
121
|
-
}
|
|
122
|
-
requestOptions = {
|
|
123
|
-
url: `${args.options.webUrl}/_api/web?$select=Id`,
|
|
124
|
-
headers: {
|
|
125
|
-
accept: 'application/json;odata=nometadata'
|
|
126
|
-
},
|
|
127
|
-
responseType: 'json'
|
|
128
|
-
};
|
|
129
|
-
const web = await request.get(requestOptions);
|
|
130
|
-
this.webId = web.Id;
|
|
108
|
+
this.webId = await spo.getWebId(args.options.webUrl, logger, this.verbose);
|
|
131
109
|
}
|
|
132
110
|
if (this.verbose) {
|
|
133
111
|
await logger.logToStderr(`Updating field link...`);
|
|
@@ -172,30 +150,8 @@ class SpoContentTypeFieldSetCommand extends SpoCommand {
|
|
|
172
150
|
}
|
|
173
151
|
}
|
|
174
152
|
await this.updateField(xField, requiresUpdate, logger, args);
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
}
|
|
178
|
-
const requestOptionsSiteId = {
|
|
179
|
-
url: `${args.options.webUrl}/_api/site?$select=Id`,
|
|
180
|
-
headers: {
|
|
181
|
-
accept: 'application/json;odata=nometadata'
|
|
182
|
-
},
|
|
183
|
-
responseType: 'json'
|
|
184
|
-
};
|
|
185
|
-
const resSiteId = await request.get(requestOptionsSiteId);
|
|
186
|
-
this.siteId = resSiteId.Id;
|
|
187
|
-
if (this.verbose) {
|
|
188
|
-
await logger.logToStderr(`Retrieving site id...`);
|
|
189
|
-
}
|
|
190
|
-
const requestOptionsWebId = {
|
|
191
|
-
url: `${args.options.webUrl}/_api/web?$select=Id`,
|
|
192
|
-
headers: {
|
|
193
|
-
accept: 'application/json;odata=nometadata'
|
|
194
|
-
},
|
|
195
|
-
responseType: 'json'
|
|
196
|
-
};
|
|
197
|
-
const resWebId = await request.get(requestOptionsWebId);
|
|
198
|
-
this.webId = resWebId.Id;
|
|
153
|
+
this.siteId = await spo.getSiteIdBySPApi(args.options.webUrl, logger, this.verbose);
|
|
154
|
+
this.webId = await spo.getWebId(args.options.webUrl, logger, this.verbose);
|
|
199
155
|
await this.ensureRequestDigest(args.options.webUrl, logger);
|
|
200
156
|
const requestOptions = {
|
|
201
157
|
url: `${args.options.webUrl}/_vti_bin/client.svc/ProcessQuery`,
|
|
@@ -7,6 +7,7 @@ var _SpoContentTypeSetCommand_instances, _SpoContentTypeSetCommand_initTelemetry
|
|
|
7
7
|
import config from '../../../../config.js';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { formatting } from '../../../../utils/formatting.js';
|
|
10
|
+
import { spo } from '../../../../utils/spo.js';
|
|
10
11
|
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
11
12
|
import { validation } from '../../../../utils/validation.js';
|
|
12
13
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
@@ -33,8 +34,8 @@ class SpoContentTypeSetCommand extends SpoCommand {
|
|
|
33
34
|
async commandAction(logger, args) {
|
|
34
35
|
try {
|
|
35
36
|
const contentTypeId = await this.getContentTypeId(logger, args.options);
|
|
36
|
-
const siteId = await
|
|
37
|
-
const webId = await
|
|
37
|
+
const siteId = await spo.getSiteIdBySPApi(args.options.webUrl, logger, this.verbose);
|
|
38
|
+
const webId = await spo.getWebId(args.options.webUrl, logger, this.verbose);
|
|
38
39
|
await this.updateContentType(logger, siteId, webId, contentTypeId, args.options);
|
|
39
40
|
}
|
|
40
41
|
catch (err) {
|
|
@@ -80,7 +81,7 @@ class SpoContentTypeSetCommand extends SpoCommand {
|
|
|
80
81
|
headers: {
|
|
81
82
|
'Content-Type': 'text/xml'
|
|
82
83
|
},
|
|
83
|
-
data: await this.getCsomCallXmlBody(options, siteId, webId, contentTypeId)
|
|
84
|
+
data: await this.getCsomCallXmlBody(options, siteId, webId, contentTypeId, logger)
|
|
84
85
|
};
|
|
85
86
|
const res = await request.post(requestOptions);
|
|
86
87
|
const json = JSON.parse(res);
|
|
@@ -89,9 +90,9 @@ class SpoContentTypeSetCommand extends SpoCommand {
|
|
|
89
90
|
throw response.ErrorInfo.ErrorMessage;
|
|
90
91
|
}
|
|
91
92
|
}
|
|
92
|
-
async getCsomCallXmlBody(options, siteId, webId, contentTypeId) {
|
|
93
|
+
async getCsomCallXmlBody(options, siteId, webId, contentTypeId, logger) {
|
|
93
94
|
const payload = this.getRequestPayload(options);
|
|
94
|
-
const list = await this.getListId(options);
|
|
95
|
+
const list = await this.getListId(options, logger);
|
|
95
96
|
return `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions>${payload}</Actions><ObjectPaths><Identity Id="9" Name="fc4179a0-e0d7-5000-c38b-bc3506fbab6f|740c6a0b-85e2-48a0-a494-e0f1759d4aa7:site:${siteId}:web:${webId}${list}:contenttype:${formatting.escapeXml(contentTypeId)}" /></ObjectPaths></Request>`;
|
|
96
97
|
}
|
|
97
98
|
getRequestPayload(options) {
|
|
@@ -122,35 +123,7 @@ class SpoContentTypeSetCommand extends SpoCommand {
|
|
|
122
123
|
}
|
|
123
124
|
return payload.join('');
|
|
124
125
|
}
|
|
125
|
-
async
|
|
126
|
-
if (this.verbose) {
|
|
127
|
-
await logger.logToStderr(`Retrieving site collection id...`);
|
|
128
|
-
}
|
|
129
|
-
const requestOptions = {
|
|
130
|
-
url: `${webUrl}/_api/site?$select=Id`,
|
|
131
|
-
headers: {
|
|
132
|
-
accept: 'application/json;odata=nometadata'
|
|
133
|
-
},
|
|
134
|
-
responseType: 'json'
|
|
135
|
-
};
|
|
136
|
-
const site = await request.get(requestOptions);
|
|
137
|
-
return site.Id;
|
|
138
|
-
}
|
|
139
|
-
async getWebId(logger, webUrl) {
|
|
140
|
-
if (this.verbose) {
|
|
141
|
-
await logger.logToStderr(`Retrieving web id...`);
|
|
142
|
-
}
|
|
143
|
-
const requestOptions = {
|
|
144
|
-
url: `${webUrl}/_api/web?$select=Id`,
|
|
145
|
-
headers: {
|
|
146
|
-
accept: 'application/json;odata=nometadata'
|
|
147
|
-
},
|
|
148
|
-
responseType: 'json'
|
|
149
|
-
};
|
|
150
|
-
const web = await request.get(requestOptions);
|
|
151
|
-
return web.Id;
|
|
152
|
-
}
|
|
153
|
-
async getListId(options) {
|
|
126
|
+
async getListId(options, logger) {
|
|
154
127
|
if (!options.listId && !options.listTitle && !options.listUrl) {
|
|
155
128
|
return '';
|
|
156
129
|
}
|
|
@@ -158,30 +131,7 @@ class SpoContentTypeSetCommand extends SpoCommand {
|
|
|
158
131
|
if (options.listId) {
|
|
159
132
|
return baseString += options.listId;
|
|
160
133
|
}
|
|
161
|
-
|
|
162
|
-
const requestOptions = {
|
|
163
|
-
url: `${options.webUrl}/_api/web/lists/getByTitle('${formatting.encodeQueryParameter(options.listTitle)}')?$select=Id`,
|
|
164
|
-
headers: {
|
|
165
|
-
accept: 'application/json;odata=nometadata'
|
|
166
|
-
},
|
|
167
|
-
responseType: 'json'
|
|
168
|
-
};
|
|
169
|
-
const listResponse = await request.get(requestOptions);
|
|
170
|
-
baseString += listResponse.Id;
|
|
171
|
-
}
|
|
172
|
-
else if (options.listUrl) {
|
|
173
|
-
const listServerRelativeUrl = urlUtil.getServerRelativePath(options.webUrl, options.listUrl);
|
|
174
|
-
const requestOptions = {
|
|
175
|
-
url: `${options.webUrl}/_api/web/GetList('${formatting.encodeQueryParameter(listServerRelativeUrl)}')?$select=Id`,
|
|
176
|
-
headers: {
|
|
177
|
-
accept: 'application/json;odata=nometadata'
|
|
178
|
-
},
|
|
179
|
-
responseType: 'json'
|
|
180
|
-
};
|
|
181
|
-
const listResponse = await request.get(requestOptions);
|
|
182
|
-
baseString += listResponse.Id;
|
|
183
|
-
}
|
|
184
|
-
return baseString;
|
|
134
|
+
return baseString += await spo.getListId(options.webUrl, options.listTitle, options.listUrl, logger, this.verbose);
|
|
185
135
|
}
|
|
186
136
|
}
|
|
187
137
|
_SpoContentTypeSetCommand_instances = new WeakSet(), _SpoContentTypeSetCommand_initTelemetry = function _SpoContentTypeSetCommand_initTelemetry() {
|
|
@@ -33,7 +33,7 @@ class SpoContentTypeSyncCommand extends SpoCommand {
|
|
|
33
33
|
const url = new URL(webUrl);
|
|
34
34
|
const baseUrl = 'https://graph.microsoft.com/v1.0/sites/';
|
|
35
35
|
try {
|
|
36
|
-
const siteUrl = url.pathname === '/' ? url.host : await spo.
|
|
36
|
+
const siteUrl = url.pathname === '/' ? url.host : await spo.getSiteIdByMSGraph(webUrl, logger, this.verbose);
|
|
37
37
|
const listPath = listId || listTitle || listUrl ? `/lists/${listId || listTitle || await this.getListIdByUrl(webUrl, listUrl, logger)}` : '';
|
|
38
38
|
const contentTypeId = await this.getContentTypeId(baseUrl, url, args.options, logger);
|
|
39
39
|
if (this.verbose) {
|
|
@@ -64,7 +64,7 @@ class SpoContentTypeSyncCommand extends SpoCommand {
|
|
|
64
64
|
if (options.id) {
|
|
65
65
|
return options.id;
|
|
66
66
|
}
|
|
67
|
-
const siteId = await spo.
|
|
67
|
+
const siteId = await spo.getSiteIdByMSGraph(`${url.origin}/sites/contenttypehub`, logger, this.verbose);
|
|
68
68
|
if (this.verbose) {
|
|
69
69
|
await logger.logToStderr(`Retrieving content type Id by name...`);
|
|
70
70
|
}
|
|
@@ -35,6 +35,9 @@ class SpoFileMoveCommand extends SpoCommand {
|
|
|
35
35
|
const sourceServerRelativePath = await this.getSourcePath(logger, args.options);
|
|
36
36
|
const sourcePath = this.getAbsoluteUrl(args.options.webUrl, sourceServerRelativePath);
|
|
37
37
|
const destinationPath = this.getAbsoluteUrl(args.options.webUrl, args.options.targetUrl);
|
|
38
|
+
if (args.options.includeItemPermissions) {
|
|
39
|
+
await this.warn(logger, `Parameter 'includeItemPermissions' is deprecated. Please use 'withItemPermissions' instead`);
|
|
40
|
+
}
|
|
38
41
|
if (this.verbose) {
|
|
39
42
|
await logger.logToStderr(`Moving file '${sourceServerRelativePath}' to '${args.options.targetUrl}'...`);
|
|
40
43
|
}
|
|
@@ -46,7 +49,7 @@ class SpoFileMoveCommand extends SpoCommand {
|
|
|
46
49
|
const copyJobResponse = await spo.createFileCopyJob(args.options.webUrl, sourcePath, destinationPath, {
|
|
47
50
|
nameConflictBehavior: this.getNameConflictBehaviorValue(args.options.nameConflictBehavior),
|
|
48
51
|
bypassSharedLock: !!args.options.bypassSharedLock,
|
|
49
|
-
includeItemPermissions: !!args.options.includeItemPermissions,
|
|
52
|
+
includeItemPermissions: !!args.options.includeItemPermissions || !!args.options.withItemPermissions,
|
|
50
53
|
newName: newName,
|
|
51
54
|
operation: 'move'
|
|
52
55
|
});
|
|
@@ -119,6 +122,7 @@ _SpoFileMoveCommand_instances = new WeakSet(), _SpoFileMoveCommand_initTelemetry
|
|
|
119
122
|
newName: typeof args.options.newName !== 'undefined',
|
|
120
123
|
nameConflictBehavior: typeof args.options.nameConflictBehavior !== 'undefined',
|
|
121
124
|
includeItemPermissions: !!args.options.includeItemPermissions,
|
|
125
|
+
withItemPermissions: !!args.options.withItemPermissions,
|
|
122
126
|
bypassSharedLock: !!args.options.bypassSharedLock,
|
|
123
127
|
skipWait: !!args.options.skipWait
|
|
124
128
|
});
|
|
@@ -139,6 +143,8 @@ _SpoFileMoveCommand_instances = new WeakSet(), _SpoFileMoveCommand_initTelemetry
|
|
|
139
143
|
autocomplete: this.nameConflictBehaviorOptions
|
|
140
144
|
}, {
|
|
141
145
|
option: '--includeItemPermissions'
|
|
146
|
+
}, {
|
|
147
|
+
option: '--withItemPermissions'
|
|
142
148
|
}, {
|
|
143
149
|
option: '--bypassSharedLock'
|
|
144
150
|
}, {
|
|
@@ -162,7 +168,7 @@ _SpoFileMoveCommand_instances = new WeakSet(), _SpoFileMoveCommand_initTelemetry
|
|
|
162
168
|
this.optionSets.push({ options: ['sourceUrl', 'sourceId'] });
|
|
163
169
|
}, _SpoFileMoveCommand_initTypes = function _SpoFileMoveCommand_initTypes() {
|
|
164
170
|
this.types.string.push('webUrl', 'sourceUrl', 'sourceId', 'targetUrl', 'newName', 'nameConflictBehavior');
|
|
165
|
-
this.types.boolean.push('includeItemPermissions', 'bypassSharedLock', 'skipWait');
|
|
171
|
+
this.types.boolean.push('includeItemPermissions', 'withItemPermissions', 'bypassSharedLock', 'skipWait');
|
|
166
172
|
};
|
|
167
173
|
export default new SpoFileMoveCommand();
|
|
168
174
|
//# sourceMappingURL=file-move.js.map
|
|
@@ -38,7 +38,7 @@ class SpoFolderSharingLinkAddCommand extends SpoCommand {
|
|
|
38
38
|
const relFolderUrl = await spo.getFolderServerRelativeUrl(args.options.webUrl, args.options.folderUrl, args.options.folderId, logger, args.options.verbose);
|
|
39
39
|
const absoluteFolderUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, relFolderUrl);
|
|
40
40
|
const folderUrl = new URL(absoluteFolderUrl);
|
|
41
|
-
const siteId = await spo.
|
|
41
|
+
const siteId = await spo.getSiteIdByMSGraph(args.options.webUrl);
|
|
42
42
|
const driveDetails = await drive.getDriveByUrl(siteId, folderUrl, logger, args.options.verbose);
|
|
43
43
|
const itemId = await drive.getDriveItemId(driveDetails, folderUrl, logger, args.options.verbose);
|
|
44
44
|
const requestOptions = {
|
|
@@ -39,7 +39,7 @@ class SpoFolderSharingLinkClearCommand extends SpoCommand {
|
|
|
39
39
|
const relFolderUrl = await spo.getFolderServerRelativeUrl(args.options.webUrl, args.options.folderUrl, args.options.folderId, logger, args.options.verbose);
|
|
40
40
|
const absoluteFolderUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, relFolderUrl);
|
|
41
41
|
const folderUrl = new URL(absoluteFolderUrl);
|
|
42
|
-
const siteId = await spo.
|
|
42
|
+
const siteId = await spo.getSiteIdByMSGraph(args.options.webUrl);
|
|
43
43
|
const driveDetails = await drive.getDriveByUrl(siteId, folderUrl, logger, args.options.verbose);
|
|
44
44
|
const itemId = await drive.getDriveItemId(driveDetails, folderUrl, logger, args.options.verbose);
|
|
45
45
|
let requestUrl = `https://graph.microsoft.com/v1.0/drives/${driveDetails.id}/items/${itemId}/permissions?$filter=Link ne null`;
|
|
@@ -35,7 +35,7 @@ class SpoFolderSharingLinkGetCommand extends SpoCommand {
|
|
|
35
35
|
const relFolderUrl = await spo.getFolderServerRelativeUrl(args.options.webUrl, args.options.folderUrl, args.options.folderId);
|
|
36
36
|
const absoluteFolderUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, relFolderUrl);
|
|
37
37
|
const folderUrl = new URL(absoluteFolderUrl);
|
|
38
|
-
const siteId = await spo.
|
|
38
|
+
const siteId = await spo.getSiteIdByMSGraph(args.options.webUrl);
|
|
39
39
|
const drive = await driveItem.getDriveByUrl(siteId, folderUrl);
|
|
40
40
|
const itemId = await driveItem.getDriveItemId(drive, folderUrl);
|
|
41
41
|
const requestUrl = `https://graph.microsoft.com/v1.0/drives/${drive.id}/items/${itemId}/permissions/${args.options.id}`;
|
|
@@ -40,7 +40,7 @@ class SpoFolderSharingLinkListCommand extends SpoCommand {
|
|
|
40
40
|
const relFolderUrl = await spo.getFolderServerRelativeUrl(args.options.webUrl, args.options.folderUrl, args.options.folderId, logger, args.options.verbose);
|
|
41
41
|
const absoluteFolderUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, relFolderUrl);
|
|
42
42
|
const folderUrl = new URL(absoluteFolderUrl);
|
|
43
|
-
const siteId = await spo.
|
|
43
|
+
const siteId = await spo.getSiteIdByMSGraph(args.options.webUrl);
|
|
44
44
|
const driveDetails = await drive.getDriveByUrl(siteId, folderUrl, logger, args.options.verbose);
|
|
45
45
|
const itemId = await drive.getDriveItemId(driveDetails, folderUrl, logger, args.options.verbose);
|
|
46
46
|
let requestUrl = `https://graph.microsoft.com/v1.0/drives/${driveDetails.id}/items/${itemId}/permissions?$filter=Link ne null`;
|
|
@@ -37,7 +37,7 @@ class SpoFolderSharingLinkRemoveCommand extends SpoCommand {
|
|
|
37
37
|
const relFolderUrl = await spo.getFolderServerRelativeUrl(args.options.webUrl, args.options.folderUrl, args.options.folderId, logger, args.options.verbose);
|
|
38
38
|
const absoluteFolderUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, relFolderUrl);
|
|
39
39
|
const folderUrl = new URL(absoluteFolderUrl);
|
|
40
|
-
const siteId = await spo.
|
|
40
|
+
const siteId = await spo.getSiteIdByMSGraph(args.options.webUrl);
|
|
41
41
|
const driveDetails = await drive.getDriveByUrl(siteId, folderUrl, logger, args.options.verbose);
|
|
42
42
|
const itemId = await drive.getDriveItemId(driveDetails, folderUrl, logger, args.options.verbose);
|
|
43
43
|
const requestOptions = {
|
|
@@ -35,7 +35,7 @@ class SpoFolderSharingLinkSetCommand extends SpoCommand {
|
|
|
35
35
|
const relFolderUrl = await spo.getFolderServerRelativeUrl(args.options.webUrl, args.options.folderUrl, args.options.folderId, logger, args.options.verbose);
|
|
36
36
|
const absoluteFolderUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, relFolderUrl);
|
|
37
37
|
const folderUrl = new URL(absoluteFolderUrl);
|
|
38
|
-
const siteId = await spo.
|
|
38
|
+
const siteId = await spo.getSiteIdByMSGraph(args.options.webUrl);
|
|
39
39
|
const driveDetails = await drive.getDriveByUrl(siteId, folderUrl, logger, args.options.verbose);
|
|
40
40
|
const itemId = await drive.getDriveItemId(driveDetails, folderUrl, logger, args.options.verbose);
|
|
41
41
|
const requestOptions = {
|
|
@@ -29,12 +29,20 @@ class SpoHubSiteGetCommand extends SpoCommand {
|
|
|
29
29
|
}
|
|
30
30
|
async commandAction(logger, args) {
|
|
31
31
|
try {
|
|
32
|
+
if (args.options.includeAssociatedSites) {
|
|
33
|
+
await this.warn(logger, `Parameter 'includeAssociatedSites' is deprecated. Please use 'withAssociatedSites' instead`);
|
|
34
|
+
}
|
|
32
35
|
const spoUrl = await spo.getSpoUrl(logger, this.debug);
|
|
33
36
|
const hubSite = args.options.id ? await this.getHubSiteById(spoUrl, args.options) : await this.getHubSite(spoUrl, args.options);
|
|
34
|
-
if (args.options.includeAssociatedSites && (args.options.output && args.options.output !== 'json')) {
|
|
35
|
-
|
|
37
|
+
if ((args.options.includeAssociatedSites || args.options.withAssociatedSites) && (args.options.output && args.options.output !== 'json')) {
|
|
38
|
+
if (args.options.includeAssociatedSites) {
|
|
39
|
+
throw 'includeAssociatedSites option is only allowed with json output mode';
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
throw 'withAssociatedSites option is only allowed with json output mode';
|
|
43
|
+
}
|
|
36
44
|
}
|
|
37
|
-
if (args.options.includeAssociatedSites === true && args.options.output && !cli.shouldTrimOutput(args.options.output)) {
|
|
45
|
+
if ((args.options.includeAssociatedSites === true || args.options.withAssociatedSites === true) && args.options.output && !cli.shouldTrimOutput(args.options.output)) {
|
|
38
46
|
const spoAdminUrl = await spo.getSpoAdminUrl(logger, this.debug);
|
|
39
47
|
const associatedSitesCommandOutput = await this.getAssociatedSites(spoAdminUrl, hubSite.SiteId, logger, args);
|
|
40
48
|
const associatedSites = JSON.parse(associatedSitesCommandOutput.stdout);
|
|
@@ -100,11 +108,12 @@ _SpoHubSiteGetCommand_instances = new WeakSet(), _SpoHubSiteGetCommand_initTelem
|
|
|
100
108
|
id: typeof args.options.id !== 'undefined',
|
|
101
109
|
title: typeof args.options.title !== 'undefined',
|
|
102
110
|
url: typeof args.options.url !== 'undefined',
|
|
103
|
-
includeAssociatedSites: args.options.includeAssociatedSites === true
|
|
111
|
+
includeAssociatedSites: args.options.includeAssociatedSites === true,
|
|
112
|
+
withAssociatedSites: args.options.withAssociatedSites === true
|
|
104
113
|
});
|
|
105
114
|
});
|
|
106
115
|
}, _SpoHubSiteGetCommand_initOptions = function _SpoHubSiteGetCommand_initOptions() {
|
|
107
|
-
this.options.unshift({ option: '-i, --id [id]' }, { option: '-t, --title [title]' }, { option: '-u, --url [url]' }, { option: '--includeAssociatedSites' });
|
|
116
|
+
this.options.unshift({ option: '-i, --id [id]' }, { option: '-t, --title [title]' }, { option: '-u, --url [url]' }, { option: '--includeAssociatedSites' }, { option: '--withAssociatedSites' });
|
|
108
117
|
}, _SpoHubSiteGetCommand_initValidators = function _SpoHubSiteGetCommand_initValidators() {
|
|
109
118
|
this.validators.push(async (args) => {
|
|
110
119
|
if (args.options.id && !validation.isValidGuid(args.options.id)) {
|
|
@@ -29,10 +29,14 @@ class SpoHubSiteListCommand extends SpoCommand {
|
|
|
29
29
|
}
|
|
30
30
|
async commandAction(logger, args) {
|
|
31
31
|
try {
|
|
32
|
+
if (args.options.includeAssociatedSites) {
|
|
33
|
+
await this.warn(logger, `Parameter 'includeAssociatedSites' is deprecated. Please use 'withAssociatedSites' instead`);
|
|
34
|
+
}
|
|
32
35
|
const spoAdminUrl = await spo.getSpoAdminUrl(logger, this.debug);
|
|
33
36
|
const hubSitesResult = await odata.getAllItems(`${spoAdminUrl}/_api/hubsites`);
|
|
34
37
|
const hubSites = hubSitesResult;
|
|
35
|
-
|
|
38
|
+
const shouldIncludeAssociatedSites = args.options.includeAssociatedSites || args.options.withAssociatedSites;
|
|
39
|
+
if (!(shouldIncludeAssociatedSites !== true || args.options.output && args.options.output !== 'json')) {
|
|
36
40
|
if (this.debug) {
|
|
37
41
|
await logger.logToStderr('Retrieving associated sites...');
|
|
38
42
|
await logger.logToStderr('');
|
|
@@ -104,12 +108,15 @@ class SpoHubSiteListCommand extends SpoCommand {
|
|
|
104
108
|
_SpoHubSiteListCommand_instances = new WeakSet(), _SpoHubSiteListCommand_initTelemetry = function _SpoHubSiteListCommand_initTelemetry() {
|
|
105
109
|
this.telemetry.push((args) => {
|
|
106
110
|
Object.assign(this.telemetryProperties, {
|
|
107
|
-
includeAssociatedSites: args.options.includeAssociatedSites === true
|
|
111
|
+
includeAssociatedSites: args.options.includeAssociatedSites === true,
|
|
112
|
+
withAssociatedSites: args.options.withAssociatedSites === true
|
|
108
113
|
});
|
|
109
114
|
});
|
|
110
115
|
}, _SpoHubSiteListCommand_initOptions = function _SpoHubSiteListCommand_initOptions() {
|
|
111
116
|
this.options.unshift({
|
|
112
117
|
option: '-i, --includeAssociatedSites'
|
|
118
|
+
}, {
|
|
119
|
+
option: '--withAssociatedSites'
|
|
113
120
|
});
|
|
114
121
|
};
|
|
115
122
|
export default new SpoHubSiteListCommand();
|