@pnp/cli-microsoft365 7.0.0-beta.4ebf3ad → 7.0.0-beta.5fdb9e3
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 +1 -1
- package/dist/Auth.js +2 -1
- package/dist/Command.js +1 -1
- package/dist/cli/Cli.js +19 -2
- package/dist/m365/aad/commands/{o365group/o365group-add.js → m365group/m365group-add.js} +17 -17
- package/dist/m365/aad/commands/{o365group/o365group-conversation-list.js → m365group/m365group-conversation-list.js} +10 -10
- package/dist/m365/aad/commands/{o365group/o365group-conversation-post-list.js → m365group/m365group-conversation-post-list.js} +14 -14
- package/dist/m365/aad/commands/{o365group/o365group-get.js → m365group/m365group-get.js} +13 -10
- package/dist/m365/aad/commands/{o365group/o365group-list.js → m365group/m365group-list.js} +13 -28
- package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-clear.js → m365group/m365group-recyclebinitem-clear.js} +15 -15
- package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-list.js → m365group/m365group-recyclebinitem-list.js} +10 -10
- package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-remove.js → m365group/m365group-recyclebinitem-remove.js} +14 -14
- package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-restore.js → m365group/m365group-recyclebinitem-restore.js} +14 -14
- package/dist/m365/aad/commands/{o365group/o365group-remove.js → m365group/m365group-remove.js} +12 -12
- package/dist/m365/aad/commands/{o365group/o365group-renew.js → m365group/m365group-renew.js} +10 -10
- package/dist/m365/aad/commands/{o365group/o365group-report-activitycounts.js → m365group/m365group-report-activitycounts.js} +4 -4
- package/dist/m365/aad/commands/{o365group/o365group-report-activitydetail.js → m365group/m365group-report-activitydetail.js} +4 -4
- package/dist/m365/aad/commands/{o365group/o365group-report-activityfilecounts.js → m365group/m365group-report-activityfilecounts.js} +4 -4
- package/dist/m365/aad/commands/{o365group/o365group-report-activitygroupcounts.js → m365group/m365group-report-activitygroupcounts.js} +4 -4
- package/dist/m365/aad/commands/{o365group/o365group-report-activitystorage.js → m365group/m365group-report-activitystorage.js} +4 -4
- package/dist/m365/aad/commands/{o365group/o365group-set.js → m365group/m365group-set.js} +17 -17
- package/dist/m365/aad/commands/{o365group/o365group-teamify.js → m365group/m365group-teamify.js} +14 -14
- package/dist/m365/aad/commands/{o365group/o365group-user-add.js → m365group/m365group-user-add.js} +14 -14
- package/dist/m365/aad/commands/{o365group/o365group-user-list.js → m365group/m365group-user-list.js} +12 -12
- package/dist/m365/aad/commands/{o365group/o365group-user-remove.js → m365group/m365group-user-remove.js} +14 -14
- package/dist/m365/aad/commands/{o365group/o365group-user-set.js → m365group/m365group-user-set.js} +15 -15
- package/dist/m365/aad/commands.js +22 -22
- package/dist/m365/cli/commands/config/config-list.js +16 -0
- package/dist/m365/cli/commands.js +1 -0
- package/dist/m365/pa/commands/app/app-permission-ensure.js +162 -0
- package/dist/m365/pa/commands/app/app-permission-list.js +2 -2
- package/dist/m365/pa/commands/app/app-permission-remove.js +153 -0
- package/dist/m365/pa/commands.js +2 -0
- package/dist/m365/planner/commands/bucket/bucket-add.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-get.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-list.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-remove.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-set.js +2 -2
- package/dist/m365/planner/commands/plan/plan-get.js +1 -2
- package/dist/m365/planner/commands/plan/plan-list.js +4 -5
- package/dist/m365/planner/commands/plan/plan-set.js +2 -2
- 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 +1 -1
- package/dist/m365/spfx/commands/project/project-externalize/rules/PnPJsRule.js +2 -2
- 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 +1 -1
- package/dist/m365/spfx/commands/spfx-doctor.js +76 -106
- 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/file/file-add.js +13 -13
- package/dist/m365/spo/commands/file/file-checkin.js +1 -1
- package/dist/m365/spo/commands/file/file-checkout.js +1 -1
- package/dist/m365/spo/commands/file/file-copy.js +36 -4
- package/dist/m365/spo/commands/file/file-list.js +4 -4
- package/dist/m365/spo/commands/file/file-move.js +74 -98
- package/dist/m365/spo/commands/file/file-remove.js +6 -6
- package/dist/m365/spo/commands/file/file-rename.js +2 -2
- package/dist/m365/spo/commands/file/file-retentionlabel-ensure.js +1 -1
- package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +1 -1
- package/dist/m365/spo/commands/file/file-roleassignment-add.js +1 -1
- package/dist/m365/spo/commands/file/file-roleassignment-remove.js +1 -1
- package/dist/m365/spo/commands/file/file-roleinheritance-break.js +1 -1
- package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +1 -1
- package/dist/m365/spo/commands/file/file-version-clear.js +1 -1
- package/dist/m365/spo/commands/file/file-version-get.js +1 -1
- package/dist/m365/spo/commands/file/file-version-list.js +1 -1
- package/dist/m365/spo/commands/file/file-version-remove.js +1 -1
- package/dist/m365/spo/commands/file/file-version-restore.js +1 -1
- package/dist/m365/spo/commands/folder/folder-add.js +2 -4
- package/dist/m365/spo/commands/folder/folder-copy.js +89 -45
- package/dist/m365/spo/commands/folder/folder-get.js +1 -1
- package/dist/m365/spo/commands/folder/folder-list.js +2 -2
- package/dist/m365/spo/commands/folder/folder-move.js +89 -47
- package/dist/m365/spo/commands/folder/folder-remove.js +7 -4
- package/dist/m365/spo/commands/folder/folder-rename.js +13 -17
- package/dist/m365/spo/commands/folder/folder-retentionlabel-ensure.js +1 -1
- package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +1 -1
- package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +1 -1
- package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +1 -1
- package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +1 -1
- package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +1 -1
- package/dist/m365/spo/commands/group/group-list.js +0 -1
- package/dist/m365/spo/commands/navigation/navigation-node-set.js +2 -2
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +32 -3
- 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/site/FlowsPolicy.js +7 -0
- package/dist/m365/spo/commands/site/site-ensure.js +3 -3
- package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +22 -22
- package/dist/m365/spo/commands/site/site-list.js +29 -39
- package/dist/m365/spo/commands/site/site-set.js +60 -49
- package/dist/m365/spo/commands/theme/theme-list.js +1 -9
- 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/yammer/commands/message/message-like-set.js +27 -28
- package/dist/m365/yammer/commands/message/message-list.js +62 -81
- package/dist/m365/yammer/commands/message/message-remove.js +18 -18
- package/dist/m365/yammer/commands/yammer-search.js +53 -69
- package/dist/utils/planner.js +4 -3
- package/dist/utils/spo.js +13 -54
- package/docs/docs/cmd/aad/{o365group/o365group-add.mdx → m365group/m365group-add.mdx} +13 -13
- package/docs/docs/cmd/aad/{o365group/o365group-conversation-list.mdx → m365group/m365group-conversation-list.mdx} +4 -4
- package/docs/docs/cmd/aad/{o365group/o365group-conversation-post-list.mdx → m365group/m365group-conversation-post-list.mdx} +8 -8
- package/docs/docs/cmd/aad/{o365group/o365group-get.mdx → m365group/m365group-get.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-list.mdx → m365group/m365group-list.mdx} +12 -29
- package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-clear.mdx → m365group/m365group-recyclebinitem-clear.mdx} +5 -5
- package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-list.mdx → m365group/m365group-recyclebinitem-list.mdx} +8 -8
- package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-remove.mdx → m365group/m365group-recyclebinitem-remove.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-restore.mdx → m365group/m365group-recyclebinitem-restore.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-remove.mdx → m365group/m365group-remove.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-renew.mdx → m365group/m365group-renew.mdx} +4 -4
- package/docs/docs/cmd/aad/{o365group/o365group-report-activitycounts.mdx → m365group/m365group-report-activitycounts.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-report-activitydetail.mdx → m365group/m365group-report-activitydetail.mdx} +7 -7
- package/docs/docs/cmd/aad/{o365group/o365group-report-activityfilecounts.mdx → m365group/m365group-report-activityfilecounts.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-report-activitygroupcounts.mdx → m365group/m365group-report-activitygroupcounts.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-report-activitystorage.mdx → m365group/m365group-report-activitystorage.mdx} +6 -6
- package/docs/docs/cmd/aad/{o365group/o365group-set.mdx → m365group/m365group-set.mdx} +8 -8
- package/docs/docs/cmd/aad/{o365group/o365group-teamify.mdx → m365group/m365group-teamify.mdx} +5 -5
- package/docs/docs/cmd/aad/{o365group/o365group-user-add.mdx → m365group/m365group-user-add.mdx} +5 -5
- package/docs/docs/cmd/aad/{o365group/o365group-user-list.mdx → m365group/m365group-user-list.mdx} +7 -7
- package/docs/docs/cmd/aad/{o365group/o365group-user-remove.mdx → m365group/m365group-user-remove.mdx} +5 -5
- package/docs/docs/cmd/aad/{o365group/o365group-user-set.mdx → m365group/m365group-user-set.mdx} +5 -5
- package/docs/docs/cmd/aad/user/user-set.mdx +1 -1
- package/docs/docs/cmd/cli/config/config-list.mdx +78 -0
- package/docs/docs/cmd/flow/flow-enable.mdx +2 -2
- package/docs/docs/cmd/login.mdx +6 -0
- package/docs/docs/cmd/pa/app/app-permission-ensure.mdx +85 -0
- package/docs/docs/cmd/pa/app/app-permission-remove.mdx +74 -0
- package/docs/docs/cmd/planner/plan/plan-add.mdx +1 -1
- package/docs/docs/cmd/pp/dataverse/dataverse-table-get.mdx +2 -2
- package/docs/docs/cmd/pp/dataverse/dataverse-table-list.mdx +2 -2
- package/docs/docs/cmd/pp/dataverse/dataverse-table-remove.mdx +3 -3
- package/docs/docs/cmd/spo/file/file-add.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-checkin.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +1 -9
- package/docs/docs/cmd/spo/file/file-checkout.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-copy.mdx +20 -16
- package/docs/docs/cmd/spo/file/file-get.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-list.mdx +2 -2
- package/docs/docs/cmd/spo/file/file-move.mdx +36 -18
- package/docs/docs/cmd/spo/file/file-remove.mdx +8 -8
- package/docs/docs/cmd/spo/file/file-rename.mdx +3 -3
- package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +2 -2
- package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +3 -3
- package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-add.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-get.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-list.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-set.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-clear.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-get.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-list.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-remove.mdx +1 -1
- package/docs/docs/cmd/spo/file/file-version-restore.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-add.mdx +76 -1
- package/docs/docs/cmd/spo/folder/folder-copy.mdx +39 -12
- package/docs/docs/cmd/spo/folder/folder-get.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-list.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-move.mdx +40 -13
- package/docs/docs/cmd/spo/folder/folder-remove.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-rename.mdx +5 -1
- package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-roleassignment-add.mdx +2 -2
- package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.mdx +1 -1
- package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.mdx +1 -1
- package/docs/docs/cmd/spo/listitem/listitem-attachment-list.mdx +1 -1
- package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-add.mdx +14 -1
- package/docs/docs/cmd/spo/site/site-add.mdx +1 -1
- package/docs/docs/cmd/spo/site/site-ensure.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-add.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-list.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-remove.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-commandset-add.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-commandset-remove.mdx +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-commandset-set.mdx +1 -1
- package/docs/docs/cmd/teams/team/team-add.mdx +1 -1
- package/docs/docs/cmd/yammer/network/network-list.mdx +1 -1
- package/npm-shrinkwrap.json +143 -89
- package/package.json +13 -13
- /package/dist/m365/aad/commands/{o365group → m365group}/GroupExtended.js +0 -0
|
@@ -119,8 +119,8 @@ _SpoNavigationNodeSetCommand_instances = new WeakSet(), _SpoNavigationNodeSetCom
|
|
|
119
119
|
if (isValidSharePointUrl !== true) {
|
|
120
120
|
return isValidSharePointUrl;
|
|
121
121
|
}
|
|
122
|
-
if (args.options.audienceIds === undefined &&
|
|
123
|
-
return `Please specify
|
|
122
|
+
if (args.options.audienceIds === undefined && args.options.url === undefined && args.options.isExternal === undefined && !args.options.title && args.options.openInNewWindow === undefined) {
|
|
123
|
+
return `Please specify at least one property to update.`;
|
|
124
124
|
}
|
|
125
125
|
if (args.options.audienceIds) {
|
|
126
126
|
const audienceIdsSplitted = args.options.audienceIds.split(',');
|
|
@@ -10,6 +10,12 @@ import { spo } from '../../../../utils/spo.js';
|
|
|
10
10
|
import { validation } from '../../../../utils/validation.js';
|
|
11
11
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
12
12
|
import commands from '../../commands.js';
|
|
13
|
+
var OrgAssetType;
|
|
14
|
+
(function (OrgAssetType) {
|
|
15
|
+
OrgAssetType[OrgAssetType["ImageDocumentLibrary"] = 1] = "ImageDocumentLibrary";
|
|
16
|
+
OrgAssetType[OrgAssetType["OfficeTemplateLibrary"] = 2] = "OfficeTemplateLibrary";
|
|
17
|
+
OrgAssetType[OrgAssetType["OfficeFontLibrary"] = 4] = "OfficeFontLibrary";
|
|
18
|
+
})(OrgAssetType || (OrgAssetType = {}));
|
|
13
19
|
class SpoOrgAssetsLibraryAddCommand extends SpoCommand {
|
|
14
20
|
get name() {
|
|
15
21
|
return commands.ORGASSETSLIBRARY_ADD;
|
|
@@ -30,6 +36,7 @@ class SpoOrgAssetsLibraryAddCommand extends SpoCommand {
|
|
|
30
36
|
const cdnType = cdnTypeString === 'Private' ? 1 : 0;
|
|
31
37
|
const thumbnailSchema = typeof args.options.thumbnailUrl === 'undefined' ? `<Parameter Type="Null" />` : `<Parameter Type="String">${args.options.thumbnailUrl}</Parameter>`;
|
|
32
38
|
try {
|
|
39
|
+
const orgAssetType = this.getOrgAssetType(args.options.orgAssetType);
|
|
33
40
|
spoAdminUrl = await spo.getSpoAdminUrl(logger, this.debug);
|
|
34
41
|
const reqDigest = await spo.getRequestDigest(spoAdminUrl);
|
|
35
42
|
const requestOptions = {
|
|
@@ -37,7 +44,7 @@ class SpoOrgAssetsLibraryAddCommand extends SpoCommand {
|
|
|
37
44
|
headers: {
|
|
38
45
|
'X-RequestDigest': reqDigest.FormDigestValue
|
|
39
46
|
},
|
|
40
|
-
data: `<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><Method Name="AddToOrgAssetsLibAndCdnWithType" Id="11" ObjectPathId="8"><Parameters><Parameter Type="Enum">${cdnType}</Parameter><Parameter Type="String">${args.options.libraryUrl}</Parameter>${thumbnailSchema}<Parameter Type="Enum"
|
|
47
|
+
data: `<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><Method Name="AddToOrgAssetsLibAndCdnWithType" Id="11" ObjectPathId="8"><Parameters><Parameter Type="Enum">${cdnType}</Parameter><Parameter Type="String">${args.options.libraryUrl}</Parameter>${thumbnailSchema}<Parameter Type="Enum">${orgAssetType}</Parameter></Parameters></Method></Actions><ObjectPaths><Constructor Id="8" TypeId="{268004ae-ef6b-4e9b-8425-127220d84719}" /></ObjectPaths></Request>`
|
|
41
48
|
};
|
|
42
49
|
const res = await request.post(requestOptions);
|
|
43
50
|
const json = JSON.parse(res);
|
|
@@ -50,12 +57,23 @@ class SpoOrgAssetsLibraryAddCommand extends SpoCommand {
|
|
|
50
57
|
this.handleRejectedPromise(err);
|
|
51
58
|
}
|
|
52
59
|
}
|
|
60
|
+
getOrgAssetType(orgAssetType) {
|
|
61
|
+
switch (orgAssetType) {
|
|
62
|
+
case 'OfficeTemplateLibrary':
|
|
63
|
+
return OrgAssetType.OfficeTemplateLibrary;
|
|
64
|
+
case 'OfficeFontLibrary':
|
|
65
|
+
return OrgAssetType.OfficeFontLibrary;
|
|
66
|
+
default:
|
|
67
|
+
return OrgAssetType.ImageDocumentLibrary;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
53
70
|
}
|
|
54
71
|
_SpoOrgAssetsLibraryAddCommand_instances = new WeakSet(), _SpoOrgAssetsLibraryAddCommand_initTelemetry = function _SpoOrgAssetsLibraryAddCommand_initTelemetry() {
|
|
55
72
|
this.telemetry.push((args) => {
|
|
56
73
|
Object.assign(this.telemetryProperties, {
|
|
57
74
|
cdnType: args.options.cdnType || 'Private',
|
|
58
|
-
thumbnailUrl: typeof args.options.thumbnailUrl !== 'undefined'
|
|
75
|
+
thumbnailUrl: typeof args.options.thumbnailUrl !== 'undefined',
|
|
76
|
+
orgAssetType: args.options.orgAssetType
|
|
59
77
|
});
|
|
60
78
|
});
|
|
61
79
|
}, _SpoOrgAssetsLibraryAddCommand_initOptions = function _SpoOrgAssetsLibraryAddCommand_initOptions() {
|
|
@@ -65,7 +83,10 @@ _SpoOrgAssetsLibraryAddCommand_instances = new WeakSet(), _SpoOrgAssetsLibraryAd
|
|
|
65
83
|
option: '--thumbnailUrl [thumbnailUrl]'
|
|
66
84
|
}, {
|
|
67
85
|
option: '--cdnType [cdnType]',
|
|
68
|
-
autocomplete:
|
|
86
|
+
autocomplete: SpoOrgAssetsLibraryAddCommand.cdnTypes
|
|
87
|
+
}, {
|
|
88
|
+
option: '--orgAssetType [orgAssetType]',
|
|
89
|
+
autocomplete: SpoOrgAssetsLibraryAddCommand.orgAssetTypes
|
|
69
90
|
});
|
|
70
91
|
}, _SpoOrgAssetsLibraryAddCommand_initValidators = function _SpoOrgAssetsLibraryAddCommand_initValidators() {
|
|
71
92
|
this.validators.push(async (args) => {
|
|
@@ -73,8 +94,16 @@ _SpoOrgAssetsLibraryAddCommand_instances = new WeakSet(), _SpoOrgAssetsLibraryAd
|
|
|
73
94
|
if (typeof args.options.thumbnailUrl !== 'undefined' && isValidThumbnailUrl !== true) {
|
|
74
95
|
return isValidThumbnailUrl;
|
|
75
96
|
}
|
|
97
|
+
if (args.options.cdnType && SpoOrgAssetsLibraryAddCommand.cdnTypes.indexOf(args.options.cdnType) < 0) {
|
|
98
|
+
return `${args.options.cdnType} is not a valid value for cdnType. Valid values are ${SpoOrgAssetsLibraryAddCommand.cdnTypes.join(', ')}`;
|
|
99
|
+
}
|
|
100
|
+
if (args.options.orgAssetType && SpoOrgAssetsLibraryAddCommand.orgAssetTypes.indexOf(args.options.orgAssetType) < 0) {
|
|
101
|
+
return `${args.options.orgAssetType} is not a valid value for orgAssetType. Valid values are ${SpoOrgAssetsLibraryAddCommand.orgAssetTypes.join(', ')}`;
|
|
102
|
+
}
|
|
76
103
|
return validation.isValidSharePointUrl(args.options.libraryUrl);
|
|
77
104
|
});
|
|
78
105
|
};
|
|
106
|
+
SpoOrgAssetsLibraryAddCommand.orgAssetTypes = ['ImageDocumentLibrary', 'OfficeTemplateLibrary', 'OfficeFontLibrary'];
|
|
107
|
+
SpoOrgAssetsLibraryAddCommand.cdnTypes = ['Public', 'Private'];
|
|
79
108
|
export default new SpoOrgAssetsLibraryAddCommand();
|
|
80
109
|
//# sourceMappingURL=orgassetslibrary-add.js.map
|
|
@@ -13,7 +13,7 @@ export class SpoPropertyBagBaseCommand extends SpoCommand {
|
|
|
13
13
|
* Gets property bag for a folder or site rootFolder of a site where return type is "_ObjectType_\":\"SP.Folder\".
|
|
14
14
|
* This method is executed when folder option is specified. PnP PowerShell behaves the same way.
|
|
15
15
|
*/
|
|
16
|
-
getFolderPropertyBag(identityResp, webUrl, folder, logger) {
|
|
16
|
+
async getFolderPropertyBag(identityResp, webUrl, folder, logger) {
|
|
17
17
|
let serverRelativeUrl = folder;
|
|
18
18
|
if (identityResp.serverRelativeUrl !== '/') {
|
|
19
19
|
serverRelativeUrl = `${identityResp.serverRelativeUrl}${serverRelativeUrl}`;
|
|
@@ -25,31 +25,31 @@ export class SpoPropertyBagBaseCommand extends SpoCommand {
|
|
|
25
25
|
},
|
|
26
26
|
data: `<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="10" ObjectPathId="9" /><ObjectIdentityQuery Id="11" ObjectPathId="9" /><Query Id="12" ObjectPathId="9"><Query SelectAllProperties="false"><Properties><Property Name="Properties" SelectAll="true"><Query SelectAllProperties="false"><Properties /></Query></Property></Properties></Query></Query></Actions><ObjectPaths><Method Id="9" ParentId="5" Name="GetFolderByServerRelativeUrl"><Parameters><Parameter Type="String">${serverRelativeUrl}</Parameter></Parameters></Method><Identity Id="5" Name="${identityResp.objectIdentity}" /></ObjectPaths></Request>`
|
|
27
27
|
};
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
.
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
28
|
+
try {
|
|
29
|
+
const res = await request.post(requestOptions);
|
|
30
|
+
if (this.debug) {
|
|
31
|
+
await logger.logToStderr('Attempt to get Properties key values');
|
|
32
|
+
}
|
|
33
|
+
const json = JSON.parse(res);
|
|
34
|
+
const contents = json.find(x => { return x['ErrorInfo']; });
|
|
35
|
+
if (contents && contents.ErrorInfo) {
|
|
36
|
+
throw contents.ErrorInfo.ErrorMessage || 'ClientSvc unknown error';
|
|
37
|
+
}
|
|
38
|
+
const propertiesObj = json.find(x => { return x['Properties']; });
|
|
39
|
+
if (propertiesObj) {
|
|
40
|
+
return propertiesObj['Properties'];
|
|
41
|
+
}
|
|
42
|
+
throw 'Cannot proceed. Properties not found'; // this is not suppose to happen
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
throw err;
|
|
46
|
+
}
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
49
49
|
* Gets property bag for site or sitecollection where return type is "_ObjectType_\":\"SP.Web\".
|
|
50
50
|
* This method is executed when no folder specified. PnP PowerShell behaves the same way.
|
|
51
51
|
*/
|
|
52
|
-
getWebPropertyBag(identityResp, webUrl, logger) {
|
|
52
|
+
async getWebPropertyBag(identityResp, webUrl, logger) {
|
|
53
53
|
const requestOptions = {
|
|
54
54
|
url: `${webUrl}/_vti_bin/client.svc/ProcessQuery`,
|
|
55
55
|
headers: {
|
|
@@ -57,23 +57,25 @@ export class SpoPropertyBagBaseCommand extends SpoCommand {
|
|
|
57
57
|
},
|
|
58
58
|
data: `<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><Query Id="97" ObjectPathId="5"><Query SelectAllProperties="false"><Properties><Property Name="ServerRelativeUrl" ScalarProperty="true" /><Property Name="AllProperties" SelectAll="true"><Query SelectAllProperties="false"><Properties /></Query></Property></Properties></Query></Query></Actions><ObjectPaths><Identity Id="5" Name="${identityResp.objectIdentity}" /></ObjectPaths></Request>`
|
|
59
59
|
};
|
|
60
|
-
|
|
61
|
-
request.post(requestOptions)
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
60
|
+
try {
|
|
61
|
+
const res = await request.post(requestOptions);
|
|
62
|
+
if (this.debug) {
|
|
63
|
+
await logger.logToStderr('Attempt to get AllProperties key values');
|
|
64
|
+
}
|
|
65
|
+
const json = JSON.parse(res);
|
|
66
|
+
const contents = json.find(x => { return x['ErrorInfo']; });
|
|
67
|
+
if (contents && contents.ErrorInfo) {
|
|
68
|
+
throw contents.ErrorInfo.ErrorMessage || 'ClientSvc unknown error';
|
|
69
|
+
}
|
|
70
|
+
const allPropertiesObj = json.find(x => { return x['AllProperties']; });
|
|
71
|
+
if (allPropertiesObj) {
|
|
72
|
+
return allPropertiesObj['AllProperties'];
|
|
73
|
+
}
|
|
74
|
+
throw 'Cannot proceed. AllProperties not found'; // this is not supposed to happen
|
|
75
|
+
}
|
|
76
|
+
catch (err) {
|
|
77
|
+
throw err;
|
|
78
|
+
}
|
|
77
79
|
}
|
|
78
80
|
/**
|
|
79
81
|
* The property bag item data returned from the client.svc/ProcessQuery response
|
|
@@ -108,7 +110,7 @@ export class SpoPropertyBagBaseCommand extends SpoCommand {
|
|
|
108
110
|
}
|
|
109
111
|
return { key: objKey, value: objValue };
|
|
110
112
|
}
|
|
111
|
-
static setProperty(name, value, webUrl, formDigest, identityResp, logger, debug, folder) {
|
|
113
|
+
static async setProperty(name, value, webUrl, formDigest, identityResp, logger, debug, folder) {
|
|
112
114
|
let objectType = 'AllProperties';
|
|
113
115
|
if (folder) {
|
|
114
116
|
objectType = 'Properties';
|
|
@@ -120,18 +122,20 @@ export class SpoPropertyBagBaseCommand extends SpoCommand {
|
|
|
120
122
|
},
|
|
121
123
|
data: `<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><Method Name="SetFieldValue" Id="206" ObjectPathId="205"><Parameters><Parameter Type="String">${formatting.escapeXml(name)}</Parameter><Parameter Type="String">${formatting.escapeXml(value)}</Parameter></Parameters></Method><Method Name="Update" Id="207" ObjectPathId="198" /></Actions><ObjectPaths><Property Id="205" ParentId="198" Name="${objectType}" /><Identity Id="198" Name="${identityResp.objectIdentity}" /></ObjectPaths></Request>`
|
|
122
124
|
};
|
|
123
|
-
|
|
124
|
-
request.post(requestOptions)
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
125
|
+
try {
|
|
126
|
+
const res = await request.post(requestOptions);
|
|
127
|
+
const json = JSON.parse(res);
|
|
128
|
+
const contents = json.find(x => { return x['ErrorInfo']; });
|
|
129
|
+
if (contents && contents.ErrorInfo) {
|
|
130
|
+
throw contents.ErrorInfo.ErrorMessage || 'ClientSvc unknown error';
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
return res;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
catch (err) {
|
|
137
|
+
throw err;
|
|
138
|
+
}
|
|
135
139
|
}
|
|
136
140
|
/**
|
|
137
141
|
* Detects if the site in question has no script enabled or not. Detection is done
|
|
@@ -141,14 +145,14 @@ export class SpoPropertyBagBaseCommand extends SpoCommand {
|
|
|
141
145
|
* @param options command options
|
|
142
146
|
* @param cmd command instance
|
|
143
147
|
*/
|
|
144
|
-
static isNoScriptSite(webUrl, formDigest, webIdentityResp, logger, debug) {
|
|
145
|
-
|
|
146
|
-
spo.getEffectiveBasePermissions(webIdentityResp.objectIdentity, webUrl, formDigest, logger, debug)
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
}
|
|
148
|
+
static async isNoScriptSite(webUrl, formDigest, webIdentityResp, logger, debug) {
|
|
149
|
+
try {
|
|
150
|
+
const basePermissionsResp = await spo.getEffectiveBasePermissions(webIdentityResp.objectIdentity, webUrl, formDigest, logger, debug);
|
|
151
|
+
return basePermissionsResp.has(PermissionKind.AddAndCustomizePages) === false;
|
|
152
|
+
}
|
|
153
|
+
catch (err) {
|
|
154
|
+
throw err;
|
|
155
|
+
}
|
|
152
156
|
}
|
|
153
157
|
}
|
|
154
158
|
//# sourceMappingURL=propertybag-base.js.map
|
|
@@ -27,24 +27,8 @@ class SpoPropertyBagRemoveCommand extends SpoPropertyBagBaseCommand {
|
|
|
27
27
|
__classPrivateFieldGet(this, _SpoPropertyBagRemoveCommand_instances, "m", _SpoPropertyBagRemoveCommand_initValidators).call(this);
|
|
28
28
|
}
|
|
29
29
|
async commandAction(logger, args) {
|
|
30
|
-
const removeProperty = async () => {
|
|
31
|
-
try {
|
|
32
|
-
const contextResponse = await spo.getRequestDigest(args.options.webUrl);
|
|
33
|
-
this.formDigestValue = contextResponse.FormDigestValue;
|
|
34
|
-
let identityResp = await spo.getCurrentWebIdentity(args.options.webUrl, this.formDigestValue);
|
|
35
|
-
const opts = args.options;
|
|
36
|
-
if (opts.folder) {
|
|
37
|
-
// get the folder guid instead of the web guid
|
|
38
|
-
identityResp = await spo.getFolderIdentity(identityResp.objectIdentity, opts.webUrl, opts.folder, this.formDigestValue);
|
|
39
|
-
}
|
|
40
|
-
await this.removeProperty(identityResp, args.options);
|
|
41
|
-
}
|
|
42
|
-
catch (err) {
|
|
43
|
-
this.handleRejectedPromise(err);
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
30
|
if (args.options.force) {
|
|
47
|
-
await removeProperty();
|
|
31
|
+
await this.removeProperty(args);
|
|
48
32
|
}
|
|
49
33
|
else {
|
|
50
34
|
const result = await Cli.prompt({
|
|
@@ -54,11 +38,27 @@ class SpoPropertyBagRemoveCommand extends SpoPropertyBagBaseCommand {
|
|
|
54
38
|
message: `Are you sure you want to remove the ${args.options.key} property?`
|
|
55
39
|
});
|
|
56
40
|
if (result.continue) {
|
|
57
|
-
await removeProperty();
|
|
41
|
+
await this.removeProperty(args);
|
|
58
42
|
}
|
|
59
43
|
}
|
|
60
44
|
}
|
|
61
|
-
removeProperty(
|
|
45
|
+
async removeProperty(args) {
|
|
46
|
+
try {
|
|
47
|
+
const contextResponse = await spo.getRequestDigest(args.options.webUrl);
|
|
48
|
+
this.formDigestValue = contextResponse.FormDigestValue;
|
|
49
|
+
let identityResp = await spo.getCurrentWebIdentity(args.options.webUrl, this.formDigestValue);
|
|
50
|
+
const opts = args.options;
|
|
51
|
+
if (opts.folder) {
|
|
52
|
+
// get the folder guid instead of the web guid
|
|
53
|
+
identityResp = await spo.getFolderIdentity(identityResp.objectIdentity, opts.webUrl, opts.folder, this.formDigestValue);
|
|
54
|
+
}
|
|
55
|
+
await this.removePropertyWithIdentityResp(identityResp, args.options);
|
|
56
|
+
}
|
|
57
|
+
catch (err) {
|
|
58
|
+
this.handleRejectedPromise(err);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
async removePropertyWithIdentityResp(identityResp, options) {
|
|
62
62
|
let objectType = 'AllProperties';
|
|
63
63
|
if (options.folder) {
|
|
64
64
|
objectType = 'Properties';
|
|
@@ -70,18 +70,15 @@ class SpoPropertyBagRemoveCommand extends SpoPropertyBagBaseCommand {
|
|
|
70
70
|
},
|
|
71
71
|
data: `<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><Method Name="SetFieldValue" Id="206" ObjectPathId="205"><Parameters><Parameter Type="String">${formatting.escapeXml(options.key)}</Parameter><Parameter Type="Null" /></Parameters></Method><Method Name="Update" Id="207" ObjectPathId="198" /></Actions><ObjectPaths><Property Id="205" ParentId="198" Name="${objectType}" /><Identity Id="198" Name="${identityResp.objectIdentity}" /></ObjectPaths></Request>`
|
|
72
72
|
};
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
}
|
|
83
|
-
}, (err) => { reject(err); });
|
|
84
|
-
});
|
|
73
|
+
const res = await request.post(requestOptions);
|
|
74
|
+
const json = JSON.parse(res);
|
|
75
|
+
const contents = json.find(x => { return x['ErrorInfo']; });
|
|
76
|
+
if (contents && contents.ErrorInfo) {
|
|
77
|
+
throw contents.ErrorInfo.ErrorMessage || 'ClientSvc unknown error';
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
return res;
|
|
81
|
+
}
|
|
85
82
|
}
|
|
86
83
|
}
|
|
87
84
|
_SpoPropertyBagRemoveCommand_instances = new WeakSet(), _SpoPropertyBagRemoveCommand_initTelemetry = function _SpoPropertyBagRemoveCommand_initTelemetry() {
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var FlowsPolicy;
|
|
2
|
+
(function (FlowsPolicy) {
|
|
3
|
+
FlowsPolicy[FlowsPolicy["Unknown"] = 0] = "Unknown";
|
|
4
|
+
FlowsPolicy[FlowsPolicy["Disabled"] = 1] = "Disabled";
|
|
5
|
+
FlowsPolicy[FlowsPolicy["Enabled"] = 2] = "Enabled";
|
|
6
|
+
})(FlowsPolicy || (FlowsPolicy = {}));
|
|
7
|
+
//# sourceMappingURL=FlowsPolicy.js.map
|
|
@@ -79,7 +79,7 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
79
79
|
expectedWebTemplate = 'SITEPAGEPUBLISHING#0';
|
|
80
80
|
break;
|
|
81
81
|
case 'ClassicSite':
|
|
82
|
-
expectedWebTemplate = args.options.webTemplate;
|
|
82
|
+
expectedWebTemplate = args.options.webTemplate || 'STS#0';
|
|
83
83
|
break;
|
|
84
84
|
default:
|
|
85
85
|
throw `${args.options.type} is not a valid site type. Allowed types are TeamSite,CommunicationSite,ClassicSite`;
|
|
@@ -138,7 +138,7 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
138
138
|
};
|
|
139
139
|
const validationResult = await spoSiteAddCommand.validate({ options: options }, Cli.getCommandInfo(spoSiteAddCommand));
|
|
140
140
|
if (validationResult !== true) {
|
|
141
|
-
|
|
141
|
+
throw validationResult;
|
|
142
142
|
}
|
|
143
143
|
return Cli.executeCommandWithOutput(spoSiteAddCommand, { options: { ...options, _: [] } });
|
|
144
144
|
}
|
|
@@ -161,7 +161,7 @@ class SpoSiteEnsureCommand extends SpoCommand {
|
|
|
161
161
|
};
|
|
162
162
|
const validationResult = await spoSiteSetCommand.validate({ options: options }, Cli.getCommandInfo(spoSiteSetCommand));
|
|
163
163
|
if (validationResult !== true) {
|
|
164
|
-
|
|
164
|
+
throw validationResult;
|
|
165
165
|
}
|
|
166
166
|
return Cli.executeCommandWithOutput(spoSiteSetCommand, { options: { ...options, _: [] } });
|
|
167
167
|
}
|
|
@@ -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
|
}
|
|
@@ -44,45 +44,35 @@ class SpoSiteListCommand extends SpoCommand {
|
|
|
44
44
|
this.handleRejectedODataJsonPromise(err);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
getAllSites(spoAdminUrl, filter, startIndex, personalSite, webTemplate, formDigest, deleted, logger) {
|
|
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
|
-
|
|
74
|
-
|
|
75
|
-
|
|
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, deleted, logger) {
|
|
48
|
+
const res = await spo.ensureFormDigest(spoAdminUrl, logger, formDigest, this.debug);
|
|
49
|
+
let 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
|
+
if (deleted) {
|
|
51
|
+
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="4" ObjectPathId="3" /><ObjectPath Id="6" ObjectPathId="5" /><Query Id="7" ObjectPathId="5"><Query SelectAllProperties="true"><Properties><Property Name="NextStartIndexFromSharePoint" ScalarProperty="true" /></Properties></Query><ChildItemQuery SelectAllProperties="true"><Properties /></ChildItemQuery></Query></Actions><ObjectPaths><Constructor Id="3" TypeId="{268004ae-ef6b-4e9b-8425-127220d84719}" /><Method Id="5" ParentId="3" Name="GetDeletedSitePropertiesFromSharePoint"><Parameters><Parameter Type="String">${startIndex}</Parameter></Parameters></Method></ObjectPaths></Request>`;
|
|
52
|
+
}
|
|
53
|
+
const requestOptions = {
|
|
54
|
+
url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
|
|
55
|
+
headers: {
|
|
56
|
+
'X-RequestDigest': res.FormDigestValue
|
|
57
|
+
},
|
|
58
|
+
data: requestBody
|
|
59
|
+
};
|
|
60
|
+
const res1 = await request.post(requestOptions);
|
|
61
|
+
const json = JSON.parse(res1);
|
|
62
|
+
const response = json[0];
|
|
63
|
+
logger.log(response);
|
|
64
|
+
if (response.ErrorInfo) {
|
|
65
|
+
throw response.ErrorInfo.ErrorMessage;
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
const sites = json[json.length - 1];
|
|
69
|
+
logger.log(sites);
|
|
70
|
+
this.allSites.push(...sites._Child_Items_);
|
|
71
|
+
if (sites.NextStartIndexFromSharePoint) {
|
|
72
|
+
await this.getAllSites(spoAdminUrl, filter, sites.NextStartIndexFromSharePoint, personalSite, webTemplate, formDigest, deleted, logger);
|
|
73
|
+
}
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
86
76
|
}
|
|
87
77
|
getWebTemplateId(options) {
|
|
88
78
|
if (options.webTemplate) {
|