npm-groovy-lint 14.6.0 → 14.6.1-beta202408252114.0

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 (83) hide show
  1. package/lib/codenarc-caller.js +54 -53
  2. package/lib/codenarc-factory.js +41 -50
  3. package/lib/config.js +22 -19
  4. package/lib/filter.js +8 -15
  5. package/lib/groovy-lint-fix.js +32 -34
  6. package/lib/groovy-lint-rules.js +12 -12
  7. package/lib/groovy-lint.js +40 -41
  8. package/lib/index.js +3 -3
  9. package/lib/java/CodeNarcServer.jar +0 -0
  10. package/lib/options.js +45 -54
  11. package/lib/output.js +23 -23
  12. package/lib/rules/AssignmentInConditional.js +7 -7
  13. package/lib/rules/BlankLineBeforePackage.js +11 -11
  14. package/lib/rules/BlockEndsWithBlankLine.js +6 -6
  15. package/lib/rules/BlockStartsWithBlankLine.js +6 -6
  16. package/lib/rules/BracesForClass.js +8 -8
  17. package/lib/rules/BracesForForLoop.js +9 -9
  18. package/lib/rules/BracesForIfElse.js +9 -9
  19. package/lib/rules/BracesForMethod.js +11 -11
  20. package/lib/rules/BracesForTryCatchFinally.js +7 -7
  21. package/lib/rules/CatchException.js +4 -4
  22. package/lib/rules/ClassEndsWithBlankLine.js +6 -6
  23. package/lib/rules/ClassStartsWithBlankLine.js +6 -6
  24. package/lib/rules/ClosingBraceNotAlone.js +8 -8
  25. package/lib/rules/ConsecutiveBlankLines.js +7 -7
  26. package/lib/rules/DuplicateImport.js +6 -6
  27. package/lib/rules/DuplicateNumberLiteral.js +6 -6
  28. package/lib/rules/DuplicateStringLiteral.js +6 -6
  29. package/lib/rules/ElseBlockBraces.js +10 -10
  30. package/lib/rules/ExplicitArrayListInstantiation.js +7 -7
  31. package/lib/rules/ExplicitLinkedListInstantiation.js +7 -7
  32. package/lib/rules/FileEndsWithoutNewline.js +7 -7
  33. package/lib/rules/GStringExpressionWithinString.js +7 -7
  34. package/lib/rules/IfStatementBraces.js +10 -10
  35. package/lib/rules/Indentation.js +14 -14
  36. package/lib/rules/IndentationClosingBraces.js +8 -8
  37. package/lib/rules/IndentationComments.js +6 -6
  38. package/lib/rules/InsecureRandom.js +14 -14
  39. package/lib/rules/JavaIoPackageAccess.js +6 -6
  40. package/lib/rules/MethodCount.js +6 -6
  41. package/lib/rules/MethodParameterTypeRequired.js +6 -6
  42. package/lib/rules/MethodReturnTypeRequired.js +6 -6
  43. package/lib/rules/MisorderedStaticImports.js +14 -14
  44. package/lib/rules/MissingBlankLineAfterImports.js +6 -6
  45. package/lib/rules/MissingBlankLineAfterPackage.js +6 -6
  46. package/lib/rules/NoDef.js +4 -4
  47. package/lib/rules/NoJavaUtilDate.js +4 -4
  48. package/lib/rules/NoTabCharacter.js +7 -7
  49. package/lib/rules/SimpleDateFormatMissingLocale.js +4 -4
  50. package/lib/rules/SpaceAfterCatch.js +7 -7
  51. package/lib/rules/SpaceAfterComma.js +9 -9
  52. package/lib/rules/SpaceAfterFor.js +8 -8
  53. package/lib/rules/SpaceAfterIf.js +10 -10
  54. package/lib/rules/SpaceAfterMethodCallName.js +7 -7
  55. package/lib/rules/SpaceAfterOpeningBrace.js +9 -9
  56. package/lib/rules/SpaceAfterSemicolon.js +8 -8
  57. package/lib/rules/SpaceAfterSwitch.js +8 -8
  58. package/lib/rules/SpaceAfterWhile.js +7 -7
  59. package/lib/rules/SpaceAroundOperator.js +14 -14
  60. package/lib/rules/SpaceBeforeClosingBrace.js +8 -8
  61. package/lib/rules/SpaceBeforeOpeningBrace.js +9 -9
  62. package/lib/rules/SpaceInsideParentheses.js +17 -17
  63. package/lib/rules/SystemExit.js +4 -4
  64. package/lib/rules/TrailingWhitespace.js +8 -8
  65. package/lib/rules/UnnecessaryDefInFieldDeclaration.js +8 -8
  66. package/lib/rules/UnnecessaryDefInMethodDeclaration.js +7 -7
  67. package/lib/rules/UnnecessaryDefInVariableDeclaration.js +9 -9
  68. package/lib/rules/UnnecessaryDotClass.js +7 -7
  69. package/lib/rules/UnnecessaryFinalOnPrivateMethod.js +7 -7
  70. package/lib/rules/UnnecessaryGString.js +14 -14
  71. package/lib/rules/UnnecessaryGroovyImport.js +6 -6
  72. package/lib/rules/UnnecessaryPackageReference.js +9 -9
  73. package/lib/rules/UnnecessaryParenthesesForMethodCallWithClosure.js +9 -9
  74. package/lib/rules/UnnecessaryPublicModifier.js +4 -4
  75. package/lib/rules/UnnecessarySemicolon.js +10 -13
  76. package/lib/rules/UnnecessaryToString.js +8 -8
  77. package/lib/rules/UnusedImport.js +10 -10
  78. package/lib/rules/UnusedMethodParameter.js +6 -6
  79. package/lib/rules/UnusedVariable.js +6 -6
  80. package/lib/rules/VariableName.js +11 -11
  81. package/lib/rules/VariableTypeRequired.js +11 -11
  82. package/lib/utils.js +62 -43
  83. package/package.json +22 -19
