@pnp/cli-microsoft365 7.2.0-beta.6775e3a → 7.2.0-beta.8577f52
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/allCommands.json +1 -0
- package/allCommandsFull.json +1 -0
- package/dist/Auth.js +1 -1
- package/dist/Command.js +13 -6
- package/dist/api.js +5 -7
- package/dist/cli/Cli.js +97 -119
- package/dist/cli/timings.js +9 -0
- package/dist/index.js +8 -14
- package/dist/m365/cli/commands/config/config-set.js +13 -0
- package/dist/m365/commands/login.js +12 -8
- package/dist/m365/flow/commands/environment/environment-list.js +6 -4
- package/dist/m365/spfx/commands/project/DeployWorkflow.js +4 -4
- package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.18.1-rc.0.js → doctor-1.18.1.js} +1 -1
- package/dist/m365/spfx/commands/project/project-doctor/doctor-1.18.2.js +21 -0
- package/dist/m365/spfx/commands/project/project-doctor.js +6 -3
- package/dist/m365/spfx/commands/project/project-github-workflow-add.js +17 -0
- package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.18.1-rc.0.js → upgrade-1.18.1.js} +26 -26
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.18.2.js +53 -0
- package/dist/m365/spfx/commands/project/project-upgrade.js +18 -17
- package/dist/m365/spfx/commands/spfx-doctor.js +16 -1
- package/dist/m365/spo/commands/file/file-retentionlabel-ensure.js +14 -23
- package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +19 -27
- package/dist/m365/spo/commands/folder/folder-retentionlabel-ensure.js +9 -29
- package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +9 -28
- package/dist/m365/spo/commands/list/list-retentionlabel-ensure.js +27 -37
- package/dist/m365/spo/commands/list/list-retentionlabel-remove.js +6 -19
- package/dist/m365/spo/commands/listitem/listitem-batch-add.js +5 -0
- package/dist/m365/spo/commands/listitem/listitem-retentionlabel-ensure.js +36 -37
- package/dist/m365/spo/commands/listitem/listitem-retentionlabel-remove.js +36 -32
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-revoke.js +49 -12
- package/dist/m365/spo/commands/site/site-add.js +45 -12
- package/dist/m365/spo/commands/sitescript/sitescript-get.js +8 -2
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-restore.js +19 -2
- package/dist/m365/teams/commands/user/user-app-remove.js +18 -5
- package/dist/request.js +6 -0
- package/dist/settingsNames.js +2 -0
- package/dist/utils/prompt.js +5 -1
- package/dist/utils/spo.js +109 -0
- package/docs/docs/_clisettings.mdx +2 -0
- package/docs/docs/cmd/aad/approleassignment/approleassignment-add.mdx +1 -1
- package/docs/docs/cmd/aad/approleassignment/approleassignment-list.mdx +2 -2
- package/docs/docs/cmd/aad/approleassignment/approleassignment-remove.mdx +1 -1
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-add.mdx +1 -1
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-list.mdx +2 -2
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-remove.mdx +2 -2
- package/docs/docs/cmd/aad/oauth2grant/oauth2grant-set.mdx +2 -2
- package/docs/docs/cmd/aad/policy/policy-list.mdx +1 -1
- package/docs/docs/cmd/aad/siteclassification/siteclassification-disable.mdx +1 -1
- package/docs/docs/cmd/aad/siteclassification/siteclassification-enable.mdx +1 -1
- package/docs/docs/cmd/aad/siteclassification/siteclassification-get.mdx +1 -1
- package/docs/docs/cmd/aad/siteclassification/siteclassification-set.mdx +1 -1
- package/docs/docs/cmd/aad/sp/sp-add.mdx +2 -2
- package/docs/docs/cmd/aad/sp/sp-get.mdx +2 -2
- package/docs/docs/cmd/aad/user/user-add.mdx +3 -3
- package/docs/docs/cmd/aad/user/user-guest-add.mdx +1 -1
- package/docs/docs/cmd/aad/user/user-set.mdx +3 -3
- package/docs/docs/cmd/flow/run/run-cancel.mdx +3 -0
- package/docs/docs/cmd/graph/changelog/changelog-list.mdx +5 -5
- package/docs/docs/cmd/login.mdx +1 -1
- package/docs/docs/cmd/onenote/notebook/notebook-list.mdx +1 -1
- package/docs/docs/cmd/outlook/message/message-list.mdx +1 -1
- package/docs/docs/cmd/outlook/message/message-move.mdx +1 -1
- package/docs/docs/cmd/planner/bucket/bucket-add.mdx +1 -1
- package/docs/docs/cmd/planner/bucket/bucket-set.mdx +1 -1
- package/docs/docs/cmd/planner/plan/plan-set.mdx +3 -3
- package/docs/docs/cmd/planner/task/task-set.mdx +1 -1
- package/docs/docs/cmd/purview/auditlog/auditlog-list.mdx +3 -3
- package/docs/docs/cmd/purview/retentionevent/retentionevent-add.mdx +1 -1
- package/docs/docs/cmd/purview/retentionevent/retentionevent-get.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-add.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-get.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-remove.mdx +1 -1
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-set.mdx +1 -1
- package/docs/docs/cmd/purview/retentionlabel/retentionlabel-add.mdx +1 -1
- package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-policysettings-list.mdx +4 -4
- package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-add.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-deploy.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-get.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-install.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-list.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-remove.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-retract.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-uninstall.mdx +1 -1
- package/docs/docs/cmd/spo/app/app-upgrade.mdx +1 -1
- package/docs/docs/cmd/spo/contenttype/contenttype-add.mdx +1 -1
- package/docs/docs/cmd/spo/contenttype/contenttype-set.mdx +1 -1
- package/docs/docs/cmd/spo/hidedefaultthemes/hidedefaultthemes-get.mdx +1 -1
- package/docs/docs/cmd/spo/hidedefaultthemes/hidedefaultthemes-set.mdx +1 -1
- package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-revoke.mdx +10 -1
- package/docs/docs/cmd/spo/site/site-add.mdx +25 -4
- package/docs/docs/cmd/spo/site/site-appcatalog-add.mdx +1 -1
- package/docs/docs/cmd/spo/site/site-appcatalog-remove.mdx +1 -1
- package/docs/docs/cmd/spo/site/site-groupify.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-add.mdx +3 -3
- package/docs/docs/cmd/spo/sitedesign/sitedesign-apply.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-get.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-list.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-remove.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-grant.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-list.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-revoke.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-run-list.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-run-status-get.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-set.mdx +3 -3
- package/docs/docs/cmd/spo/sitedesign/sitedesign-task-get.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-task-list.mdx +1 -1
- package/docs/docs/cmd/spo/sitedesign/sitedesign-task-remove.mdx +1 -1
- package/docs/docs/cmd/spo/sitescript/sitescript-add.mdx +1 -1
- package/docs/docs/cmd/spo/sitescript/sitescript-get.mdx +73 -3
- package/docs/docs/cmd/spo/sitescript/sitescript-list.mdx +1 -1
- package/docs/docs/cmd/spo/sitescript/sitescript-remove.mdx +1 -1
- package/docs/docs/cmd/spo/sitescript/sitescript-set.mdx +1 -1
- package/docs/docs/cmd/spo/storageentity/storageentity-get.mdx +1 -1
- package/docs/docs/cmd/spo/storageentity/storageentity-list.mdx +1 -1
- package/docs/docs/cmd/spo/storageentity/storageentity-remove.mdx +1 -1
- package/docs/docs/cmd/spo/storageentity/storageentity-set.mdx +1 -1
- package/docs/docs/cmd/spo/theme/theme-apply.mdx +1 -1
- package/docs/docs/cmd/spo/theme/theme-get.mdx +1 -1
- package/docs/docs/cmd/spo/theme/theme-list.mdx +1 -1
- package/docs/docs/cmd/spo/theme/theme-remove.mdx +1 -1
- package/docs/docs/cmd/spo/user/user-remove.mdx +1 -1
- package/docs/docs/cmd/spo/web/web-set.mdx +1 -1
- package/docs/docs/cmd/teams/channel/channel-remove.mdx +1 -1
- package/docs/docs/cmd/teams/meeting/meeting-get.mdx +1 -1
- package/docs/docs/cmd/teams/meeting/meeting-transcript-list.mdx +1 -1
- package/docs/docs/cmd/teams/report/report-pstncalls.mdx +1 -1
- package/docs/docs/cmd/teams/tab/tab-remove.mdx +1 -1
- package/docs/docs/cmd/teams/team/team-remove.mdx +1 -1
- package/docs/docs/cmd/teams/user/user-app-remove.mdx +11 -2
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-list.mdx +1 -1
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-get.mdx +1 -1
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-list.mdx +1 -1
- package/docs/docs/cmd/todo/task/task-set.mdx +1 -1
- package/npm-shrinkwrap.json +480 -516
- package/package.json +33 -32
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { FN001008_DEP_react } from './rules/FN001008_DEP_react.js';
|
|
2
|
+
import { FN001009_DEP_react_dom } from './rules/FN001009_DEP_react_dom.js';
|
|
3
|
+
import { FN001035_DEP_fluentui_react } from './rules/FN001035_DEP_fluentui_react.js';
|
|
4
|
+
import { FN002004_DEVDEP_gulp } from './rules/FN002004_DEVDEP_gulp.js';
|
|
5
|
+
import { FN002007_DEVDEP_ajv } from './rules/FN002007_DEVDEP_ajv.js';
|
|
6
|
+
import { FN002013_DEVDEP_types_webpack_env } from './rules/FN002013_DEVDEP_types_webpack_env.js';
|
|
7
|
+
import { FN002015_DEVDEP_types_react } from './rules/FN002015_DEVDEP_types_react.js';
|
|
8
|
+
import { FN002016_DEVDEP_types_react_dom } from './rules/FN002016_DEVDEP_types_react_dom.js';
|
|
9
|
+
import { FN002019_DEVDEP_microsoft_rush_stack_compiler } from './rules/FN002019_DEVDEP_microsoft_rush_stack_compiler.js';
|
|
10
|
+
export default [
|
|
11
|
+
new FN001008_DEP_react('17'),
|
|
12
|
+
new FN001009_DEP_react_dom('17'),
|
|
13
|
+
new FN001035_DEP_fluentui_react('^8.106.4'),
|
|
14
|
+
new FN002004_DEVDEP_gulp('4.0.2'),
|
|
15
|
+
new FN002007_DEVDEP_ajv('^6.12.5'),
|
|
16
|
+
new FN002013_DEVDEP_types_webpack_env('~1.15.2'),
|
|
17
|
+
new FN002015_DEVDEP_types_react('17'),
|
|
18
|
+
new FN002016_DEVDEP_types_react_dom('17'),
|
|
19
|
+
new FN002019_DEVDEP_microsoft_rush_stack_compiler(['4.7'])
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=doctor-1.18.2.js.map
|
|
@@ -68,7 +68,8 @@ class SpfxProjectDoctorCommand extends BaseProjectCommand {
|
|
|
68
68
|
'1.17.3',
|
|
69
69
|
'1.17.4',
|
|
70
70
|
'1.18.0',
|
|
71
|
-
'1.18.1
|
|
71
|
+
'1.18.1',
|
|
72
|
+
'1.18.2'
|
|
72
73
|
];
|
|
73
74
|
__classPrivateFieldGet(this, _SpfxProjectDoctorCommand_instances, "m", _SpfxProjectDoctorCommand_initTelemetry).call(this);
|
|
74
75
|
__classPrivateFieldGet(this, _SpfxProjectDoctorCommand_instances, "m", _SpfxProjectDoctorCommand_initOptions).call(this);
|
|
@@ -205,6 +206,7 @@ class SpfxProjectDoctorCommand extends BaseProjectCommand {
|
|
|
205
206
|
return s.join('').trim();
|
|
206
207
|
}
|
|
207
208
|
getMdReport(findings) {
|
|
209
|
+
const projectName = this.getProject(this.projectRootPath).packageSolutionJson?.solution?.name;
|
|
208
210
|
const findingsToReport = [];
|
|
209
211
|
const reportData = this.getReportData(findings);
|
|
210
212
|
findings.forEach(f => {
|
|
@@ -222,7 +224,7 @@ ${f.resolution}
|
|
|
222
224
|
findingsToReport.push(`### ${f.id} ${f.title} | ${f.severity}`, os.EOL, os.EOL, f.description, os.EOL, os.EOL, resolution, os.EOL, `File: [${f.file}${(f.position ? `:${f.position.line}:${f.position.character}` : '')}](${f.file})`, os.EOL, os.EOL);
|
|
223
225
|
});
|
|
224
226
|
const s = [
|
|
225
|
-
`# Validate project ${
|
|
227
|
+
`# Validate project ${projectName}`, os.EOL,
|
|
226
228
|
os.EOL,
|
|
227
229
|
`Date: ${(new Date().toLocaleDateString())}`, os.EOL,
|
|
228
230
|
os.EOL,
|
|
@@ -250,8 +252,9 @@ ${f.resolution}
|
|
|
250
252
|
return s.join('').trim();
|
|
251
253
|
}
|
|
252
254
|
getTourReport(findings) {
|
|
255
|
+
const projectName = this.getProject(this.projectRootPath).packageSolutionJson?.solution?.name;
|
|
253
256
|
const tourFindings = {
|
|
254
|
-
title: `Validate project ${
|
|
257
|
+
title: `Validate project ${projectName}`,
|
|
255
258
|
steps: []
|
|
256
259
|
};
|
|
257
260
|
findings.forEach(f => {
|
|
@@ -63,6 +63,19 @@ class SpfxProjectGithubWorkflowAddCommand extends BaseProjectCommand {
|
|
|
63
63
|
// eslint-disable-next-line camelcase
|
|
64
64
|
workflow.on.workflow_dispatch = null;
|
|
65
65
|
}
|
|
66
|
+
const version = this.getProjectVersion();
|
|
67
|
+
if (!version) {
|
|
68
|
+
throw `Unable to determine the version of the current SharePoint Framework project`;
|
|
69
|
+
}
|
|
70
|
+
const match = version.match(/^(\d+)\.(\d+)\.(\d+)$/);
|
|
71
|
+
const minorVersionString = match ? match[2] : null;
|
|
72
|
+
const minorVersion = minorVersionString ? Number(minorVersionString) : null;
|
|
73
|
+
if (minorVersion === null || isNaN(minorVersion)) {
|
|
74
|
+
throw `Unable to determine the minor version of the current SharePoint Framework project`;
|
|
75
|
+
}
|
|
76
|
+
if (minorVersion < 18) {
|
|
77
|
+
this.getNodeAction(workflow).with['node-version'] = '16.x';
|
|
78
|
+
}
|
|
66
79
|
if (options.skipFeatureDeployment) {
|
|
67
80
|
this.getDeployAction(workflow).with.SKIP_FEATURE_DEPLOYMENT = true;
|
|
68
81
|
}
|
|
@@ -94,6 +107,10 @@ class SpfxProjectGithubWorkflowAddCommand extends BaseProjectCommand {
|
|
|
94
107
|
const steps = this.getWorkFlowSteps(workflow);
|
|
95
108
|
return steps.find(step => step.uses && step.uses.indexOf('action-cli-deploy') >= 0);
|
|
96
109
|
}
|
|
110
|
+
getNodeAction(workflow) {
|
|
111
|
+
const steps = this.getWorkFlowSteps(workflow);
|
|
112
|
+
return steps.find(step => step.uses && step.uses.indexOf('actions/setup-node@') >= 0);
|
|
113
|
+
}
|
|
97
114
|
getWorkFlowSteps(workflow) {
|
|
98
115
|
return workflow.jobs['build-and-deploy'].steps;
|
|
99
116
|
}
|
package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.18.1-rc.0.js → upgrade-1.18.1.js}
RENAMED
|
@@ -26,32 +26,32 @@ import { FN002023_DEVDEP_microsoft_eslint_config_spfx } from './rules/FN002023_D
|
|
|
26
26
|
import { FN010001_YORC_version } from './rules/FN010001_YORC_version.js';
|
|
27
27
|
import { FN014010_CODE_settings_filesexclude_jest } from './rules/FN014010_CODE_settings_filesexclude_jest.js';
|
|
28
28
|
export default [
|
|
29
|
-
new FN001001_DEP_microsoft_sp_core_library('1.18.1
|
|
30
|
-
new FN001002_DEP_microsoft_sp_lodash_subset('1.18.1
|
|
31
|
-
new FN001003_DEP_microsoft_sp_office_ui_fabric_core('1.18.1
|
|
32
|
-
new FN001004_DEP_microsoft_sp_webpart_base('1.18.1
|
|
33
|
-
new FN001011_DEP_microsoft_sp_dialog('1.18.1
|
|
34
|
-
new FN001012_DEP_microsoft_sp_application_base('1.18.1
|
|
35
|
-
new FN001014_DEP_microsoft_sp_listview_extensibility('1.18.1
|
|
36
|
-
new FN001021_DEP_microsoft_sp_property_pane('1.18.1
|
|
29
|
+
new FN001001_DEP_microsoft_sp_core_library('1.18.1'),
|
|
30
|
+
new FN001002_DEP_microsoft_sp_lodash_subset('1.18.1'),
|
|
31
|
+
new FN001003_DEP_microsoft_sp_office_ui_fabric_core('1.18.1'),
|
|
32
|
+
new FN001004_DEP_microsoft_sp_webpart_base('1.18.1'),
|
|
33
|
+
new FN001011_DEP_microsoft_sp_dialog('1.18.1'),
|
|
34
|
+
new FN001012_DEP_microsoft_sp_application_base('1.18.1'),
|
|
35
|
+
new FN001014_DEP_microsoft_sp_listview_extensibility('1.18.1'),
|
|
36
|
+
new FN001021_DEP_microsoft_sp_property_pane('1.18.1'),
|
|
37
37
|
new FN001022_DEP_office_ui_fabric_react('', false),
|
|
38
|
-
new FN001023_DEP_microsoft_sp_component_base('1.18.1
|
|
39
|
-
new FN001024_DEP_microsoft_sp_diagnostics('1.18.1
|
|
40
|
-
new FN001025_DEP_microsoft_sp_dynamic_data('1.18.1
|
|
41
|
-
new FN001026_DEP_microsoft_sp_extension_base('1.18.1
|
|
42
|
-
new FN001027_DEP_microsoft_sp_http('1.18.1
|
|
43
|
-
new FN001028_DEP_microsoft_sp_list_subscription('1.18.1
|
|
44
|
-
new FN001029_DEP_microsoft_sp_loader('1.18.1
|
|
45
|
-
new FN001030_DEP_microsoft_sp_module_interfaces('1.18.1
|
|
46
|
-
new FN001031_DEP_microsoft_sp_odata_types('1.18.1
|
|
47
|
-
new FN001032_DEP_microsoft_sp_page_context('1.18.1
|
|
48
|
-
new FN001013_DEP_microsoft_decorators('1.18.1
|
|
49
|
-
new FN001034_DEP_microsoft_sp_adaptive_card_extension_base('1.18.1
|
|
50
|
-
new FN002001_DEVDEP_microsoft_sp_build_web('1.18.1
|
|
51
|
-
new FN002002_DEVDEP_microsoft_sp_module_interfaces('1.18.1
|
|
52
|
-
new FN002022_DEVDEP_microsoft_eslint_plugin_spfx('1.18.1
|
|
53
|
-
new FN002023_DEVDEP_microsoft_eslint_config_spfx('1.18.1
|
|
54
|
-
new FN010001_YORC_version('1.18.1
|
|
38
|
+
new FN001023_DEP_microsoft_sp_component_base('1.18.1'),
|
|
39
|
+
new FN001024_DEP_microsoft_sp_diagnostics('1.18.1'),
|
|
40
|
+
new FN001025_DEP_microsoft_sp_dynamic_data('1.18.1'),
|
|
41
|
+
new FN001026_DEP_microsoft_sp_extension_base('1.18.1'),
|
|
42
|
+
new FN001027_DEP_microsoft_sp_http('1.18.1'),
|
|
43
|
+
new FN001028_DEP_microsoft_sp_list_subscription('1.18.1'),
|
|
44
|
+
new FN001029_DEP_microsoft_sp_loader('1.18.1'),
|
|
45
|
+
new FN001030_DEP_microsoft_sp_module_interfaces('1.18.1'),
|
|
46
|
+
new FN001031_DEP_microsoft_sp_odata_types('1.18.1'),
|
|
47
|
+
new FN001032_DEP_microsoft_sp_page_context('1.18.1'),
|
|
48
|
+
new FN001013_DEP_microsoft_decorators('1.18.1'),
|
|
49
|
+
new FN001034_DEP_microsoft_sp_adaptive_card_extension_base('1.18.1'),
|
|
50
|
+
new FN002001_DEVDEP_microsoft_sp_build_web('1.18.1'),
|
|
51
|
+
new FN002002_DEVDEP_microsoft_sp_module_interfaces('1.18.1'),
|
|
52
|
+
new FN002022_DEVDEP_microsoft_eslint_plugin_spfx('1.18.1'),
|
|
53
|
+
new FN002023_DEVDEP_microsoft_eslint_config_spfx('1.18.1'),
|
|
54
|
+
new FN010001_YORC_version('1.18.1'),
|
|
55
55
|
new FN014010_CODE_settings_filesexclude_jest()
|
|
56
56
|
];
|
|
57
|
-
//# sourceMappingURL=upgrade-1.18.1
|
|
57
|
+
//# sourceMappingURL=upgrade-1.18.1.js.map
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { FN001001_DEP_microsoft_sp_core_library } from './rules/FN001001_DEP_microsoft_sp_core_library.js';
|
|
2
|
+
import { FN001002_DEP_microsoft_sp_lodash_subset } from './rules/FN001002_DEP_microsoft_sp_lodash_subset.js';
|
|
3
|
+
import { FN001003_DEP_microsoft_sp_office_ui_fabric_core } from './rules/FN001003_DEP_microsoft_sp_office_ui_fabric_core.js';
|
|
4
|
+
import { FN001004_DEP_microsoft_sp_webpart_base } from './rules/FN001004_DEP_microsoft_sp_webpart_base.js';
|
|
5
|
+
import { FN001011_DEP_microsoft_sp_dialog } from './rules/FN001011_DEP_microsoft_sp_dialog.js';
|
|
6
|
+
import { FN001012_DEP_microsoft_sp_application_base } from './rules/FN001012_DEP_microsoft_sp_application_base.js';
|
|
7
|
+
import { FN001013_DEP_microsoft_decorators } from './rules/FN001013_DEP_microsoft_decorators.js';
|
|
8
|
+
import { FN001014_DEP_microsoft_sp_listview_extensibility } from './rules/FN001014_DEP_microsoft_sp_listview_extensibility.js';
|
|
9
|
+
import { FN001021_DEP_microsoft_sp_property_pane } from './rules/FN001021_DEP_microsoft_sp_property_pane.js';
|
|
10
|
+
import { FN001023_DEP_microsoft_sp_component_base } from './rules/FN001023_DEP_microsoft_sp_component_base.js';
|
|
11
|
+
import { FN001024_DEP_microsoft_sp_diagnostics } from './rules/FN001024_DEP_microsoft_sp_diagnostics.js';
|
|
12
|
+
import { FN001025_DEP_microsoft_sp_dynamic_data } from './rules/FN001025_DEP_microsoft_sp_dynamic_data.js';
|
|
13
|
+
import { FN001026_DEP_microsoft_sp_extension_base } from './rules/FN001026_DEP_microsoft_sp_extension_base.js';
|
|
14
|
+
import { FN001027_DEP_microsoft_sp_http } from './rules/FN001027_DEP_microsoft_sp_http.js';
|
|
15
|
+
import { FN001028_DEP_microsoft_sp_list_subscription } from './rules/FN001028_DEP_microsoft_sp_list_subscription.js';
|
|
16
|
+
import { FN001029_DEP_microsoft_sp_loader } from './rules/FN001029_DEP_microsoft_sp_loader.js';
|
|
17
|
+
import { FN001030_DEP_microsoft_sp_module_interfaces } from './rules/FN001030_DEP_microsoft_sp_module_interfaces.js';
|
|
18
|
+
import { FN001031_DEP_microsoft_sp_odata_types } from './rules/FN001031_DEP_microsoft_sp_odata_types.js';
|
|
19
|
+
import { FN001032_DEP_microsoft_sp_page_context } from './rules/FN001032_DEP_microsoft_sp_page_context.js';
|
|
20
|
+
import { FN001034_DEP_microsoft_sp_adaptive_card_extension_base } from './rules/FN001034_DEP_microsoft_sp_adaptive_card_extension_base.js';
|
|
21
|
+
import { FN002001_DEVDEP_microsoft_sp_build_web } from './rules/FN002001_DEVDEP_microsoft_sp_build_web.js';
|
|
22
|
+
import { FN002002_DEVDEP_microsoft_sp_module_interfaces } from './rules/FN002002_DEVDEP_microsoft_sp_module_interfaces.js';
|
|
23
|
+
import { FN002022_DEVDEP_microsoft_eslint_plugin_spfx } from './rules/FN002022_DEVDEP_microsoft_eslint_plugin_spfx.js';
|
|
24
|
+
import { FN002023_DEVDEP_microsoft_eslint_config_spfx } from './rules/FN002023_DEVDEP_microsoft_eslint_config_spfx.js';
|
|
25
|
+
import { FN010001_YORC_version } from './rules/FN010001_YORC_version.js';
|
|
26
|
+
export default [
|
|
27
|
+
new FN001001_DEP_microsoft_sp_core_library('1.18.2'),
|
|
28
|
+
new FN001002_DEP_microsoft_sp_lodash_subset('1.18.2'),
|
|
29
|
+
new FN001003_DEP_microsoft_sp_office_ui_fabric_core('1.18.2'),
|
|
30
|
+
new FN001004_DEP_microsoft_sp_webpart_base('1.18.2'),
|
|
31
|
+
new FN001011_DEP_microsoft_sp_dialog('1.18.2'),
|
|
32
|
+
new FN001012_DEP_microsoft_sp_application_base('1.18.2'),
|
|
33
|
+
new FN001014_DEP_microsoft_sp_listview_extensibility('1.18.2'),
|
|
34
|
+
new FN001021_DEP_microsoft_sp_property_pane('1.18.2'),
|
|
35
|
+
new FN001023_DEP_microsoft_sp_component_base('1.18.2'),
|
|
36
|
+
new FN001024_DEP_microsoft_sp_diagnostics('1.18.2'),
|
|
37
|
+
new FN001025_DEP_microsoft_sp_dynamic_data('1.18.2'),
|
|
38
|
+
new FN001026_DEP_microsoft_sp_extension_base('1.18.2'),
|
|
39
|
+
new FN001027_DEP_microsoft_sp_http('1.18.2'),
|
|
40
|
+
new FN001028_DEP_microsoft_sp_list_subscription('1.18.2'),
|
|
41
|
+
new FN001029_DEP_microsoft_sp_loader('1.18.2'),
|
|
42
|
+
new FN001030_DEP_microsoft_sp_module_interfaces('1.18.2'),
|
|
43
|
+
new FN001031_DEP_microsoft_sp_odata_types('1.18.2'),
|
|
44
|
+
new FN001032_DEP_microsoft_sp_page_context('1.18.2'),
|
|
45
|
+
new FN001013_DEP_microsoft_decorators('1.18.2'),
|
|
46
|
+
new FN001034_DEP_microsoft_sp_adaptive_card_extension_base('1.18.2'),
|
|
47
|
+
new FN002001_DEVDEP_microsoft_sp_build_web('1.18.2'),
|
|
48
|
+
new FN002002_DEVDEP_microsoft_sp_module_interfaces('1.18.2'),
|
|
49
|
+
new FN002022_DEVDEP_microsoft_eslint_plugin_spfx('1.18.2'),
|
|
50
|
+
new FN002023_DEVDEP_microsoft_eslint_config_spfx('1.18.2'),
|
|
51
|
+
new FN010001_YORC_version('1.18.2')
|
|
52
|
+
];
|
|
53
|
+
//# sourceMappingURL=upgrade-1.18.2.js.map
|
|
@@ -7,8 +7,6 @@ var _SpfxProjectUpgradeCommand_instances, _a, _SpfxProjectUpgradeCommand_initTel
|
|
|
7
7
|
import fs from 'fs';
|
|
8
8
|
import os from 'os';
|
|
9
9
|
import path from 'path';
|
|
10
|
-
// uncomment to support upgrading to preview releases
|
|
11
|
-
import { prerelease } from 'semver';
|
|
12
10
|
import { CommandError } from '../../../../Command.js';
|
|
13
11
|
import { fsUtil } from '../../../../utils/fsUtil.js';
|
|
14
12
|
import { packageManager } from '../../../../utils/packageManager.js';
|
|
@@ -72,7 +70,8 @@ class SpfxProjectUpgradeCommand extends BaseProjectCommand {
|
|
|
72
70
|
'1.17.3',
|
|
73
71
|
'1.17.4',
|
|
74
72
|
'1.18.0',
|
|
75
|
-
'1.18.1
|
|
73
|
+
'1.18.1',
|
|
74
|
+
'1.18.2'
|
|
76
75
|
];
|
|
77
76
|
__classPrivateFieldGet(this, _SpfxProjectUpgradeCommand_instances, "m", _SpfxProjectUpgradeCommand_initTelemetry).call(this);
|
|
78
77
|
__classPrivateFieldGet(this, _SpfxProjectUpgradeCommand_instances, "m", _SpfxProjectUpgradeCommand_initOptions).call(this);
|
|
@@ -85,15 +84,15 @@ class SpfxProjectUpgradeCommand extends BaseProjectCommand {
|
|
|
85
84
|
}
|
|
86
85
|
this.toVersion = args.options.toVersion ? args.options.toVersion : this.supportedVersions[this.supportedVersions.length - 1];
|
|
87
86
|
// uncomment to support upgrading to preview releases
|
|
88
|
-
if (!args.options.toVersion &&
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
}
|
|
87
|
+
// if (!args.options.toVersion &&
|
|
88
|
+
// !args.options.preview &&
|
|
89
|
+
// prerelease(this.toVersion)) {
|
|
90
|
+
// // no version and no preview specified while the current version to
|
|
91
|
+
// // upgrade to is a prerelease so let's grab the first non-preview version
|
|
92
|
+
// // since we're supporting only one preview version, it's sufficient for
|
|
93
|
+
// // us to take second to last version
|
|
94
|
+
// this.toVersion = this.supportedVersions[this.supportedVersions.length - 2];
|
|
95
|
+
// }
|
|
97
96
|
this.packageManager = args.options.packageManager || 'npm';
|
|
98
97
|
this.shell = args.options.shell || 'bash';
|
|
99
98
|
if (this.supportedVersions.indexOf(this.toVersion) < 0) {
|
|
@@ -299,6 +298,7 @@ class SpfxProjectUpgradeCommand extends BaseProjectCommand {
|
|
|
299
298
|
return s.join('').trim();
|
|
300
299
|
}
|
|
301
300
|
getMdReport(findings) {
|
|
301
|
+
const projectName = this.getProject(this.projectRootPath).packageSolutionJson?.solution?.name;
|
|
302
302
|
const findingsToReport = [];
|
|
303
303
|
const reportData = this.getReportData(findings);
|
|
304
304
|
findings.forEach(f => {
|
|
@@ -325,7 +325,7 @@ ${f.resolution}
|
|
|
325
325
|
findingsToReport.push(`### ${f.id} ${f.title} | ${f.severity}`, os.EOL, os.EOL, f.description, os.EOL, os.EOL, resolution, os.EOL, `File: [${f.file}${(f.position ? `:${f.position.line}:${f.position.character}` : '')}](${f.file})`, os.EOL, os.EOL);
|
|
326
326
|
});
|
|
327
327
|
const s = [
|
|
328
|
-
`# Upgrade project ${
|
|
328
|
+
`# Upgrade project ${projectName} to v${this.toVersion}`, os.EOL,
|
|
329
329
|
os.EOL,
|
|
330
330
|
`Date: ${(new Date().toLocaleDateString())}`, os.EOL,
|
|
331
331
|
os.EOL,
|
|
@@ -361,8 +361,9 @@ ${f.resolution}
|
|
|
361
361
|
return s.join('').trim();
|
|
362
362
|
}
|
|
363
363
|
getTourReport(findings, project) {
|
|
364
|
+
const projectName = this.getProject(this.projectRootPath).packageSolutionJson?.solution?.name;
|
|
364
365
|
const tourFindings = {
|
|
365
|
-
title: `Upgrade project ${
|
|
366
|
+
title: `Upgrade project ${projectName} to v${this.toVersion}`,
|
|
366
367
|
steps: []
|
|
367
368
|
};
|
|
368
369
|
findings.forEach(f => {
|
|
@@ -480,9 +481,9 @@ _a = SpfxProjectUpgradeCommand, _SpfxProjectUpgradeCommand_instances = new WeakS
|
|
|
480
481
|
preview: args.options.preview
|
|
481
482
|
});
|
|
482
483
|
// uncomment to support upgrading to preview releases
|
|
483
|
-
if (prerelease(this.telemetryProperties.toVersion) && !args.options.preview) {
|
|
484
|
-
|
|
485
|
-
}
|
|
484
|
+
// if (prerelease(this.telemetryProperties.toVersion) && !args.options.preview) {
|
|
485
|
+
// this.telemetryProperties.toVersion = this.supportedVersions[this.supportedVersions.length - 2];
|
|
486
|
+
// }
|
|
486
487
|
});
|
|
487
488
|
}, _SpfxProjectUpgradeCommand_initOptions = function _SpfxProjectUpgradeCommand_initOptions() {
|
|
488
489
|
this.options.unshift({
|
|
@@ -539,7 +539,7 @@ class SpfxDoctorCommand extends BaseProjectCommand {
|
|
|
539
539
|
fix: 'npm i -g yo@4'
|
|
540
540
|
}
|
|
541
541
|
},
|
|
542
|
-
'1.18.1
|
|
542
|
+
'1.18.1': {
|
|
543
543
|
gulpCli: {
|
|
544
544
|
range: '^1 || ^2',
|
|
545
545
|
fix: 'npm i -g gulp-cli@2'
|
|
@@ -553,6 +553,21 @@ class SpfxDoctorCommand extends BaseProjectCommand {
|
|
|
553
553
|
range: '^4',
|
|
554
554
|
fix: 'npm i -g yo@4'
|
|
555
555
|
}
|
|
556
|
+
},
|
|
557
|
+
'1.18.2': {
|
|
558
|
+
gulpCli: {
|
|
559
|
+
range: '^1 || ^2',
|
|
560
|
+
fix: 'npm i -g gulp-cli@2'
|
|
561
|
+
},
|
|
562
|
+
node: {
|
|
563
|
+
range: '>=16.13.0 <17.0.0 || >=18.17.1 <19.0.0',
|
|
564
|
+
fix: 'Install Node.js >=16.13.0 <17.0.0 || >=18.17.1 <19.0.0'
|
|
565
|
+
},
|
|
566
|
+
sp: SharePointVersion.SPO,
|
|
567
|
+
yo: {
|
|
568
|
+
range: '^4 || ^5',
|
|
569
|
+
fix: 'npm i -g yo@5'
|
|
570
|
+
}
|
|
556
571
|
}
|
|
557
572
|
};
|
|
558
573
|
__classPrivateFieldGet(this, _SpfxDoctorCommand_instances, "m", _SpfxDoctorCommand_initTelemetry).call(this);
|
|
@@ -4,14 +4,14 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _SpoFileRetentionLabelEnsureCommand_instances, _SpoFileRetentionLabelEnsureCommand_initTelemetry, _SpoFileRetentionLabelEnsureCommand_initOptions, _SpoFileRetentionLabelEnsureCommand_initValidators, _SpoFileRetentionLabelEnsureCommand_initOptionSets;
|
|
7
|
-
import
|
|
7
|
+
import * as url from 'url';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
|
-
import { formatting } from '../../../../utils/formatting.js';
|
|
10
|
-
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
11
9
|
import { validation } from '../../../../utils/validation.js';
|
|
12
10
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
13
11
|
import commands from '../../commands.js';
|
|
14
|
-
import
|
|
12
|
+
import { formatting } from '../../../../utils/formatting.js';
|
|
13
|
+
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
14
|
+
import { spo } from '../../../../utils/spo.js';
|
|
15
15
|
class SpoFileRetentionLabelEnsureCommand extends SpoCommand {
|
|
16
16
|
get name() {
|
|
17
17
|
return commands.FILE_RETENTIONLABEL_ENSURE;
|
|
@@ -30,22 +30,13 @@ class SpoFileRetentionLabelEnsureCommand extends SpoCommand {
|
|
|
30
30
|
async commandAction(logger, args) {
|
|
31
31
|
try {
|
|
32
32
|
const fileProperties = await this.getFileProperties(logger, args);
|
|
33
|
+
const parsedUrl = url.parse(args.options.webUrl);
|
|
34
|
+
const tenantUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}`;
|
|
35
|
+
const listAbsoluteUrl = urlUtil.urlCombine(tenantUrl, fileProperties.listServerRelativeUrl);
|
|
33
36
|
if (args.options.assetId) {
|
|
34
|
-
await this.applyAssetId(args.options.webUrl, fileProperties.
|
|
35
|
-
}
|
|
36
|
-
const options = {
|
|
37
|
-
webUrl: args.options.webUrl,
|
|
38
|
-
listId: fileProperties.ListItemAllFields.ParentList.Id,
|
|
39
|
-
listItemId: fileProperties.ListItemAllFields.Id,
|
|
40
|
-
name: args.options.name,
|
|
41
|
-
output: 'json',
|
|
42
|
-
debug: this.debug,
|
|
43
|
-
verbose: this.verbose
|
|
44
|
-
};
|
|
45
|
-
const spoListItemRetentionLabelEnsureCommandOutput = await Cli.executeCommandWithOutput(spoListItemRetentionLabelEnsureCommand, { options: { ...options, _: [] } });
|
|
46
|
-
if (this.verbose) {
|
|
47
|
-
await logger.logToStderr(spoListItemRetentionLabelEnsureCommandOutput.stderr);
|
|
37
|
+
await this.applyAssetId(args.options.webUrl, fileProperties.listServerRelativeUrl, fileProperties.listItemId, args.options.assetId);
|
|
48
38
|
}
|
|
39
|
+
await spo.applyRetentionLabelToListItems(args.options.webUrl, args.options.name, listAbsoluteUrl, [parseInt(fileProperties.listItemId)], logger, args.options.verbose);
|
|
49
40
|
}
|
|
50
41
|
catch (err) {
|
|
51
42
|
this.handleRejectedODataJsonPromise(err);
|
|
@@ -64,19 +55,19 @@ class SpoFileRetentionLabelEnsureCommand extends SpoCommand {
|
|
|
64
55
|
requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting.encodeQueryParameter(serverRelativeUrl)}')`;
|
|
65
56
|
}
|
|
66
57
|
const requestOptions = {
|
|
67
|
-
url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList&$select=ServerRelativeUrl,ListItemAllFields/ParentList/
|
|
58
|
+
url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList/RootFolder&$select=ServerRelativeUrl,ListItemAllFields/ParentList/RootFolder/ServerRelativeUrl,ListItemAllFields/Id`,
|
|
68
59
|
headers: {
|
|
69
60
|
'accept': 'application/json;odata=nometadata'
|
|
70
61
|
},
|
|
71
62
|
responseType: 'json'
|
|
72
63
|
};
|
|
73
|
-
|
|
64
|
+
const response = await request.get(requestOptions);
|
|
65
|
+
return { listItemId: response.ListItemAllFields.Id, listServerRelativeUrl: response.ListItemAllFields.ParentList.RootFolder.ServerRelativeUrl };
|
|
74
66
|
}
|
|
75
|
-
async applyAssetId(webUrl,
|
|
76
|
-
const requestUrl = `${webUrl}/_api/web/lists(guid'${formatting.encodeQueryParameter(listId)}')`;
|
|
67
|
+
async applyAssetId(webUrl, listServerRelativeUrl, listItemId, assetId) {
|
|
77
68
|
const requestBody = { "formValues": [{ "FieldName": "ComplianceAssetId", "FieldValue": assetId }] };
|
|
78
69
|
const requestOptions = {
|
|
79
|
-
url: `${
|
|
70
|
+
url: `${webUrl}/_api/web/GetList(@listUrl)/items(${listItemId})/ValidateUpdateListItem()?@listUrl='${formatting.encodeQueryParameter(listServerRelativeUrl)}'`,
|
|
80
71
|
headers: {
|
|
81
72
|
'accept': 'application/json;odata=nometadata'
|
|
82
73
|
},
|
|
@@ -4,14 +4,15 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _SpoFileRetentionLabelRemoveCommand_instances, _SpoFileRetentionLabelRemoveCommand_initTelemetry, _SpoFileRetentionLabelRemoveCommand_initOptions, _SpoFileRetentionLabelRemoveCommand_initValidators, _SpoFileRetentionLabelRemoveCommand_initOptionSets;
|
|
7
|
+
import * as url from 'url';
|
|
7
8
|
import { Cli } from '../../../../cli/Cli.js';
|
|
8
9
|
import request from '../../../../request.js';
|
|
9
10
|
import { formatting } from '../../../../utils/formatting.js';
|
|
11
|
+
import { spo } from '../../../../utils/spo.js';
|
|
10
12
|
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
11
13
|
import { validation } from '../../../../utils/validation.js';
|
|
12
14
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
13
15
|
import commands from '../../commands.js';
|
|
14
|
-
import spoListItemRetentionLabelRemoveCommand from '../listitem/listitem-retentionlabel-remove.js';
|
|
15
16
|
class SpoFileRetentionLabelRemoveCommand extends SpoCommand {
|
|
16
17
|
get name() {
|
|
17
18
|
return commands.FILE_RETENTIONLABEL_REMOVE;
|
|
@@ -39,36 +40,21 @@ class SpoFileRetentionLabelRemoveCommand extends SpoCommand {
|
|
|
39
40
|
}
|
|
40
41
|
}
|
|
41
42
|
async removeFileRetentionLabel(logger, args) {
|
|
42
|
-
if (this.verbose) {
|
|
43
|
-
await logger.logToStderr(`Removing retention label from file ${args.options.fileId || args.options.fileUrl} in site at ${args.options.webUrl}...`);
|
|
44
|
-
}
|
|
45
43
|
try {
|
|
46
|
-
const fileProperties = await this.getFileProperties(args);
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
force: true,
|
|
52
|
-
output: 'json',
|
|
53
|
-
debug: this.debug,
|
|
54
|
-
verbose: this.verbose
|
|
55
|
-
};
|
|
56
|
-
const spoListItemRetentionLabelRemoveCommandOutput = await Cli.executeCommandWithOutput(spoListItemRetentionLabelRemoveCommand, { options: { ...options, _: [] } });
|
|
57
|
-
if (this.verbose) {
|
|
58
|
-
await logger.logToStderr(spoListItemRetentionLabelRemoveCommandOutput.stderr);
|
|
59
|
-
}
|
|
44
|
+
const fileProperties = await this.getFileProperties(logger, args);
|
|
45
|
+
const parsedUrl = url.parse(args.options.webUrl);
|
|
46
|
+
const tenantUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}`;
|
|
47
|
+
const listAbsoluteUrl = urlUtil.urlCombine(tenantUrl, fileProperties.listServerRelativeUrl);
|
|
48
|
+
await spo.removeRetentionLabelFromListItems(args.options.webUrl, listAbsoluteUrl, [parseInt(fileProperties.listItemId)], logger, args.options.verbose);
|
|
60
49
|
}
|
|
61
50
|
catch (err) {
|
|
62
51
|
this.handleRejectedODataJsonPromise(err);
|
|
63
52
|
}
|
|
64
53
|
}
|
|
65
|
-
async getFileProperties(args) {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
},
|
|
70
|
-
responseType: 'json'
|
|
71
|
-
};
|
|
54
|
+
async getFileProperties(logger, args) {
|
|
55
|
+
if (this.verbose) {
|
|
56
|
+
logger.logToStderr(`Retrieving list and item information for file '${args.options.fileId || args.options.fileUrl}' in site at ${args.options.webUrl}...`);
|
|
57
|
+
}
|
|
72
58
|
let requestUrl = `${args.options.webUrl}/_api/web/`;
|
|
73
59
|
if (args.options.fileId) {
|
|
74
60
|
requestUrl += `GetFileById('${args.options.fileId}')`;
|
|
@@ -77,9 +63,15 @@ class SpoFileRetentionLabelRemoveCommand extends SpoCommand {
|
|
|
77
63
|
const serverRelativeUrl = urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
|
|
78
64
|
requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting.encodeQueryParameter(serverRelativeUrl)}')`;
|
|
79
65
|
}
|
|
80
|
-
requestOptions
|
|
66
|
+
const requestOptions = {
|
|
67
|
+
url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList/RootFolder&$select=ServerRelativeUrl,ListItemAllFields/ParentList/RootFolder/ServerRelativeUrl,ListItemAllFields/Id`,
|
|
68
|
+
headers: {
|
|
69
|
+
'accept': 'application/json;odata=nometadata'
|
|
70
|
+
},
|
|
71
|
+
responseType: 'json'
|
|
72
|
+
};
|
|
81
73
|
const response = await request.get(requestOptions);
|
|
82
|
-
return {
|
|
74
|
+
return { listItemId: response.ListItemAllFields.Id, listServerRelativeUrl: response.ListItemAllFields.ParentList.RootFolder.ServerRelativeUrl };
|
|
83
75
|
}
|
|
84
76
|
}
|
|
85
77
|
_SpoFileRetentionLabelRemoveCommand_instances = new WeakSet(), _SpoFileRetentionLabelRemoveCommand_initTelemetry = function _SpoFileRetentionLabelRemoveCommand_initTelemetry() {
|
|
@@ -4,15 +4,14 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _SpoFolderRetentionLabelEnsureCommand_instances, _SpoFolderRetentionLabelEnsureCommand_initTelemetry, _SpoFolderRetentionLabelEnsureCommand_initOptions, _SpoFolderRetentionLabelEnsureCommand_initValidators, _SpoFolderRetentionLabelEnsureCommand_initOptionSets;
|
|
7
|
-
import
|
|
7
|
+
import * as url from 'url';
|
|
8
8
|
import request from '../../../../request.js';
|
|
9
9
|
import { formatting } from '../../../../utils/formatting.js';
|
|
10
|
+
import { spo } from '../../../../utils/spo.js';
|
|
10
11
|
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
11
12
|
import { validation } from '../../../../utils/validation.js';
|
|
12
13
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
13
14
|
import commands from '../../commands.js';
|
|
14
|
-
import spoListRetentionLabelEnsureCommand from '../list/list-retentionlabel-ensure.js';
|
|
15
|
-
import spoListItemRetentionLabelEnsureCommand from '../listitem/listitem-retentionlabel-ensure.js';
|
|
16
15
|
class SpoFolderRetentionLabelEnsureCommand extends SpoCommand {
|
|
17
16
|
get name() {
|
|
18
17
|
return commands.FOLDER_RETENTIONLABEL_ENSURE;
|
|
@@ -32,33 +31,14 @@ class SpoFolderRetentionLabelEnsureCommand extends SpoCommand {
|
|
|
32
31
|
try {
|
|
33
32
|
const folderProperties = await this.getFolderProperties(logger, args);
|
|
34
33
|
if (folderProperties.ListItemAllFields) {
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
name: args.options.name,
|
|
40
|
-
output: 'json',
|
|
41
|
-
debug: this.debug,
|
|
42
|
-
verbose: this.verbose
|
|
43
|
-
};
|
|
44
|
-
const spoListItemRetentionLabelEnsureCommandOutput = await Cli.executeCommandWithOutput(spoListItemRetentionLabelEnsureCommand, { options: { ...options, _: [] } });
|
|
45
|
-
if (this.verbose) {
|
|
46
|
-
await logger.logToStderr(spoListItemRetentionLabelEnsureCommandOutput.stderr);
|
|
47
|
-
}
|
|
34
|
+
const parsedUrl = url.parse(args.options.webUrl);
|
|
35
|
+
const tenantUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}`;
|
|
36
|
+
const listAbsoluteUrl = urlUtil.urlCombine(tenantUrl, folderProperties.ListItemAllFields.ParentList.RootFolder.ServerRelativeUrl);
|
|
37
|
+
await spo.applyRetentionLabelToListItems(args.options.webUrl, args.options.name, listAbsoluteUrl, [parseInt(folderProperties.ListItemAllFields.Id)], logger, args.options.verbose);
|
|
48
38
|
}
|
|
49
39
|
else {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
listUrl: folderProperties.ServerRelativeUrl,
|
|
53
|
-
name: args.options.name,
|
|
54
|
-
output: 'json',
|
|
55
|
-
debug: this.debug,
|
|
56
|
-
verbose: this.verbose
|
|
57
|
-
};
|
|
58
|
-
const spoListRetentionLabelEnsureCommandOutput = await Cli.executeCommandWithOutput(spoListRetentionLabelEnsureCommand, { options: { ...options, _: [] } });
|
|
59
|
-
if (this.verbose) {
|
|
60
|
-
await logger.logToStderr(spoListRetentionLabelEnsureCommandOutput.stderr);
|
|
61
|
-
}
|
|
40
|
+
const listAbsoluteUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, folderProperties.ServerRelativeUrl);
|
|
41
|
+
await spo.applyDefaultRetentionLabelToList(args.options.webUrl, args.options.name, listAbsoluteUrl, false, logger, args.options.verbose);
|
|
62
42
|
}
|
|
63
43
|
}
|
|
64
44
|
catch (err) {
|
|
@@ -78,7 +58,7 @@ class SpoFolderRetentionLabelEnsureCommand extends SpoCommand {
|
|
|
78
58
|
requestUrl += `GetFolderByServerRelativePath(DecodedUrl='${formatting.encodeQueryParameter(serverRelativeUrl)}')`;
|
|
79
59
|
}
|
|
80
60
|
const requestOptions = {
|
|
81
|
-
url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList&$select=ServerRelativeUrl,ListItemAllFields/ParentList/
|
|
61
|
+
url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList/RootFolder&$select=ServerRelativeUrl,ListItemAllFields/ParentList/RootFolder/ServerRelativeUrl,ListItemAllFields/Id`,
|
|
82
62
|
headers: {
|
|
83
63
|
'accept': 'application/json;odata=nometadata'
|
|
84
64
|
},
|
|
@@ -4,15 +4,15 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _SpoFolderRetentionLabelRemoveCommand_instances, _SpoFolderRetentionLabelRemoveCommand_initTelemetry, _SpoFolderRetentionLabelRemoveCommand_initOptions, _SpoFolderRetentionLabelRemoveCommand_initValidators, _SpoFolderRetentionLabelRemoveCommand_initOptionSets;
|
|
7
|
+
import * as url from 'url';
|
|
7
8
|
import { Cli } from '../../../../cli/Cli.js';
|
|
8
9
|
import request from '../../../../request.js';
|
|
9
10
|
import { formatting } from '../../../../utils/formatting.js';
|
|
11
|
+
import { spo } from '../../../../utils/spo.js';
|
|
10
12
|
import { urlUtil } from '../../../../utils/urlUtil.js';
|
|
11
13
|
import { validation } from '../../../../utils/validation.js';
|
|
12
14
|
import SpoCommand from '../../../base/SpoCommand.js';
|
|
13
15
|
import commands from '../../commands.js';
|
|
14
|
-
import spoListRetentionLabelRemoveCommand from '../list/list-retentionlabel-remove.js';
|
|
15
|
-
import spoListItemRetentionLabelRemoveCommand from '../listitem/listitem-retentionlabel-remove.js';
|
|
16
16
|
class SpoFolderRetentionLabelRemoveCommand extends SpoCommand {
|
|
17
17
|
get name() {
|
|
18
18
|
return commands.FOLDER_RETENTIONLABEL_REMOVE;
|
|
@@ -43,33 +43,14 @@ class SpoFolderRetentionLabelRemoveCommand extends SpoCommand {
|
|
|
43
43
|
try {
|
|
44
44
|
const folderProperties = await this.getFolderProperties(logger, args);
|
|
45
45
|
if (folderProperties.ListItemAllFields) {
|
|
46
|
-
const
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
force: true,
|
|
51
|
-
output: 'json',
|
|
52
|
-
debug: this.debug,
|
|
53
|
-
verbose: this.verbose
|
|
54
|
-
};
|
|
55
|
-
const spoListItemRetentionLabelRemoveCommandOutput = await Cli.executeCommandWithOutput(spoListItemRetentionLabelRemoveCommand, { options: { ...options, _: [] } });
|
|
56
|
-
if (this.verbose) {
|
|
57
|
-
await logger.logToStderr(spoListItemRetentionLabelRemoveCommandOutput.stderr);
|
|
58
|
-
}
|
|
46
|
+
const parsedUrl = url.parse(args.options.webUrl);
|
|
47
|
+
const tenantUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}`;
|
|
48
|
+
const listAbsoluteUrl = urlUtil.urlCombine(tenantUrl, folderProperties.ListItemAllFields.ParentList.RootFolder.ServerRelativeUrl);
|
|
49
|
+
await spo.removeRetentionLabelFromListItems(args.options.webUrl, listAbsoluteUrl, [parseInt(folderProperties.ListItemAllFields.Id)], logger, args.options.verbose);
|
|
59
50
|
}
|
|
60
51
|
else {
|
|
61
|
-
const
|
|
62
|
-
|
|
63
|
-
listUrl: folderProperties.ServerRelativeUrl,
|
|
64
|
-
force: true,
|
|
65
|
-
output: 'json',
|
|
66
|
-
debug: this.debug,
|
|
67
|
-
verbose: this.verbose
|
|
68
|
-
};
|
|
69
|
-
const spoListRetentionLabelEnsureCommandOutput = await Cli.executeCommandWithOutput(spoListRetentionLabelRemoveCommand, { options: { ...options, _: [] } });
|
|
70
|
-
if (this.verbose) {
|
|
71
|
-
await logger.logToStderr(spoListRetentionLabelEnsureCommandOutput.stderr);
|
|
72
|
-
}
|
|
52
|
+
const listAbsoluteUrl = urlUtil.getAbsoluteUrl(args.options.webUrl, folderProperties.ServerRelativeUrl);
|
|
53
|
+
await spo.removeDefaultRetentionLabelFromList(args.options.webUrl, listAbsoluteUrl, logger, args.options.verbose);
|
|
73
54
|
}
|
|
74
55
|
}
|
|
75
56
|
catch (err) {
|
|
@@ -89,7 +70,7 @@ class SpoFolderRetentionLabelRemoveCommand extends SpoCommand {
|
|
|
89
70
|
requestUrl += `GetFolderByServerRelativePath(DecodedUrl='${formatting.encodeQueryParameter(serverRelativeUrl)}')`;
|
|
90
71
|
}
|
|
91
72
|
const requestOptions = {
|
|
92
|
-
url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList&$select=ServerRelativeUrl,ListItemAllFields/ParentList/
|
|
73
|
+
url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList/RootFolder&$select=ServerRelativeUrl,ListItemAllFields/ParentList/RootFolder/ServerRelativeUrl,ListItemAllFields/Id`,
|
|
93
74
|
headers: {
|
|
94
75
|
'accept': 'application/json;odata=nometadata'
|
|
95
76
|
},
|