@pnp/cli-microsoft365 6.3.0-beta.1140b31 → 6.3.0-beta.37c6261
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 +6 -0
- package/dist/Command.js +12 -1
- package/dist/cli/Cli.js +4 -1
- package/dist/m365/aad/commands/group/group-list.js +2 -1
- package/dist/m365/base/O365MgmtCommand.js +10 -0
- package/dist/m365/flow/commands/run/run-list.js +55 -3
- package/dist/m365/graph/commands/changelog/changelog-list.js +3 -2
- package/dist/m365/onenote/commands/notebook/notebook-list.js +51 -40
- package/dist/m365/planner/commands/plan/plan-add.js +20 -6
- package/dist/m365/planner/commands/plan/plan-get.js +34 -27
- package/dist/m365/planner/commands/plan/plan-list.js +24 -14
- package/dist/m365/planner/commands/plan/plan-remove.js +1 -1
- package/dist/m365/planner/commands/roster/roster-add.js +47 -0
- package/dist/m365/planner/commands/roster/roster-member-add.js +113 -0
- package/dist/m365/planner/commands/roster/roster-member-list.js +54 -0
- package/dist/m365/planner/commands/roster/roster-remove.js +88 -0
- package/dist/m365/planner/commands/task/task-checklistitem-add.js +2 -1
- package/dist/m365/planner/commands/task/task-checklistitem-list.js +2 -1
- package/dist/m365/planner/commands.js +4 -0
- package/dist/m365/pp/commands/solution/solution-get.js +2 -1
- package/dist/m365/pp/commands/solution/solution-list.js +2 -1
- package/dist/m365/purview/commands/auditlog/auditlog-list.js +205 -0
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-get.js +70 -0
- package/dist/m365/purview/commands.js +2 -0
- package/dist/m365/spfx/commands/project/WebApiPermissionRequests.js +3 -0
- package/dist/m365/spfx/commands/project/project-permissions-grant.js +81 -0
- package/dist/m365/spfx/commands.js +3 -2
- package/dist/m365/spo/commands/app/app-add.js +2 -1
- package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-add.js +95 -0
- package/dist/m365/spo/commands/file/GraphFileDetails.js +0 -1
- package/dist/m365/spo/commands/file/file-sharinginfo-get.js +2 -1
- package/dist/m365/spo/commands/file/file-sharinglink-add.js +2 -22
- package/dist/m365/spo/commands/file/file-sharinglink-clear.js +137 -0
- package/dist/m365/spo/commands/file/file-sharinglink-get.js +2 -25
- package/dist/m365/spo/commands/file/file-sharinglink-list.js +9 -29
- package/dist/m365/spo/commands/file/file-sharinglink-remove.js +2 -25
- package/dist/m365/spo/commands/file/file-sharinglink-set.js +104 -0
- package/dist/m365/spo/commands/group/group-list.js +2 -1
- package/dist/m365/spo/commands/hubsite/hubsite-get.js +1 -1
- package/dist/m365/spo/commands/listitem/listitem-list.js +2 -1
- package/dist/m365/spo/commands/navigation/navigation-node-add.js +17 -3
- package/dist/m365/spo/commands/navigation/navigation-node-list.js +4 -7
- package/dist/m365/spo/commands/navigation/navigation-node-set.js +118 -0
- package/dist/m365/spo/commands/page/page-column-get.js +2 -1
- package/dist/m365/spo/commands/page/page-column-list.js +2 -1
- package/dist/m365/spo/commands/page/page-section-get.js +2 -1
- package/dist/m365/spo/commands/page/page-section-list.js +2 -1
- package/dist/m365/spo/commands/spo-search.js +2 -1
- package/dist/m365/spo/commands/term/term-list.js +2 -1
- package/dist/m365/spo/commands/userprofile/userprofile-get.js +2 -2
- package/dist/m365/spo/commands/web/web-set.js +11 -4
- package/dist/m365/spo/commands.js +4 -0
- package/dist/m365/teams/commands/meeting/meeting-list.js +1 -1
- package/dist/m365/teams/commands/team/team-app-list.js +1 -1
- package/dist/m365/teams/commands/user/user-app-list.js +2 -1
- package/dist/m365/todo/commands/task/task-get.js +2 -1
- package/dist/m365/todo/commands/task/task-list.js +2 -1
- package/dist/m365/yammer/commands/yammer-search.js +2 -1
- package/dist/utils/planner.js +19 -5
- package/dist/utils/spo.js +28 -0
- package/docs/docs/cmd/aad/app/app-list.md +3 -0
- package/docs/docs/cmd/aad/user/user-set.md +1 -1
- package/docs/docs/cmd/flow/run/run-list.md +21 -0
- package/docs/docs/cmd/pa/app/app-get.md +24 -0
- package/docs/docs/cmd/pa/app/app-list.md +21 -0
- package/docs/docs/cmd/pa/connector/connector-list.md +17 -0
- package/docs/docs/cmd/pa/environment/environment-get.md +18 -0
- package/docs/docs/cmd/pa/environment/environment-list.md +19 -0
- package/docs/docs/cmd/planner/plan/plan-add.md +17 -6
- package/docs/docs/cmd/planner/plan/plan-get.md +16 -2
- package/docs/docs/cmd/planner/plan/plan-list.md +16 -2
- package/docs/docs/cmd/planner/plan/plan-remove.md +4 -0
- package/docs/docs/cmd/planner/roster/roster-add.md +60 -0
- package/docs/docs/cmd/planner/roster/roster-member-add.md +87 -0
- package/docs/docs/cmd/planner/roster/roster-member-list.md +76 -0
- package/docs/docs/cmd/planner/roster/roster-remove.md +48 -0
- package/docs/docs/cmd/pp/aibuildermodel/aibuildermodel-get.md +43 -0
- package/docs/docs/cmd/pp/aibuildermodel/aibuildermodel-list.md +43 -0
- package/docs/docs/cmd/pp/card/card-clone.md +12 -0
- package/docs/docs/cmd/pp/card/card-get.md +49 -0
- package/docs/docs/cmd/pp/card/card-list.md +49 -0
- package/docs/docs/cmd/pp/chatbot/chatbot-get.md +55 -0
- package/docs/docs/cmd/pp/chatbot/chatbot-list.md +36 -0
- package/docs/docs/cmd/pp/dataverse/dataverse-table-get.md +30 -0
- package/docs/docs/cmd/pp/dataverse/dataverse-table-list.md +30 -0
- package/docs/docs/cmd/pp/dataverse/dataverse-table-row-list.md +30 -0
- package/docs/docs/cmd/pp/environment/environment-get.md +19 -0
- package/docs/docs/cmd/pp/environment/environment-list.md +19 -0
- package/docs/docs/cmd/pp/gateway/gateway-get.md +19 -0
- package/docs/docs/cmd/pp/gateway/gateway-list.md +19 -0
- package/docs/docs/cmd/pp/managementapp/managementapp-add.md +12 -0
- package/docs/docs/cmd/pp/managementapp/managementapp-list.md +12 -0
- package/docs/docs/cmd/pp/solution/solution-get.md +14 -0
- package/docs/docs/cmd/pp/solution/solution-list.md +14 -0
- package/docs/docs/cmd/pp/solution/solution-publisher-get.md +20 -1
- package/docs/docs/cmd/pp/solution/solution-publisher-list.md +18 -0
- package/docs/docs/cmd/pp/tenant/tenant-settings-list.md +21 -0
- package/docs/docs/cmd/purview/auditlog/auditlog-list.md +123 -0
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-get.md +100 -0
- package/docs/docs/cmd/spfx/project/project-permissions-grant.md +65 -0
- package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-add.md +56 -0
- package/docs/docs/cmd/spo/file/file-sharinglink-clear.md +46 -0
- package/docs/docs/cmd/spo/file/file-sharinglink-list.md +1 -1
- package/docs/docs/cmd/spo/file/file-sharinglink-set.md +104 -0
- package/docs/docs/cmd/spo/listitem/listitem-attachment-list.md +2 -2
- package/docs/docs/cmd/spo/listitem/listitem-isrecord.md +2 -2
- package/docs/docs/cmd/spo/navigation/navigation-node-add.md +18 -3
- package/docs/docs/cmd/spo/navigation/navigation-node-list.md +30 -0
- package/docs/docs/cmd/spo/navigation/navigation-node-remove.md +1 -1
- package/docs/docs/cmd/spo/navigation/navigation-node-set.md +59 -0
- package/docs/docs/cmd/spo/web/web-set.md +9 -0
- package/package.json +1 -1
|
@@ -0,0 +1,70 @@
|
|
|
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 _PurviewRetentionEventtypeGetCommand_instances, _PurviewRetentionEventtypeGetCommand_initOptions, _PurviewRetentionEventtypeGetCommand_initValidators;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const GraphCommand_1 = require("../../../base/GraphCommand");
|
|
19
|
+
const commands_1 = require("../../commands");
|
|
20
|
+
const request_1 = require("../../../../request");
|
|
21
|
+
const validation_1 = require("../../../../utils/validation");
|
|
22
|
+
class PurviewRetentionEventtypeGetCommand extends GraphCommand_1.default {
|
|
23
|
+
get name() {
|
|
24
|
+
return commands_1.default.RETENTIONEVENTTYPE_GET;
|
|
25
|
+
}
|
|
26
|
+
get description() {
|
|
27
|
+
return 'Retrieve the specified retention event type';
|
|
28
|
+
}
|
|
29
|
+
constructor() {
|
|
30
|
+
super();
|
|
31
|
+
_PurviewRetentionEventtypeGetCommand_instances.add(this);
|
|
32
|
+
__classPrivateFieldGet(this, _PurviewRetentionEventtypeGetCommand_instances, "m", _PurviewRetentionEventtypeGetCommand_initOptions).call(this);
|
|
33
|
+
__classPrivateFieldGet(this, _PurviewRetentionEventtypeGetCommand_instances, "m", _PurviewRetentionEventtypeGetCommand_initValidators).call(this);
|
|
34
|
+
}
|
|
35
|
+
commandAction(logger, args) {
|
|
36
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
37
|
+
try {
|
|
38
|
+
if (this.verbose) {
|
|
39
|
+
logger.logToStderr(`Retrieving retention event type with id ${args.options.id}`);
|
|
40
|
+
}
|
|
41
|
+
const requestOptions = {
|
|
42
|
+
url: `${this.resource}/beta/security/triggerTypes/retentionEventTypes/${args.options.id}`,
|
|
43
|
+
headers: {
|
|
44
|
+
accept: 'application/json;odata.metadata=none'
|
|
45
|
+
},
|
|
46
|
+
responseType: 'json'
|
|
47
|
+
};
|
|
48
|
+
const res = yield request_1.default.get(requestOptions);
|
|
49
|
+
logger.log(res);
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
this.handleRejectedODataJsonPromise(err);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
_PurviewRetentionEventtypeGetCommand_instances = new WeakSet(), _PurviewRetentionEventtypeGetCommand_initOptions = function _PurviewRetentionEventtypeGetCommand_initOptions() {
|
|
58
|
+
this.options.unshift({
|
|
59
|
+
option: '-i, --id <id>'
|
|
60
|
+
});
|
|
61
|
+
}, _PurviewRetentionEventtypeGetCommand_initValidators = function _PurviewRetentionEventtypeGetCommand_initValidators() {
|
|
62
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
if (!validation_1.validation.isValidGuid(args.options.id)) {
|
|
64
|
+
return `'${args.options.id}' is not a valid GUID.`;
|
|
65
|
+
}
|
|
66
|
+
return true;
|
|
67
|
+
}));
|
|
68
|
+
};
|
|
69
|
+
module.exports = new PurviewRetentionEventtypeGetCommand();
|
|
70
|
+
//# sourceMappingURL=retentioneventtype-get.js.map
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const prefix = 'purview';
|
|
4
4
|
exports.default = {
|
|
5
|
+
RETENTIONEVENTTYPE_GET: `${prefix} retentioneventtype get`,
|
|
6
|
+
AUDITLOG_LIST: `${prefix} auditlog list`,
|
|
5
7
|
RETENTIONLABEL_ADD: `${prefix} retentionlabel add`,
|
|
6
8
|
RETENTIONLABEL_GET: `${prefix} retentionlabel get`,
|
|
7
9
|
RETENTIONLABEL_LIST: `${prefix} retentionlabel list`,
|
|
@@ -0,0 +1,81 @@
|
|
|
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 path = require("path");
|
|
13
|
+
const fs = require("fs");
|
|
14
|
+
const Command_1 = require("../../../../Command");
|
|
15
|
+
const commands_1 = require("../../commands");
|
|
16
|
+
const base_project_command_1 = require("./base-project-command");
|
|
17
|
+
const SpoServicePrincipalGrantAddCommand = require("../../../spo/commands/serviceprincipal/serviceprincipal-grant-add");
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
|
+
class SpfxProjectPermissionSGrantCommand extends base_project_command_1.BaseProjectCommand {
|
|
20
|
+
get name() {
|
|
21
|
+
return commands_1.default.PROJECT_PERMISSIONS_GRANT;
|
|
22
|
+
}
|
|
23
|
+
get description() {
|
|
24
|
+
return 'Grant API permissions defined in the current SPFx project';
|
|
25
|
+
}
|
|
26
|
+
constructor() {
|
|
27
|
+
super();
|
|
28
|
+
}
|
|
29
|
+
commandAction(logger) {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
this.projectRootPath = this.getProjectRoot(process.cwd());
|
|
32
|
+
if (this.projectRootPath === null) {
|
|
33
|
+
throw new Command_1.CommandError(`Couldn't find project root folder`, SpfxProjectPermissionSGrantCommand.ERROR_NO_PROJECT_ROOT_FOLDER);
|
|
34
|
+
}
|
|
35
|
+
if (this.debug) {
|
|
36
|
+
logger.logToStderr(`Granting API permissions defined in the current SPFx project`);
|
|
37
|
+
}
|
|
38
|
+
try {
|
|
39
|
+
const webApiPermissionsRequest = this.getWebApiPermissionRequest(path.join(this.projectRootPath, 'config', 'package-solution.json'));
|
|
40
|
+
for (const permission of webApiPermissionsRequest) {
|
|
41
|
+
const options = {
|
|
42
|
+
resource: permission.resource,
|
|
43
|
+
scope: permission.scope,
|
|
44
|
+
output: 'json',
|
|
45
|
+
debug: this.debug,
|
|
46
|
+
verbose: this.verbose
|
|
47
|
+
};
|
|
48
|
+
let output = null;
|
|
49
|
+
try {
|
|
50
|
+
output = yield Cli_1.Cli.executeCommandWithOutput(SpoServicePrincipalGrantAddCommand, { options: Object.assign(Object.assign({}, options), { _: [] }) });
|
|
51
|
+
}
|
|
52
|
+
catch (err) {
|
|
53
|
+
if (err.error && err.error.message.indexOf('already exists') > -1) {
|
|
54
|
+
this.warn(logger, err.error.message);
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
throw err;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
const getGrantOutput = JSON.parse(output.stdout);
|
|
62
|
+
logger.log(getGrantOutput);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
throw new Command_1.CommandError(error);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
getWebApiPermissionRequest(filePath) {
|
|
71
|
+
if (!fs.existsSync(filePath)) {
|
|
72
|
+
throw (`The package-solution.json file could not be found`);
|
|
73
|
+
}
|
|
74
|
+
const existingContent = fs.readFileSync(filePath, 'utf-8');
|
|
75
|
+
const solutionContent = JSON.parse(existingContent);
|
|
76
|
+
return solutionContent.solution.webApiPermissionRequests;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
SpfxProjectPermissionSGrantCommand.ERROR_NO_PROJECT_ROOT_FOLDER = 1;
|
|
80
|
+
module.exports = new SpfxProjectPermissionSGrantCommand();
|
|
81
|
+
//# sourceMappingURL=project-permissions-grant.js.map
|
|
@@ -5,8 +5,9 @@ exports.default = {
|
|
|
5
5
|
DOCTOR: `${prefix} doctor`,
|
|
6
6
|
PACKAGE_GENERATE: `${prefix} package generate`,
|
|
7
7
|
PROJECT_DOCTOR: `${prefix} project doctor`,
|
|
8
|
-
PROJECT_UPGRADE: `${prefix} project upgrade`,
|
|
9
8
|
PROJECT_EXTERNALIZE: `${prefix} project externalize`,
|
|
10
|
-
|
|
9
|
+
PROJECT_PERMISSIONS_GRANT: `${prefix} project permissions grant`,
|
|
10
|
+
PROJECT_RENAME: `${prefix} project rename`,
|
|
11
|
+
PROJECT_UPGRADE: `${prefix} project upgrade`
|
|
11
12
|
};
|
|
12
13
|
//# sourceMappingURL=commands.js.map
|
|
@@ -17,6 +17,7 @@ var _SpoAppAddCommand_instances, _SpoAppAddCommand_initTelemetry, _SpoAppAddComm
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const fs = require("fs");
|
|
19
19
|
const path = require("path");
|
|
20
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
20
21
|
const request_1 = require("../../../../request");
|
|
21
22
|
const spo_1 = require("../../../../utils/spo");
|
|
22
23
|
const validation_1 = require("../../../../utils/validation");
|
|
@@ -58,7 +59,7 @@ class SpoAppAddCommand extends SpoAppBaseCommand_1.SpoAppBaseCommand {
|
|
|
58
59
|
};
|
|
59
60
|
const res = yield request_1.default.post(requestOptions);
|
|
60
61
|
const json = JSON.parse(res);
|
|
61
|
-
if (args.options.output
|
|
62
|
+
if (!Cli_1.Cli.shouldTrimOutput(args.options.output)) {
|
|
62
63
|
logger.log(json);
|
|
63
64
|
}
|
|
64
65
|
else {
|
|
@@ -0,0 +1,95 @@
|
|
|
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 _SpoApplicationCustomizerAddCommand_instances, _SpoApplicationCustomizerAddCommand_initOptions, _SpoApplicationCustomizerAddCommand_initTelemetry, _SpoApplicationCustomizerAddCommand_initValidators;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
|
+
const validation_1 = require("../../../../utils/validation");
|
|
20
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
21
|
+
const commands_1 = require("../../commands");
|
|
22
|
+
const spoCustomActionAddCommand = require("../customaction/customaction-add");
|
|
23
|
+
class SpoApplicationCustomizerAddCommand extends SpoCommand_1.default {
|
|
24
|
+
get name() {
|
|
25
|
+
return commands_1.default.APPLICATIONCUSTOMIZER_ADD;
|
|
26
|
+
}
|
|
27
|
+
get description() {
|
|
28
|
+
return 'Add an application customizer to a site.';
|
|
29
|
+
}
|
|
30
|
+
constructor() {
|
|
31
|
+
super();
|
|
32
|
+
_SpoApplicationCustomizerAddCommand_instances.add(this);
|
|
33
|
+
__classPrivateFieldGet(this, _SpoApplicationCustomizerAddCommand_instances, "m", _SpoApplicationCustomizerAddCommand_initTelemetry).call(this);
|
|
34
|
+
__classPrivateFieldGet(this, _SpoApplicationCustomizerAddCommand_instances, "m", _SpoApplicationCustomizerAddCommand_initOptions).call(this);
|
|
35
|
+
__classPrivateFieldGet(this, _SpoApplicationCustomizerAddCommand_instances, "m", _SpoApplicationCustomizerAddCommand_initValidators).call(this);
|
|
36
|
+
}
|
|
37
|
+
commandAction(logger, args) {
|
|
38
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
+
if (this.verbose) {
|
|
40
|
+
logger.logToStderr(`Adding application customizer with title '${args.options.title}' and clientSideComponentId '${args.options.clientSideComponentId}' to the site`);
|
|
41
|
+
}
|
|
42
|
+
const options = {
|
|
43
|
+
webUrl: args.options.webUrl,
|
|
44
|
+
name: args.options.title,
|
|
45
|
+
title: args.options.title,
|
|
46
|
+
clientSideComponentId: args.options.clientSideComponentId,
|
|
47
|
+
clientSideComponentProperties: args.options.clientSideComponentProperties || '',
|
|
48
|
+
location: 'ClientSideExtension.ApplicationCustomizer',
|
|
49
|
+
debug: this.debug,
|
|
50
|
+
verbose: this.verbose
|
|
51
|
+
};
|
|
52
|
+
yield Cli_1.Cli.executeCommand(spoCustomActionAddCommand, { options: Object.assign(Object.assign({}, options), { _: [] }) });
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
_SpoApplicationCustomizerAddCommand_instances = new WeakSet(), _SpoApplicationCustomizerAddCommand_initOptions = function _SpoApplicationCustomizerAddCommand_initOptions() {
|
|
57
|
+
this.options.unshift({
|
|
58
|
+
option: '-t, --title <title>'
|
|
59
|
+
}, {
|
|
60
|
+
option: '-u, --webUrl <webUrl>'
|
|
61
|
+
}, {
|
|
62
|
+
option: '-i, --clientSideComponentId <clientSideComponentId>'
|
|
63
|
+
}, {
|
|
64
|
+
option: '--clientSideComponentProperties [clientSideComponentProperties]'
|
|
65
|
+
});
|
|
66
|
+
}, _SpoApplicationCustomizerAddCommand_initTelemetry = function _SpoApplicationCustomizerAddCommand_initTelemetry() {
|
|
67
|
+
this.telemetry.push((args) => {
|
|
68
|
+
Object.assign(this.telemetryProperties, {
|
|
69
|
+
clientSideComponentProperties: typeof args.options.clientSideComponentProperties !== 'undefined'
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
}, _SpoApplicationCustomizerAddCommand_initValidators = function _SpoApplicationCustomizerAddCommand_initValidators() {
|
|
73
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
if (args.options.webUrl) {
|
|
75
|
+
const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
|
|
76
|
+
if (isValidSharePointUrl !== true) {
|
|
77
|
+
return isValidSharePointUrl;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (!validation_1.validation.isValidGuid(args.options.clientSideComponentId)) {
|
|
81
|
+
return `${args.options.clientSideComponentId} is not a valid GUID`;
|
|
82
|
+
}
|
|
83
|
+
if (args.options.clientSideComponentProperties) {
|
|
84
|
+
try {
|
|
85
|
+
JSON.parse(args.options.clientSideComponentProperties);
|
|
86
|
+
}
|
|
87
|
+
catch (e) {
|
|
88
|
+
return `An error has occurred while parsing clientSideComponentProperties: ${e}`;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return true;
|
|
92
|
+
}));
|
|
93
|
+
};
|
|
94
|
+
module.exports = new SpoApplicationCustomizerAddCommand();
|
|
95
|
+
//# sourceMappingURL=applicationcustomizer-add.js.map
|
|
@@ -15,6 +15,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _SpoFileSharingInfoGetCommand_instances, _SpoFileSharingInfoGetCommand_initTelemetry, _SpoFileSharingInfoGetCommand_initOptions, _SpoFileSharingInfoGetCommand_initValidators, _SpoFileSharingInfoGetCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
18
19
|
const request_1 = require("../../../../request");
|
|
19
20
|
const formatting_1 = require("../../../../utils/formatting");
|
|
20
21
|
const validation_1 = require("../../../../utils/validation");
|
|
@@ -60,7 +61,7 @@ class SpoFileSharingInfoGetCommand extends SpoCommand_1.default {
|
|
|
60
61
|
// typically, we don't do this, but in this case, we need to due to
|
|
61
62
|
// the complexity of the retrieved object and the fact that we can't
|
|
62
63
|
// use the generic way of simplifying the output
|
|
63
|
-
if (args.options.output
|
|
64
|
+
if (!Cli_1.Cli.shouldTrimOutput(args.options.output)) {
|
|
64
65
|
logger.log(res);
|
|
65
66
|
}
|
|
66
67
|
else {
|
|
@@ -16,7 +16,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
16
16
|
var _SpoFileSharingLinkAddCommand_instances, _SpoFileSharingLinkAddCommand_initTelemetry, _SpoFileSharingLinkAddCommand_initOptions, _SpoFileSharingLinkAddCommand_initValidators, _SpoFileSharingLinkAddCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const request_1 = require("../../../../request");
|
|
19
|
-
const
|
|
19
|
+
const spo_1 = require("../../../../utils/spo");
|
|
20
20
|
const validation_1 = require("../../../../utils/validation");
|
|
21
21
|
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
22
22
|
const commands_1 = require("../../commands");
|
|
@@ -41,7 +41,7 @@ class SpoFileSharingLinkAddCommand extends SpoCommand_1.default {
|
|
|
41
41
|
logger.logToStderr(`Creating a sharing link for file ${args.options.fileId || args.options.fileUrl}...`);
|
|
42
42
|
}
|
|
43
43
|
try {
|
|
44
|
-
const fileDetails = yield
|
|
44
|
+
const fileDetails = yield spo_1.spo.getVroomFileDetails(args.options.webUrl, args.options.fileId, args.options.fileUrl);
|
|
45
45
|
const requestOptions = {
|
|
46
46
|
url: `https://graph.microsoft.com/v1.0/sites/${fileDetails.SiteId}/drives/${fileDetails.VroomDriveID}/items/${fileDetails.VroomItemID}/createLink`,
|
|
47
47
|
headers: {
|
|
@@ -62,26 +62,6 @@ class SpoFileSharingLinkAddCommand extends SpoCommand_1.default {
|
|
|
62
62
|
}
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
|
-
getFileDetails(webUrl, fileId, fileUrl) {
|
|
66
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
let requestUrl = `${webUrl}/_api/web/`;
|
|
68
|
-
if (fileId) {
|
|
69
|
-
requestUrl += `GetFileById('${fileId}')`;
|
|
70
|
-
}
|
|
71
|
-
else if (fileUrl) {
|
|
72
|
-
requestUrl += `GetFileByServerRelativePath(decodedUrl='${formatting_1.formatting.encodeQueryParameter(fileUrl)}')`;
|
|
73
|
-
}
|
|
74
|
-
const requestOptions = {
|
|
75
|
-
url: requestUrl += '?$select=SiteId,VroomItemId,VroomDriveId',
|
|
76
|
-
headers: {
|
|
77
|
-
accept: 'application/json;odata=nometadata'
|
|
78
|
-
},
|
|
79
|
-
responseType: 'json'
|
|
80
|
-
};
|
|
81
|
-
const res = yield request_1.default.get(requestOptions);
|
|
82
|
-
return res;
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
65
|
}
|
|
86
66
|
_SpoFileSharingLinkAddCommand_instances = new WeakSet(), _SpoFileSharingLinkAddCommand_initTelemetry = function _SpoFileSharingLinkAddCommand_initTelemetry() {
|
|
87
67
|
this.telemetry.push((args) => {
|
|
@@ -0,0 +1,137 @@
|
|
|
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 _SpoFileSharingLinkClearCommand_instances, _SpoFileSharingLinkClearCommand_initTelemetry, _SpoFileSharingLinkClearCommand_initOptions, _SpoFileSharingLinkClearCommand_initValidators, _SpoFileSharingLinkClearCommand_initOptionSets;
|
|
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 Cli_1 = require("../../../../cli/Cli");
|
|
22
|
+
const spoFileSharingLinkListCommand = require("./file-sharinglink-list");
|
|
23
|
+
const request_1 = require("../../../../request");
|
|
24
|
+
const spo_1 = require("../../../../utils/spo");
|
|
25
|
+
class SpoFileSharingLinkClearCommand extends SpoCommand_1.default {
|
|
26
|
+
get name() {
|
|
27
|
+
return commands_1.default.FILE_SHARINGLINK_CLEAR;
|
|
28
|
+
}
|
|
29
|
+
get description() {
|
|
30
|
+
return 'Removes sharing links of a file';
|
|
31
|
+
}
|
|
32
|
+
constructor() {
|
|
33
|
+
super();
|
|
34
|
+
_SpoFileSharingLinkClearCommand_instances.add(this);
|
|
35
|
+
this.allowedScopes = ['anonymous', 'users', 'organization'];
|
|
36
|
+
__classPrivateFieldGet(this, _SpoFileSharingLinkClearCommand_instances, "m", _SpoFileSharingLinkClearCommand_initTelemetry).call(this);
|
|
37
|
+
__classPrivateFieldGet(this, _SpoFileSharingLinkClearCommand_instances, "m", _SpoFileSharingLinkClearCommand_initOptions).call(this);
|
|
38
|
+
__classPrivateFieldGet(this, _SpoFileSharingLinkClearCommand_instances, "m", _SpoFileSharingLinkClearCommand_initValidators).call(this);
|
|
39
|
+
__classPrivateFieldGet(this, _SpoFileSharingLinkClearCommand_instances, "m", _SpoFileSharingLinkClearCommand_initOptionSets).call(this);
|
|
40
|
+
}
|
|
41
|
+
commandAction(logger, args) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
const clearSharingLinks = () => __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
try {
|
|
45
|
+
if (this.verbose) {
|
|
46
|
+
logger.logToStderr(`Clearing sharing links for file ${args.options.fileUrl || args.options.fileId}${args.options.scope ? ` with scope ${args.options.scope}` : ''}`);
|
|
47
|
+
}
|
|
48
|
+
const fileDetails = yield spo_1.spo.getVroomFileDetails(args.options.webUrl, args.options.fileId, args.options.fileUrl);
|
|
49
|
+
const sharingLinks = yield this.getFileSharingLinks(args.options.webUrl, args.options.fileId, args.options.fileUrl, args.options.scope);
|
|
50
|
+
const requestOptions = {
|
|
51
|
+
headers: {
|
|
52
|
+
accept: 'application/json;odata.metadata=none'
|
|
53
|
+
},
|
|
54
|
+
responseType: 'json'
|
|
55
|
+
};
|
|
56
|
+
for (const sharingLink of sharingLinks) {
|
|
57
|
+
requestOptions.url = `https://graph.microsoft.com/v1.0/sites/${fileDetails.SiteId}/drives/${fileDetails.VroomDriveID}/items/${fileDetails.VroomItemID}/permissions/${sharingLink.id}`;
|
|
58
|
+
yield request_1.default.delete(requestOptions);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
this.handleRejectedODataJsonPromise(err);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
if (args.options.confirm) {
|
|
66
|
+
yield clearSharingLinks();
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
const result = yield Cli_1.Cli.prompt({
|
|
70
|
+
type: 'confirm',
|
|
71
|
+
name: 'continue',
|
|
72
|
+
default: false,
|
|
73
|
+
message: `Are you sure you want to clear the sharing links of file ${args.options.fileUrl || args.options.fileId}${args.options.scope ? ` with scope ${args.options.scope}` : ''}?`
|
|
74
|
+
});
|
|
75
|
+
if (result.continue) {
|
|
76
|
+
yield clearSharingLinks();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
getFileSharingLinks(webUrl, fileId, fileUrl, scope) {
|
|
82
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
const sharingLinkListOptions = {
|
|
84
|
+
webUrl: webUrl,
|
|
85
|
+
fileId: fileId,
|
|
86
|
+
fileUrl: fileUrl,
|
|
87
|
+
scope: scope,
|
|
88
|
+
debug: this.debug,
|
|
89
|
+
verbose: this.verbose
|
|
90
|
+
};
|
|
91
|
+
const commandOutput = yield Cli_1.Cli.executeCommandWithOutput(spoFileSharingLinkListCommand, { options: Object.assign(Object.assign({}, sharingLinkListOptions), { _: [] }) });
|
|
92
|
+
const outputParsed = JSON.parse(commandOutput.stdout);
|
|
93
|
+
return outputParsed;
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
_SpoFileSharingLinkClearCommand_instances = new WeakSet(), _SpoFileSharingLinkClearCommand_initTelemetry = function _SpoFileSharingLinkClearCommand_initTelemetry() {
|
|
98
|
+
this.telemetry.push((args) => {
|
|
99
|
+
Object.assign(this.telemetryProperties, {
|
|
100
|
+
fileUrl: typeof args.options.fileUrl !== 'undefined',
|
|
101
|
+
fileId: typeof args.options.fileId !== 'undefined',
|
|
102
|
+
scope: typeof args.options.scope !== 'undefined',
|
|
103
|
+
confirm: !!args.options.confirm
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
}, _SpoFileSharingLinkClearCommand_initOptions = function _SpoFileSharingLinkClearCommand_initOptions() {
|
|
107
|
+
this.options.unshift({
|
|
108
|
+
option: '-u, --webUrl <webUrl>'
|
|
109
|
+
}, {
|
|
110
|
+
option: '--fileUrl [fileUrl]'
|
|
111
|
+
}, {
|
|
112
|
+
option: '--fileId [fileId]'
|
|
113
|
+
}, {
|
|
114
|
+
option: '-s, --scope [scope]',
|
|
115
|
+
autocomplete: this.allowedScopes
|
|
116
|
+
}, {
|
|
117
|
+
option: '--confirm'
|
|
118
|
+
});
|
|
119
|
+
}, _SpoFileSharingLinkClearCommand_initValidators = function _SpoFileSharingLinkClearCommand_initValidators() {
|
|
120
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
121
|
+
const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
|
|
122
|
+
if (isValidSharePointUrl !== true) {
|
|
123
|
+
return isValidSharePointUrl;
|
|
124
|
+
}
|
|
125
|
+
if (args.options.fileId && !validation_1.validation.isValidGuid(args.options.fileId)) {
|
|
126
|
+
return `${args.options.fileId} is not a valid GUID`;
|
|
127
|
+
}
|
|
128
|
+
if (args.options.scope && this.allowedScopes.indexOf(args.options.scope) === -1) {
|
|
129
|
+
return `'${args.options.scope}' is not a valid scope. Allowed values are: ${this.allowedScopes.join(',')}`;
|
|
130
|
+
}
|
|
131
|
+
return true;
|
|
132
|
+
}));
|
|
133
|
+
}, _SpoFileSharingLinkClearCommand_initOptionSets = function _SpoFileSharingLinkClearCommand_initOptionSets() {
|
|
134
|
+
this.optionSets.push({ options: ['fileUrl', 'fileId'] });
|
|
135
|
+
};
|
|
136
|
+
module.exports = new SpoFileSharingLinkClearCommand();
|
|
137
|
+
//# sourceMappingURL=file-sharinglink-clear.js.map
|
|
@@ -16,8 +16,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
16
16
|
var _SpoFileSharingLinkGetCommand_instances, _SpoFileSharingLinkGetCommand_initTelemetry, _SpoFileSharingLinkGetCommand_initOptions, _SpoFileSharingLinkGetCommand_initValidators, _SpoFileSharingLinkGetCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const request_1 = require("../../../../request");
|
|
19
|
-
const
|
|
20
|
-
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
19
|
+
const spo_1 = require("../../../../utils/spo");
|
|
21
20
|
const validation_1 = require("../../../../utils/validation");
|
|
22
21
|
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
23
22
|
const commands_1 = require("../../commands");
|
|
@@ -42,7 +41,7 @@ class SpoFileSharingLinkGetCommand extends SpoCommand_1.default {
|
|
|
42
41
|
logger.logToStderr(`Retrieving sharing link for file ${args.options.fileUrl || args.options.fileId} with id ${args.options.id}...`);
|
|
43
42
|
}
|
|
44
43
|
try {
|
|
45
|
-
const fileDetails = yield
|
|
44
|
+
const fileDetails = yield spo_1.spo.getVroomFileDetails(args.options.webUrl, args.options.fileId, args.options.fileUrl);
|
|
46
45
|
const requestOptions = {
|
|
47
46
|
url: `https://graph.microsoft.com/v1.0/sites/${fileDetails.SiteId}/drives/${fileDetails.VroomDriveID}/items/${fileDetails.VroomItemID}/permissions/${args.options.id}`,
|
|
48
47
|
headers: {
|
|
@@ -58,28 +57,6 @@ class SpoFileSharingLinkGetCommand extends SpoCommand_1.default {
|
|
|
58
57
|
}
|
|
59
58
|
});
|
|
60
59
|
}
|
|
61
|
-
getNeededFileInformation(args) {
|
|
62
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
-
let requestUrl = `${args.options.webUrl}/_api/web/`;
|
|
64
|
-
if (args.options.fileUrl) {
|
|
65
|
-
const fileServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
|
|
66
|
-
requestUrl += `GetFileByServerRelativePath(decodedUrl='${formatting_1.formatting.encodeQueryParameter(fileServerRelativeUrl)}')`;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
requestUrl += `GetFileById('${args.options.fileId}')`;
|
|
70
|
-
}
|
|
71
|
-
requestUrl += '?$select=SiteId,VroomItemId,VroomDriveId';
|
|
72
|
-
const requestOptions = {
|
|
73
|
-
url: requestUrl,
|
|
74
|
-
headers: {
|
|
75
|
-
accept: 'application/json;odata=nometadata'
|
|
76
|
-
},
|
|
77
|
-
responseType: 'json'
|
|
78
|
-
};
|
|
79
|
-
const res = yield request_1.default.get(requestOptions);
|
|
80
|
-
return res;
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
60
|
}
|
|
84
61
|
_SpoFileSharingLinkGetCommand_instances = new WeakSet(), _SpoFileSharingLinkGetCommand_initTelemetry = function _SpoFileSharingLinkGetCommand_initTelemetry() {
|
|
85
62
|
this.telemetry.push((args) => {
|
|
@@ -15,9 +15,9 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _SpoFileSharingLinkListCommand_instances, _SpoFileSharingLinkListCommand_initTelemetry, _SpoFileSharingLinkListCommand_initOptions, _SpoFileSharingLinkListCommand_initValidators, _SpoFileSharingLinkListCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
const
|
|
19
|
-
const formatting_1 = require("../../../../utils/formatting");
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
20
19
|
const odata_1 = require("../../../../utils/odata");
|
|
20
|
+
const spo_1 = require("../../../../utils/spo");
|
|
21
21
|
const validation_1 = require("../../../../utils/validation");
|
|
22
22
|
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
23
23
|
const commands_1 = require("../../commands");
|
|
@@ -45,13 +45,13 @@ class SpoFileSharingLinkListCommand extends SpoCommand_1.default {
|
|
|
45
45
|
logger.logToStderr(`Retrieving sharing links for file ${args.options.fileId || args.options.fileUrl}...`);
|
|
46
46
|
}
|
|
47
47
|
try {
|
|
48
|
-
const fileDetails = yield
|
|
48
|
+
const fileDetails = yield spo_1.spo.getVroomFileDetails(args.options.webUrl, args.options.fileId, args.options.fileUrl);
|
|
49
49
|
let url = `https://graph.microsoft.com/v1.0/sites/${fileDetails.SiteId}/drives/${fileDetails.VroomDriveID}/items/${fileDetails.VroomItemID}/permissions?$filter=Link ne null`;
|
|
50
50
|
if (args.options.scope) {
|
|
51
51
|
url += ` and Link/Scope eq '${args.options.scope}'`;
|
|
52
52
|
}
|
|
53
53
|
const sharingLinks = yield odata_1.odata.getAllItems(url);
|
|
54
|
-
if (!args.options.output ||
|
|
54
|
+
if (!args.options.output || !Cli_1.Cli.shouldTrimOutput(args.options.output)) {
|
|
55
55
|
logger.log(sharingLinks);
|
|
56
56
|
}
|
|
57
57
|
else {
|
|
@@ -71,26 +71,6 @@ class SpoFileSharingLinkListCommand extends SpoCommand_1.default {
|
|
|
71
71
|
}
|
|
72
72
|
});
|
|
73
73
|
}
|
|
74
|
-
getFileDetails(webUrl, fileId, fileUrl) {
|
|
75
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
-
let requestUrl = `${webUrl}/_api/web/`;
|
|
77
|
-
if (fileId) {
|
|
78
|
-
requestUrl += `GetFileById('${fileId}')`;
|
|
79
|
-
}
|
|
80
|
-
else if (fileUrl) {
|
|
81
|
-
requestUrl += `GetFileByServerRelativePath(decodedUrl='${formatting_1.formatting.encodeQueryParameter(fileUrl)}')`;
|
|
82
|
-
}
|
|
83
|
-
const requestOptions = {
|
|
84
|
-
url: requestUrl += '?$select=SiteId,VroomItemId,VroomDriveId',
|
|
85
|
-
headers: {
|
|
86
|
-
accept: 'application/json;odata=nometadata'
|
|
87
|
-
},
|
|
88
|
-
responseType: 'json'
|
|
89
|
-
};
|
|
90
|
-
const res = yield request_1.default.get(requestOptions);
|
|
91
|
-
return res;
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
74
|
}
|
|
95
75
|
_SpoFileSharingLinkListCommand_instances = new WeakSet(), _SpoFileSharingLinkListCommand_initTelemetry = function _SpoFileSharingLinkListCommand_initTelemetry() {
|
|
96
76
|
this.telemetry.push((args) => {
|
|
@@ -108,8 +88,8 @@ _SpoFileSharingLinkListCommand_instances = new WeakSet(), _SpoFileSharingLinkLis
|
|
|
108
88
|
}, {
|
|
109
89
|
option: '--fileUrl [fileUrl]'
|
|
110
90
|
}, {
|
|
111
|
-
option: '--scope [scope]',
|
|
112
|
-
autocomplete: SpoFileSharingLinkListCommand.
|
|
91
|
+
option: '-s, --scope [scope]',
|
|
92
|
+
autocomplete: SpoFileSharingLinkListCommand.allowedScopes
|
|
113
93
|
});
|
|
114
94
|
}, _SpoFileSharingLinkListCommand_initValidators = function _SpoFileSharingLinkListCommand_initValidators() {
|
|
115
95
|
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
@@ -120,14 +100,14 @@ _SpoFileSharingLinkListCommand_instances = new WeakSet(), _SpoFileSharingLinkLis
|
|
|
120
100
|
if (args.options.fileId && !validation_1.validation.isValidGuid(args.options.fileId)) {
|
|
121
101
|
return `${args.options.fileId} is not a valid GUID`;
|
|
122
102
|
}
|
|
123
|
-
if (args.options.scope && SpoFileSharingLinkListCommand.
|
|
124
|
-
return `'${args.options.scope}' is not a valid scope. Allowed values are: ${SpoFileSharingLinkListCommand.
|
|
103
|
+
if (args.options.scope && SpoFileSharingLinkListCommand.allowedScopes.indexOf(args.options.scope) === -1) {
|
|
104
|
+
return `'${args.options.scope}' is not a valid scope. Allowed values are: ${SpoFileSharingLinkListCommand.allowedScopes.join(',')}`;
|
|
125
105
|
}
|
|
126
106
|
return true;
|
|
127
107
|
}));
|
|
128
108
|
}, _SpoFileSharingLinkListCommand_initOptionSets = function _SpoFileSharingLinkListCommand_initOptionSets() {
|
|
129
109
|
this.optionSets.push({ options: ['fileId', 'fileUrl'] });
|
|
130
110
|
};
|
|
131
|
-
SpoFileSharingLinkListCommand.
|
|
111
|
+
SpoFileSharingLinkListCommand.allowedScopes = ['anonymous', 'users', 'organization'];
|
|
132
112
|
module.exports = new SpoFileSharingLinkListCommand();
|
|
133
113
|
//# sourceMappingURL=file-sharinglink-list.js.map
|