@pnp/cli-microsoft365 10.11.0-beta.5e075e5 → 10.11.0-beta.b1eeb91

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.
Files changed (87) hide show
  1. package/.eslintrc.cjs +2 -0
  2. package/Dockerfile +2 -2
  3. package/allCommands.json +1 -1
  4. package/allCommandsFull.json +1 -1
  5. package/dist/m365/base/GraphApplicationCommand.js +17 -0
  6. package/dist/m365/base/{DelegatedGraphCommand.js → GraphDelegatedCommand.js} +4 -4
  7. package/dist/m365/base/PowerAppsCommand.js +1 -1
  8. package/dist/m365/base/PowerAutomateCommand.js +1 -1
  9. package/dist/m365/base/PowerBICommand.js +1 -1
  10. package/dist/m365/base/PowerPlatformCommand.js +1 -1
  11. package/dist/m365/base/VivaEngageCommand.js +1 -1
  12. package/dist/m365/entra/commands/app/app-get.js +11 -52
  13. package/dist/m365/entra/commands/app/app-permission-add.js +19 -30
  14. package/dist/m365/entra/commands/app/app-permission-list.js +2 -19
  15. package/dist/m365/entra/commands/app/app-permission-remove.js +22 -31
  16. package/dist/m365/entra/commands/app/app-remove.js +2 -18
  17. package/dist/m365/entra/commands/app/app-role-add.js +10 -43
  18. package/dist/m365/entra/commands/app/app-role-list.js +2 -20
  19. package/dist/m365/entra/commands/app/app-role-remove.js +9 -40
  20. package/dist/m365/entra/commands/app/app-set.js +2 -19
  21. package/dist/m365/outlook/commands/message/message-move.js +1 -1
  22. package/dist/m365/pp/commands/managementapp/managementapp-add.js +7 -21
  23. package/dist/m365/spe/commands/container/container-recyclebinitem-restore.js +96 -0
  24. package/dist/m365/spe/commands.js +1 -0
  25. package/dist/m365/spfx/commands/project/base-project-command.js +1 -0
  26. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.22.0-beta.1.js +19 -0
  27. package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
  28. package/dist/m365/spfx/commands/project/project-model/SassJson.js +2 -0
  29. package/dist/m365/spfx/commands/project/project-model/index.js +1 -0
  30. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002001_DEVDEP_microsoft_sp_build_web.js +2 -2
  31. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002004_DEVDEP_gulp.js +2 -2
  32. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002007_DEVDEP_ajv.js +2 -2
  33. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002029_DEVDEP_microsoft_rush_stack_compiler_5_3.js +2 -2
  34. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002030_DEVDEP_microsoft_spfx_web_build_rig.js +10 -0
  35. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002031_DEVDEP_rushstack_heft.js +10 -0
  36. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002032_DEVDEP_typescript_eslint_parser.js +10 -0
  37. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002033_DEVDEP_jest_junit.js +10 -0
  38. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010011_YORC_useGulp.js +40 -0
  39. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015010_FILE_gulpfile_js.js +10 -0
  40. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015011_FILE_tsconfig_json.js +10 -0
  41. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015012_FILE_config_heft_json.js +10 -0
  42. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015013_FILE_config_jest_config_json.js +10 -0
  43. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015014_FILE_config_rig_json.js +10 -0
  44. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015015_FILE_config_typescript_json.js +10 -0
  45. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021004_PKG_scripts_build.js +45 -0
  46. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021005_PKG_scripts_test.js +45 -0
  47. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021006_PKG_scripts_clean.js +45 -0
  48. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021007_PKG_scripts_deploy.js +45 -0
  49. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021008_PKG_scripts_start.js +45 -0
  50. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021009_PKG_scripts_build_watch.js +45 -0
  51. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021010_PKG_scripts_package_solution.js +45 -0
  52. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021011_PKG_scripts_deploy_azure_storage.js +45 -0
  53. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021012_PKG_scripts_eject_webpack.js +45 -0
  54. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021013_PKG_overrides_rushstack_heft.js +45 -0
  55. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023003_GITIGNORE_libdts.js +36 -0
  56. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023004_GITIGNORE_libcommonjs.js +36 -0
  57. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023005_GITIGNORE_libesm.js +36 -0
  58. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023006_GITIGNORE_jestoutput.js +36 -0
  59. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN026001_CFG_SASS_schema.js +40 -0
  60. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN026002_CFG_SASS_extends.js +40 -0
  61. package/dist/m365/spfx/commands/project/project-upgrade/rules/FileAddRemoveRule.js +7 -0
  62. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.22.0-beta.1.js +241 -0
  63. package/dist/m365/spfx/commands/project/project-upgrade.js +16 -13
  64. package/dist/m365/spfx/commands/spfx-doctor.js +15 -0
  65. package/dist/m365/spo/commands/tenant/tenant-site-unarchive.js +1 -1
  66. package/dist/m365/teams/commands/callrecord/callrecord-list.js +100 -0
  67. package/dist/m365/teams/commands/chat/chat-message-send.js +2 -2
  68. package/dist/m365/teams/commands/message/message-remove.js +2 -2
  69. package/dist/m365/teams/commands/message/message-restore.js +2 -2
  70. package/dist/m365/teams/commands.js +1 -0
  71. package/dist/m365/todo/commands/list/list-add.js +2 -2
  72. package/dist/m365/todo/commands/list/list-get.js +2 -2
  73. package/dist/m365/todo/commands/list/list-list.js +2 -2
  74. package/dist/m365/todo/commands/list/list-remove.js +2 -2
  75. package/dist/m365/todo/commands/list/list-set.js +2 -2
  76. package/dist/m365/todo/commands/task/task-add.js +2 -2
  77. package/dist/m365/todo/commands/task/task-get.js +2 -2
  78. package/dist/m365/todo/commands/task/task-list.js +2 -2
  79. package/dist/m365/todo/commands/task/task-remove.js +2 -2
  80. package/dist/m365/todo/commands/task/task-set.js +2 -2
  81. package/dist/utils/accessToken.js +9 -5
  82. package/dist/utils/entraApp.js +15 -0
  83. package/docs/docs/cmd/spe/container/container-recyclebinitem-restore.mdx +53 -0
  84. package/docs/docs/cmd/spo/tenant/tenant-site-unarchive.mdx +1 -1
  85. package/docs/docs/cmd/teams/callrecord/callrecord-list.mdx +173 -0
  86. package/npm-shrinkwrap.json +291 -763
  87. package/package.json +17 -17
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021006_PKG_scripts_clean extends JsonRule {
3
+ constructor(script) {
4
+ super();
5
+ this.script = script;
6
+ }
7
+ get id() {
8
+ return 'FN021006';
9
+ }
10
+ get title() {
11
+ return 'package.json scripts.clean';
12
+ }
13
+ get description() {
14
+ return 'Update package.json scripts.clean property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "scripts": {
19
+ "clean": "${this.script}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.scripts ||
37
+ typeof project.packageJson.scripts !== 'object' ||
38
+ !project.packageJson.scripts.clean ||
39
+ project.packageJson.scripts.clean !== this.script) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'scripts.clean');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021006_PKG_scripts_clean.js.map
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021007_PKG_scripts_deploy extends JsonRule {
3
+ constructor(script) {
4
+ super();
5
+ this.script = script;
6
+ }
7
+ get id() {
8
+ return 'FN021007';
9
+ }
10
+ get title() {
11
+ return 'package.json scripts.deploy';
12
+ }
13
+ get description() {
14
+ return 'Update package.json scripts.deploy property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "scripts": {
19
+ "deploy": "${this.script}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.scripts ||
37
+ typeof project.packageJson.scripts !== 'object' ||
38
+ !project.packageJson.scripts.deploy ||
39
+ project.packageJson.scripts.deploy !== this.script) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'scripts.deploy');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021007_PKG_scripts_deploy.js.map
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021008_PKG_scripts_start extends JsonRule {
3
+ constructor(script) {
4
+ super();
5
+ this.script = script;
6
+ }
7
+ get id() {
8
+ return 'FN021008';
9
+ }
10
+ get title() {
11
+ return 'package.json scripts.start';
12
+ }
13
+ get description() {
14
+ return 'Update package.json scripts.start property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "scripts": {
19
+ "start": "${this.script}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.scripts ||
37
+ typeof project.packageJson.scripts !== 'object' ||
38
+ !project.packageJson.scripts.start ||
39
+ project.packageJson.scripts.start !== this.script) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'scripts.start');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021008_PKG_scripts_start.js.map
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021009_PKG_scripts_build_watch extends JsonRule {
3
+ constructor(script) {
4
+ super();
5
+ this.script = script;
6
+ }
7
+ get id() {
8
+ return 'FN021009';
9
+ }
10
+ get title() {
11
+ return 'package.json scripts.build-watch';
12
+ }
13
+ get description() {
14
+ return 'Update package.json scripts.build-watch property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "scripts": {
19
+ "build-watch": "${this.script}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.scripts ||
37
+ typeof project.packageJson.scripts !== 'object' ||
38
+ !project.packageJson.scripts['build-watch'] ||
39
+ project.packageJson.scripts['build-watch'] !== this.script) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'scripts.build-watch');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021009_PKG_scripts_build_watch.js.map
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021010_PKG_scripts_package_solution extends JsonRule {
3
+ constructor(script) {
4
+ super();
5
+ this.script = script;
6
+ }
7
+ get id() {
8
+ return 'FN021010';
9
+ }
10
+ get title() {
11
+ return 'package.json scripts.package-solution';
12
+ }
13
+ get description() {
14
+ return 'Update package.json scripts.package-solution property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "scripts": {
19
+ "package-solution": "${this.script}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.scripts ||
37
+ typeof project.packageJson.scripts !== 'object' ||
38
+ !project.packageJson.scripts['package-solution'] ||
39
+ project.packageJson.scripts['package-solution'] !== this.script) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'scripts.package-solution');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021010_PKG_scripts_package_solution.js.map
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021011_PKG_scripts_deploy_azure_storage extends JsonRule {
3
+ constructor(script) {
4
+ super();
5
+ this.script = script;
6
+ }
7
+ get id() {
8
+ return 'FN021011';
9
+ }
10
+ get title() {
11
+ return 'package.json scripts.deploy-azure-storage';
12
+ }
13
+ get description() {
14
+ return 'Update package.json scripts.deploy-azure-storage property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "scripts": {
19
+ "deploy-azure-storage": "${this.script}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.scripts ||
37
+ typeof project.packageJson.scripts !== 'object' ||
38
+ !project.packageJson.scripts['deploy-azure-storage'] ||
39
+ project.packageJson.scripts['deploy-azure-storage'] !== this.script) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'scripts.deploy-azure-storage');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021011_PKG_scripts_deploy_azure_storage.js.map
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021012_PKG_scripts_eject_webpack extends JsonRule {
3
+ constructor(script) {
4
+ super();
5
+ this.script = script;
6
+ }
7
+ get id() {
8
+ return 'FN021012';
9
+ }
10
+ get title() {
11
+ return 'package.json scripts.eject-webpack';
12
+ }
13
+ get description() {
14
+ return 'Update package.json scripts.eject-webpack property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "scripts": {
19
+ "eject-webpack": "${this.script}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.scripts ||
37
+ typeof project.packageJson.scripts !== 'object' ||
38
+ !project.packageJson.scripts['eject-webpack'] ||
39
+ project.packageJson.scripts['eject-webpack'] !== this.script) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'scripts.eject-webpack');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021012_PKG_scripts_eject_webpack.js.map
@@ -0,0 +1,45 @@
1
+ import { JsonRule } from "../../JsonRule.js";
2
+ export class FN021013_PKG_overrides_rushstack_heft extends JsonRule {
3
+ constructor(version) {
4
+ super();
5
+ this.version = version;
6
+ }
7
+ get id() {
8
+ return 'FN021013';
9
+ }
10
+ get title() {
11
+ return 'package.json overrides.@rushstack/heft';
12
+ }
13
+ get description() {
14
+ return 'Update package.json overrides.@rushstack/heft property';
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "overrides": {
19
+ "@rushstack/heft": "${this.version}"
20
+ }
21
+ }`;
22
+ }
23
+ get resolutionType() {
24
+ return 'json';
25
+ }
26
+ get severity() {
27
+ return 'Required';
28
+ }
29
+ get file() {
30
+ return './package.json';
31
+ }
32
+ visit(project, findings) {
33
+ if (!project.packageJson) {
34
+ return;
35
+ }
36
+ if (!project.packageJson.overrides ||
37
+ typeof project.packageJson.overrides !== 'object' ||
38
+ !project.packageJson.overrides['@rushstack/heft'] ||
39
+ project.packageJson.overrides['@rushstack/heft'] !== this.version) {
40
+ const node = this.getAstNodeFromFile(project.packageJson, 'overrides.@rushstack/heft');
41
+ this.addFindingWithPosition(findings, node);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=FN021013_PKG_overrides_rushstack_heft.js.map
@@ -0,0 +1,36 @@
1
+ import { Rule } from '../../Rule.js';
2
+ export class FN023003_GITIGNORE_libdts extends Rule {
3
+ constructor() {
4
+ super();
5
+ }
6
+ get id() {
7
+ return 'FN023003';
8
+ }
9
+ get title() {
10
+ return `.gitignore 'lib-dts' folder`;
11
+ }
12
+ get description() {
13
+ return `To .gitignore add the 'lib-dts' folder`;
14
+ }
15
+ get resolution() {
16
+ return `lib-dts`;
17
+ }
18
+ get resolutionType() {
19
+ return 'text';
20
+ }
21
+ get severity() {
22
+ return 'Required';
23
+ }
24
+ get file() {
25
+ return './.gitignore';
26
+ }
27
+ visit(project, findings) {
28
+ if (!project.gitignore) {
29
+ return;
30
+ }
31
+ if (!/^lib-dts$/m.test(project.gitignore.source)) {
32
+ this.addFinding(findings);
33
+ }
34
+ }
35
+ }
36
+ //# sourceMappingURL=FN023003_GITIGNORE_libdts.js.map
@@ -0,0 +1,36 @@
1
+ import { Rule } from '../../Rule.js';
2
+ export class FN023004_GITIGNORE_libcommonjs extends Rule {
3
+ constructor() {
4
+ super();
5
+ }
6
+ get id() {
7
+ return 'FN023004';
8
+ }
9
+ get title() {
10
+ return `.gitignore 'lib-commonjs' folder`;
11
+ }
12
+ get description() {
13
+ return `To .gitignore add the 'lib-commonjs' folder`;
14
+ }
15
+ get resolution() {
16
+ return `lib-commonjs`;
17
+ }
18
+ get resolutionType() {
19
+ return 'text';
20
+ }
21
+ get severity() {
22
+ return 'Required';
23
+ }
24
+ get file() {
25
+ return './.gitignore';
26
+ }
27
+ visit(project, findings) {
28
+ if (!project.gitignore) {
29
+ return;
30
+ }
31
+ if (!/^lib-commonjs$/m.test(project.gitignore.source)) {
32
+ this.addFinding(findings);
33
+ }
34
+ }
35
+ }
36
+ //# sourceMappingURL=FN023004_GITIGNORE_libcommonjs.js.map
@@ -0,0 +1,36 @@
1
+ import { Rule } from '../../Rule.js';
2
+ export class FN023005_GITIGNORE_libesm extends Rule {
3
+ constructor() {
4
+ super();
5
+ }
6
+ get id() {
7
+ return 'FN023005';
8
+ }
9
+ get title() {
10
+ return `.gitignore 'lib-esm' folder`;
11
+ }
12
+ get description() {
13
+ return `To .gitignore add the 'lib-esm' folder`;
14
+ }
15
+ get resolution() {
16
+ return `lib-esm`;
17
+ }
18
+ get resolutionType() {
19
+ return 'text';
20
+ }
21
+ get severity() {
22
+ return 'Required';
23
+ }
24
+ get file() {
25
+ return './.gitignore';
26
+ }
27
+ visit(project, findings) {
28
+ if (!project.gitignore) {
29
+ return;
30
+ }
31
+ if (!/^lib-esm$/m.test(project.gitignore.source)) {
32
+ this.addFinding(findings);
33
+ }
34
+ }
35
+ }
36
+ //# sourceMappingURL=FN023005_GITIGNORE_libesm.js.map
@@ -0,0 +1,36 @@
1
+ import { Rule } from '../../Rule.js';
2
+ export class FN023006_GITIGNORE_jestoutput extends Rule {
3
+ constructor() {
4
+ super();
5
+ }
6
+ get id() {
7
+ return 'FN023006';
8
+ }
9
+ get title() {
10
+ return `.gitignore 'jest-output' folder`;
11
+ }
12
+ get description() {
13
+ return `To .gitignore add the 'jest-output' folder`;
14
+ }
15
+ get resolution() {
16
+ return `jest-output`;
17
+ }
18
+ get resolutionType() {
19
+ return 'text';
20
+ }
21
+ get severity() {
22
+ return 'Required';
23
+ }
24
+ get file() {
25
+ return './.gitignore';
26
+ }
27
+ visit(project, findings) {
28
+ if (!project.gitignore) {
29
+ return;
30
+ }
31
+ if (!/^jest-output$/m.test(project.gitignore.source)) {
32
+ this.addFinding(findings);
33
+ }
34
+ }
35
+ }
36
+ //# sourceMappingURL=FN023006_GITIGNORE_jestoutput.js.map
@@ -0,0 +1,40 @@
1
+ import { JsonRule } from '../../JsonRule.js';
2
+ export class FN026001_CFG_SASS_schema extends JsonRule {
3
+ constructor(schema) {
4
+ super();
5
+ this.schema = schema;
6
+ }
7
+ get id() {
8
+ return 'FN026001';
9
+ }
10
+ get title() {
11
+ return 'sass.json schema';
12
+ }
13
+ get description() {
14
+ return `Update sass.json schema URL`;
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "$schema": "${this.schema}"
19
+ }`;
20
+ }
21
+ get resolutionType() {
22
+ return 'json';
23
+ }
24
+ get severity() {
25
+ return 'Required';
26
+ }
27
+ get file() {
28
+ return './config/sass.json';
29
+ }
30
+ visit(project, findings) {
31
+ if (!project.sassJson) {
32
+ return;
33
+ }
34
+ if (project.sassJson.$schema !== this.schema) {
35
+ const node = this.getAstNodeFromFile(project.sassJson, '$schema');
36
+ this.addFindingWithPosition(findings, node);
37
+ }
38
+ }
39
+ }
40
+ //# sourceMappingURL=FN026001_CFG_SASS_schema.js.map
@@ -0,0 +1,40 @@
1
+ import { JsonRule } from '../../JsonRule.js';
2
+ export class FN026002_CFG_SASS_extends extends JsonRule {
3
+ constructor(_extends) {
4
+ super();
5
+ this._extends = _extends;
6
+ }
7
+ get id() {
8
+ return 'FN026002';
9
+ }
10
+ get title() {
11
+ return 'sass.json extends';
12
+ }
13
+ get description() {
14
+ return `Update sass.json extends property`;
15
+ }
16
+ get resolution() {
17
+ return `{
18
+ "extends": "${this._extends}"
19
+ }`;
20
+ }
21
+ get resolutionType() {
22
+ return 'json';
23
+ }
24
+ get severity() {
25
+ return 'Required';
26
+ }
27
+ get file() {
28
+ return './config/sass.json';
29
+ }
30
+ visit(project, findings) {
31
+ if (!project.sassJson) {
32
+ return;
33
+ }
34
+ if (project.sassJson.extends !== this._extends) {
35
+ const node = this.getAstNodeFromFile(project.sassJson, 'extends');
36
+ this.addFindingWithPosition(findings, node);
37
+ }
38
+ }
39
+ }
40
+ //# sourceMappingURL=FN026002_CFG_SASS_extends.js.map
@@ -39,6 +39,13 @@ ${this.contents}
39
39
  if ((!this.add && fs.existsSync(targetPath)) ||
40
40
  (this.add && !fs.existsSync(targetPath))) {
41
41
  this.addFinding(notifications);
42
+ return;
43
+ }
44
+ if (this.add && this.contents) {
45
+ const fileContent = fs.readFileSync(path.join(project.path, this.filePath), 'utf8');
46
+ if (fileContent !== this.contents) {
47
+ this.addFinding(notifications);
48
+ }
42
49
  }
43
50
  }
44
51
  }