@@ -1,14 +1,14 @@
1
1
  // Simple Date Format missing locale
2
2
 
3
- const { getStringRange } = require("../utils");
3
+ import { getStringRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, "new SimpleDateFormat", errItem);
10
- }
11
- }
10
+ },
11
+ },
12
12
  };
13
13
 
14
- module.exports = { rule };
14
+ export { rule };
@@ -1,19 +1,19 @@
1
1
  // Space after catch
2
2
 
3
- const { getStringRange } = require("../utils");
3
+ import { getStringRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, "catch", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Add space after catch",
14
14
  type: "replaceString",
15
15
  before: "catch(",
16
- after: "catch ("
16
+ after: "catch (",
17
17
  },
18
18
  tests: [
19
19
  {
@@ -26,9 +26,9 @@ try { } catch(
26
26
  try { } catch (Exception e) { }
27
27
  try { } catch (
28
28
  Exception e) { }
29
- `
30
- }
31
- ]
29
+ `,
30
+ },
31
+ ],
32
32
  };
33
33
 
34
- module.exports = { rule };
34
+ export { rule };
@@ -1,20 +1,20 @@
1
1
  // Add space after a comma
2
2
 
3
- const { getStringRange, addSpaceAfterChar } = require("../utils");
3
+ import { getStringRange, addSpaceAfterChar } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, ",", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Add space after comma",
14
14
  type: "function",
15
- func: line => {
15
+ func: (line) => {
16
16
  return addSpaceAfterChar(line, ",");
17
- }
17
+ },
18
18
  },
