@pnp/cli-microsoft365 7.0.0-beta.99e75a7 → 7.0.0-beta.aa2d71e
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.cjs +0 -2
- package/dist/GlobalOptions.js +1 -7
- package/dist/cli/Cli.js +19 -2
- package/dist/m365/aad/commands/app/app-add.js +8 -8
- package/dist/m365/aad/commands/app/app-role-add.js +5 -5
- package/dist/m365/aad/commands/app/app-set.js +5 -5
- package/dist/m365/aad/commands/policy/policy-list.js +5 -5
- package/dist/m365/cli/commands/cli-issue.js +5 -5
- package/dist/m365/cli/commands/config/config-get.js +5 -5
- package/dist/m365/cli/commands/config/config-reset.js +5 -5
- package/dist/m365/cli/commands/config/config-set.js +5 -5
- package/dist/m365/commands/login.js +5 -5
- package/dist/m365/commands/request.js +1 -1
- package/dist/m365/flow/commands/owner/owner-ensure.js +5 -5
- package/dist/m365/pa/commands/app/app-owner-set.js +5 -5
- package/dist/m365/pa/commands/app/app-permission-ensure.js +5 -5
- package/dist/m365/pa/commands.js +1 -4
- package/dist/m365/planner/commands/task/task-add.js +17 -11
- package/dist/m365/planner/commands/task/task-get.js +35 -25
- package/dist/m365/planner/commands/task/task-list.js +26 -19
- package/dist/m365/planner/commands/task/task-remove.js +39 -34
- package/dist/m365/planner/commands/task/task-set.js +35 -23
- package/dist/m365/purview/commands/retentionlabel/retentionlabel-add.js +14 -14
- package/dist/m365/spfx/commands/package/package-generate.js +15 -15
- package/dist/m365/spfx/commands/project/DeployWorkflow.js +55 -0
- package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.18.0-beta.1.js → doctor-1.18.0-beta.5.js} +1 -1
- package/dist/m365/spfx/commands/project/project-doctor.js +9 -9
- package/dist/m365/spfx/commands/project/project-github-workflow-add.js +157 -0
- package/dist/m365/spfx/commands/project/project-github-workflow-model.js +2 -0
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.15.2.js +1 -1
- package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.18.0-beta.1.js → upgrade-1.18.0-beta.5.js} +26 -26
- package/dist/m365/spfx/commands/project/project-upgrade.js +14 -14
- package/dist/m365/spfx/commands/spfx-doctor.js +3 -3
- package/dist/m365/spfx/commands.js +1 -0
- package/dist/m365/spo/commands/app/SpoAppBaseCommand.js +27 -26
- package/dist/m365/spo/commands/app/app-add.js +9 -9
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-add.js +5 -5
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-list.js +5 -5
- package/dist/m365/spo/commands/commandset/commandset-add.js +11 -11
- package/dist/m365/spo/commands/commandset/commandset-get.js +8 -8
- package/dist/m365/spo/commands/commandset/commandset-list.js +5 -5
- package/dist/m365/spo/commands/commandset/commandset-remove.js +5 -5
- package/dist/m365/spo/commands/commandset/commandset-set.js +11 -11
- package/dist/m365/spo/commands/file/file-move.js +73 -97
- package/dist/m365/spo/commands/file/file-sharinglink-add.js +8 -8
- package/dist/m365/spo/commands/file/file-sharinglink-list.js +5 -5
- package/dist/m365/spo/commands/folder/folder-copy.js +89 -45
- package/dist/m365/spo/commands/folder/folder-move.js +89 -47
- package/dist/m365/spo/commands/list/list-add.js +4 -4
- package/dist/m365/spo/commands/list/list-set.js +4 -4
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +34 -5
- package/dist/m365/spo/commands/page/clientsidepages.js +1 -81
- package/dist/m365/spo/commands/propertybag/propertybag-base.js +63 -59
- package/dist/m365/spo/commands/propertybag/propertybag-remove.js +28 -31
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +30 -32
- package/dist/m365/spo/commands/site/FlowsPolicy.js +7 -0
- package/dist/m365/spo/commands/site/site-add.js +114 -161
- package/dist/m365/spo/commands/site/site-apppermission-add.js +15 -18
- package/dist/m365/spo/commands/site/site-apppermission-remove.js +34 -38
- package/dist/m365/spo/commands/site/site-apppermission-set.js +11 -14
- package/dist/m365/spo/commands/site/site-ensure.js +14 -67
- package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +22 -22
- package/dist/m365/spo/commands/site/site-list.js +27 -43
- package/dist/m365/spo/commands/site/site-recyclebinitem-list.js +6 -6
- package/dist/m365/spo/commands/site/site-remove.js +166 -210
- package/dist/m365/spo/commands/site/site-set.js +177 -198
- package/dist/m365/spo/commands/tenant/tenant-commandset-add.js +8 -8
- package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +8 -8
- package/dist/m365/spo/commands/tenant/tenant-settings-set.js +4 -4
- package/dist/m365/spo/commands/theme/theme-remove.js +24 -24
- package/dist/m365/spo/commands/theme/theme-set.js +0 -1
- package/dist/m365/spo/commands/user/user-remove.js +27 -27
- package/dist/m365/spo/commands/web/web-reindex.js +35 -42
- package/dist/m365/spo/commands/web/web-remove.js +21 -21
- package/dist/m365/spo/commands/web/web-roleassignment-add.js +16 -31
- package/dist/m365/spo/commands/web/web-roleassignment-remove.js +33 -44
- package/dist/m365/spo/commands/web/web-roleinheritance-break.js +18 -18
- package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +19 -19
- package/dist/m365/spo/commands/web/web-set.js +5 -5
- package/dist/m365/teams/commands/app/app-list.js +5 -5
- package/dist/m365/teams/commands/chat/chat-member-add.js +5 -5
- package/dist/m365/teams/commands/funsettings/funsettings-set.js +4 -4
- package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +4 -4
- package/dist/m365/teams/commands/membersettings/membersettings-set.js +4 -4
- package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +5 -5
- package/dist/m365/teams/commands/team/team-set.js +3 -3
- package/dist/m365/todo/commands/task/task-add.js +6 -6
- package/dist/m365/yammer/commands/message/message-like-set.js +27 -28
- package/dist/m365/yammer/commands/message/message-list.js +67 -86
- package/dist/m365/yammer/commands/message/message-remove.js +18 -18
- package/dist/m365/yammer/commands/yammer-search.js +58 -74
- package/dist/utils/aadGroup.js +18 -0
- package/dist/utils/fsUtil.js +5 -0
- package/dist/utils/spo.js +594 -53
- package/dist/utils/validation.js +0 -3
- package/docs/docs/cmd/planner/task/task-add.mdx +22 -7
- package/docs/docs/cmd/planner/task/task-get.mdx +13 -4
- package/docs/docs/cmd/planner/task/task-list.mdx +22 -7
- package/docs/docs/cmd/planner/task/task-remove.mdx +25 -8
- package/docs/docs/cmd/planner/task/task-set.mdx +22 -7
- package/docs/docs/cmd/spfx/project/project-github-workflow-add.mdx +94 -0
- package/docs/docs/cmd/spo/file/file-move.mdx +36 -18
- package/docs/docs/cmd/spo/folder/folder-copy.mdx +39 -12
- package/docs/docs/cmd/spo/folder/folder-move.mdx +40 -13
- package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-add.mdx +14 -1
- package/docs/docs/cmd/spo/site/site-ensure.mdx +1 -1
- package/docs/docs/cmd/spo/site/site-list.mdx +3 -78
- package/npm-shrinkwrap.json +240 -1417
- package/package.json +6 -7
- package/dist/m365/pa/cds-project-mutator.js +0 -91
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/generated/ManifestTypes.d.ts +0 -11
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_ControlManifest.Input.xml +0 -31
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_index.ts +0 -51
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/generated/ManifestTypes.d.ts +0 -12
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_ControlManifest.Input.xml +0 -37
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_index.ts +0 -48
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/index.ts +0 -0
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_ControlManifest.Input.xml +0 -31
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_index.tsx +0 -58
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_ControlManifest.Input.xml +0 -37
- package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_index.tsx +0 -55
- package/dist/m365/pa/commands/pcf/pcf-init/assets/package.json +0 -19
- package/dist/m365/pa/commands/pcf/pcf-init/assets/pcfconfig.json +0 -3
- package/dist/m365/pa/commands/pcf/pcf-init/assets/template_.gitignore +0 -14
- package/dist/m365/pa/commands/pcf/pcf-init/assets/template_pcfprojecttype.pcfproj +0 -45
- package/dist/m365/pa/commands/pcf/pcf-init/pcf-init-variables.js +0 -2
- package/dist/m365/pa/commands/pcf/pcf-init.js +0 -120
- package/dist/m365/pa/commands/solution/solution-init/assets/Other/Customizations.xml +0 -18
- package/dist/m365/pa/commands/solution/solution-init/assets/Other/Relationships.xml +0 -2
- package/dist/m365/pa/commands/solution/solution-init/assets/Other/template_Solution.xml +0 -94
- package/dist/m365/pa/commands/solution/solution-init/assets/template_.gitignore +0 -2
- package/dist/m365/pa/commands/solution/solution-init/assets/template_solutionprojecttype.cdsproj +0 -44
- package/dist/m365/pa/commands/solution/solution-init/solution-init-variables.js +0 -2
- package/dist/m365/pa/commands/solution/solution-init.js +0 -126
- package/dist/m365/pa/commands/solution/solution-reference-add.js +0 -88
- package/dist/m365/pa/template-instantiator.js +0 -57
- package/docs/docs/cmd/pa/pcf/pcf-init.mdx +0 -56
- package/docs/docs/cmd/pa/solution/solution-init.mdx +0 -46
- package/docs/docs/cmd/pa/solution/solution-reference-add.mdx +0 -42
|
@@ -5,14 +5,11 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
5
5
|
};
|
|
6
6
|
var _SpoSiteEnsureCommand_instances, _SpoSiteEnsureCommand_initOptions, _SpoSiteEnsureCommand_initTypes, _SpoSiteEnsureCommand_initValidators;
|
|
7
7
|
import chalk from 'chalk';
|
|
8
|
-
import {
|
|
8
|
+
import { spo } from '../../../../utils/spo.js';
|
|
9
9
|
import { validation } from '../../../../utils/validation.js';
|
|
10
10
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
11
11
|
import commands from '../../commands.js';
|
|
12
|
-
import spoWebGetCommand from '../web/web-get.js';
|
|
13
12
|
import { SharingCapabilities } from './SharingCapabilities.js';
|
|
14
|
-
import spoSiteAddCommand from './site-add.js';
|
|
15
|
-
import spoSiteSetCommand from './site-set.js';
|
|
16
13
|
class SpoSiteEnsureCommand extends SpoCommand {
|
|
17
14
|
get name() {
|
|
18
15
|
return commands.SITE_ENSURE;
|
|
@@ -30,10 +27,7 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
30
27
|
async commandAction(logger, args) {
|
|
31
28
|
try {
|
|
32
29
|
const res = await this.ensureSite(logger, args);
|
|
33
|
-
|
|
34
|
-
await logger.logToStderr(res.stderr);
|
|
35
|
-
}
|
|
36
|
-
await logger.log(res.stdout);
|
|
30
|
+
await logger.log(res);
|
|
37
31
|
if (this.verbose) {
|
|
38
32
|
await logger.logToStderr(chalk.green('DONE'));
|
|
39
33
|
}
|
|
@@ -49,9 +43,9 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
49
43
|
}
|
|
50
44
|
catch (err) {
|
|
51
45
|
if (this.debug) {
|
|
52
|
-
await logger.logToStderr(err
|
|
46
|
+
await logger.logToStderr(err);
|
|
53
47
|
}
|
|
54
|
-
if (err.error
|
|
48
|
+
if (err.error !== '404 FILE NOT FOUND') {
|
|
55
49
|
throw err;
|
|
56
50
|
}
|
|
57
51
|
if (this.verbose) {
|
|
@@ -60,12 +54,15 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
60
54
|
return this.createSite(args, logger);
|
|
61
55
|
}
|
|
62
56
|
if (this.debug) {
|
|
63
|
-
await logger.logToStderr(getWebOutput
|
|
57
|
+
await logger.logToStderr(getWebOutput);
|
|
64
58
|
}
|
|
65
59
|
if (this.verbose) {
|
|
66
60
|
await logger.logToStderr(`Site found at ${args.options.url}. Checking if site matches conditions...`);
|
|
67
61
|
}
|
|
68
|
-
const web =
|
|
62
|
+
const web = {
|
|
63
|
+
Configuration: getWebOutput.Configuration,
|
|
64
|
+
WebTemplate: getWebOutput.WebTemplate
|
|
65
|
+
};
|
|
69
66
|
if (args.options.type) {
|
|
70
67
|
// type was specified so we need to check if the existing site matches
|
|
71
68
|
// it. If not, we throw an error and stop
|
|
@@ -79,7 +76,7 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
79
76
|
expectedWebTemplate = 'SITEPAGEPUBLISHING#0';
|
|
80
77
|
break;
|
|
81
78
|
case 'ClassicSite':
|
|
82
|
-
expectedWebTemplate = args.options.webTemplate;
|
|
79
|
+
expectedWebTemplate = args.options.webTemplate || 'STS#0';
|
|
83
80
|
break;
|
|
84
81
|
default:
|
|
85
82
|
throw `${args.options.type} is not a valid site type. Allowed types are TeamSite,CommunicationSite,ClassicSite`;
|
|
@@ -100,70 +97,20 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
100
97
|
if (this.verbose) {
|
|
101
98
|
await logger.logToStderr(`Checking if site ${args.options.url} exists...`);
|
|
102
99
|
}
|
|
103
|
-
|
|
104
|
-
url: args.options.url,
|
|
105
|
-
output: 'json',
|
|
106
|
-
debug: this.debug,
|
|
107
|
-
verbose: this.verbose
|
|
108
|
-
};
|
|
109
|
-
return Cli.executeCommandWithOutput(spoWebGetCommand, { options: { ...options, _: [] } });
|
|
100
|
+
return await spo.getWeb(args.options.url, logger, this.verbose);
|
|
110
101
|
}
|
|
111
102
|
async createSite(args, logger) {
|
|
112
103
|
if (this.verbose) {
|
|
113
104
|
await logger.logToStderr(`Creating site...`);
|
|
114
105
|
}
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
title: args.options.title,
|
|
118
|
-
alias: args.options.alias,
|
|
119
|
-
description: args.options.description,
|
|
120
|
-
classification: args.options.classification,
|
|
121
|
-
isPublic: args.options.isPublic,
|
|
122
|
-
lcid: args.options.lcid,
|
|
123
|
-
url: typeof args.options.type === 'undefined' || args.options.type === 'TeamSite' ? undefined : args.options.url,
|
|
124
|
-
owners: args.options.owners,
|
|
125
|
-
shareByEmailEnabled: args.options.shareByEmailEnabled,
|
|
126
|
-
siteDesign: args.options.siteDesign,
|
|
127
|
-
siteDesignId: args.options.siteDesignId,
|
|
128
|
-
timeZone: args.options.timeZone,
|
|
129
|
-
webTemplate: args.options.webTemplate,
|
|
130
|
-
resourceQuota: args.options.resourceQuota,
|
|
131
|
-
resourceQuotaWarningLevel: args.options.resourceQuotaWarningLevel,
|
|
132
|
-
storageQuota: args.options.storageQuota,
|
|
133
|
-
storageQuotaWarningLevel: args.options.storageQuotaWarningLevel,
|
|
134
|
-
removeDeletedSite: args.options.removeDeletedSite,
|
|
135
|
-
wait: args.options.wait,
|
|
136
|
-
verbose: this.verbose,
|
|
137
|
-
debug: this.debug
|
|
138
|
-
};
|
|
139
|
-
const validationResult = await spoSiteAddCommand.validate({ options: options }, Cli.getCommandInfo(spoSiteAddCommand));
|
|
140
|
-
if (validationResult !== true) {
|
|
141
|
-
return Promise.reject(validationResult);
|
|
142
|
-
}
|
|
143
|
-
return Cli.executeCommandWithOutput(spoSiteAddCommand, { options: { ...options, _: [] } });
|
|
106
|
+
const url = typeof args.options.type === 'undefined' || args.options.type === 'TeamSite' ? undefined : args.options.url;
|
|
107
|
+
return await spo.addSite(args.options.title, logger, this.verbose, args.options.wait, args.options.type, args.options.alias, args.options.description, args.options.owners, args.options.shareByEmailEnabled, args.options.removeDeletedSite, args.options.classification, args.options.isPublic, args.options.lcid, url, args.options.siteDesign, args.options.siteDesignId, args.options.timeZone, args.options.webTemplate, args.options.resourceQuota, args.options.resourceQuotaWarningLevel, args.options.storageQuota, args.options.storageQuotaWarningLevel);
|
|
144
108
|
}
|
|
145
109
|
async updateSite(args, logger) {
|
|
146
110
|
if (this.verbose) {
|
|
147
111
|
await logger.logToStderr(`Updating site...`);
|
|
148
112
|
}
|
|
149
|
-
|
|
150
|
-
classification: args.options.classification,
|
|
151
|
-
disableFlows: args.options.disableFlows,
|
|
152
|
-
isPublic: args.options.isPublic,
|
|
153
|
-
owners: args.options.owners,
|
|
154
|
-
shareByEmailEnabled: args.options.shareByEmailEnabled,
|
|
155
|
-
siteDesignId: args.options.siteDesignId,
|
|
156
|
-
title: args.options.title,
|
|
157
|
-
url: args.options.url,
|
|
158
|
-
sharingCapability: args.options.sharingCapability,
|
|
159
|
-
verbose: this.verbose,
|
|
160
|
-
debug: this.debug
|
|
161
|
-
};
|
|
162
|
-
const validationResult = await spoSiteSetCommand.validate({ options: options }, Cli.getCommandInfo(spoSiteSetCommand));
|
|
163
|
-
if (validationResult !== true) {
|
|
164
|
-
return Promise.reject(validationResult);
|
|
165
|
-
}
|
|
166
|
-
return Cli.executeCommandWithOutput(spoSiteSetCommand, { options: { ...options, _: [] } });
|
|
113
|
+
return await spo.updateSite(args.options.url, logger, this.verbose, args.options.title, args.options.classification, args.options.disableFlows, args.options.isPublic, args.options.owners, args.options.shareByEmailEnabled, args.options.siteDesignId, args.options.sharingCapability);
|
|
167
114
|
}
|
|
168
115
|
/**
|
|
169
116
|
* Maps the base sharingCapability enum to string array so it can
|
|
@@ -25,28 +25,8 @@ class SpoSiteHubSiteDisconnectCommand extends SpoCommand {
|
|
|
25
25
|
__classPrivateFieldGet(this, _SpoSiteHubSiteDisconnectCommand_instances, "m", _SpoSiteHubSiteDisconnectCommand_initValidators).call(this);
|
|
26
26
|
}
|
|
27
27
|
async commandAction(logger, args) {
|
|
28
|
-
const disconnectHubSite = async () => {
|
|
29
|
-
try {
|
|
30
|
-
const res = await spo.getRequestDigest(args.options.siteUrl);
|
|
31
|
-
if (this.verbose) {
|
|
32
|
-
await logger.logToStderr(`Disconnecting site collection ${args.options.siteUrl} from its hubsite...`);
|
|
33
|
-
}
|
|
34
|
-
const requestOptions = {
|
|
35
|
-
url: `${args.options.siteUrl}/_api/site/JoinHubSite('00000000-0000-0000-0000-000000000000')`,
|
|
36
|
-
headers: {
|
|
37
|
-
'X-RequestDigest': res.FormDigestValue,
|
|
38
|
-
accept: 'application/json;odata=nometadata'
|
|
39
|
-
},
|
|
40
|
-
responseType: 'json'
|
|
41
|
-
};
|
|
42
|
-
await request.post(requestOptions);
|
|
43
|
-
}
|
|
44
|
-
catch (err) {
|
|
45
|
-
this.handleRejectedODataJsonPromise(err);
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
28
|
if (args.options.force) {
|
|
49
|
-
await disconnectHubSite();
|
|
29
|
+
await this.disconnectHubSite(logger, args);
|
|
50
30
|
}
|
|
51
31
|
else {
|
|
52
32
|
const result = await Cli.prompt({
|
|
@@ -56,8 +36,28 @@ class SpoSiteHubSiteDisconnectCommand extends SpoCommand {
|
|
|
56
36
|
message: `Are you sure you want to disconnect the site collection ${args.options.siteUrl} from its hub site?`
|
|
57
37
|
});
|
|
58
38
|
if (result.continue) {
|
|
59
|
-
await disconnectHubSite();
|
|
39
|
+
await this.disconnectHubSite(logger, args);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
async disconnectHubSite(logger, args) {
|
|
44
|
+
try {
|
|
45
|
+
const res = await spo.getRequestDigest(args.options.siteUrl);
|
|
46
|
+
if (this.verbose) {
|
|
47
|
+
await logger.logToStderr(`Disconnecting site collection ${args.options.siteUrl} from its hubsite...`);
|
|
60
48
|
}
|
|
49
|
+
const requestOptions = {
|
|
50
|
+
url: `${args.options.siteUrl}/_api/site/JoinHubSite('00000000-0000-0000-0000-000000000000')`,
|
|
51
|
+
headers: {
|
|
52
|
+
'X-RequestDigest': res.FormDigestValue,
|
|
53
|
+
accept: 'application/json;odata=nometadata'
|
|
54
|
+
},
|
|
55
|
+
responseType: 'json'
|
|
56
|
+
};
|
|
57
|
+
await request.post(requestOptions);
|
|
58
|
+
}
|
|
59
|
+
catch (err) {
|
|
60
|
+
this.handleRejectedODataJsonPromise(err);
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
}
|
|
@@ -37,52 +37,39 @@ class SpoSiteListCommand extends SpoCommand {
|
|
|
37
37
|
await logger.logToStderr(`Retrieving list of site collections...`);
|
|
38
38
|
}
|
|
39
39
|
this.allSites = [];
|
|
40
|
-
await this.getAllSites(spoAdminUrl, formatting.escapeXml(args.options.filter || ''), '0', personalSite, webTemplate, undefined,
|
|
40
|
+
await this.getAllSites(spoAdminUrl, formatting.escapeXml(args.options.filter || ''), '0', personalSite, webTemplate, undefined, logger);
|
|
41
41
|
await logger.log(this.allSites);
|
|
42
42
|
}
|
|
43
43
|
catch (err) {
|
|
44
44
|
this.handleRejectedODataJsonPromise(err);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
getAllSites(spoAdminUrl, filter, startIndex, personalSite, webTemplate, formDigest,
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
const sites = json[json.length - 1];
|
|
74
|
-
this.allSites.push(...sites._Child_Items_);
|
|
75
|
-
if (sites.NextStartIndexFromSharePoint) {
|
|
76
|
-
this
|
|
77
|
-
.getAllSites(spoAdminUrl, filter, sites.NextStartIndexFromSharePoint, personalSite, webTemplate, formDigest, deleted, logger)
|
|
78
|
-
.then(_ => resolve(), err => reject(err));
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
resolve();
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}, err => reject(err));
|
|
85
|
-
});
|
|
47
|
+
async getAllSites(spoAdminUrl, filter, startIndex, personalSite, webTemplate, formDigest, logger) {
|
|
48
|
+
const res = await spo.ensureFormDigest(spoAdminUrl, logger, formDigest, this.debug);
|
|
49
|
+
const requestBody = `<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><ObjectPath Id="2" ObjectPathId="1" /><ObjectPath Id="4" ObjectPathId="3" /><Query Id="5" ObjectPathId="3"><Query SelectAllProperties="true"><Properties /></Query><ChildItemQuery SelectAllProperties="true"><Properties /></ChildItemQuery></Query></Actions><ObjectPaths><Constructor Id="1" TypeId="{268004ae-ef6b-4e9b-8425-127220d84719}" /><Method Id="3" ParentId="1" Name="GetSitePropertiesFromSharePointByFilters"><Parameters><Parameter TypeId="{b92aeee2-c92c-4b67-abcc-024e471bc140}"><Property Name="Filter" Type="String">${filter}</Property><Property Name="IncludeDetail" Type="Boolean">false</Property><Property Name="IncludePersonalSite" Type="Enum">${personalSite}</Property><Property Name="StartIndex" Type="String">${startIndex}</Property><Property Name="Template" Type="String">${webTemplate}</Property></Parameter></Parameters></Method></ObjectPaths></Request>`;
|
|
50
|
+
const requestOptions = {
|
|
51
|
+
url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
|
|
52
|
+
headers: {
|
|
53
|
+
'X-RequestDigest': res.FormDigestValue
|
|
54
|
+
},
|
|
55
|
+
data: requestBody
|
|
56
|
+
};
|
|
57
|
+
const res1 = await request.post(requestOptions);
|
|
58
|
+
const json = JSON.parse(res1);
|
|
59
|
+
const response = json[0];
|
|
60
|
+
logger.log(response);
|
|
61
|
+
if (response.ErrorInfo) {
|
|
62
|
+
throw response.ErrorInfo.ErrorMessage;
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
const sites = json[json.length - 1];
|
|
66
|
+
logger.log(sites);
|
|
67
|
+
this.allSites.push(...sites._Child_Items_);
|
|
68
|
+
if (sites.NextStartIndexFromSharePoint) {
|
|
69
|
+
await this.getAllSites(spoAdminUrl, filter, sites.NextStartIndexFromSharePoint, personalSite, webTemplate, formDigest, logger);
|
|
70
|
+
}
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
86
73
|
}
|
|
87
74
|
getWebTemplateId(options) {
|
|
88
75
|
if (options.webTemplate) {
|
|
@@ -107,7 +94,6 @@ _SpoSiteListCommand_instances = new WeakSet(), _SpoSiteListCommand_initTelemetry
|
|
|
107
94
|
webTemplate: args.options.webTemplate,
|
|
108
95
|
type: args.options.type,
|
|
109
96
|
filter: (!(!args.options.filter)).toString(),
|
|
110
|
-
deleted: args.options.deleted,
|
|
111
97
|
includeOneDriveSites: typeof args.options.includeOneDriveSites !== 'undefined'
|
|
112
98
|
});
|
|
113
99
|
});
|
|
@@ -121,8 +107,6 @@ _SpoSiteListCommand_instances = new WeakSet(), _SpoSiteListCommand_initTelemetry
|
|
|
121
107
|
option: '--filter [filter]'
|
|
122
108
|
}, {
|
|
123
109
|
option: '--includeOneDriveSites'
|
|
124
|
-
}, {
|
|
125
|
-
option: '--deleted'
|
|
126
110
|
});
|
|
127
111
|
}, _SpoSiteListCommand_initValidators = function _SpoSiteListCommand_initValidators() {
|
|
128
112
|
this.validators.push(async (args) => {
|
|
@@ -3,7 +3,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
3
3
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
|
-
var _SpoSiteRecycleBinItemListCommand_instances, _SpoSiteRecycleBinItemListCommand_initTelemetry, _SpoSiteRecycleBinItemListCommand_initOptions, _SpoSiteRecycleBinItemListCommand_initValidators;
|
|
6
|
+
var _SpoSiteRecycleBinItemListCommand_instances, _a, _SpoSiteRecycleBinItemListCommand_initTelemetry, _SpoSiteRecycleBinItemListCommand_initOptions, _SpoSiteRecycleBinItemListCommand_initValidators;
|
|
7
7
|
import request from '../../../../request.js';
|
|
8
8
|
import { validation } from '../../../../utils/validation.js';
|
|
9
9
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
@@ -32,7 +32,7 @@ class SpoSiteRecycleBinItemListCommand extends SpoCommand {
|
|
|
32
32
|
const state = args.options.secondary ? '2' : '1';
|
|
33
33
|
let requestUrl = `${args.options.siteUrl}/_api/site/RecycleBin?$filter=(ItemState eq ${state})`;
|
|
34
34
|
if (typeof args.options.type !== 'undefined') {
|
|
35
|
-
const type =
|
|
35
|
+
const type = _a.recycleBinItemType.find(item => item.value === args.options.type);
|
|
36
36
|
if (typeof type !== 'undefined') {
|
|
37
37
|
requestUrl += ` and (ItemType eq ${type.id})`;
|
|
38
38
|
}
|
|
@@ -53,7 +53,7 @@ class SpoSiteRecycleBinItemListCommand extends SpoCommand {
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
-
_SpoSiteRecycleBinItemListCommand_instances = new WeakSet(), _SpoSiteRecycleBinItemListCommand_initTelemetry = function _SpoSiteRecycleBinItemListCommand_initTelemetry() {
|
|
56
|
+
_a = SpoSiteRecycleBinItemListCommand, _SpoSiteRecycleBinItemListCommand_instances = new WeakSet(), _SpoSiteRecycleBinItemListCommand_initTelemetry = function _SpoSiteRecycleBinItemListCommand_initTelemetry() {
|
|
57
57
|
this.telemetry.push((args) => {
|
|
58
58
|
Object.assign(this.telemetryProperties, {
|
|
59
59
|
type: args.options.type,
|
|
@@ -65,7 +65,7 @@ _SpoSiteRecycleBinItemListCommand_instances = new WeakSet(), _SpoSiteRecycleBinI
|
|
|
65
65
|
option: '-u, --siteUrl <siteUrl>'
|
|
66
66
|
}, {
|
|
67
67
|
option: '-t, --type [type]',
|
|
68
|
-
autocomplete:
|
|
68
|
+
autocomplete: _a.recycleBinItemType.map(item => item.value)
|
|
69
69
|
}, {
|
|
70
70
|
option: '-s, --secondary'
|
|
71
71
|
});
|
|
@@ -76,8 +76,8 @@ _SpoSiteRecycleBinItemListCommand_instances = new WeakSet(), _SpoSiteRecycleBinI
|
|
|
76
76
|
return isValidSharePointUrl;
|
|
77
77
|
}
|
|
78
78
|
if (typeof args.options.type !== 'undefined' &&
|
|
79
|
-
!
|
|
80
|
-
return `${args.options.type} is not a valid value. Allowed values are ${
|
|
79
|
+
!_a.recycleBinItemType.some(item => item.value === args.options.type)) {
|
|
80
|
+
return `${args.options.type} is not a valid value. Allowed values are ${_a.recycleBinItemType.map(item => item.value).join(', ')}`;
|
|
81
81
|
}
|
|
82
82
|
return true;
|
|
83
83
|
});
|