@pnp/cli-microsoft365 10.10.0-beta.eb74779 → 10.11.0-beta.24af61c

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 (125) 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/config.js +1 -0
  6. package/dist/m365/base/GraphApplicationCommand.js +17 -0
  7. package/dist/m365/base/{DelegatedGraphCommand.js → GraphDelegatedCommand.js} +4 -4
  8. package/dist/m365/base/PowerAppsCommand.js +1 -1
  9. package/dist/m365/base/PowerAutomateCommand.js +1 -1
  10. package/dist/m365/base/PowerBICommand.js +1 -1
  11. package/dist/m365/base/PowerPlatformCommand.js +1 -1
  12. package/dist/m365/base/VivaEngageCommand.js +1 -1
  13. package/dist/m365/cli/commands/app/app-add.js +95 -0
  14. package/dist/m365/cli/commands.js +1 -0
  15. package/dist/m365/entra/commands/app/app-get.js +11 -52
  16. package/dist/m365/entra/commands/app/app-permission-add.js +19 -30
  17. package/dist/m365/entra/commands/app/app-permission-list.js +2 -19
  18. package/dist/m365/entra/commands/app/app-permission-remove.js +22 -31
  19. package/dist/m365/entra/commands/app/app-remove.js +2 -18
  20. package/dist/m365/entra/commands/app/app-role-add.js +10 -43
  21. package/dist/m365/entra/commands/app/app-role-list.js +2 -20
  22. package/dist/m365/entra/commands/app/app-role-remove.js +9 -40
  23. package/dist/m365/entra/commands/app/app-set.js +2 -19
  24. package/dist/m365/entra/commands/group/group-member-add.js +55 -10
  25. package/dist/m365/entra/commands/group/group-member-set.js +18 -3
  26. package/dist/m365/entra/commands/organization/organization-set.js +104 -0
  27. package/dist/m365/entra/commands.js +1 -0
  28. package/dist/m365/outlook/commands/message/message-move.js +1 -1
  29. package/dist/m365/pp/commands/managementapp/managementapp-add.js +7 -21
  30. package/dist/m365/spe/commands/container/container-recyclebinitem-restore.js +96 -0
  31. package/dist/m365/spe/commands.js +1 -0
  32. package/dist/m365/spfx/commands/project/base-project-command.js +1 -0
  33. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.21.0.js +2 -0
  34. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.21.1.js +2 -0
  35. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.22.0-beta.1.js +21 -0
  36. package/dist/m365/spfx/commands/project/project-doctor/rules/FN002022_DEVDEP_typescript.js +10 -0
  37. package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
  38. package/dist/m365/spfx/commands/project/project-model/SassJson.js +2 -0
  39. package/dist/m365/spfx/commands/project/project-model/index.js +1 -0
  40. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002001_DEVDEP_microsoft_sp_build_web.js +2 -2
  41. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002004_DEVDEP_gulp.js +2 -2
  42. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002007_DEVDEP_ajv.js +2 -2
  43. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002029_DEVDEP_microsoft_rush_stack_compiler_5_3.js +2 -2
  44. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002030_DEVDEP_microsoft_spfx_web_build_rig.js +10 -0
  45. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002031_DEVDEP_rushstack_heft.js +10 -0
  46. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002032_DEVDEP_typescript_eslint_parser.js +10 -0
  47. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002033_DEVDEP_jest_junit.js +10 -0
  48. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010011_YORC_useGulp.js +40 -0
  49. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015010_FILE_gulpfile_js.js +10 -0
  50. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015011_FILE_tsconfig_json.js +10 -0
  51. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015012_FILE_config_heft_json.js +10 -0
  52. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015013_FILE_config_jest_config_json.js +10 -0
  53. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015014_FILE_config_rig_json.js +10 -0
  54. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015015_FILE_config_typescript_json.js +10 -0
  55. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021004_PKG_scripts_build.js +45 -0
  56. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021005_PKG_scripts_test.js +45 -0
  57. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021006_PKG_scripts_clean.js +45 -0
  58. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021007_PKG_scripts_deploy.js +45 -0
  59. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021008_PKG_scripts_start.js +45 -0
  60. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021009_PKG_scripts_build_watch.js +45 -0
  61. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021010_PKG_scripts_package_solution.js +45 -0
  62. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021011_PKG_scripts_deploy_azure_storage.js +45 -0
  63. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021012_PKG_scripts_eject_webpack.js +45 -0
  64. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021013_PKG_overrides_rushstack_heft.js +45 -0
  65. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023003_GITIGNORE_libdts.js +36 -0
  66. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023004_GITIGNORE_libcommonjs.js +36 -0
  67. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023005_GITIGNORE_libesm.js +36 -0
  68. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN023006_GITIGNORE_jestoutput.js +36 -0
  69. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN026001_CFG_SASS_schema.js +40 -0
  70. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN026002_CFG_SASS_extends.js +40 -0
  71. package/dist/m365/spfx/commands/project/project-upgrade/rules/FileAddRemoveRule.js +7 -0
  72. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.22.0-beta.1.js +241 -0
  73. package/dist/m365/spfx/commands/project/project-upgrade.js +16 -13
  74. package/dist/m365/spfx/commands/spfx-doctor.js +15 -0
  75. package/dist/m365/spo/commands/file/file-version-get.js +1 -0
  76. package/dist/m365/spo/commands/file/file-version-list.js +2 -2
  77. package/dist/m365/spo/commands/homesite/homesite-remove.js +57 -37
  78. package/dist/m365/spo/commands/list/list-view-add.js +140 -87
  79. package/dist/m365/spo/commands/page/Page.js +10 -3
  80. package/dist/m365/spo/commands/page/clientsidepages.js +4 -0
  81. package/dist/m365/spo/commands/page/page-section-add.js +73 -13
  82. package/dist/m365/spo/commands/page/page-section-list.js +5 -1
  83. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-list.js +13 -7
  84. package/dist/m365/spo/commands/site/site-appcatalog-list.js +38 -2
  85. package/dist/m365/spo/commands/tenant/tenant-site-unarchive.js +1 -1
  86. package/dist/m365/teams/commands/callrecord/callrecord-list.js +100 -0
  87. package/dist/m365/teams/commands/chat/chat-message-send.js +2 -2
  88. package/dist/m365/teams/commands/message/message-remove.js +2 -2
  89. package/dist/m365/teams/commands/message/message-restore.js +2 -2
  90. package/dist/m365/teams/commands.js +1 -0
  91. package/dist/m365/todo/commands/list/list-add.js +2 -2
  92. package/dist/m365/todo/commands/list/list-get.js +2 -2
  93. package/dist/m365/todo/commands/list/list-list.js +2 -2
  94. package/dist/m365/todo/commands/list/list-remove.js +2 -2
  95. package/dist/m365/todo/commands/list/list-set.js +2 -2
  96. package/dist/m365/todo/commands/task/task-add.js +2 -2
  97. package/dist/m365/todo/commands/task/task-get.js +2 -2
  98. package/dist/m365/todo/commands/task/task-list.js +2 -2
  99. package/dist/m365/todo/commands/task/task-remove.js +2 -2
  100. package/dist/m365/todo/commands/task/task-set.js +2 -2
  101. package/dist/m365/viva/commands/engage/EngageRole.js +2 -0
  102. package/dist/m365/viva/commands/engage/engage-role-list.js +28 -0
  103. package/dist/m365/viva/commands/engage/engage-role-member-list.js +57 -0
  104. package/dist/m365/viva/commands.js +2 -0
  105. package/dist/utils/accessToken.js +9 -5
  106. package/dist/utils/entraApp.js +15 -0
  107. package/dist/utils/entraGroup.js +43 -0
  108. package/dist/utils/vivaEngage.js +19 -0
  109. package/docs/docs/cmd/cli/app/app-add.mdx +50 -0
  110. package/docs/docs/cmd/entra/group/group-member-add.mdx +26 -5
  111. package/docs/docs/cmd/entra/group/group-member-set.mdx +7 -4
  112. package/docs/docs/cmd/entra/organization/organization-set.mdx +84 -0
  113. package/docs/docs/cmd/spe/container/container-recyclebinitem-restore.mdx +53 -0
  114. package/docs/docs/cmd/spo/file/file-version-get.mdx +5 -2
  115. package/docs/docs/cmd/spo/file/file-version-list.mdx +7 -5
  116. package/docs/docs/cmd/spo/homesite/homesite-remove.mdx +6 -3
  117. package/docs/docs/cmd/spo/list/list-view-add.mdx +53 -10
  118. package/docs/docs/cmd/spo/page/page-section-add.mdx +22 -2
  119. package/docs/docs/cmd/spo/site/site-appcatalog-list.mdx +11 -0
  120. package/docs/docs/cmd/spo/tenant/tenant-site-unarchive.mdx +1 -1
  121. package/docs/docs/cmd/teams/callrecord/callrecord-list.mdx +173 -0
  122. package/docs/docs/cmd/viva/engage/engage-role-list.mdx +102 -0
  123. package/docs/docs/cmd/viva/engage/engage-role-member-list.mdx +118 -0
  124. package/npm-shrinkwrap.json +293 -765
  125. package/package.json +18 -17
@@ -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
  }