19
19
  tests: [
20
20
  {
@@ -23,7 +23,7 @@ def x = callFunction(toto,titi)
23
23
  `,
24
24
  sourceAfter: `
25
25
  def x = callFunction(toto, titi)
26
- `
26
+ `,
27
27
  },
28
28
  {
29
29
  sourceBefore: `
@@ -35,9 +35,9 @@ if (true) {
35
35
  if (true) {
36
36
  def x = callFunction(toto, titi)
37
37
  }
38
- `
39
- }
40
- ]
38
+ `,
39
+ },
40
+ ],
41
41
  };
42
42
 
43
- module.exports = { rule };
43
+ export { rule };
@@ -1,19 +1,19 @@
1
1
  // Space after for
2
- const { getStringRange, addSpaceAfterChar } = require("../utils");
2
+ import { getStringRange, addSpaceAfterChar } from "../utils.js";
3
3
 
4
4
  const rule = {
5
5
  range: {
6
6
  type: "function",
7
7
  func: (errLine, errItem) => {
8
8
  return getStringRange(errLine, "for", errItem);
9
- }
9
+ },
10
10
  },
11
11
  fix: {
12
12
  label: "Add space after for",
13
13
  type: "function",
14
- func: line => {
14
+ func: (line) => {
15
15
  return addSpaceAfterChar(line, "for");
16
- }
16
+ },
17
17
  },
18
18
  tests: [
19
19
  {
@@ -32,9 +32,9 @@ for (child in this.children) {
32
32
  return foundResults
33
33
  }
34
34
  }
35
- `
36
- }
37
- ]
35
+ `,
36
+ },
37
+ ],
38
38
  };
39
39
 
40
- module.exports = { rule };
40
+ export { rule };
@@ -1,20 +1,20 @@
1
1
  // Space after if
2
2
 
3
- const { getStringRange, addSpaceAfterChar } = require("../utils");
3
+ import { getStringRange, addSpaceAfterChar } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, "if", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Add space after if",
14
14
  type: "function",
15
- func: line => {
15
+ func: (line) => {
16
16
  return addSpaceAfterChar(line, "if");
17
- }
17
+ },
18
18
  },
19
19
  tests: [
20
20
  {
@@ -27,7 +27,7 @@ if (true) {
27
27
  if (true) {
28
28
  def a = 1
29
29
  }
30
- `
30
+ `,
31
31
  },
32
32
  {
33
33
  sourceBefore: `
@@ -39,7 +39,7 @@ if(true) {
39
39
  if (true) {
40
40
  def a = 1
41
41
  }
42
- `
42
+ `,
43
43
  },
44
44
  {
45
45
  sourceBefore: `
@@ -51,9 +51,9 @@ if(lifetime) {
51
51
  if (lifetime) {
52
52
  def a = 1
53
53
  }
54
- `
55
- }
56
- ]
54
+ `,
55
+ },
56
+ ],
57
57
  };
58
58
 
59
- module.exports = { rule };
59
+ export { rule };
@@ -1,19 +1,19 @@
1
1
  // Space after method call name
2
2
 
3
- const { getStringRange } = require("../utils");
3
+ import { getStringRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, " (", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Remove space after method call name",
14
14
  type: "replaceString",
15
15
  before: " (",
16
- after: "("
16
+ after: "(",
17
17
  },
18
18
  tests: [
19
19
  {
@@ -22,9 +22,9 @@ Utils.printlnLog ('-----')
22
22
  `,
23
23
  sourceAfter: `
24
24
  Utils.printlnLog('-----')
25
- `
26
- }
27
- ]
25
+ `,
26
+ },
27
+ ],
28
28
  };
29
29
 
30
- module.exports = { rule };
30
+ export { rule };
@@ -1,24 +1,24 @@
1
1
  // Space after opening brace
2
2
 
3
- const { getStringRange } = require("../utils");
3
+ import { getStringRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, "{", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Add space after opening brace",
14
14
  type: "function",
15
- func: line => {
15
+ func: (line) => {
16
16
  const regexMatch = line.match(new RegExp(/{[^ ]/, "g"));
17
17
  if (regexMatch && regexMatch[0]) {
18
18
  line = line.replace(regexMatch[0], "{ " + regexMatch[0][1]);
19
19
  }
20
20
  return line;
21
- }
21
+ },
22
22
  },
23
23
  tests: [
24
24
  {
@@ -35,7 +35,7 @@ class MyClass {
35
35
  def closure = { }
36
36
  }
37
37
  }
38
- `
38
+ `,
39
39
  },
40
40
  {
41
41
  sourceBefore: `
