@pnp/cli-microsoft365 6.8.0-beta.f473be5 → 6.9.0-beta.289ab69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +2 -0
- package/README.md +6 -1
- package/dist/Command.js +6 -0
- package/dist/chili/chili.js +298 -0
- package/dist/chili/index.js +20 -0
- package/dist/cli/Cli.js +2 -2
- package/dist/m365/aad/commands/user/user-add.js +30 -21
- package/dist/m365/app/commands/permission/permission-add.js +279 -0
- package/dist/m365/app/commands.js +1 -0
- package/dist/m365/commands/commands.js +2 -0
- package/dist/m365/commands/docs.js +42 -0
- package/dist/m365/commands/login.js +1 -1
- package/dist/m365/commands/setup.js +180 -0
- package/dist/m365/commands/setupPresets.js +25 -0
- package/dist/m365/pa/commands/app/app-consent-set.js +101 -0
- package/dist/m365/pa/commands.js +1 -0
- package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-get.js +97 -0
- package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-list.js +85 -0
- package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-policysettings-list.js +89 -0
- package/dist/m365/purview/commands.js +3 -0
- package/dist/m365/spfx/commands/project/project-doctor/doctor-1.17.2.js +25 -0
- package/dist/m365/spfx/commands/project/project-doctor/rules/FN001035_DEP_fluentui_react.js +18 -0
- package/dist/m365/spfx/commands/project/project-doctor/rules/FN021009_PKG_no_duplicate_oui_deps.js +11 -4
- package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001035_DEP_fluentui_react.js +18 -0
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.15.2.js +2 -0
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.17.2.js +61 -0
- package/dist/m365/spfx/commands/project/project-upgrade.js +2 -1
- package/dist/m365/spfx/commands/spfx-doctor.js +29 -30
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +146 -0
- package/dist/m365/spo/commands/file/file-list.js +15 -4
- package/dist/m365/spo/commands/file/file-remove.js +3 -0
- package/dist/m365/spo/commands/list/list-get.js +30 -3
- package/dist/m365/spo/commands/list/list-list.js +39 -2
- package/dist/m365/spo/commands/listitem/listitem-batch-set.js +308 -0
- package/dist/m365/spo/commands/page/page-section-add.js +2 -3
- package/dist/m365/spo/commands/site/site-recyclebinitem-move.js +119 -0
- package/dist/m365/spo/commands/site/site-recyclebinitem-remove.js +106 -0
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-get.js +30 -39
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-list.js +47 -0
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +151 -0
- package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +152 -0
- package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +203 -0
- package/dist/m365/spo/commands/term/term-add.js +13 -4
- package/dist/m365/spo/commands/term/term-get.js +14 -5
- package/dist/m365/spo/commands/term/term-group-get.js +12 -3
- package/dist/m365/spo/commands/term/term-group-list.js +39 -4
- package/dist/m365/spo/commands/term/term-list.js +18 -9
- package/dist/m365/spo/commands/term/term-set-add.js +13 -4
- package/dist/m365/spo/commands/term/term-set-get.js +12 -3
- package/dist/m365/spo/commands/term/term-set-list.js +12 -3
- package/dist/m365/spo/commands.js +9 -0
- package/dist/m365/teams/commands/chat/chat-member-remove.js +137 -0
- package/dist/m365/teams/commands.js +1 -0
- package/dist/utils/formatting.js +35 -11
- package/dist/utils/pid.js +5 -0
- package/docs/docs/cmd/aad/o365group/o365group-get.md +0 -12
- package/docs/docs/cmd/aad/user/user-add.md +4 -0
- package/docs/docs/cmd/aad/user/user-set.md +2 -2
- package/docs/docs/cmd/adaptivecard/adaptivecard-send.md +13 -13
- package/docs/docs/cmd/app/app-get.md +25 -6
- package/docs/docs/cmd/app/app-open.md +8 -2
- package/docs/docs/cmd/app/permission/permission-add.md +53 -0
- package/docs/docs/cmd/app/permission/permission-list.md +19 -19
- package/docs/docs/cmd/booking/business/business-get.md +30 -8
- package/docs/docs/cmd/booking/business/business-list.md +17 -8
- package/docs/docs/cmd/cli/cli-consent.md +6 -0
- package/docs/docs/cmd/cli/cli-doctor.md +17 -0
- package/docs/docs/cmd/cli/cli-issue.md +6 -0
- package/docs/docs/cmd/cli/cli-reconsent.md +6 -0
- package/docs/docs/cmd/cli/completion/completion-sh-setup.md +6 -0
- package/docs/docs/cmd/cli/config/config-get.md +6 -0
- package/docs/docs/cmd/docs.md +51 -0
- package/docs/docs/cmd/flow/environment/environment-list.md +18 -0
- package/docs/docs/cmd/flow/flow-get.md +20 -0
- package/docs/docs/cmd/flow/flow-list.md +17 -0
- package/docs/docs/cmd/graph/changelog/changelog-list.md +52 -0
- package/docs/docs/cmd/graph/schemaextension/schemaextension-add.md +61 -0
- package/docs/docs/cmd/graph/schemaextension/schemaextension-get.md +61 -0
- package/docs/docs/cmd/graph/schemaextension/schemaextension-list.md +61 -0
- package/docs/docs/cmd/graph/schemaextension/schemaextension-remove.md +4 -0
- package/docs/docs/cmd/graph/schemaextension/schemaextension-set.md +4 -0
- package/docs/docs/cmd/graph/subscription/subscription-add.md +73 -0
- package/docs/docs/cmd/login.md +1 -1
- package/docs/docs/cmd/onedrive/onedrive-list.md +225 -0
- package/docs/docs/cmd/onedrive/report/report-activityfilecounts.md +39 -0
- package/docs/docs/cmd/onedrive/report/report-activityusercounts.md +39 -0
- package/docs/docs/cmd/onedrive/report/report-activityuserdetail.md +43 -0
- package/docs/docs/cmd/onedrive/report/report-usageaccountcounts.md +38 -0
- package/docs/docs/cmd/onedrive/report/report-usageaccountdetail.md +43 -0
- package/docs/docs/cmd/onedrive/report/report-usagefilecounts.md +38 -0
- package/docs/docs/cmd/onedrive/report/report-usagestorage.md +37 -0
- package/docs/docs/cmd/onenote/notebook/notebook-list.md +79 -0
- package/docs/docs/cmd/pa/app/app-consent-set.md +47 -0
- package/docs/docs/cmd/planner/plan/plan-get.md +1 -1
- package/docs/docs/cmd/planner/plan/plan-list.md +1 -1
- package/docs/docs/cmd/planner/roster/roster-add.md +2 -1
- package/docs/docs/cmd/planner/roster/roster-get.md +1 -1
- package/docs/docs/cmd/planner/roster/roster-remove.md +2 -1
- package/docs/docs/cmd/planner/task/task-get.md +0 -6
- package/docs/docs/cmd/planner/task/task-set.md +1 -1
- package/docs/docs/cmd/purview/retentionevent/retentionevent-add.md +6 -7
- package/docs/docs/cmd/purview/retentionevent/retentionevent-get.md +6 -7
- package/docs/docs/cmd/purview/retentionevent/retentionevent-list.md +4 -4
- package/docs/docs/cmd/purview/retentionevent/retentionevent-remove.md +4 -4
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-add.md +10 -10
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-get.md +11 -11
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-list.md +10 -10
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-remove.md +10 -10
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-set.md +10 -10
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-add.md +12 -12
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-get.md +8 -9
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-list.md +8 -9
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-remove.md +8 -8
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-set.md +8 -8
- package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-get.md +118 -0
- package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-list.md +111 -0
- package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-policysettings-list.md +97 -0
- package/docs/docs/cmd/search/externalconnection/externalconnection-get.md +17 -0
- package/docs/docs/cmd/search/externalconnection/externalconnection-list.md +17 -0
- package/docs/docs/cmd/setup.md +86 -0
- package/docs/docs/cmd/spfx/project/project-doctor.md +1 -1
- package/docs/docs/cmd/spfx/project/project-upgrade.md +1 -1
- package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-add.md +1 -1
- package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-remove.md +77 -0
- package/docs/docs/cmd/spo/commandset/commandset-set.md +1 -1
- package/docs/docs/cmd/spo/contenttype/contenttype-set.md +2 -2
- package/docs/docs/cmd/spo/customaction/customaction-add.md +1 -1
- package/docs/docs/cmd/spo/customaction/customaction-set.md +1 -1
- package/docs/docs/cmd/spo/file/file-list.md +9 -6
- package/docs/docs/cmd/spo/file/file-remove.md +12 -0
- package/docs/docs/cmd/spo/folder/folder-copy.md +1 -1
- package/docs/docs/cmd/spo/list/list-get.md +10 -0
- package/docs/docs/cmd/spo/list/list-list.md +28 -0
- package/docs/docs/cmd/spo/listitem/listitem-batch-set.md +67 -0
- package/docs/docs/cmd/spo/listitem/listitem-list.md +1 -1
- package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-list.md +19 -0
- package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-remove.md +12 -0
- package/docs/docs/cmd/spo/orgnewssite/orgnewssite-list.md +6 -0
- package/docs/docs/cmd/spo/page/page-column-get.md +15 -0
- package/docs/docs/cmd/spo/page/page-column-list.md +16 -0
- package/docs/docs/cmd/spo/page/page-control-get.md +18 -0
- package/docs/docs/cmd/spo/page/page-control-list.md +18 -0
- package/docs/docs/cmd/spo/page/page-copy.md +35 -0
- package/docs/docs/cmd/spo/page/page-get.md +39 -0
- package/docs/docs/cmd/spo/page/page-list.md +53 -0
- package/docs/docs/cmd/spo/page/page-section-get.md +12 -0
- package/docs/docs/cmd/spo/page/page-section-list.md +13 -0
- package/docs/docs/cmd/spo/page/page-template-list.md +31 -0
- package/docs/docs/cmd/spo/propertybag/propertybag-get.md +6 -0
- package/docs/docs/cmd/spo/propertybag/propertybag-list.md +13 -0
- package/docs/docs/cmd/spo/report/report-activityfilecounts.md +7 -0
- package/docs/docs/cmd/spo/report/report-activitypages.md +7 -0
- package/docs/docs/cmd/spo/report/report-activityusercounts.md +7 -0
- package/docs/docs/cmd/spo/report/report-activityuserdetail.md +7 -0
- package/docs/docs/cmd/spo/report/report-siteusagedetail.md +7 -0
- package/docs/docs/cmd/spo/report/report-siteusagefilecounts.md +7 -0
- package/docs/docs/cmd/spo/report/report-siteusagepages.md +7 -0
- package/docs/docs/cmd/spo/report/report-siteusagesitecounts.md +7 -0
- package/docs/docs/cmd/spo/report/report-siteusagestorage.md +7 -0
- package/docs/docs/cmd/spo/roledefinition/roledefinition-get.md +20 -0
- package/docs/docs/cmd/spo/roledefinition/roledefinition-list.md +20 -0
- package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-add.md +20 -0
- package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-list.md +18 -0
- package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-approve.md +20 -0
- package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-list.md +17 -0
- package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-set.md +13 -0
- package/docs/docs/cmd/spo/site/site-recyclebinitem-move.md +43 -0
- package/docs/docs/cmd/spo/site/site-recyclebinitem-remove.md +45 -0
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-add.md +1 -1
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-list.md +103 -0
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-remove.md +49 -0
- package/docs/docs/cmd/spo/tenant/tenant-commandset-remove.md +49 -0
- package/docs/docs/cmd/spo/tenant/tenant-commandset-set.md +57 -0
- package/docs/docs/cmd/spo/term/term-add.md +107 -6
- package/docs/docs/cmd/spo/term/term-get.md +111 -10
- package/docs/docs/cmd/spo/term/term-group-get.md +71 -5
- package/docs/docs/cmd/spo/term/term-group-list.md +70 -2
- package/docs/docs/cmd/spo/term/term-list.md +80 -8
- package/docs/docs/cmd/spo/term/term-set-add.md +95 -11
- package/docs/docs/cmd/spo/term/term-set-get.md +92 -8
- package/docs/docs/cmd/spo/term/term-set-list.md +85 -5
- package/docs/docs/cmd/teams/app/app-list.md +17 -0
- package/docs/docs/cmd/teams/app/app-publish.md +18 -1
- package/docs/docs/cmd/teams/channel/channel-add.md +20 -0
- package/docs/docs/cmd/teams/channel/channel-get.md +21 -0
- package/docs/docs/cmd/teams/channel/channel-list.md +21 -0
- package/docs/docs/cmd/teams/channel/channel-member-list.md +20 -0
- package/docs/docs/cmd/teams/channel/channel-member-set.md +21 -0
- package/docs/docs/cmd/teams/chat/chat-get.md +22 -0
- package/docs/docs/cmd/teams/chat/chat-list.md +22 -0
- package/docs/docs/cmd/teams/chat/chat-member-list.md +20 -0
- package/docs/docs/cmd/teams/chat/chat-member-remove.md +52 -0
- package/docs/docs/cmd/teams/chat/chat-message-list.md +23 -0
- package/docs/docs/cmd/teams/funsettings/funsettings-list.md +15 -0
- package/docs/docs/cmd/teams/guestsettings/guestsettings-list.md +13 -0
- package/docs/docs/cmd/teams/membersettings/membersettings-list.md +17 -0
- package/docs/docs/cmd/teams/tab/tab-remove.md +1 -1
- package/docs/docs/cmd/todo/list/list-add.md +18 -0
- package/docs/docs/cmd/todo/list/list-get.md +18 -0
- package/docs/docs/cmd/todo/list/list-list.md +18 -0
- package/docs/docs/cmd/todo/task/task-get.md +21 -0
- package/docs/docs/cmd/todo/task/task-list.md +21 -0
- package/docs/docs/cmd/util/accesstoken/accesstoken-get.md +6 -0
- package/docs/docs/cmd/version.md +1 -1
- package/docs/docs/cmd/viva/connections/connections-app-create.md +3 -3
- package/docs/docs/cmd/yammer/group/group-list.md +42 -0
- package/docs/docs/cmd/yammer/message/message-add.md +32 -0
- package/docs/docs/cmd/yammer/message/message-get.md +32 -0
- package/docs/docs/cmd/yammer/message/message-list.md +34 -0
- package/docs/docs/cmd/yammer/network/network-list.md +70 -0
- package/docs/docs/cmd/yammer/report/report-activitycounts.md +7 -0
- package/docs/docs/cmd/yammer/report/report-activityusercounts.md +7 -0
- package/docs/docs/cmd/yammer/report/report-activityuserdetail.md +7 -0
- package/docs/docs/cmd/yammer/report/report-deviceusagedistributionusercounts.md +7 -0
- package/docs/docs/cmd/yammer/report/report-deviceusageusercounts.md +7 -0
- package/docs/docs/cmd/yammer/report/report-deviceusageuserdetail.md +7 -0
- package/docs/docs/cmd/yammer/report/report-groupsactivitycounts.md +7 -0
- package/docs/docs/cmd/yammer/report/report-groupsactivitydetail.md +7 -0
- package/docs/docs/cmd/yammer/report/report-groupsactivitygroupcounts.md +7 -0
- package/docs/docs/cmd/yammer/user/user-get.md +55 -0
- package/docs/docs/cmd/yammer/user/user-list.md +55 -0
- package/docs/docs/cmd/yammer/yammer-search.md +15 -3
- package/npm-shrinkwrap.json +3 -2
- package/package.json +2 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const Command_1 = require("../../../../Command");
|
|
13
|
+
const formatting_1 = require("../../../../utils/formatting");
|
|
14
|
+
const odata_1 = require("../../../../utils/odata");
|
|
15
|
+
const spo_1 = require("../../../../utils/spo");
|
|
16
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
17
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
18
|
+
const commands_1 = require("../../commands");
|
|
19
|
+
class SpoTenantApplicationCustomizerListCommand extends SpoCommand_1.default {
|
|
20
|
+
get name() {
|
|
21
|
+
return commands_1.default.TENANT_APPLICATIONCUSTOMIZER_LIST;
|
|
22
|
+
}
|
|
23
|
+
get description() {
|
|
24
|
+
return 'Retrieves a list of application customizers that are installed tenant-wide.';
|
|
25
|
+
}
|
|
26
|
+
defaultProperties() {
|
|
27
|
+
return ['Title', 'TenantWideExtensionComponentId', 'TenantWideExtensionWebTemplate'];
|
|
28
|
+
}
|
|
29
|
+
commandAction(logger) {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
const appCatalogUrl = yield spo_1.spo.getTenantAppCatalogUrl(logger, this.debug);
|
|
32
|
+
if (!appCatalogUrl) {
|
|
33
|
+
throw new Command_1.CommandError('No app catalog URL found');
|
|
34
|
+
}
|
|
35
|
+
const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
|
|
36
|
+
try {
|
|
37
|
+
const response = yield odata_1.odata.getAllItems(`${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/items?$filter=TenantWideExtensionLocation eq 'ClientSideExtension.ApplicationCustomizer'`);
|
|
38
|
+
logger.log(response);
|
|
39
|
+
}
|
|
40
|
+
catch (err) {
|
|
41
|
+
this.handleRejectedODataJsonPromise(err);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
module.exports = new SpoTenantApplicationCustomizerListCommand();
|
|
47
|
+
//# sourceMappingURL=tenant-applicationcustomizer-list.js.map
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
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");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _SpoTenantApplicationCustomizerRemoveCommand_instances, _SpoTenantApplicationCustomizerRemoveCommand_initTelemetry, _SpoTenantApplicationCustomizerRemoveCommand_initOptions, _SpoTenantApplicationCustomizerRemoveCommand_initValidators, _SpoTenantApplicationCustomizerRemoveCommand_initOptionSets;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
|
+
const request_1 = require("../../../../request");
|
|
20
|
+
const formatting_1 = require("../../../../utils/formatting");
|
|
21
|
+
const odata_1 = require("../../../../utils/odata");
|
|
22
|
+
const spo_1 = require("../../../../utils/spo");
|
|
23
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
24
|
+
const validation_1 = require("../../../../utils/validation");
|
|
25
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
26
|
+
const commands_1 = require("../../commands");
|
|
27
|
+
class SpoTenantApplicationCustomizerRemoveCommand extends SpoCommand_1.default {
|
|
28
|
+
get name() {
|
|
29
|
+
return commands_1.default.TENANT_APPLICATIONCUSTOMIZER_REMOVE;
|
|
30
|
+
}
|
|
31
|
+
get description() {
|
|
32
|
+
return 'Removes an application customizer that is installed tenant wide.';
|
|
33
|
+
}
|
|
34
|
+
constructor() {
|
|
35
|
+
super();
|
|
36
|
+
_SpoTenantApplicationCustomizerRemoveCommand_instances.add(this);
|
|
37
|
+
__classPrivateFieldGet(this, _SpoTenantApplicationCustomizerRemoveCommand_instances, "m", _SpoTenantApplicationCustomizerRemoveCommand_initTelemetry).call(this);
|
|
38
|
+
__classPrivateFieldGet(this, _SpoTenantApplicationCustomizerRemoveCommand_instances, "m", _SpoTenantApplicationCustomizerRemoveCommand_initOptions).call(this);
|
|
39
|
+
__classPrivateFieldGet(this, _SpoTenantApplicationCustomizerRemoveCommand_instances, "m", _SpoTenantApplicationCustomizerRemoveCommand_initValidators).call(this);
|
|
40
|
+
__classPrivateFieldGet(this, _SpoTenantApplicationCustomizerRemoveCommand_instances, "m", _SpoTenantApplicationCustomizerRemoveCommand_initOptionSets).call(this);
|
|
41
|
+
}
|
|
42
|
+
commandAction(logger, args) {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
try {
|
|
45
|
+
if (args.options.confirm) {
|
|
46
|
+
return yield this.removeTenantApplicationCustomizer(logger, args);
|
|
47
|
+
}
|
|
48
|
+
const result = yield Cli_1.Cli.prompt({
|
|
49
|
+
type: 'confirm',
|
|
50
|
+
name: 'continue',
|
|
51
|
+
default: false,
|
|
52
|
+
message: `Are you sure you want to remove the tenant applicationcustomizer ${args.options.id || args.options.title || args.options.clientSideComponentId}?`
|
|
53
|
+
});
|
|
54
|
+
if (result.continue) {
|
|
55
|
+
yield this.removeTenantApplicationCustomizer(logger, args);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
this.handleRejectedODataJsonPromise(err);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
getTenantApplicationCustomizerId(logger, args, requestUrl) {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
if (this.verbose) {
|
|
66
|
+
logger.logToStderr(`Getting the tenant application customizer ${args.options.id || args.options.title || args.options.clientSideComponentId}`);
|
|
67
|
+
}
|
|
68
|
+
const filter = [`TenantWideExtensionLocation eq 'ClientSideExtension.ApplicationCustomizer'`];
|
|
69
|
+
if (args.options.title) {
|
|
70
|
+
filter.push(`Title eq '${args.options.title}'`);
|
|
71
|
+
}
|
|
72
|
+
else if (args.options.id) {
|
|
73
|
+
filter.push(`Id eq '${args.options.id}'`);
|
|
74
|
+
}
|
|
75
|
+
else if (args.options.clientSideComponentId) {
|
|
76
|
+
filter.push(`TenantWideExtensionComponentId eq '${args.options.clientSideComponentId}'`);
|
|
77
|
+
}
|
|
78
|
+
const listItemInstances = yield odata_1.odata.getAllItems(`${requestUrl}/items?$filter=${filter.join(' and ')}&$select=Id`);
|
|
79
|
+
if (listItemInstances.length === 0) {
|
|
80
|
+
throw 'The specified application customizer was not found';
|
|
81
|
+
}
|
|
82
|
+
if (listItemInstances.length > 1) {
|
|
83
|
+
throw `Multiple application customizers with ${args.options.title || args.options.clientSideComponentId} were found. Please disambiguate (IDs): ${listItemInstances.map(item => item.Id).join(', ')}`;
|
|
84
|
+
}
|
|
85
|
+
return listItemInstances[0].Id;
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
removeTenantApplicationCustomizer(logger, args) {
|
|
89
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
90
|
+
const appCatalogUrl = yield spo_1.spo.getTenantAppCatalogUrl(logger, this.debug);
|
|
91
|
+
if (!appCatalogUrl) {
|
|
92
|
+
throw 'No app catalog URL found';
|
|
93
|
+
}
|
|
94
|
+
const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
|
|
95
|
+
const requestUrl = `${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
|
|
96
|
+
const id = yield this.getTenantApplicationCustomizerId(logger, args, requestUrl);
|
|
97
|
+
if (this.verbose) {
|
|
98
|
+
logger.logToStderr(`Removing tenant application customizer ${args.options.id || args.options.title || args.options.clientSideComponentId}`);
|
|
99
|
+
}
|
|
100
|
+
const requestOptions = {
|
|
101
|
+
url: `${requestUrl}/items(${id})`,
|
|
102
|
+
method: 'POST',
|
|
103
|
+
headers: {
|
|
104
|
+
'X-HTTP-Method': 'DELETE',
|
|
105
|
+
'If-Match': '*',
|
|
106
|
+
'accept': 'application/json;odata=nometadata'
|
|
107
|
+
},
|
|
108
|
+
responseType: 'json'
|
|
109
|
+
};
|
|
110
|
+
yield request_1.default.post(requestOptions);
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
_SpoTenantApplicationCustomizerRemoveCommand_instances = new WeakSet(), _SpoTenantApplicationCustomizerRemoveCommand_initTelemetry = function _SpoTenantApplicationCustomizerRemoveCommand_initTelemetry() {
|
|
115
|
+
this.telemetry.push((args) => {
|
|
116
|
+
Object.assign(this.telemetryProperties, {
|
|
117
|
+
title: typeof args.options.title !== 'undefined',
|
|
118
|
+
id: typeof args.options.id !== 'undefined',
|
|
119
|
+
clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
|
|
120
|
+
confirm: !!args.options.confirm
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
}, _SpoTenantApplicationCustomizerRemoveCommand_initOptions = function _SpoTenantApplicationCustomizerRemoveCommand_initOptions() {
|
|
124
|
+
this.options.unshift({
|
|
125
|
+
option: '-t, --title [title]'
|
|
126
|
+
}, {
|
|
127
|
+
option: '-i, --id [id]'
|
|
128
|
+
}, {
|
|
129
|
+
option: '-c, --clientSideComponentId [clientSideComponentId]'
|
|
130
|
+
}, {
|
|
131
|
+
option: '--confirm'
|
|
132
|
+
});
|
|
133
|
+
}, _SpoTenantApplicationCustomizerRemoveCommand_initValidators = function _SpoTenantApplicationCustomizerRemoveCommand_initValidators() {
|
|
134
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
135
|
+
if (args.options.id) {
|
|
136
|
+
const id = parseInt(args.options.id);
|
|
137
|
+
if (isNaN(id)) {
|
|
138
|
+
return `${args.options.id} is not a valid list item ID`;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
if (args.options.clientSideComponentId &&
|
|
142
|
+
!validation_1.validation.isValidGuid(args.options.clientSideComponentId)) {
|
|
143
|
+
return `${args.options.clientSideComponentId} is not a valid GUID`;
|
|
144
|
+
}
|
|
145
|
+
return true;
|
|
146
|
+
}));
|
|
147
|
+
}, _SpoTenantApplicationCustomizerRemoveCommand_initOptionSets = function _SpoTenantApplicationCustomizerRemoveCommand_initOptionSets() {
|
|
148
|
+
this.optionSets.push({ options: ['title', 'id', 'clientSideComponentId'] });
|
|
149
|
+
};
|
|
150
|
+
module.exports = new SpoTenantApplicationCustomizerRemoveCommand();
|
|
151
|
+
//# sourceMappingURL=tenant-applicationcustomizer-remove.js.map
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
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");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _SpoTenantCommandSetRemoveCommand_instances, _SpoTenantCommandSetRemoveCommand_initTelemetry, _SpoTenantCommandSetRemoveCommand_initOptions, _SpoTenantCommandSetRemoveCommand_initValidators, _SpoTenantCommandSetRemoveCommand_initOptionSets;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
|
+
const request_1 = require("../../../../request");
|
|
20
|
+
const formatting_1 = require("../../../../utils/formatting");
|
|
21
|
+
const odata_1 = require("../../../../utils/odata");
|
|
22
|
+
const spo_1 = require("../../../../utils/spo");
|
|
23
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
24
|
+
const validation_1 = require("../../../../utils/validation");
|
|
25
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
26
|
+
const commands_1 = require("../../commands");
|
|
27
|
+
class SpoTenantCommandSetRemoveCommand extends SpoCommand_1.default {
|
|
28
|
+
get name() {
|
|
29
|
+
return commands_1.default.TENANT_COMMANDSET_REMOVE;
|
|
30
|
+
}
|
|
31
|
+
get description() {
|
|
32
|
+
return 'Removes a ListView Command Set that is installed tenant wide.';
|
|
33
|
+
}
|
|
34
|
+
constructor() {
|
|
35
|
+
super();
|
|
36
|
+
_SpoTenantCommandSetRemoveCommand_instances.add(this);
|
|
37
|
+
__classPrivateFieldGet(this, _SpoTenantCommandSetRemoveCommand_instances, "m", _SpoTenantCommandSetRemoveCommand_initTelemetry).call(this);
|
|
38
|
+
__classPrivateFieldGet(this, _SpoTenantCommandSetRemoveCommand_instances, "m", _SpoTenantCommandSetRemoveCommand_initOptions).call(this);
|
|
39
|
+
__classPrivateFieldGet(this, _SpoTenantCommandSetRemoveCommand_instances, "m", _SpoTenantCommandSetRemoveCommand_initValidators).call(this);
|
|
40
|
+
__classPrivateFieldGet(this, _SpoTenantCommandSetRemoveCommand_instances, "m", _SpoTenantCommandSetRemoveCommand_initOptionSets).call(this);
|
|
41
|
+
}
|
|
42
|
+
commandAction(logger, args) {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
try {
|
|
45
|
+
if (args.options.confirm) {
|
|
46
|
+
return yield this.removeTenantCommandSet(logger, args);
|
|
47
|
+
}
|
|
48
|
+
const result = yield Cli_1.Cli.prompt({
|
|
49
|
+
type: 'confirm',
|
|
50
|
+
name: 'continue',
|
|
51
|
+
default: false,
|
|
52
|
+
message: `Are you sure you want to remove the tenant commandset ${args.options.id || args.options.title || args.options.clientSideComponentId}?`
|
|
53
|
+
});
|
|
54
|
+
if (result.continue) {
|
|
55
|
+
yield this.removeTenantCommandSet(logger, args);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
logger.log(err);
|
|
60
|
+
this.handleRejectedODataJsonPromise(err);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
removeTenantCommandSet(logger, args) {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
66
|
+
const appCatalogUrl = yield spo_1.spo.getTenantAppCatalogUrl(logger, this.debug);
|
|
67
|
+
if (!appCatalogUrl) {
|
|
68
|
+
throw 'No app catalog URL found';
|
|
69
|
+
}
|
|
70
|
+
const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
|
|
71
|
+
const requestUrl = `${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
|
|
72
|
+
const id = yield this.getTenantCommandSetId(logger, args, requestUrl);
|
|
73
|
+
if (this.verbose) {
|
|
74
|
+
logger.logToStderr(`Removing tenant command set ${args.options.id || args.options.title || args.options.clientSideComponentId}`);
|
|
75
|
+
}
|
|
76
|
+
const requestOptions = {
|
|
77
|
+
url: `${requestUrl}/items(${id})`,
|
|
78
|
+
method: 'POST',
|
|
79
|
+
headers: {
|
|
80
|
+
'X-HTTP-Method': 'DELETE',
|
|
81
|
+
'If-Match': '*',
|
|
82
|
+
'accept': 'application/json;odata=nometadata'
|
|
83
|
+
},
|
|
84
|
+
responseType: 'json'
|
|
85
|
+
};
|
|
86
|
+
yield request_1.default.post(requestOptions);
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
getTenantCommandSetId(logger, args, requestUrl) {
|
|
90
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
if (this.verbose) {
|
|
92
|
+
logger.logToStderr(`Getting the tenant command set ${args.options.id || args.options.title || args.options.clientSideComponentId}`);
|
|
93
|
+
}
|
|
94
|
+
let filter = '';
|
|
95
|
+
if (args.options.title) {
|
|
96
|
+
filter = `Title eq '${args.options.title}'`;
|
|
97
|
+
}
|
|
98
|
+
else if (args.options.id) {
|
|
99
|
+
filter = `Id eq ${args.options.id}`;
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
filter = `TenantWideExtensionComponentId eq '${args.options.clientSideComponentId}'`;
|
|
103
|
+
}
|
|
104
|
+
const listItemInstances = yield odata_1.odata.getAllItems(`${requestUrl}/items?$filter=startswith(TenantWideExtensionLocation,'ClientSideExtension.ListViewCommandSet') and ${filter}`);
|
|
105
|
+
if (listItemInstances.length === 0) {
|
|
106
|
+
throw 'The specified command set was not found';
|
|
107
|
+
}
|
|
108
|
+
if (listItemInstances.length > 1) {
|
|
109
|
+
throw `Multiple command sets with ${args.options.title || args.options.clientSideComponentId} were found. Please disambiguate (IDs): ${listItemInstances.map(item => item.Id).join(', ')}`;
|
|
110
|
+
}
|
|
111
|
+
return listItemInstances[0].Id;
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
_SpoTenantCommandSetRemoveCommand_instances = new WeakSet(), _SpoTenantCommandSetRemoveCommand_initTelemetry = function _SpoTenantCommandSetRemoveCommand_initTelemetry() {
|
|
116
|
+
this.telemetry.push((args) => {
|
|
117
|
+
Object.assign(this.telemetryProperties, {
|
|
118
|
+
title: typeof args.options.title !== 'undefined',
|
|
119
|
+
id: typeof args.options.id !== 'undefined',
|
|
120
|
+
clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
|
|
121
|
+
confirm: !!args.options.confirm
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
}, _SpoTenantCommandSetRemoveCommand_initOptions = function _SpoTenantCommandSetRemoveCommand_initOptions() {
|
|
125
|
+
this.options.unshift({
|
|
126
|
+
option: '-t, --title [title]'
|
|
127
|
+
}, {
|
|
128
|
+
option: '-i, --id [id]'
|
|
129
|
+
}, {
|
|
130
|
+
option: '-c, --clientSideComponentId [clientSideComponentId]'
|
|
131
|
+
}, {
|
|
132
|
+
option: '--confirm'
|
|
133
|
+
});
|
|
134
|
+
}, _SpoTenantCommandSetRemoveCommand_initValidators = function _SpoTenantCommandSetRemoveCommand_initValidators() {
|
|
135
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
136
|
+
if (args.options.id) {
|
|
137
|
+
const id = parseInt(args.options.id);
|
|
138
|
+
if (isNaN(id)) {
|
|
139
|
+
return `${args.options.id} is not a valid list item ID`;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
if (args.options.clientSideComponentId &&
|
|
143
|
+
!validation_1.validation.isValidGuid(args.options.clientSideComponentId)) {
|
|
144
|
+
return `${args.options.clientSideComponentId} is not a valid GUID`;
|
|
145
|
+
}
|
|
146
|
+
return true;
|
|
147
|
+
}));
|
|
148
|
+
}, _SpoTenantCommandSetRemoveCommand_initOptionSets = function _SpoTenantCommandSetRemoveCommand_initOptionSets() {
|
|
149
|
+
this.optionSets.push({ options: ['title', 'id', 'clientSideComponentId'] });
|
|
150
|
+
};
|
|
151
|
+
module.exports = new SpoTenantCommandSetRemoveCommand();
|
|
152
|
+
//# sourceMappingURL=tenant-commandset-remove.js.map
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
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");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _SpoTenantCommandSetSetCommand_instances, _SpoTenantCommandSetSetCommand_initTelemetry, _SpoTenantCommandSetSetCommand_initOptions, _SpoTenantCommandSetSetCommand_initValidators;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const validation_1 = require("../../../../utils/validation");
|
|
19
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
20
|
+
const commands_1 = require("../../commands");
|
|
21
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
22
|
+
const request_1 = require("../../../../request");
|
|
23
|
+
const formatting_1 = require("../../../../utils/formatting");
|
|
24
|
+
const spo_1 = require("../../../../utils/spo");
|
|
25
|
+
class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
|
|
26
|
+
get name() {
|
|
27
|
+
return commands_1.default.TENANT_COMMANDSET_SET;
|
|
28
|
+
}
|
|
29
|
+
get description() {
|
|
30
|
+
return 'Updates a ListView Command Set that is installed tenant wide.';
|
|
31
|
+
}
|
|
32
|
+
constructor() {
|
|
33
|
+
super();
|
|
34
|
+
_SpoTenantCommandSetSetCommand_instances.add(this);
|
|
35
|
+
__classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initTelemetry).call(this);
|
|
36
|
+
__classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initOptions).call(this);
|
|
37
|
+
__classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initValidators).call(this);
|
|
38
|
+
}
|
|
39
|
+
commandAction(logger, args) {
|
|
40
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
+
try {
|
|
42
|
+
const appCatalogUrl = yield spo_1.spo.getTenantAppCatalogUrl(logger, this.debug);
|
|
43
|
+
if (!appCatalogUrl) {
|
|
44
|
+
throw 'No app catalog URL found';
|
|
45
|
+
}
|
|
46
|
+
const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
|
|
47
|
+
const listItem = yield this.getListItemById(logger, appCatalogUrl, listServerRelativeUrl, args.options.id);
|
|
48
|
+
if (listItem.TenantWideExtensionLocation.indexOf("ClientSideExtension.ListViewCommandSet") === -1) {
|
|
49
|
+
throw 'The item is not a ListViewCommandSet';
|
|
50
|
+
}
|
|
51
|
+
yield this.updateTenantWideExtension(appCatalogUrl, args.options, listServerRelativeUrl, logger);
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
this.handleRejectedODataJsonPromise(err);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
getListItemById(logger, webUrl, listServerRelativeUrl, id) {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
if (this.verbose) {
|
|
61
|
+
logger.logToStderr(`Getting the list item by id ${id}`);
|
|
62
|
+
}
|
|
63
|
+
const reqOptions = {
|
|
64
|
+
url: `${webUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items(${id})`,
|
|
65
|
+
headers: {
|
|
66
|
+
'accept': 'application/json;odata=nometadata'
|
|
67
|
+
},
|
|
68
|
+
responseType: 'json'
|
|
69
|
+
};
|
|
70
|
+
return yield request_1.default.get(reqOptions);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
updateTenantWideExtension(appCatalogUrl, options, listServerRelativeUrl, logger) {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
if (this.verbose) {
|
|
76
|
+
logger.logToStderr('Updating tenant wide extension to the TenantWideExtensions list');
|
|
77
|
+
}
|
|
78
|
+
const formValues = [];
|
|
79
|
+
if (options.newTitle !== undefined) {
|
|
80
|
+
formValues.push({
|
|
81
|
+
FieldName: 'Title',
|
|
82
|
+
FieldValue: options.newTitle
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
if (options.clientSideComponentId !== undefined) {
|
|
86
|
+
formValues.push({
|
|
87
|
+
FieldName: 'TenantWideExtensionComponentId',
|
|
88
|
+
FieldValue: options.clientSideComponentId
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
if (options.location !== undefined) {
|
|
92
|
+
formValues.push({
|
|
93
|
+
FieldName: 'TenantWideExtensionLocation',
|
|
94
|
+
FieldValue: this.getLocation(options.location)
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
if (options.listType !== undefined) {
|
|
98
|
+
formValues.push({
|
|
99
|
+
FieldName: 'TenantWideExtensionListTemplate',
|
|
100
|
+
FieldValue: this.getListTemplate(options.listType)
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
if (options.clientSideComponentProperties !== undefined) {
|
|
104
|
+
formValues.push({
|
|
105
|
+
FieldName: 'TenantWideExtensionComponentProperties',
|
|
106
|
+
FieldValue: options.clientSideComponentProperties
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
if (options.webTemplate !== undefined) {
|
|
110
|
+
formValues.push({
|
|
111
|
+
FieldName: 'TenantWideExtensionWebTemplate',
|
|
112
|
+
FieldValue: options.webTemplate
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
const requestOptions = {
|
|
116
|
+
url: `${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items(${options.id})/ValidateUpdateListItem()`,
|
|
117
|
+
headers: {
|
|
118
|
+
'accept': 'application/json;odata=nometadata'
|
|
119
|
+
},
|
|
120
|
+
data: {
|
|
121
|
+
formValues: formValues
|
|
122
|
+
},
|
|
123
|
+
responseType: 'json'
|
|
124
|
+
};
|
|
125
|
+
yield request_1.default.post(requestOptions);
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
getLocation(location) {
|
|
129
|
+
switch (location) {
|
|
130
|
+
case 'Both':
|
|
131
|
+
return 'ClientSideExtension.ListViewCommandSet';
|
|
132
|
+
case 'ContextMenu':
|
|
133
|
+
return 'ClientSideExtension.ListViewCommandSet.ContextMenu';
|
|
134
|
+
default:
|
|
135
|
+
return 'ClientSideExtension.ListViewCommandSet.CommandBar';
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
getListTemplate(listTemplate) {
|
|
139
|
+
switch (listTemplate) {
|
|
140
|
+
case 'SitePages':
|
|
141
|
+
return '119';
|
|
142
|
+
case 'Library':
|
|
143
|
+
return '101';
|
|
144
|
+
default:
|
|
145
|
+
return '100';
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
_SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSetCommand_initTelemetry = function _SpoTenantCommandSetSetCommand_initTelemetry() {
|
|
150
|
+
this.telemetry.push((args) => {
|
|
151
|
+
Object.assign(this.telemetryProperties, {
|
|
152
|
+
newTitle: typeof args.options.newTitle !== 'undefined',
|
|
153
|
+
listType: args.options.listType,
|
|
154
|
+
clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
|
|
155
|
+
clientSideComponentProperties: typeof args.options.clientSideComponentProperties !== 'undefined',
|
|
156
|
+
webTemplate: typeof args.options.webTemplate !== 'undefined',
|
|
157
|
+
location: args.options.location
|
|
158
|
+
});
|
|
159
|
+
});
|
|
160
|
+
}, _SpoTenantCommandSetSetCommand_initOptions = function _SpoTenantCommandSetSetCommand_initOptions() {
|
|
161
|
+
this.options.unshift({
|
|
162
|
+
option: '-i, --id <id>'
|
|
163
|
+
}, {
|
|
164
|
+
option: '-t, --newTitle [newTitle]'
|
|
165
|
+
}, {
|
|
166
|
+
option: '-l, --listType [listType]',
|
|
167
|
+
autocomplete: SpoTenantCommandSetSetCommand.listTypes
|
|
168
|
+
}, {
|
|
169
|
+
option: '-i, --clientSideComponentId [clientSideComponentId]'
|
|
170
|
+
}, {
|
|
171
|
+
option: '-p, --clientSideComponentProperties [clientSideComponentProperties]'
|
|
172
|
+
}, {
|
|
173
|
+
option: '-w, --webTemplate [webTemplate]'
|
|
174
|
+
}, {
|
|
175
|
+
option: '--location [location]',
|
|
176
|
+
autocomplete: SpoTenantCommandSetSetCommand.locations
|
|
177
|
+
});
|
|
178
|
+
}, _SpoTenantCommandSetSetCommand_initValidators = function _SpoTenantCommandSetSetCommand_initValidators() {
|
|
179
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
180
|
+
if (!args.options.newTitle &&
|
|
181
|
+
!args.options.listType &&
|
|
182
|
+
!args.options.clientSideComponentId &&
|
|
183
|
+
!args.options.clientSideComponentProperties &&
|
|
184
|
+
!args.options.webTemplate &&
|
|
185
|
+
!args.options.location) {
|
|
186
|
+
return 'Specify at least one property to update';
|
|
187
|
+
}
|
|
188
|
+
if (args.options.clientSideComponentId && !validation_1.validation.isValidGuid(args.options.clientSideComponentId)) {
|
|
189
|
+
return `${args.options.clientSideComponentId} is not a valid GUID`;
|
|
190
|
+
}
|
|
191
|
+
if (args.options.listType && SpoTenantCommandSetSetCommand.listTypes.indexOf(args.options.listType) < 0) {
|
|
192
|
+
return `${args.options.listType} is not a valid list type. Allowed values are ${SpoTenantCommandSetSetCommand.listTypes.join(', ')}`;
|
|
193
|
+
}
|
|
194
|
+
if (args.options.location && SpoTenantCommandSetSetCommand.locations.indexOf(args.options.location) < 0) {
|
|
195
|
+
return `${args.options.location} is not a valid location. Allowed values are ${SpoTenantCommandSetSetCommand.locations.join(', ')}`;
|
|
196
|
+
}
|
|
197
|
+
return true;
|
|
198
|
+
}));
|
|
199
|
+
};
|
|
200
|
+
SpoTenantCommandSetSetCommand.listTypes = ['List', 'Library', 'SitePages'];
|
|
201
|
+
SpoTenantCommandSetSetCommand.locations = ['ContextMenu', 'CommandBar', 'Both'];
|
|
202
|
+
module.exports = new SpoTenantCommandSetSetCommand();
|
|
203
|
+
//# sourceMappingURL=tenant-commandset-set.js.map
|
|
@@ -43,8 +43,8 @@ class SpoTermAddCommand extends SpoCommand_1.default {
|
|
|
43
43
|
let term;
|
|
44
44
|
let formDigest;
|
|
45
45
|
try {
|
|
46
|
-
const
|
|
47
|
-
const res = yield spo_1.spo.getRequestDigest(
|
|
46
|
+
const spoWebUrl = args.options.webUrl ? args.options.webUrl : yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
|
|
47
|
+
const res = yield spo_1.spo.getRequestDigest(spoWebUrl);
|
|
48
48
|
formDigest = res.FormDigestValue;
|
|
49
49
|
if (this.verbose) {
|
|
50
50
|
logger.logToStderr(`Adding taxonomy term...`);
|
|
@@ -58,7 +58,7 @@ class SpoTermAddCommand extends SpoCommand_1.default {
|
|
|
58
58
|
const termId = args.options.id || (0, uuid_1.v4)();
|
|
59
59
|
const data = `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config_1.default.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="4" ObjectPathId="3" /><ObjectIdentityQuery Id="5" ObjectPathId="3" /><ObjectPath Id="7" ObjectPathId="6" /><ObjectIdentityQuery Id="8" ObjectPathId="6" /><ObjectPath Id="10" ObjectPathId="9" /><ObjectPath Id="12" ObjectPathId="11" /><ObjectIdentityQuery Id="13" ObjectPathId="11" /><ObjectPath Id="15" ObjectPathId="14" /><ObjectPath Id="17" ObjectPathId="16" /><ObjectIdentityQuery Id="18" ObjectPathId="16" /><ObjectPath Id="20" ObjectPathId="19" /><ObjectIdentityQuery Id="21" ObjectPathId="19" /><Query Id="22" ObjectPathId="19"><Query SelectAllProperties="true"><Properties /></Query></Query></Actions><ObjectPaths><StaticMethod Id="3" Name="GetTaxonomySession" TypeId="{981cbc68-9edc-4f8d-872f-71146fcbb84f}" /><Method Id="6" ParentId="3" Name="GetDefaultSiteCollectionTermStore" /><Property Id="9" ParentId="6" Name="Groups" />${termGroupQuery}<Property Id="14" ParentId="11" Name="TermSets" />${termParentQuery}<Method Id="19" ParentId="16" Name="CreateTerm"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.name)}</Parameter><Parameter Type="Int32">1033</Parameter><Parameter Type="Guid">{${termId}}</Parameter></Parameters></Method></ObjectPaths></Request>`;
|
|
60
60
|
const requestOptionsPost = {
|
|
61
|
-
url: `${
|
|
61
|
+
url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
|
|
62
62
|
headers: {
|
|
63
63
|
'X-RequestDigest': res.FormDigestValue
|
|
64
64
|
},
|
|
@@ -108,7 +108,7 @@ class SpoTermAddCommand extends SpoCommand_1.default {
|
|
|
108
108
|
break;
|
|
109
109
|
}
|
|
110
110
|
const requestOptions = {
|
|
111
|
-
url: `${
|
|
111
|
+
url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
|
|
112
112
|
headers: {
|
|
113
113
|
'X-RequestDigest': formDigest
|
|
114
114
|
},
|
|
@@ -139,6 +139,7 @@ class SpoTermAddCommand extends SpoCommand_1.default {
|
|
|
139
139
|
_SpoTermAddCommand_instances = new WeakSet(), _SpoTermAddCommand_initTelemetry = function _SpoTermAddCommand_initTelemetry() {
|
|
140
140
|
this.telemetry.push((args) => {
|
|
141
141
|
Object.assign(this.telemetryProperties, {
|
|
142
|
+
webUrl: typeof args.options.webUrl !== 'undefined',
|
|
142
143
|
customProperties: typeof args.options.customProperties !== 'undefined',
|
|
143
144
|
description: typeof args.options.description !== 'undefined',
|
|
144
145
|
id: typeof args.options.id !== 'undefined',
|
|
@@ -153,6 +154,8 @@ _SpoTermAddCommand_instances = new WeakSet(), _SpoTermAddCommand_initTelemetry =
|
|
|
153
154
|
}, _SpoTermAddCommand_initOptions = function _SpoTermAddCommand_initOptions() {
|
|
154
155
|
this.options.unshift({
|
|
155
156
|
option: '-n, --name <name>'
|
|
157
|
+
}, {
|
|
158
|
+
option: '-u, --webUrl [webUrl]'
|
|
156
159
|
}, {
|
|
157
160
|
option: '--termSetId [termSetId]'
|
|
158
161
|
}, {
|
|
@@ -174,6 +177,12 @@ _SpoTermAddCommand_instances = new WeakSet(), _SpoTermAddCommand_initTelemetry =
|
|
|
174
177
|
});
|
|
175
178
|
}, _SpoTermAddCommand_initValidators = function _SpoTermAddCommand_initValidators() {
|
|
176
179
|
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
180
|
+
if (args.options.webUrl) {
|
|
181
|
+
const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
|
|
182
|
+
if (isValidSharePointUrl !== true) {
|
|
183
|
+
return isValidSharePointUrl;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
177
186
|
if (args.options.id) {
|
|
178
187
|
if (!validation_1.validation.isValidGuid(args.options.id)) {
|
|
179
188
|
return `${args.options.id} is not a valid GUID`;
|