@pnp/cli-microsoft365 7.0.0-beta.68abdfc → 7.0.0-beta.7e7b4f8
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/dist/Command.js +1 -1
- package/dist/cli/Cli.js +23 -8
- package/dist/m365/aad/commands/user/user-get.js +7 -1
- package/dist/m365/booking/commands/business/business-get.js +14 -15
- package/dist/m365/cli/commands/config/config-set.js +1 -1
- package/dist/m365/pa/commands/app/app-owner-set.js +115 -0
- package/dist/m365/pa/commands/app/app-permission-list.js +104 -0
- package/dist/m365/pa/commands.js +2 -0
- package/dist/m365/planner/commands/bucket/bucket-add.js +14 -10
- package/dist/m365/planner/commands/bucket/bucket-get.js +25 -19
- package/dist/m365/planner/commands/bucket/bucket-list.js +14 -10
- package/dist/m365/planner/commands/bucket/bucket-remove.js +26 -20
- package/dist/m365/planner/commands/bucket/bucket-set.js +26 -28
- package/dist/m365/purview/commands/retentionevent/retentionevent-remove.js +19 -17
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-remove.js +19 -17
- package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +35 -34
- package/dist/m365/spfx/commands/project/project-externalize/rules/DynamicRule.js +59 -51
- package/dist/m365/spo/commands/file/file-list.js +3 -14
- package/dist/m365/spo/commands/folder/folder-remove.js +30 -28
- package/dist/m365/spo/commands/list/list-retentionlabel-ensure.js +0 -4
- package/dist/m365/spo/commands/list/list-retentionlabel-get.js +0 -4
- package/dist/m365/spo/commands/list/list-roleassignment-add.js +9 -47
- package/dist/m365/spo/commands/page/page-remove.js +33 -31
- package/dist/m365/spo/commands/roledefinition/roledefinition-remove.js +25 -23
- package/dist/m365/spo/commands/site/site-apppermission-add.js +3 -3
- package/dist/m365/spo/commands/site/site-commsite-enable.js +9 -18
- package/dist/m365/spo/commands/site/site-set.js +10 -2
- package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +13 -16
- package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-set.js +80 -2
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +48 -48
- package/dist/m365/spo/commands/theme/theme-get.js +1 -2
- package/dist/m365/spo/commands.js +0 -2
- package/dist/m365/teams/commands/chat/chat-get.js +4 -4
- package/dist/m365/teams/commands/chat/chat-member-add.js +117 -0
- package/dist/m365/teams/commands/chat/chat-message-send.js +4 -4
- package/dist/m365/teams/commands/team/team-app-list.js +1 -1
- package/dist/m365/teams/commands.js +1 -0
- package/dist/utils/spo.js +74 -0
- package/docs/docs/_clisettings.mdx +1 -1
- package/docs/docs/cmd/_global.mdx +1 -1
- package/docs/docs/cmd/aad/user/user-get.mdx +118 -25
- package/docs/docs/cmd/pa/app/app-owner-set.mdx +60 -0
- package/docs/docs/cmd/pa/app/app-permission-list.mdx +132 -0
- package/docs/docs/cmd/planner/bucket/bucket-add.mdx +21 -4
- package/docs/docs/cmd/planner/bucket/bucket-get.mdx +22 -5
- package/docs/docs/cmd/planner/bucket/bucket-list.mdx +21 -4
- package/docs/docs/cmd/planner/bucket/bucket-remove.mdx +21 -4
- package/docs/docs/cmd/planner/bucket/bucket-set.mdx +22 -5
- package/docs/docs/cmd/spo/file/file-list.mdx +6 -10
- package/docs/docs/cmd/spo/list/list-retentionlabel-ensure.mdx +0 -6
- package/docs/docs/cmd/spo/list/list-retentionlabel-get.mdx +0 -6
- package/docs/docs/cmd/spo/site/site-add.mdx +35 -0
- package/docs/docs/cmd/spo/site/site-appcatalog-add.mdx +5 -1
- package/docs/docs/cmd/spo/site/site-appcatalog-list.mdx +14 -0
- package/docs/docs/cmd/spo/site/site-appcatalog-remove.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-apppermission-add.mdx +68 -0
- package/docs/docs/cmd/spo/site/site-apppermission-get.mdx +55 -0
- package/docs/docs/cmd/spo/site/site-apppermission-list.mdx +55 -0
- package/docs/docs/cmd/spo/site/site-apppermission-remove.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-apppermission-set.mdx +66 -0
- package/docs/docs/cmd/spo/site/site-chrome-set.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-commsite-enable.mdx +11 -1
- package/docs/docs/cmd/spo/site/site-ensure.mdx +70 -0
- package/docs/docs/cmd/spo/site/site-get.mdx +179 -0
- package/docs/docs/cmd/spo/site/site-groupify.mdx +54 -0
- package/docs/docs/cmd/spo/site/site-hubsite-connect.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-hubsite-disconnect.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-hubsite-theme-sync.mdx +5 -1
- package/docs/docs/cmd/spo/site/site-inplacerecordsmanagement-set.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-list.mdx +303 -0
- package/docs/docs/cmd/spo/site/site-recyclebinitem-list.mdx +80 -0
- package/docs/docs/cmd/spo/site/site-recyclebinitem-restore.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-remove.mdx +4 -0
- package/docs/docs/cmd/spo/site/site-rename.mdx +92 -0
- package/docs/docs/cmd/spo/site/site-set.mdx +13 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-add.mdx +116 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-apply.mdx +125 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-get.mdx +117 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-list.mdx +94 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-remove.mdx +4 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-grant.mdx +4 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-list.mdx +54 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-revoke.mdx +4 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-run-list.mdx +66 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-run-status-get.mdx +65 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-set.mdx +117 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-task-get.mdx +61 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-task-list.mdx +60 -0
- package/docs/docs/cmd/spo/sitedesign/sitedesign-task-remove.mdx +4 -0
- package/docs/docs/cmd/spo/sitescript/sitescript-add.mdx +75 -0
- package/docs/docs/cmd/spo/sitescript/sitescript-get.mdx +62 -0
- package/docs/docs/cmd/spo/sitescript/sitescript-list.mdx +60 -0
- package/docs/docs/cmd/spo/sitescript/sitescript-remove.mdx +4 -0
- package/docs/docs/cmd/spo/sitescript/sitescript-set.mdx +63 -0
- package/docs/docs/cmd/spo/storageentity/storageentity-get.mdx +53 -0
- package/docs/docs/cmd/spo/storageentity/storageentity-list.mdx +54 -0
- package/docs/docs/cmd/spo/storageentity/storageentity-remove.mdx +4 -0
- package/docs/docs/cmd/spo/storageentity/storageentity-set.mdx +4 -0
- package/docs/docs/cmd/spo/tenant/tenant-appcatalog-add.mdx +4 -0
- package/docs/docs/cmd/spo/tenant/tenant-appcatalogurl-get.mdx +35 -0
- package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-set.mdx +12 -3
- package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-list.mdx +67 -0
- package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-remove.mdx +4 -0
- package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-restore.mdx +50 -0
- package/docs/docs/cmd/spo/tenant/tenant-settings-list.mdx +729 -0
- package/docs/docs/cmd/spo/tenant/tenant-settings-set.mdx +5 -0
- package/docs/docs/cmd/spo/theme/theme-apply.mdx +35 -0
- package/docs/docs/cmd/spo/theme/theme-get.mdx +74 -0
- package/docs/docs/cmd/spo/theme/theme-list.mdx +52 -0
- package/docs/docs/cmd/spo/theme/theme-remove.mdx +4 -0
- package/docs/docs/cmd/spo/theme/theme-set.mdx +4 -0
- package/docs/docs/cmd/teams/chat/chat-member-add.mdx +66 -0
- package/npm-shrinkwrap.json +212 -212
- package/package.json +10 -10
|
@@ -105,13 +105,17 @@ class PlannerBucketRemoveCommand extends GraphCommand_1.default {
|
|
|
105
105
|
}
|
|
106
106
|
getPlanId(args) {
|
|
107
107
|
return __awaiter(this, void 0, void 0, function* () {
|
|
108
|
-
const { planId, planTitle } = args.options;
|
|
108
|
+
const { planId, planTitle, rosterId } = args.options;
|
|
109
109
|
if (planId) {
|
|
110
110
|
return planId;
|
|
111
111
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
112
|
+
if (planTitle) {
|
|
113
|
+
const groupId = yield this.getGroupId(args);
|
|
114
|
+
const plan = yield planner_1.planner.getPlanByTitle(planTitle, groupId);
|
|
115
|
+
return plan.id;
|
|
116
|
+
}
|
|
117
|
+
const plans = yield planner_1.planner.getPlansByRosterId(rosterId);
|
|
118
|
+
return plans[0].id;
|
|
115
119
|
});
|
|
116
120
|
}
|
|
117
121
|
getGroupId(args) {
|
|
@@ -132,6 +136,7 @@ _PlannerBucketRemoveCommand_instances = new WeakSet(), _PlannerBucketRemoveComma
|
|
|
132
136
|
name: typeof args.options.name !== 'undefined',
|
|
133
137
|
planId: typeof args.options.planId !== 'undefined',
|
|
134
138
|
planTitle: typeof args.options.planTitle !== 'undefined',
|
|
139
|
+
rosterId: typeof args.options.rosterId !== 'undefined',
|
|
135
140
|
ownerGroupId: typeof args.options.ownerGroupId !== 'undefined',
|
|
136
141
|
ownerGroupName: typeof args.options.ownerGroupName !== 'undefined',
|
|
137
142
|
force: args.options.force || false
|
|
@@ -146,6 +151,8 @@ _PlannerBucketRemoveCommand_instances = new WeakSet(), _PlannerBucketRemoveComma
|
|
|
146
151
|
option: '--planId [planId]'
|
|
147
152
|
}, {
|
|
148
153
|
option: "--planTitle [planTitle]"
|
|
154
|
+
}, {
|
|
155
|
+
option: '--rosterId [rosterId]'
|
|
149
156
|
}, {
|
|
150
157
|
option: '--ownerGroupId [ownerGroupId]'
|
|
151
158
|
}, {
|
|
@@ -156,38 +163,37 @@ _PlannerBucketRemoveCommand_instances = new WeakSet(), _PlannerBucketRemoveComma
|
|
|
156
163
|
}, _PlannerBucketRemoveCommand_initValidators = function _PlannerBucketRemoveCommand_initValidators() {
|
|
157
164
|
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
158
165
|
if (args.options.id) {
|
|
159
|
-
if (args.options.planId || args.options.planTitle || args.options.ownerGroupId || args.options.ownerGroupName) {
|
|
160
|
-
return 'Don\'t specify planId, planTitle, ownerGroupId or ownerGroupName when using id';
|
|
166
|
+
if (args.options.planId || args.options.planTitle || args.options.rosterId || args.options.ownerGroupId || args.options.ownerGroupName) {
|
|
167
|
+
return 'Don\'t specify planId, planTitle, rosterId, ownerGroupId or ownerGroupName when using id';
|
|
161
168
|
}
|
|
162
169
|
}
|
|
163
170
|
else {
|
|
164
|
-
if (!args.options.planId && !args.options.planTitle) {
|
|
165
|
-
return 'Specify either planId or planTitle when using name';
|
|
166
|
-
}
|
|
167
|
-
if (args.options.planId && args.options.planTitle) {
|
|
168
|
-
return 'Specify either planId or planTitle when using name but not both';
|
|
169
|
-
}
|
|
170
171
|
if (args.options.planTitle) {
|
|
171
|
-
if (!args.options.ownerGroupId && !args.options.ownerGroupName) {
|
|
172
|
-
return 'Specify either ownerGroupId or ownerGroupName when using planTitle';
|
|
173
|
-
}
|
|
174
|
-
if (args.options.ownerGroupId && args.options.ownerGroupName) {
|
|
175
|
-
return 'Specify either ownerGroupId or ownerGroupName when using planTitle but not both';
|
|
176
|
-
}
|
|
177
172
|
if (args.options.ownerGroupId && !validation_1.validation.isValidGuid(args.options.ownerGroupId)) {
|
|
178
173
|
return `${args.options.ownerGroupId} is not a valid GUID`;
|
|
179
174
|
}
|
|
180
175
|
}
|
|
181
|
-
else {
|
|
176
|
+
else if (args.options.planId) {
|
|
182
177
|
if (args.options.ownerGroupId || args.options.ownerGroupName) {
|
|
183
178
|
return 'Don\'t specify ownerGroupId or ownerGroupName when using planId';
|
|
184
179
|
}
|
|
185
180
|
}
|
|
181
|
+
else {
|
|
182
|
+
if (args.options.ownerGroupId || args.options.ownerGroupName) {
|
|
183
|
+
return 'Don\'t specify ownerGroupId or ownerGroupName when using rosterId';
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
186
|
}
|
|
187
187
|
return true;
|
|
188
188
|
}));
|
|
189
189
|
}, _PlannerBucketRemoveCommand_initOptionSets = function _PlannerBucketRemoveCommand_initOptionSets() {
|
|
190
|
-
this.optionSets.push({ options: ['id', 'name'] }
|
|
190
|
+
this.optionSets.push({ options: ['id', 'name'] }, {
|
|
191
|
+
options: ['planId', 'planTitle', 'rosterId'],
|
|
192
|
+
runsWhen: (args) => args.options.name !== undefined
|
|
193
|
+
}, {
|
|
194
|
+
options: ['ownerGroupId', 'ownerGroupName'],
|
|
195
|
+
runsWhen: (args) => args.options.planTitle !== undefined
|
|
196
|
+
});
|
|
191
197
|
};
|
|
192
198
|
module.exports = new PlannerBucketRemoveCommand();
|
|
193
199
|
//# sourceMappingURL=bucket-remove.js.map
|
|
@@ -96,13 +96,17 @@ class PlannerBucketSetCommand extends GraphCommand_1.default {
|
|
|
96
96
|
}
|
|
97
97
|
getPlanId(args) {
|
|
98
98
|
return __awaiter(this, void 0, void 0, function* () {
|
|
99
|
-
const { planId, planTitle } = args.options;
|
|
99
|
+
const { planId, planTitle, rosterId } = args.options;
|
|
100
100
|
if (planId) {
|
|
101
101
|
return planId;
|
|
102
102
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
103
|
+
if (planTitle) {
|
|
104
|
+
const groupId = yield this.getGroupId(args);
|
|
105
|
+
const plan = yield planner_1.planner.getPlanByTitle(planTitle, groupId);
|
|
106
|
+
return plan.id;
|
|
107
|
+
}
|
|
108
|
+
const plans = yield planner_1.planner.getPlansByRosterId(rosterId);
|
|
109
|
+
return plans[0].id;
|
|
106
110
|
});
|
|
107
111
|
}
|
|
108
112
|
getGroupId(args) {
|
|
@@ -123,6 +127,7 @@ _PlannerBucketSetCommand_instances = new WeakSet(), _PlannerBucketSetCommand_ini
|
|
|
123
127
|
name: typeof args.options.name !== 'undefined',
|
|
124
128
|
planId: typeof args.options.planId !== 'undefined',
|
|
125
129
|
planTitle: typeof args.options.planTitle !== 'undefined',
|
|
130
|
+
rosterId: typeof args.options.rosterId !== 'undefined',
|
|
126
131
|
ownerGroupId: typeof args.options.ownerGroupId !== 'undefined',
|
|
127
132
|
ownerGroupName: typeof args.options.ownerGroupName !== 'undefined',
|
|
128
133
|
newName: typeof args.options.newName !== 'undefined',
|
|
@@ -138,6 +143,8 @@ _PlannerBucketSetCommand_instances = new WeakSet(), _PlannerBucketSetCommand_ini
|
|
|
138
143
|
option: '--planId [planId]'
|
|
139
144
|
}, {
|
|
140
145
|
option: "--planTitle [planTitle]"
|
|
146
|
+
}, {
|
|
147
|
+
option: '--rosterId [rosterId]'
|
|
141
148
|
}, {
|
|
142
149
|
option: '--ownerGroupId [ownerGroupId]'
|
|
143
150
|
}, {
|
|
@@ -149,33 +156,18 @@ _PlannerBucketSetCommand_instances = new WeakSet(), _PlannerBucketSetCommand_ini
|
|
|
149
156
|
});
|
|
150
157
|
}, _PlannerBucketSetCommand_initValidators = function _PlannerBucketSetCommand_initValidators() {
|
|
151
158
|
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
152
|
-
if (args.options.id) {
|
|
153
|
-
|
|
154
|
-
return 'Don\'t specify planId, planTitle, ownerGroupId or ownerGroupName when using id';
|
|
155
|
-
}
|
|
159
|
+
if (args.options.id && (args.options.planId || args.options.planTitle || args.options.ownerGroupId || args.options.ownerGroupName || args.options.rosterId)) {
|
|
160
|
+
return 'Don\'t specify planId, planTitle, ownerGroupId, ownerGroupName or rosterId when using id';
|
|
156
161
|
}
|
|
157
162
|
if (args.options.name) {
|
|
158
|
-
if (
|
|
159
|
-
return
|
|
163
|
+
if (args.options.ownerGroupId && !validation_1.validation.isValidGuid(args.options.ownerGroupId)) {
|
|
164
|
+
return `${args.options.ownerGroupId} is not a valid GUID`;
|
|
160
165
|
}
|
|
161
|
-
if (args.options.planId && args.options.
|
|
162
|
-
return '
|
|
163
|
-
}
|
|
164
|
-
if (args.options.planTitle) {
|
|
165
|
-
if (!args.options.ownerGroupId && !args.options.ownerGroupName) {
|
|
166
|
-
return 'Specify either ownerGroupId or ownerGroupName when using planTitle';
|
|
167
|
-
}
|
|
168
|
-
if (args.options.ownerGroupId && args.options.ownerGroupName) {
|
|
169
|
-
return 'Specify either ownerGroupId or ownerGroupName when using planTitle but not both';
|
|
170
|
-
}
|
|
171
|
-
if (args.options.ownerGroupId && !validation_1.validation.isValidGuid(args.options.ownerGroupId)) {
|
|
172
|
-
return `${args.options.ownerGroupId} is not a valid GUID`;
|
|
173
|
-
}
|
|
166
|
+
if (args.options.planId && (args.options.ownerGroupId || args.options.ownerGroupName)) {
|
|
167
|
+
return 'Don\'t specify ownerGroupId or ownerGroupName when using planId';
|
|
174
168
|
}
|
|
175
|
-
if (args.options.
|
|
176
|
-
|
|
177
|
-
return 'Don\'t specify ownerGroupId or ownerGroupName when using planId';
|
|
178
|
-
}
|
|
169
|
+
if (args.options.rosterId && (args.options.ownerGroupId || args.options.ownerGroupName)) {
|
|
170
|
+
return 'Don\'t specify ownerGroupId or ownerGroupName when using rosterId';
|
|
179
171
|
}
|
|
180
172
|
}
|
|
181
173
|
if (!args.options.newName && !args.options.orderHint) {
|
|
@@ -184,7 +176,13 @@ _PlannerBucketSetCommand_instances = new WeakSet(), _PlannerBucketSetCommand_ini
|
|
|
184
176
|
return true;
|
|
185
177
|
}));
|
|
186
178
|
}, _PlannerBucketSetCommand_initOptionSets = function _PlannerBucketSetCommand_initOptionSets() {
|
|
187
|
-
this.optionSets.push({ options: ['id', 'name'] }
|
|
179
|
+
this.optionSets.push({ options: ['id', 'name'] }, {
|
|
180
|
+
options: ['planId', 'planTitle', 'rosterId'],
|
|
181
|
+
runsWhen: (args) => args.options.name !== undefined
|
|
182
|
+
}, {
|
|
183
|
+
options: ['ownerGroupId', 'ownerGroupName'],
|
|
184
|
+
runsWhen: (args) => args.options.planTitle !== undefined
|
|
185
|
+
});
|
|
188
186
|
};
|
|
189
187
|
module.exports = new PlannerBucketSetCommand();
|
|
190
188
|
//# sourceMappingURL=bucket-set.js.map
|
|
@@ -36,23 +36,8 @@ class PurviewRetentionEventRemoveCommand extends GraphCommand_1.default {
|
|
|
36
36
|
}
|
|
37
37
|
commandAction(logger, args) {
|
|
38
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
const removeRetentionEvent = () => __awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
try {
|
|
41
|
-
const requestOptions = {
|
|
42
|
-
url: `${this.resource}/v1.0/security/triggers/retentionEvents/${args.options.id}`,
|
|
43
|
-
headers: {
|
|
44
|
-
accept: 'application/json;odata.metadata=none'
|
|
45
|
-
},
|
|
46
|
-
responseType: 'json'
|
|
47
|
-
};
|
|
48
|
-
yield request_1.default.delete(requestOptions);
|
|
49
|
-
}
|
|
50
|
-
catch (err) {
|
|
51
|
-
this.handleRejectedODataJsonPromise(err);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
39
|
if (args.options.force) {
|
|
55
|
-
yield removeRetentionEvent();
|
|
40
|
+
yield this.removeRetentionEvent(args.options);
|
|
56
41
|
}
|
|
57
42
|
else {
|
|
58
43
|
const result = yield Cli_1.Cli.prompt({
|
|
@@ -62,11 +47,28 @@ class PurviewRetentionEventRemoveCommand extends GraphCommand_1.default {
|
|
|
62
47
|
message: `Are you sure you want to remove the retention event ${args.options.id}?`
|
|
63
48
|
});
|
|
64
49
|
if (result.continue) {
|
|
65
|
-
yield removeRetentionEvent();
|
|
50
|
+
yield this.removeRetentionEvent(args.options);
|
|
66
51
|
}
|
|
67
52
|
}
|
|
68
53
|
});
|
|
69
54
|
}
|
|
55
|
+
removeRetentionEvent(options) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
try {
|
|
58
|
+
const requestOptions = {
|
|
59
|
+
url: `${this.resource}/beta/security/triggers/retentionEvents/${options.id}`,
|
|
60
|
+
headers: {
|
|
61
|
+
accept: 'application/json;odata.metadata=none'
|
|
62
|
+
},
|
|
63
|
+
responseType: 'json'
|
|
64
|
+
};
|
|
65
|
+
yield request_1.default.delete(requestOptions);
|
|
66
|
+
}
|
|
67
|
+
catch (err) {
|
|
68
|
+
this.handleRejectedODataJsonPromise(err);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
70
72
|
}
|
|
71
73
|
_PurviewRetentionEventRemoveCommand_instances = new WeakSet(), _PurviewRetentionEventRemoveCommand_initTelemetry = function _PurviewRetentionEventRemoveCommand_initTelemetry() {
|
|
72
74
|
this.telemetry.push((args) => {
|
|
@@ -36,23 +36,8 @@ class PurviewRetentionEventTypeRemoveCommand extends GraphCommand_1.default {
|
|
|
36
36
|
}
|
|
37
37
|
commandAction(logger, args) {
|
|
38
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
const removeRetentionEventType = () => __awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
try {
|
|
41
|
-
const requestOptions = {
|
|
42
|
-
url: `${this.resource}/v1.0/security/triggerTypes/retentionEventTypes/${args.options.id}`,
|
|
43
|
-
headers: {
|
|
44
|
-
accept: 'application/json;odata.metadata=none'
|
|
45
|
-
},
|
|
46
|
-
responseType: 'json'
|
|
47
|
-
};
|
|
48
|
-
yield request_1.default.delete(requestOptions);
|
|
49
|
-
}
|
|
50
|
-
catch (err) {
|
|
51
|
-
this.handleRejectedODataJsonPromise(err);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
39
|
if (args.options.force) {
|
|
55
|
-
yield removeRetentionEventType();
|
|
40
|
+
yield this.removeRetentionEventType(args.options);
|
|
56
41
|
}
|
|
57
42
|
else {
|
|
58
43
|
const result = yield Cli_1.Cli.prompt({
|
|
@@ -62,11 +47,28 @@ class PurviewRetentionEventTypeRemoveCommand extends GraphCommand_1.default {
|
|
|
62
47
|
message: `Are you sure you want to remove the retention event type with id ${args.options.id}?`
|
|
63
48
|
});
|
|
64
49
|
if (result.continue) {
|
|
65
|
-
yield removeRetentionEventType();
|
|
50
|
+
yield this.removeRetentionEventType(args.options);
|
|
66
51
|
}
|
|
67
52
|
}
|
|
68
53
|
});
|
|
69
54
|
}
|
|
55
|
+
removeRetentionEventType(options) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
try {
|
|
58
|
+
const requestOptions = {
|
|
59
|
+
url: `${this.resource}/v1.0/security/triggerTypes/retentionEventTypes/${options.id}`,
|
|
60
|
+
headers: {
|
|
61
|
+
accept: 'application/json;odata.metadata=none'
|
|
62
|
+
},
|
|
63
|
+
responseType: 'json'
|
|
64
|
+
};
|
|
65
|
+
yield request_1.default.delete(requestOptions);
|
|
66
|
+
}
|
|
67
|
+
catch (err) {
|
|
68
|
+
this.handleRejectedODataJsonPromise(err);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
70
72
|
}
|
|
71
73
|
_PurviewRetentionEventTypeRemoveCommand_instances = new WeakSet(), _PurviewRetentionEventTypeRemoveCommand_initTelemetry = function _PurviewRetentionEventTypeRemoveCommand_initTelemetry() {
|
|
72
74
|
this.telemetry.push((args) => {
|
|
@@ -35,48 +35,31 @@ class SearchExternalConnectionRemoveCommand extends GraphCommand_1.default {
|
|
|
35
35
|
__classPrivateFieldGet(this, _SearchExternalConnectionRemoveCommand_instances, "m", _SearchExternalConnectionRemoveCommand_initOptionSets).call(this);
|
|
36
36
|
}
|
|
37
37
|
getExternalConnectionId(args) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
.get(requestOptions)
|
|
50
|
-
.then((res) => {
|
|
38
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
+
if (args.options.id) {
|
|
40
|
+
return args.options.id;
|
|
41
|
+
}
|
|
42
|
+
const requestOptions = {
|
|
43
|
+
url: `${this.resource}/v1.0/external/connections?$filter=name eq '${formatting_1.formatting.encodeQueryParameter(args.options.name)}'&$select=id`,
|
|
44
|
+
headers: {
|
|
45
|
+
accept: 'application/json;odata.metadata=none'
|
|
46
|
+
},
|
|
47
|
+
responseType: 'json'
|
|
48
|
+
};
|
|
49
|
+
const res = yield request_1.default.get(requestOptions);
|
|
51
50
|
if (res.value.length === 1) {
|
|
52
|
-
return
|
|
51
|
+
return res.value[0].id;
|
|
53
52
|
}
|
|
54
53
|
if (res.value.length === 0) {
|
|
55
|
-
|
|
54
|
+
throw `The specified connection does not exist in Microsoft Search`;
|
|
56
55
|
}
|
|
57
|
-
|
|
56
|
+
throw `Multiple external connections with name ${args.options.name} found. Please disambiguate (IDs): ${res.value.map(x => x.id).join(', ')}`;
|
|
58
57
|
});
|
|
59
58
|
}
|
|
60
59
|
commandAction(logger, args) {
|
|
61
60
|
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
const removeExternalConnection = () => __awaiter(this, void 0, void 0, function* () {
|
|
63
|
-
try {
|
|
64
|
-
const externalConnectionId = yield this.getExternalConnectionId(args);
|
|
65
|
-
const requestOptions = {
|
|
66
|
-
url: `${this.resource}/v1.0/external/connections/${formatting_1.formatting.encodeQueryParameter(externalConnectionId)}`,
|
|
67
|
-
headers: {
|
|
68
|
-
accept: 'application/json;odata.metadata=none'
|
|
69
|
-
},
|
|
70
|
-
responseType: 'json'
|
|
71
|
-
};
|
|
72
|
-
yield request_1.default.delete(requestOptions);
|
|
73
|
-
}
|
|
74
|
-
catch (err) {
|
|
75
|
-
this.handleRejectedODataJsonPromise(err);
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
61
|
if (args.options.force) {
|
|
79
|
-
yield removeExternalConnection();
|
|
62
|
+
yield this.removeExternalConnection(args);
|
|
80
63
|
}
|
|
81
64
|
else {
|
|
82
65
|
const result = yield Cli_1.Cli.prompt({
|
|
@@ -86,11 +69,29 @@ class SearchExternalConnectionRemoveCommand extends GraphCommand_1.default {
|
|
|
86
69
|
message: `Are you sure you want to remove the external connection '${args.options.id || args.options.name}'?`
|
|
87
70
|
});
|
|
88
71
|
if (result.continue) {
|
|
89
|
-
yield removeExternalConnection();
|
|
72
|
+
yield this.removeExternalConnection(args);
|
|
90
73
|
}
|
|
91
74
|
}
|
|
92
75
|
});
|
|
93
76
|
}
|
|
77
|
+
removeExternalConnection(args) {
|
|
78
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
+
try {
|
|
80
|
+
const externalConnectionId = yield this.getExternalConnectionId(args);
|
|
81
|
+
const requestOptions = {
|
|
82
|
+
url: `${this.resource}/v1.0/external/connections/${formatting_1.formatting.encodeQueryParameter(externalConnectionId)}`,
|
|
83
|
+
headers: {
|
|
84
|
+
accept: 'application/json;odata.metadata=none'
|
|
85
|
+
},
|
|
86
|
+
responseType: 'json'
|
|
87
|
+
};
|
|
88
|
+
yield request_1.default.delete(requestOptions);
|
|
89
|
+
}
|
|
90
|
+
catch (err) {
|
|
91
|
+
this.handleRejectedODataJsonPromise(err);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
94
95
|
}
|
|
95
96
|
_SearchExternalConnectionRemoveCommand_instances = new WeakSet(), _SearchExternalConnectionRemoveCommand_initTelemetry = function _SearchExternalConnectionRemoveCommand_initTelemetry() {
|
|
96
97
|
this.telemetry.push((args) => {
|
|
@@ -1,4 +1,13 @@
|
|
|
1
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
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.DynamicRule = void 0;
|
|
4
13
|
const fs = require("fs");
|
|
@@ -12,36 +21,32 @@ class DynamicRule extends BasicDependencyRule_1.BasicDependencyRule {
|
|
|
12
21
|
this.fileVariationSuffixes = ['.min', '.bundle', '-min', '.bundle.min'];
|
|
13
22
|
}
|
|
14
23
|
visit(project) {
|
|
15
|
-
|
|
16
|
-
!project.packageJson.dependencies) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
.all(validPackageNames.map((x) => this.getExternalEntryForPackage(x, project)))
|
|
24
|
-
.then((res) => {
|
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
if (!project.packageJson || !project.packageJson.dependencies) {
|
|
26
|
+
return { entries: [], suggestions: [] };
|
|
27
|
+
}
|
|
28
|
+
const validPackageNames = Object.getOwnPropertyNames(project.packageJson.dependencies)
|
|
29
|
+
.filter(x => this.restrictedNamespaces.map(y => x.indexOf(y) === -1).reduce((y, z) => y && z))
|
|
30
|
+
.filter(x => this.restrictedModules.indexOf(x) === -1);
|
|
31
|
+
const res = yield Promise.all(validPackageNames.map((x) => this.getExternalEntryForPackage(x, project)));
|
|
25
32
|
return {
|
|
26
|
-
entries: res
|
|
27
|
-
.filter(x => x !== undefined)
|
|
28
|
-
.map(x => x),
|
|
33
|
+
entries: res.filter(x => x !== undefined),
|
|
29
34
|
suggestions: []
|
|
30
35
|
};
|
|
31
36
|
});
|
|
32
37
|
}
|
|
33
38
|
getExternalEntryForPackage(packageName, project) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
.
|
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
const version = project.packageJson.dependencies[packageName];
|
|
41
|
+
const filesPaths = this.getFilePath(packageName).map(x => this.cleanFilePath(x));
|
|
42
|
+
if (!version || filesPaths.length === 0) {
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
const filesPathsVariations = filesPaths
|
|
46
|
+
.map(x => this.fileVariationSuffixes.map(y => x.indexOf(y) === -1 ? x.replace('.js', `${y}.js`) : x))
|
|
47
|
+
.reduce((x, y) => [...x, ...y]);
|
|
48
|
+
const pathsAndVariations = [...filesPaths, ...filesPathsVariations];
|
|
49
|
+
const externalizeEntryCandidates = yield Promise.all(pathsAndVariations.map(x => this.getExternalEntryForFilePath(x, packageName, version)));
|
|
45
50
|
const dExternalizeEntryCandidates = externalizeEntryCandidates.filter(x => x !== undefined);
|
|
46
51
|
const minifiedModule = dExternalizeEntryCandidates.find(x => !x.globalName && this.pathContainsMinifySuffix(x.path));
|
|
47
52
|
const minifiedNonModule = dExternalizeEntryCandidates.find(x => x.globalName && this.pathContainsMinifySuffix(x.path));
|
|
@@ -57,31 +62,29 @@ class DynamicRule extends BasicDependencyRule_1.BasicDependencyRule {
|
|
|
57
62
|
.filter(y => y > -1).length > 0;
|
|
58
63
|
}
|
|
59
64
|
getExternalEntryForFilePath(filePath, packageName, version) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
.testUrl(url)
|
|
63
|
-
.then((testResult) => {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
66
|
+
const url = this.getFileUrl(packageName, version, filePath);
|
|
67
|
+
const testResult = yield this.testUrl(url);
|
|
64
68
|
if (!testResult) {
|
|
65
|
-
return
|
|
69
|
+
return undefined;
|
|
70
|
+
}
|
|
71
|
+
const moduleInfo = yield this.getModuleType(url);
|
|
72
|
+
if (moduleInfo.scriptType === 'CommonJs') {
|
|
73
|
+
return undefined; //browsers don't support those module types without an additional library
|
|
74
|
+
}
|
|
75
|
+
else if (moduleInfo.scriptType === 'ES2015' || moduleInfo.scriptType === 'AMD') {
|
|
76
|
+
return {
|
|
77
|
+
key: packageName,
|
|
78
|
+
path: url
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
else { //TODO for non-module and UMD we should technically add dependencies as well
|
|
82
|
+
return {
|
|
83
|
+
key: packageName,
|
|
84
|
+
path: url,
|
|
85
|
+
globalName: moduleInfo.exports && moduleInfo.exports.length > 0 ? moduleInfo.exports[0] : packageName // examples where this is not good https://unpkg.com/@pnp/polyfill-ie11@^1.0.2/dist/index.js https://unpkg.com/moment-timezone@^0.5.27/builds/moment-timezone-with-data.js
|
|
86
|
+
};
|
|
66
87
|
}
|
|
67
|
-
return this.getModuleType(url).then((moduleInfo) => {
|
|
68
|
-
if (moduleInfo.scriptType === 'CommonJs') {
|
|
69
|
-
return Promise.resolve(undefined); //browsers don't support those module types without an additional library
|
|
70
|
-
}
|
|
71
|
-
else if (moduleInfo.scriptType === 'ES2015' || moduleInfo.scriptType === 'AMD') {
|
|
72
|
-
return {
|
|
73
|
-
key: packageName,
|
|
74
|
-
path: url
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
else { //TODO for non-module and UMD we should technically add dependencies as well
|
|
78
|
-
return {
|
|
79
|
-
key: packageName,
|
|
80
|
-
path: url,
|
|
81
|
-
globalName: moduleInfo.exports && moduleInfo.exports.length > 0 ? moduleInfo.exports[0] : packageName // examples where this is not good https://unpkg.com/@pnp/polyfill-ie11@^1.0.2/dist/index.js https://unpkg.com/moment-timezone@^0.5.27/builds/moment-timezone-with-data.js
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
88
|
});
|
|
86
89
|
}
|
|
87
90
|
getModuleType(url) {
|
|
@@ -101,10 +104,15 @@ class DynamicRule extends BasicDependencyRule_1.BasicDependencyRule {
|
|
|
101
104
|
return `https://unpkg.com/${packageName}@${version}/${filePath}`;
|
|
102
105
|
}
|
|
103
106
|
testUrl(url) {
|
|
104
|
-
return
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
107
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
108
|
+
try {
|
|
109
|
+
yield request_1.default.head({ url: url, headers: { 'x-anonymous': 'true' } });
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
catch (_a) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
});
|
|
108
116
|
}
|
|
109
117
|
getFilePath(packageName) {
|
|
110
118
|
const packageJsonFilePath = `node_modules/${packageName}/package.json`;
|
|
@@ -13,7 +13,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
13
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
14
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
15
|
};
|
|
16
|
-
var _SpoFileListCommand_instances, _SpoFileListCommand_initTelemetry, _SpoFileListCommand_initOptions, _SpoFileListCommand_initValidators
|
|
16
|
+
var _SpoFileListCommand_instances, _SpoFileListCommand_initTelemetry, _SpoFileListCommand_initOptions, _SpoFileListCommand_initValidators;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const request_1 = require("../../../../request");
|
|
19
19
|
const formatting_1 = require("../../../../utils/formatting");
|
|
@@ -34,18 +34,13 @@ class SpoFileListCommand extends SpoCommand_1.default {
|
|
|
34
34
|
__classPrivateFieldGet(this, _SpoFileListCommand_instances, "m", _SpoFileListCommand_initTelemetry).call(this);
|
|
35
35
|
__classPrivateFieldGet(this, _SpoFileListCommand_instances, "m", _SpoFileListCommand_initOptions).call(this);
|
|
36
36
|
__classPrivateFieldGet(this, _SpoFileListCommand_instances, "m", _SpoFileListCommand_initValidators).call(this);
|
|
37
|
-
__classPrivateFieldGet(this, _SpoFileListCommand_instances, "m", _SpoFileListCommand_initOptionSets).call(this);
|
|
38
37
|
}
|
|
39
38
|
commandAction(logger, args) {
|
|
40
39
|
return __awaiter(this, void 0, void 0, function* () {
|
|
41
40
|
if (this.verbose) {
|
|
42
|
-
logger.logToStderr(`Retrieving all files in folder '${args.options.
|
|
41
|
+
logger.logToStderr(`Retrieving all files in folder '${args.options.folderUrl}' at site '${args.options.webUrl}'${args.options.recursive ? ' (recursive)' : ''}...`);
|
|
43
42
|
}
|
|
44
43
|
try {
|
|
45
|
-
if (args.options.folder) {
|
|
46
|
-
args.options.folderUrl = args.options.folder;
|
|
47
|
-
this.warn(logger, `Option 'folder' is deprecated. Please use 'folderUrl' instead`);
|
|
48
|
-
}
|
|
49
44
|
const fieldProperties = this.formatSelectProperties(args.options.fields, args.options.output);
|
|
50
45
|
const allFiles = [];
|
|
51
46
|
const allFolders = args.options.recursive
|
|
@@ -157,8 +152,6 @@ class SpoFileListCommand extends SpoCommand_1.default {
|
|
|
157
152
|
_SpoFileListCommand_instances = new WeakSet(), _SpoFileListCommand_initTelemetry = function _SpoFileListCommand_initTelemetry() {
|
|
158
153
|
this.telemetry.push((args) => {
|
|
159
154
|
Object.assign(this.telemetryProperties, {
|
|
160
|
-
folder: typeof args.options.folder !== 'undefined',
|
|
161
|
-
folderUrl: typeof args.options.folderUrl !== 'undefined',
|
|
162
155
|
recursive: args.options.recursive,
|
|
163
156
|
fields: typeof args.options.fields !== 'undefined',
|
|
164
157
|
filter: typeof args.options.filter !== 'undefined'
|
|
@@ -168,9 +161,7 @@ _SpoFileListCommand_instances = new WeakSet(), _SpoFileListCommand_initTelemetry
|
|
|
168
161
|
this.options.unshift({
|
|
169
162
|
option: '-u, --webUrl <webUrl>'
|
|
170
163
|
}, {
|
|
171
|
-
option: '--
|
|
172
|
-
}, {
|
|
173
|
-
option: '--folderUrl [folderUrl]'
|
|
164
|
+
option: '-f, --folderUrl <folderUrl>'
|
|
174
165
|
}, {
|
|
175
166
|
option: '--fields [fields]'
|
|
176
167
|
}, {
|
|
@@ -180,8 +171,6 @@ _SpoFileListCommand_instances = new WeakSet(), _SpoFileListCommand_initTelemetry
|
|
|
180
171
|
});
|
|
181
172
|
}, _SpoFileListCommand_initValidators = function _SpoFileListCommand_initValidators() {
|
|
182
173
|
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () { return validation_1.validation.isValidSharePointUrl(args.options.webUrl); }));
|
|
183
|
-
}, _SpoFileListCommand_initOptionSets = function _SpoFileListCommand_initOptionSets() {
|
|
184
|
-
this.optionSets.push({ options: ['folder', 'folderUrl'] });
|
|
185
174
|
};
|
|
186
175
|
SpoFileListCommand.pageSize = 5000;
|
|
187
176
|
module.exports = new SpoFileListCommand();
|