@@ -45,9 +45,9 @@ class MyOtherClass extends AbstractClass {int count }
45
45
  sourceAfter: `
46
46
  class MyClass { int count }
47
47
  class MyOtherClass extends AbstractClass { int count }
48
- `
49
- }
50
- ]
48
+ `,
49
+ },
50
+ ],
51
51
  };
52
52
 
53
- module.exports = { rule };
53
+ export { rule };
@@ -1,20 +1,20 @@
1
1
  // Add space after a semicolon
2
2
 
3
- const { getStringRange, addSpaceAfterChar } = require("../utils");
3
+ import { getStringRange, addSpaceAfterChar } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, ";", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Add space after semicolon",
14
14
  type: "function",
15
- func: line => {
15
+ func: (line) => {
16
16
  return addSpaceAfterChar(line, ";");
17
- }
17
+ },
18
18
  },
19
19
  tests: [
20
20
  {
@@ -23,9 +23,9 @@ for (int i=0;i * 10;i++) { }
23
23
  `,
24
24
  sourceAfter: `
25
25
  for (int i=0; i * 10; i++) { }
26
- `
27
- }
28
- ]
26
+ `,
27
+ },
28
+ ],
29
29
  };
30
30
 
31
- module.exports = { rule };
31
+ export { rule };
@@ -1,20 +1,20 @@
1
1
  // Space after switch
2
2
 
3
- const { getStringRange, addSpaceAfterChar } = require("../utils");
3
+ import { getStringRange, addSpaceAfterChar } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, "switch", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Add space after switch",
14
14
  type: "function",
15
- func: line => {
15
+ func: (line) => {
16
16
  return addSpaceAfterChar(line, "switch");
17
- }
17
+ },
18
18
  },
19
19
  tests: [
20
20
  {
@@ -41,9 +41,9 @@ if (a == 0) {
41
41
  break
42
42
  }
43
43
  }
44
- `
45
- }
46
- ]
44
+ `,
45
+ },
46
+ ],
47
47
  };
48
48
 
49
- module.exports = { rule };
49
+ export { rule };
@@ -1,19 +1,19 @@
1
1
  // Space after while
2
2
 
3
- const { getStringRange } = require("../utils");
3
+ import { getStringRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, "){", errItem);
10
- }
10
+ },
11
11
  },
12
12
  fix: {
13
13
  label: "Fix space after while",
14
14
  type: "replaceString",
15
15
  before: "while(",
16
- after: "while ("
16
+ after: "while (",
17
17
  },
18
18
  tests: [
19
19
  {
@@ -30,9 +30,9 @@ while (count<5) {
30
30
  println(count);
31
31
  count++;
32
32
  }
33
- `
34
- }
35
- ]
33
+ `,
34
+ },
35
+ ],
36
36
  };
37
37
 
38
- module.exports = { rule };
38
+ export { rule };
@@ -1,19 +1,19 @@
1
1
  // Space around operators
2
2
 
3
- const { getVariable, getVariableRange, addSpaceAroundChar } = require("../utils");
3
+ import { getVariable, getVariableRange, addSpaceAroundChar } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  variables: [
7
7
  {
8
8
  name: "OPERATOR",
9
- regex: /The operator "(.*)" within class (.*) is not (.*) by a space or whitespace/
10
- }
9
+ regex: /The operator "(.*)" within class (.*) is not (.*) by a space or whitespace/,
10
+ },
11
11
  ],
12
12
  range: {
13
13
  type: "function",
14
14
  func: (errLine, errItem, evaluatedVars) => {
15
15
  return getVariableRange(errLine, evaluatedVars, "OPERATOR", errItem);
16
- }
16
+ },
17
17
  },
18
18
  fixesSameErrorOnSameLine: true,
19
19
  fix: {
@@ -25,9 +25,9 @@ const rule = {
25
25
  ["+ =", "+="],
26
26
  ["+ +", "++"],
27
27
  ["- =", "-="],
28
- ["- -", "--"]
28
+ ["- -", "--"],
29
29
  ]);
30
- }
30
+ },
31
31
  },
32
32
  tests: [
33
33
  {
@@ -60,7 +60,7 @@ class MyClass {
60
60
 
61
61
  def myField = 'Toto' + 'Titi' + 'Tutu'
62
62
  }
63
- `
63
+ `,
64
64
  },
65
65
  {
66
66
  sourceBefore: `
@@ -68,7 +68,7 @@ def grantCommand = 'sfdx force:auth:jwt:grant --clientid '+sslParams['clientId']
68
68
  `,
69
69
  sourceAfter: `
70
70
  def grantCommand = 'sfdx force:auth:jwt:grant --clientid ' + sslParams['clientId'] + ' --jwtkeyfile ./ssl/' + alias + '.key --username ' + sslParams['username'] + ' --setalias ' + alias
71
- `
71
+ `,
72
72
  },
73
73
  {
74
74
  sourceBefore: `
@@ -78,7 +78,7 @@ tutu+= 10+2
78
78
  sourceAfter: `
79
79
  def tutu = 8
80
80
  tutu += 10 + 2
81
- `
81
+ `,
82
82
  },
83
83
  {
84
84
  sourceBefore: `
@@ -102,7 +102,7 @@ image.inside {
102
102
  }
103
103
  }
104
104
  }
105
- `
105
+ `,
106
106
  },
107
107
  {
108
108
  sourceBefore: `
@@ -126,9 +126,9 @@ image.inside {
126
126
  }
127
127
  }
128
128
  }
129
- `
130
- }
131
- ]
129
+ `,
130
+ },
131
+ ],
132
132
  };
133
133
 
134
- module.exports = { rule };
134
+ export { rule };
@@ -1,23 +1,23 @@
1
1
  // Space before opening brace
2
- const { getStringRange } = require("../utils");
2
+ import { getStringRange } from "../utils.js";
3
3
 
4
4
  const rule = {
5
5
  range: {
6
6
  type: "function",
7
7
  func: (errLine, errItem) => {
8
8
  return getStringRange(errLine, "}", errItem);
9
- }
9
+ },
10
10
  },
11
11
  fix: {
12
12
  label: "Add space before closing brace",
13
13
  type: "function",
14
- func: line => {
14
+ func: (line) => {
15
15
  const regexMatch = line.match(new RegExp(/[^ ]}/, "g"));
16
16
  if (regexMatch && regexMatch[0]) {
17
17
  line = line.replace(regexMatch[0], regexMatch[0][0] + " }");
18
18
  }
19
19
  return line;
20
- }
20
+ },
21
21
  },
22
22
  tests: [
23
23
  {
@@ -26,9 +26,9 @@ process2.inputStream.eachLine { Utils.printlnLog it}
26
26
  `,
27
27
  sourceAfter: `
28
28
  process2.inputStream.eachLine { Utils.printlnLog it }
29
- `
30
- }
31
- ]
29
+ `,
30
+ },
31
+ ],
32
32
  };
33
33
 
34
- module.exports = { rule };
34
+ export { rule };
@@ -1,23 +1,23 @@
1
1
  // Space before opening brace
2
- const { getStringRange } = require("../utils");
2
+ import { getStringRange } from "../utils.js";
3
3
 
4
4
  const rule = {
5
5
  range: {
6
6
  type: "function",
7
7
  func: (errLine, errItem) => {
8
8
  return getStringRange(errLine, "{", errItem);
9
- }
9
+ },
10
10
  },
11
11
  fix: {
12
12
  label: "Add space before opening brace",
13
13
  type: "function",
14
- func: line => {
14
+ func: (line) => {
15
15
  const regexMatch = line.match(new RegExp(/[^ |$]{/, "g"));
16
16
  if (regexMatch && regexMatch[0]) {
17
17
  line = line.replace(regexMatch[0], regexMatch[0][0] + " {");
18
18
  }
19
19
  return line;
20
- }
20
+ },
21
21
  },
22
22
  tests: [
23
23
  {
@@ -28,7 +28,7 @@ class MyOtherClass extends AbstractClass{ }
28
28
  sourceAfter: `
29
29
  class MyClass { }
30
30
  class MyOtherClass extends AbstractClass { }
31
- `
31
+ `,
32
32
  },
33
33
  {
34
34
  sourceBefore: `
@@ -58,9 +58,9 @@ pipeline {
58
58
  }
59
59
  }
60
60
  }
61
- `
62
- }
63
- ]
61
+ `,
62
+ },
63
+ ],
64
64
  };
65
65
 
66
- module.exports = { rule };
66
+ export { rule };
@@ -1,16 +1,16 @@
1
1
  // No space between parenthesis
2
2
 
3
- const { getStringRange } = require("../utils");
3
+ import { getStringRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  fix: {
7
7
  label: "Remove spaces inside parenthesis",
8
8
  type: "function",
9
- func: line => {
9
+ func: (line) => {
10
10
  line = line.replace(/\( +/g, "(");
11
11
  line = line.replace(/ +\)/g, ")");
12
12
  return line;
13
- }
13
+ },
14
14
  },
15
15
  tests: [
16
16
  {
@@ -23,8 +23,8 @@ Utils.printlnLog(Utils.getExternalValue( globalKeyName) )
23
23
  Utils.printlnLog(Utils.getExternalValue(globalKeyName))
24
24
  Utils.printlnLog(Utils.getExternalValue(globalKeyName))
25
25
  Utils.printlnLog(Utils.getExternalValue(globalKeyName))
26
- `
27
- }
26
+ `,
27
+ },
28
28
  ],
29
29
  range: {
30
30
  type: "function",
@@ -34,7 +34,7 @@ Utils.printlnLog(Utils.getExternalValue(globalKeyName))
34
34
  parenthesisRange = getStringRange(errLine, " )", errItem);
35
35
  }
36
36
  return parenthesisRange;
37
- }
37
+ },
38
38
  },
39
39
  rangeTests: [
40
40
  {
@@ -44,13 +44,13 @@ def res = uuuurf( "yessss")
44
44
  expectedRange: {
45
45
  start: {
46
46
  line: 2,
47
- character: 16
47
+ character: 16,
48
48
  },
49
49
  end: {
50
50
  line: 2,
51
- character: 18
52
- }
53
- }
51
+ character: 18,
52
+ },
53
+ },
54
54
  },
55
55
  {
56
56
  source: `
@@ -59,15 +59,15 @@ def res = uuuurf("yessss" )
59
59
  expectedRange: {
60
60
  start: {
61
61
  line: 2,
62
- character: 25
62
+ character: 25,
63
63
  },
64
64
  end: {
65
65
  line: 2,
66
- character: 27
67
- }
68
- }
69
- }
70
- ]
66
+ character: 27,
67
+ },
68
+ },
69
+ },
70
+ ],
71
71
  };
72
72
 
73
- module.exports = { rule };
73
+ export { rule };
@@ -1,14 +1,14 @@
1
1
  // System.exit forbidden
2
2
 
3
- const { getStringRange } = require("../utils");
3
+ import { getStringRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  range: {
7
7
  type: "function",
8
8
  func: (errLine, errItem) => {
9
9
  return getStringRange(errLine, "System.exit", errItem);
10
- }
11
- }
10
+ },
11
+ },
12
12
  };
13
13
 
14
- module.exports = { rule };
14
+ export { rule };