eslint-plugin-sonarjs 4.0.1 → 4.0.2

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 (314) hide show
  1. package/README.md +1 -1
  2. package/cjs/S100/rule.js +7 -5
  3. package/cjs/S101/rule.js +2 -2
  4. package/cjs/S104/rule.js +2 -2
  5. package/cjs/S105/rule.js +2 -2
  6. package/cjs/S1066/rule.js +5 -4
  7. package/cjs/S1067/rule.js +8 -6
  8. package/cjs/S1110/rule.js +7 -5
  9. package/cjs/S1119/rule.js +2 -2
  10. package/cjs/S1121/rule.js +4 -3
  11. package/cjs/S1125/rule.js +9 -8
  12. package/cjs/S1126/rule.js +2 -2
  13. package/cjs/S1128/rule.js +8 -5
  14. package/cjs/S1134/rule.js +2 -2
  15. package/cjs/S1135/rule.js +2 -2
  16. package/cjs/S1154/rule.js +6 -4
  17. package/cjs/S117/rule.js +6 -5
  18. package/cjs/S1172/rule.js +2 -2
  19. package/cjs/S1192/rule.js +5 -4
  20. package/cjs/S1219/rule.js +4 -3
  21. package/cjs/S1226/rule.js +6 -4
  22. package/cjs/S124/rule.js +2 -2
  23. package/cjs/S125/rule.js +9 -7
  24. package/cjs/S126/rule.js +2 -2
  25. package/cjs/S1264/rule.js +2 -2
  26. package/cjs/S128/rule.js +4 -3
  27. package/cjs/S1291/rule.js +2 -2
  28. package/cjs/S1301/rule.js +2 -2
  29. package/cjs/S1313/rule.js +2 -2
  30. package/cjs/S134/rule.js +7 -5
  31. package/cjs/S135/rule.js +5 -4
  32. package/cjs/S138/rule.js +9 -6
  33. package/cjs/S1439/rule.js +2 -2
  34. package/cjs/S1444/rule.js +2 -2
  35. package/cjs/S1451/rule.js +2 -2
  36. package/cjs/S1472/rule.js +2 -2
  37. package/cjs/S1479/rule.js +2 -2
  38. package/cjs/S1481/rule.js +2 -2
  39. package/cjs/S1488/rule.js +11 -7
  40. package/cjs/S1515/rule.js +10 -8
  41. package/cjs/S1523/rule.js +5 -5
  42. package/cjs/S1526/rule.js +5 -4
  43. package/cjs/S1527/rule.js +2 -2
  44. package/cjs/S1528/rule.js +2 -2
  45. package/cjs/S1529/rule.js +4 -3
  46. package/cjs/S1530/rule.js +5 -3
  47. package/cjs/S1533/rule.js +2 -2
  48. package/cjs/S1535/rule.js +2 -2
  49. package/cjs/S1541/rule.js +10 -7
  50. package/cjs/S1607/rule.js +22 -20
  51. package/cjs/S1764/rule.js +10 -7
  52. package/cjs/S1821/rule.js +2 -2
  53. package/cjs/S1848/rule.js +10 -7
  54. package/cjs/S1854/rule.js +18 -14
  55. package/cjs/S1862/rule.js +10 -8
  56. package/cjs/S1871/rule.js +21 -16
  57. package/cjs/S1874/rule.js +4 -3
  58. package/cjs/S1940/rule.js +2 -2
  59. package/cjs/S1994/rule.js +10 -7
  60. package/cjs/S2004/rule.js +9 -7
  61. package/cjs/S2068/rule.js +75 -12
  62. package/cjs/S2077/rule.js +10 -6
  63. package/cjs/S2092/rule.js +2 -2
  64. package/cjs/S2123/rule.js +2 -2
  65. package/cjs/S2137/rule.js +2 -2
  66. package/cjs/S2138/rule.js +4 -3
  67. package/cjs/S2187/rule.js +2 -2
  68. package/cjs/S2201/rule.js +8 -5
  69. package/cjs/S2208/rule.js +2 -2
  70. package/cjs/S2234/rule.js +15 -11
  71. package/cjs/S2245/rule.js +4 -3
  72. package/cjs/S2251/rule.js +5 -4
  73. package/cjs/S2255/rule.js +6 -5
  74. package/cjs/S2259/rule.js +14 -9
  75. package/cjs/S2301/rule.js +14 -9
  76. package/cjs/S2310/rule.js +14 -11
  77. package/cjs/S2392/rule.js +7 -5
  78. package/cjs/S2424/rule.js +2 -2
  79. package/cjs/S2428/rule.js +8 -6
  80. package/cjs/S2486/rule.js +4 -3
  81. package/cjs/S2589/rule.js +12 -10
  82. package/cjs/S2598/rule.js +17 -14
  83. package/cjs/S2612/generated-meta.js +1 -1
  84. package/cjs/S2612/rule.js +8 -6
  85. package/cjs/S2639/rule.js +2 -2
  86. package/cjs/S2681/rule.js +2 -2
  87. package/cjs/S2692/rule.js +6 -4
  88. package/cjs/S2699/rule.js +40 -31
  89. package/cjs/S2703/rule.js +2 -2
  90. package/cjs/S2737/rule.js +6 -4
  91. package/cjs/S2755/rule.js +9 -6
  92. package/cjs/S2757/rule.js +2 -2
  93. package/cjs/S2817/rule.js +10 -7
  94. package/cjs/S2819/rule.js +16 -12
  95. package/cjs/S2870/rule.js +8 -5
  96. package/cjs/S2871/rule.js +12 -9
  97. package/cjs/S2970/rule.js +9 -8
  98. package/cjs/S2990/rule.js +2 -2
  99. package/cjs/S2999/rule.js +10 -7
  100. package/cjs/S3001/rule.js +2 -2
  101. package/cjs/S3003/rule.js +10 -7
  102. package/cjs/S3317/rule.js +4 -3
  103. package/cjs/S3330/rule.js +2 -2
  104. package/cjs/S3358/rule.js +2 -2
  105. package/cjs/S3402/rule.js +14 -10
  106. package/cjs/S3403/rule.js +10 -7
  107. package/cjs/S3415/rule.js +16 -13
  108. package/cjs/S3499/rule.js +5 -4
  109. package/cjs/S3500/rule.js +5 -4
  110. package/cjs/S3513/rule.js +5 -4
  111. package/cjs/S3514/rule.js +10 -7
  112. package/cjs/S3516/rule.js +10 -7
  113. package/cjs/S3524/rule.js +2 -2
  114. package/cjs/S3525/rule.js +6 -4
  115. package/cjs/S3531/rule.js +5 -3
  116. package/cjs/S3533/rule.js +8 -7
  117. package/cjs/S3579/rule.js +6 -4
  118. package/cjs/S3616/rule.js +6 -4
  119. package/cjs/S3626/rule.js +4 -3
  120. package/cjs/S3686/rule.js +7 -5
  121. package/cjs/S3699/rule.js +4 -3
  122. package/cjs/S3735/rule.js +8 -5
  123. package/cjs/S3757/rule.js +8 -6
  124. package/cjs/S3758/rule.js +9 -7
  125. package/cjs/S3760/rule.js +24 -21
  126. package/cjs/S3776/rule.js +26 -22
  127. package/cjs/S3782/rule.js +6 -4
  128. package/cjs/S3785/rule.js +9 -6
  129. package/cjs/S3796/rule.js +12 -8
  130. package/cjs/S3798/rule.js +4 -3
  131. package/cjs/S3800/rule.js +16 -11
  132. package/cjs/S3801/rule.js +15 -11
  133. package/cjs/S3827/rule.js +9 -6
  134. package/cjs/S3923/rule.js +9 -6
  135. package/cjs/S3972/rule.js +5 -4
  136. package/cjs/S3973/rule.js +7 -5
  137. package/cjs/S3981/rule.js +4 -3
  138. package/cjs/S3984/rule.js +4 -3
  139. package/cjs/S4030/rule.js +10 -7
  140. package/cjs/S4036/rule.js +7 -5
  141. package/cjs/S4043/rule.js +12 -8
  142. package/cjs/S4139/rule.js +7 -5
  143. package/cjs/S4143/rule.js +12 -9
  144. package/cjs/S4144/rule.js +12 -9
  145. package/cjs/S4158/rule.js +11 -8
  146. package/cjs/S4165/rule.js +14 -12
  147. package/cjs/S4322/rule.js +8 -5
  148. package/cjs/S4323/rule.js +4 -3
  149. package/cjs/S4324/rule.js +7 -5
  150. package/cjs/S4328/rule.js +2 -2
  151. package/cjs/S4335/rule.js +6 -4
  152. package/cjs/S4423/rule.js +4 -3
  153. package/cjs/S4423/rule.lib.js +8 -7
  154. package/cjs/S4426/rule.js +11 -10
  155. package/cjs/S4502/rule.js +16 -13
  156. package/cjs/S4507/rule.js +8 -6
  157. package/cjs/S4524/rule.js +2 -2
  158. package/cjs/S4619/rule.js +6 -4
  159. package/cjs/S4621/rule.js +5 -4
  160. package/cjs/S4622/rule.js +5 -3
  161. package/cjs/S4623/rule.js +8 -5
  162. package/cjs/S4624/rule.js +6 -4
  163. package/cjs/S4634/rule.js +4 -3
  164. package/cjs/S4721/rule.js +7 -5
  165. package/cjs/S4782/rule.js +7 -5
  166. package/cjs/S4784/rule.js +5 -4
  167. package/cjs/S4787/rule.js +9 -7
  168. package/cjs/S4790/rule.js +7 -5
  169. package/cjs/S4798/rule.js +2 -2
  170. package/cjs/S4817/rule.js +10 -8
  171. package/cjs/S4818/rule.js +4 -3
  172. package/cjs/S4822/rule.js +13 -9
  173. package/cjs/S4823/rule.js +4 -3
  174. package/cjs/S4829/rule.js +4 -3
  175. package/cjs/S4830/rule.js +11 -8
  176. package/cjs/S5042/rule.js +9 -7
  177. package/cjs/S5122/rule.js +40 -36
  178. package/cjs/S5148/rule.js +9 -8
  179. package/cjs/S5247/rule.js +22 -18
  180. package/cjs/S5256/rule.js +5 -4
  181. package/cjs/S5257/rule.js +4 -3
  182. package/cjs/S5260/rule.js +4 -3
  183. package/cjs/S5264/rule.js +4 -3
  184. package/cjs/S5332/rule.js +4 -3
  185. package/cjs/S5332/rule.lib.js +19 -17
  186. package/cjs/S5443/rule.js +2 -2
  187. package/cjs/S5527/rule.js +18 -14
  188. package/cjs/S5542/rule.js +6 -4
  189. package/cjs/S5547/rule.js +6 -4
  190. package/cjs/S5604/rule.js +15 -14
  191. package/cjs/S5659/rule.js +15 -12
  192. package/cjs/S5689/rule.js +11 -8
  193. package/cjs/S5691/rule.js +7 -5
  194. package/cjs/S5693/rule.js +14 -12
  195. package/cjs/S5725/rule.js +9 -6
  196. package/cjs/S5728/rule.js +7 -4
  197. package/cjs/S5730/rule.js +9 -6
  198. package/cjs/S5732/rule.js +8 -5
  199. package/cjs/S5734/rule.js +7 -4
  200. package/cjs/S5736/rule.js +8 -5
  201. package/cjs/S5739/rule.js +11 -8
  202. package/cjs/S5742/rule.js +7 -4
  203. package/cjs/S5743/rule.js +8 -6
  204. package/cjs/S5757/rule.js +13 -10
  205. package/cjs/S5759/rule.js +10 -7
  206. package/cjs/S5842/rule.js +2 -2
  207. package/cjs/S5843/rule.js +22 -19
  208. package/cjs/S5850/rule.js +4 -3
  209. package/cjs/S5852/rule.js +2 -2
  210. package/cjs/S5856/rule.js +10 -7
  211. package/cjs/S5860/rule.js +30 -26
  212. package/cjs/S5863/rule.js +15 -11
  213. package/cjs/S5867/rule.js +8 -7
  214. package/cjs/S5868/rule.js +7 -5
  215. package/cjs/S5869/rule.js +6 -5
  216. package/cjs/S5876/rule.js +12 -8
  217. package/cjs/S5958/rule.js +12 -9
  218. package/cjs/S5973/rule.js +10 -7
  219. package/cjs/S6019/rule.js +4 -3
  220. package/cjs/S6035/rule.js +2 -2
  221. package/cjs/S6079/rule.js +9 -6
  222. package/cjs/S6080/rule.js +13 -10
  223. package/cjs/S6092/rule.js +9 -7
  224. package/cjs/S6245/rule.js +14 -9
  225. package/cjs/S6249/rule.js +7 -5
  226. package/cjs/S6252/rule.js +12 -8
  227. package/cjs/S6265/rule.js +27 -20
  228. package/cjs/S6268/rule.js +5 -4
  229. package/cjs/S6270/rule.js +12 -9
  230. package/cjs/S6275/rule.js +2 -2
  231. package/cjs/S6281/rule.js +22 -17
  232. package/cjs/S6299/rule.js +2 -2
  233. package/cjs/S6302/rule.js +6 -5
  234. package/cjs/S6303/rule.js +12 -10
  235. package/cjs/S6304/rule.js +6 -5
  236. package/cjs/S6308/rule.js +7 -5
  237. package/cjs/S6317/rule.js +5 -4
  238. package/cjs/S6319/rule.js +2 -2
  239. package/cjs/S6321/rule.js +25 -23
  240. package/cjs/S6323/rule.js +4 -3
  241. package/cjs/S6324/rule.js +2 -2
  242. package/cjs/S6326/rule.js +2 -2
  243. package/cjs/S6327/rule.js +2 -2
  244. package/cjs/S6328/rule.js +4 -3
  245. package/cjs/S6329/rule.js +7 -5
  246. package/cjs/S6330/rule.js +2 -2
  247. package/cjs/S6332/rule.js +2 -2
  248. package/cjs/S6333/rule.js +8 -6
  249. package/cjs/S6351/rule.js +22 -19
  250. package/cjs/S6353/rule.js +2 -2
  251. package/cjs/S6397/rule.js +2 -2
  252. package/cjs/S6418/rule.js +9 -24
  253. package/cjs/S6426/rule.js +5 -4
  254. package/cjs/S6437/rule.js +10 -7
  255. package/cjs/S6439/rule.js +9 -7
  256. package/cjs/S6442/rule.js +11 -8
  257. package/cjs/S6443/rule.js +9 -7
  258. package/cjs/S6486/rule.js +5 -4
  259. package/cjs/S6564/rule.js +4 -3
  260. package/cjs/S6594/rule.js +12 -8
  261. package/cjs/S6627/rule.js +6 -4
  262. package/cjs/S6759/rule.js +10 -6
  263. package/cjs/S6958/rule.js +2 -2
  264. package/cjs/S6959/rule.js +9 -6
  265. package/cjs/S7059/rule.js +8 -5
  266. package/cjs/S7639/rule.js +5 -4
  267. package/cjs/S7790/rule.js +7 -5
  268. package/cjs/S8441/rule.js +13 -9
  269. package/cjs/S881/rule.js +2 -2
  270. package/cjs/S888/rule.js +4 -3
  271. package/cjs/S930/rule.js +14 -12
  272. package/cjs/helpers/ast.js +11 -8
  273. package/cjs/helpers/aws/s3.js +9 -6
  274. package/cjs/helpers/chai.js +41 -43
  275. package/cjs/helpers/cookie-flag-check.js +19 -17
  276. package/cjs/helpers/{decorators/index.js → entropy.js} +16 -17
  277. package/cjs/helpers/express.js +127 -128
  278. package/cjs/helpers/mocha.js +50 -54
  279. package/cjs/helpers/regex/ast.js +7 -6
  280. package/cjs/helpers/regex/extract.js +11 -11
  281. package/cjs/helpers/regex/group.js +2 -2
  282. package/cjs/helpers/regex/location.js +2 -2
  283. package/cjs/helpers/regex/range.js +5 -4
  284. package/cjs/helpers/regex/rule-template.js +4 -3
  285. package/cjs/helpers/sinon.js +33 -36
  286. package/cjs/helpers/supertest.js +34 -37
  287. package/cjs/helpers/vitest.js +29 -32
  288. package/docs/file-permissions.md +1 -1
  289. package/package.json +39 -1
  290. package/types/helpers/ancestor.d.ts +1 -1
  291. package/types/helpers/aws/s3.d.ts +1 -1
  292. package/types/helpers/chai.d.ts +3 -5
  293. package/types/helpers/entropy.d.ts +1 -0
  294. package/types/helpers/express.d.ts +38 -43
  295. package/types/helpers/mocha.d.ts +19 -21
  296. package/types/helpers/regex/ast.d.ts +1 -1
  297. package/types/helpers/regex/rule-template.d.ts +1 -1
  298. package/types/helpers/sinon.d.ts +3 -5
  299. package/types/helpers/supertest.d.ts +3 -5
  300. package/types/helpers/type.d.ts +1 -1
  301. package/types/helpers/vitest.d.ts +3 -5
  302. package/cjs/helpers/aws/index.js +0 -35
  303. package/cjs/helpers/decorators/interceptor.js +0 -88
  304. package/cjs/helpers/index.js +0 -60
  305. package/cjs/helpers/recognizers/index.js +0 -37
  306. package/cjs/helpers/rule-detect-react.js +0 -29
  307. package/cjs/helpers/validate-version.js +0 -94
  308. package/types/helpers/aws/index.d.ts +0 -3
  309. package/types/helpers/decorators/index.d.ts +0 -2
  310. package/types/helpers/decorators/interceptor.d.ts +0 -16
  311. package/types/helpers/index.d.ts +0 -28
  312. package/types/helpers/recognizers/index.d.ts +0 -2
  313. package/types/helpers/rule-detect-react.d.ts +0 -2
  314. package/types/helpers/validate-version.d.ts +0 -13
package/cjs/S3001/rule.js CHANGED
@@ -51,10 +51,10 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
55
  const meta = __importStar(require("./generated-meta.js"));
56
56
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta, {
57
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
58
58
  messages: {
59
59
  removeDelete: 'Remove this "delete" operator or pass an object property to it.',
60
60
  },
package/cjs/S3003/rule.js CHANGED
@@ -51,30 +51,33 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
+ const parser_services_js_1 = require("../helpers/parser-services.js");
56
+ const type_js_1 = require("../helpers/type.js");
57
+ const location_js_1 = require("../helpers/location.js");
55
58
  const meta = __importStar(require("./generated-meta.js"));
56
59
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta),
60
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
58
61
  create(context) {
59
62
  const services = context.sourceCode.parserServices;
60
- if (!(0, index_js_1.isRequiredParserServices)(services)) {
63
+ if (!(0, parser_services_js_1.isRequiredParserServices)(services)) {
61
64
  return {};
62
65
  }
63
66
  return {
64
67
  BinaryExpression: (node) => {
65
68
  const { operator, left, right } = node;
66
69
  if (['<', '<=', '>', '>='].includes(operator) &&
67
- (0, index_js_1.isString)(left, services) &&
68
- (0, index_js_1.isString)(right, services) &&
70
+ (0, type_js_1.isString)(left, services) &&
71
+ (0, type_js_1.isString)(right, services) &&
69
72
  !isLiteralException(left) &&
70
73
  !isLiteralException(right) &&
71
74
  !isWithinSortCallback(context, node)) {
72
- (0, index_js_1.report)(context, {
75
+ (0, location_js_1.report)(context, {
73
76
  message: `Convert operands of this use of "${operator}" to number type.`,
74
77
  loc: context.sourceCode
75
78
  .getTokensBetween(left, right)
76
79
  .find(token => token.type === 'Punctuator' && token.value === operator).loc,
77
- }, [left, right].map(node => (0, index_js_1.toSecondaryLocation)(node)));
80
+ }, [left, right].map(node => (0, location_js_1.toSecondaryLocation)(node)));
78
81
  }
79
82
  },
80
83
  };
package/cjs/S3317/rule.js CHANGED
@@ -55,10 +55,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
55
55
  Object.defineProperty(exports, "__esModule", { value: true });
56
56
  exports.rule = void 0;
57
57
  const node_path_1 = __importDefault(require("node:path"));
58
- const index_js_1 = require("../helpers/index.js");
58
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
59
+ const ast_js_1 = require("../helpers/ast.js");
59
60
  const meta = __importStar(require("./generated-meta.js"));
60
61
  exports.rule = {
61
- meta: (0, index_js_1.generateMeta)(meta, {
62
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
62
63
  messages: {
63
64
  renameFile: 'Rename this file to "{{exported}}"',
64
65
  },
@@ -70,7 +71,7 @@ exports.rule = {
70
71
  ExportDefaultDeclaration: (node) => {
71
72
  const declaration = node.declaration;
72
73
  if (declaration.type === 'Identifier') {
73
- const variable = (0, index_js_1.getVariableFromName)(context, declaration.name, node);
74
+ const variable = (0, ast_js_1.getVariableFromName)(context, declaration.name, node);
74
75
  if (variable?.defs.length === 1) {
75
76
  const def = variable.defs[0];
76
77
  if (def.type === 'ClassName' || def.type === 'FunctionName' || isConst(def)) {
package/cjs/S3330/rule.js CHANGED
@@ -52,10 +52,10 @@ var __importStar = (this && this.__importStar) || (function () {
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
54
  const cookie_flag_check_js_1 = require("../helpers/cookie-flag-check.js");
55
- const index_js_1 = require("../helpers/index.js");
55
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
56
56
  const meta = __importStar(require("./generated-meta.js"));
57
57
  exports.rule = {
58
- meta: (0, index_js_1.generateMeta)(meta),
58
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
59
59
  create(context) {
60
60
  return {
61
61
  CallExpression: (node) => new cookie_flag_check_js_1.CookieFlagCheck(context, 'httpOnly').checkCookiesFromCallExpression(node),
package/cjs/S3358/rule.js CHANGED
@@ -51,10 +51,10 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
55
  const meta = __importStar(require("./generated-meta.js"));
56
56
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta, {
57
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
58
58
  messages: {
59
59
  extractTernary: 'Extract this nested ternary operation into an independent statement.',
60
60
  },
package/cjs/S3402/rule.js CHANGED
@@ -55,15 +55,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
55
55
  Object.defineProperty(exports, "__esModule", { value: true });
56
56
  exports.rule = void 0;
57
57
  const typescript_1 = __importDefault(require("typescript"));
58
- const index_js_1 = require("../helpers/index.js");
58
+ const parser_services_js_1 = require("../helpers/parser-services.js");
59
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
60
+ const type_js_1 = require("../helpers/type.js");
61
+ const ast_js_1 = require("../helpers/ast.js");
62
+ const location_js_1 = require("../helpers/location.js");
59
63
  const meta = __importStar(require("./generated-meta.js"));
60
64
  const message = `Review this expression to be sure that the concatenation was intended.`;
61
65
  const objectLikeTypes = new Set(['object', 'Object']);
62
66
  exports.rule = {
63
- meta: (0, index_js_1.generateMeta)(meta),
67
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
64
68
  create(context) {
65
69
  const services = context.sourceCode.parserServices;
66
- if (!(0, index_js_1.isRequiredParserServices)(services)) {
70
+ if (!(0, parser_services_js_1.isRequiredParserServices)(services)) {
67
71
  return {};
68
72
  }
69
73
  const checker = services.program.getTypeChecker();
@@ -81,22 +85,22 @@ exports.rule = {
81
85
  .find(token => token.value === '+' || token.value === '+=').loc;
82
86
  }
83
87
  function checkConcatenation(left, right) {
84
- if ((0, index_js_1.isStringLiteral)(left) ||
85
- (0, index_js_1.isStringLiteral)(right) ||
88
+ if ((0, ast_js_1.isStringLiteral)(left) ||
89
+ (0, ast_js_1.isStringLiteral)(right) ||
86
90
  isConcatenation(left) ||
87
91
  isConcatenation(right)) {
88
92
  return;
89
93
  }
90
- const leftType = (0, index_js_1.getTypeFromTreeNode)(left, services);
91
- const rightType = (0, index_js_1.getTypeFromTreeNode)(right, services);
94
+ const leftType = (0, type_js_1.getTypeFromTreeNode)(left, services);
95
+ const rightType = (0, type_js_1.getTypeFromTreeNode)(right, services);
92
96
  if (isStringPlusNonString(leftType, rightType) ||
93
97
  isStringPlusNonString(rightType, leftType)) {
94
- (0, index_js_1.report)(context, {
98
+ (0, location_js_1.report)(context, {
95
99
  message,
96
100
  loc: getOperatorLocation(left, right),
97
101
  }, [
98
- (0, index_js_1.toSecondaryLocation)(left, `left operand has type ${checker.typeToString(leftType)}.`),
99
- (0, index_js_1.toSecondaryLocation)(right, `right operand has type ${checker.typeToString(rightType)}.`),
102
+ (0, location_js_1.toSecondaryLocation)(left, `left operand has type ${checker.typeToString(leftType)}.`),
103
+ (0, location_js_1.toSecondaryLocation)(right, `right operand has type ${checker.typeToString(rightType)}.`),
100
104
  ]);
101
105
  }
102
106
  }
package/cjs/S3403/rule.js CHANGED
@@ -55,19 +55,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
55
55
  Object.defineProperty(exports, "__esModule", { value: true });
56
56
  exports.rule = void 0;
57
57
  const typescript_1 = __importDefault(require("typescript"));
58
- const index_js_1 = require("../helpers/index.js");
58
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
59
+ const type_js_1 = require("../helpers/type.js");
60
+ const parser_services_js_1 = require("../helpers/parser-services.js");
61
+ const location_js_1 = require("../helpers/location.js");
59
62
  const meta = __importStar(require("./generated-meta.js"));
60
63
  exports.rule = {
61
- meta: (0, index_js_1.generateMeta)(meta, { hasSuggestions: true }),
64
+ meta: (0, generate_meta_js_1.generateMeta)(meta, { hasSuggestions: true }),
62
65
  create(context) {
63
66
  const services = context.sourceCode.parserServices;
64
- if (!(0, index_js_1.isRequiredParserServices)(services)) {
67
+ if (!(0, parser_services_js_1.isRequiredParserServices)(services)) {
65
68
  return {};
66
69
  }
67
70
  function isComparableTo(lhs, rhs) {
68
71
  const checker = services.program.getTypeChecker();
69
- const lhsType = checker.getBaseTypeOfLiteralType((0, index_js_1.getTypeFromTreeNode)(lhs, services));
70
- const rhsType = checker.getBaseTypeOfLiteralType((0, index_js_1.getTypeFromTreeNode)(rhs, services));
72
+ const lhsType = checker.getBaseTypeOfLiteralType((0, type_js_1.getTypeFromTreeNode)(lhs, services));
73
+ const rhsType = checker.getBaseTypeOfLiteralType((0, type_js_1.getTypeFromTreeNode)(rhs, services));
71
74
  // If either type is indeterminate (unknown, type parameter, or indexed access),
72
75
  // we cannot know at compile time if the comparison will always fail
73
76
  if (isIndeterminateType(lhsType) || isIndeterminateType(rhsType)) {
@@ -84,7 +87,7 @@ exports.rule = {
84
87
  const operatorToken = context.sourceCode
85
88
  .getTokensBetween(left, right)
86
89
  .find(token => token.type === 'Punctuator' && token.value === operator);
87
- (0, index_js_1.report)(context, {
90
+ (0, location_js_1.report)(context, {
88
91
  message: `Remove this "${actual}" check; it will always be ${outcome}. Did you mean to use "${expected}"?`,
89
92
  loc: operatorToken.loc,
90
93
  suggest: [
@@ -93,7 +96,7 @@ exports.rule = {
93
96
  fix: fixer => fixer.replaceText(operatorToken, expected),
94
97
  },
95
98
  ],
96
- }, [left, right].map(node => (0, index_js_1.toSecondaryLocation)(node)));
99
+ }, [left, right].map(node => (0, location_js_1.toSecondaryLocation)(node)));
97
100
  }
98
101
  },
99
102
  };
package/cjs/S3415/rule.js CHANGED
@@ -51,7 +51,10 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
+ const ast_js_1 = require("../helpers/ast.js");
56
+ const mocha_js_1 = require("../helpers/mocha.js");
57
+ const location_js_1 = require("../helpers/location.js");
55
58
  const meta = __importStar(require("./generated-meta.js"));
56
59
  const ASSERT_FUNCTIONS = [
57
60
  'equal',
@@ -64,12 +67,12 @@ const ASSERT_FUNCTIONS = [
64
67
  'approximately',
65
68
  ];
66
69
  exports.rule = {
67
- meta: (0, index_js_1.generateMeta)(meta, { hasSuggestions: true }),
70
+ meta: (0, generate_meta_js_1.generateMeta)(meta, { hasSuggestions: true }),
68
71
  create(context) {
69
72
  const testCases = [];
70
73
  return {
71
74
  CallExpression(node) {
72
- if (index_js_1.Mocha.isTestCase(node)) {
75
+ if ((0, mocha_js_1.isTestCase)(node)) {
73
76
  testCases.push(node);
74
77
  return;
75
78
  }
@@ -78,7 +81,7 @@ exports.rule = {
78
81
  }
79
82
  },
80
83
  'CallExpression:exit': (node) => {
81
- if (index_js_1.Mocha.isTestCase(node)) {
84
+ if ((0, mocha_js_1.isTestCase)(node)) {
82
85
  testCases.pop();
83
86
  }
84
87
  },
@@ -89,8 +92,8 @@ function checkInvertedArguments(node, context) {
89
92
  const args = extractAssertionsArguments(node);
90
93
  if (args) {
91
94
  const [actual, expected, format] = args;
92
- if ((0, index_js_1.isLiteral)(actual) && !(0, index_js_1.isLiteral)(expected)) {
93
- (0, index_js_1.report)(context, {
95
+ if ((0, ast_js_1.isLiteral)(actual) && !(0, ast_js_1.isLiteral)(expected)) {
96
+ (0, location_js_1.report)(context, {
94
97
  node: expected,
95
98
  message: `Swap these 2 arguments so they are in the correct order: ${format}.`,
96
99
  suggest: [
@@ -102,7 +105,7 @@ function checkInvertedArguments(node, context) {
102
105
  ],
103
106
  },
104
107
  ],
105
- }, [(0, index_js_1.toSecondaryLocation)(actual, 'Other argument to swap.')]);
108
+ }, [(0, location_js_1.toSecondaryLocation)(actual, 'Other argument to swap.')]);
106
109
  }
107
110
  }
108
111
  }
@@ -110,9 +113,9 @@ function extractAssertionsArguments(node) {
110
113
  return extractAssertArguments(node) ?? extractExpectArguments(node) ?? extractFailArguments(node);
111
114
  }
112
115
  function extractAssertArguments(node) {
113
- if ((0, index_js_1.isMethodCall)(node) && node.arguments.length > 1) {
116
+ if ((0, ast_js_1.isMethodCall)(node) && node.arguments.length > 1) {
114
117
  const { callee: { object, property }, arguments: [actual, expected], } = node;
115
- if ((0, index_js_1.isIdentifier)(object, 'assert') && (0, index_js_1.isIdentifier)(property, ...ASSERT_FUNCTIONS)) {
118
+ if ((0, ast_js_1.isIdentifier)(object, 'assert') && (0, ast_js_1.isIdentifier)(property, ...ASSERT_FUNCTIONS)) {
116
119
  return [actual, expected, `${object.name}.${property.name}(actual, expected)`];
117
120
  }
118
121
  }
@@ -123,13 +126,13 @@ function extractExpectArguments(node) {
123
126
  return null;
124
127
  }
125
128
  let { object, property } = node.callee;
126
- if (!(0, index_js_1.isIdentifier)(property, 'equal', 'eql', 'closeTo')) {
129
+ if (!(0, ast_js_1.isIdentifier)(property, 'equal', 'eql', 'closeTo')) {
127
130
  return null;
128
131
  }
129
132
  while (object.type === 'MemberExpression') {
130
133
  object = object.object;
131
134
  }
132
- if (object.type === 'CallExpression' && (0, index_js_1.isIdentifier)(object.callee, 'expect')) {
135
+ if (object.type === 'CallExpression' && (0, ast_js_1.isIdentifier)(object.callee, 'expect')) {
133
136
  return [
134
137
  object.arguments[0],
135
138
  node.arguments[0],
@@ -139,9 +142,9 @@ function extractExpectArguments(node) {
139
142
  return null;
140
143
  }
141
144
  function extractFailArguments(node) {
142
- if ((0, index_js_1.isMethodCall)(node) && node.arguments.length > 1) {
145
+ if ((0, ast_js_1.isMethodCall)(node) && node.arguments.length > 1) {
143
146
  const { callee: { object, property }, arguments: [actual, expected], } = node;
144
- if ((0, index_js_1.isIdentifier)(object, 'assert', 'expect', 'should') && (0, index_js_1.isIdentifier)(property, 'fail')) {
147
+ if ((0, ast_js_1.isIdentifier)(object, 'assert', 'expect', 'should') && (0, ast_js_1.isIdentifier)(property, 'fail')) {
145
148
  return [actual, expected, `${object.name}.${property.name}(actual, expected)`];
146
149
  }
147
150
  }
package/cjs/S3499/rule.js CHANGED
@@ -51,10 +51,11 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const location_js_1 = require("../helpers/location.js");
55
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
56
  const meta = __importStar(require("./generated-meta.js"));
56
57
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta),
58
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
58
59
  create(context) {
59
60
  function raiseIssue(node, begin, end, positionMessage) {
60
61
  const properties = node.properties;
@@ -62,10 +63,10 @@ exports.rule = {
62
63
  for (let i = begin; i < end; i++) {
63
64
  const prop = properties[i];
64
65
  if (prop.shorthand) {
65
- secondaryLocations.push((0, index_js_1.toSecondaryLocation)(prop, `Move to ${positionMessage}`));
66
+ secondaryLocations.push((0, location_js_1.toSecondaryLocation)(prop, `Move to ${positionMessage}`));
66
67
  }
67
68
  }
68
- (0, index_js_1.report)(context, {
69
+ (0, location_js_1.report)(context, {
69
70
  message: `Group all shorthand properties at ${positionMessage} of this object declaration.`,
70
71
  loc: context.sourceCode.getFirstToken(node).loc,
71
72
  }, secondaryLocations);
package/cjs/S3500/rule.js CHANGED
@@ -51,19 +51,20 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
+ const location_js_1 = require("../helpers/location.js");
55
56
  const meta = __importStar(require("./generated-meta.js"));
56
57
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta),
58
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
58
59
  create(context) {
59
60
  return {
60
61
  'VariableDeclaration[kind="const"]': (node) => {
61
62
  for (const variable of context.sourceCode.getDeclaredVariables(node)) {
62
63
  for (const reference of variable.references.filter((ref, i, refs) => isModifyingReference(ref, i, refs))) {
63
- (0, index_js_1.report)(context, {
64
+ (0, location_js_1.report)(context, {
64
65
  message: `Correct this attempt to modify "${reference.identifier.name}" or use "let" in its declaration.`,
65
66
  node: reference.identifier,
66
- }, [(0, index_js_1.toSecondaryLocation)(node, 'Const declaration')]);
67
+ }, [(0, location_js_1.toSecondaryLocation)(node, 'Const declaration')]);
67
68
  }
68
69
  }
69
70
  },
package/cjs/S3513/rule.js CHANGED
@@ -51,12 +51,13 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
+ const location_js_1 = require("../helpers/location.js");
55
56
  const meta = __importStar(require("./generated-meta.js"));
56
57
  const MESSAGE = "Use the rest syntax to declare this function's arguments.";
57
58
  const SECONDARY_MESSAGE = 'Replace this reference to "arguments".';
58
59
  exports.rule = {
59
- meta: (0, index_js_1.generateMeta)(meta),
60
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
60
61
  create(context) {
61
62
  return {
62
63
  // Ignore root scope containing global variables
@@ -85,10 +86,10 @@ function checkArgumentsVariableWithoutDefinition(context, variable) {
85
86
  if (!isLocalVariableOrParameter && references.length > 0) {
86
87
  const firstReference = references[0];
87
88
  const secondaryLocations = references.slice(1).map(ref => ref.identifier);
88
- (0, index_js_1.report)(context, {
89
+ (0, location_js_1.report)(context, {
89
90
  node: firstReference.identifier,
90
91
  message: MESSAGE,
91
- }, secondaryLocations.map(node => (0, index_js_1.toSecondaryLocation)(node, SECONDARY_MESSAGE)));
92
+ }, secondaryLocations.map(node => (0, location_js_1.toSecondaryLocation)(node, SECONDARY_MESSAGE)));
92
93
  }
93
94
  }
94
95
  function isFollowedByLengthProperty(reference) {
package/cjs/S3514/rule.js CHANGED
@@ -51,12 +51,15 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const ancestor_js_1 = require("../helpers/ancestor.js");
55
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
56
+ const ast_js_1 = require("../helpers/ast.js");
57
+ const location_js_1 = require("../helpers/location.js");
55
58
  const meta = __importStar(require("./generated-meta.js"));
56
59
  const MAX_INDEX = 4;
57
60
  const isAllowedIndex = (idx) => idx >= 0 && idx <= MAX_INDEX;
58
61
  exports.rule = {
59
- meta: (0, index_js_1.generateMeta)(meta),
62
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
60
63
  create(context) {
61
64
  function visitStatements(statements) {
62
65
  const declarationsByObject = new Map();
@@ -81,8 +84,8 @@ exports.rule = {
81
84
  continue;
82
85
  }
83
86
  const property = expression.property;
84
- if ((0, index_js_1.isIdentifier)(property, varName) ||
85
- ((0, index_js_1.isNumberLiteral)(property) && isAllowedIndex(property.value))) {
87
+ if ((0, ast_js_1.isIdentifier)(property, varName) ||
88
+ ((0, ast_js_1.isNumberLiteral)(property) && isAllowedIndex(property.value))) {
86
89
  addDeclaration(declarationsByObject, expression.object, declaration);
87
90
  }
88
91
  }
@@ -104,10 +107,10 @@ exports.rule = {
104
107
  const firstKind = getKind(declarations[0]);
105
108
  const tail = declarations.slice(1);
106
109
  if (tail.every(decl => getKind(decl) === firstKind)) {
107
- (0, index_js_1.report)(context, {
110
+ (0, location_js_1.report)(context, {
108
111
  node: declarations[0],
109
112
  message: `Use destructuring syntax for these assignments from "${key}".`,
110
- }, tail.map(node => (0, index_js_1.toSecondaryLocation)(node, 'Replace this assignment.')));
113
+ }, tail.map(node => (0, location_js_1.toSecondaryLocation)(node, 'Replace this assignment.')));
111
114
  }
112
115
  }
113
116
  }
@@ -126,6 +129,6 @@ exports.rule = {
126
129
  },
127
130
  };
128
131
  function getKind(declarator) {
129
- const declaration = (0, index_js_1.findFirstMatchingAncestor)(declarator, n => n.type === 'VariableDeclaration');
132
+ const declaration = (0, ancestor_js_1.findFirstMatchingAncestor)(declarator, n => n.type === 'VariableDeclaration');
130
133
  return declaration?.kind;
131
134
  }
package/cjs/S3516/rule.js CHANGED
@@ -51,10 +51,13 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const ancestor_js_1 = require("../helpers/ancestor.js");
55
+ const ast_js_1 = require("../helpers/ast.js");
56
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
57
+ const location_js_1 = require("../helpers/location.js");
55
58
  const meta = __importStar(require("./generated-meta.js"));
56
59
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta),
60
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
58
61
  create(context) {
59
62
  const functionContextStack = [];
60
63
  const codePathSegments = [];
@@ -66,10 +69,10 @@ exports.rule = {
66
69
  }
67
70
  const returnedValues = functionContext.returnStatements.map(returnStatement => returnStatement.argument);
68
71
  if (areAllSameValue(returnedValues, context.sourceCode.getScope(node))) {
69
- (0, index_js_1.report)(context, {
72
+ (0, location_js_1.report)(context, {
70
73
  message: `Refactor this function to not always return the same value.`,
71
- loc: (0, index_js_1.getMainFunctionTokenLocation)(node, (0, index_js_1.getParent)(context, node), context),
72
- }, returnedValues.map(node => (0, index_js_1.toSecondaryLocation)(node, 'Returned value.')), returnedValues.length);
74
+ loc: (0, location_js_1.getMainFunctionTokenLocation)(node, (0, ancestor_js_1.getParent)(context, node), context),
75
+ }, returnedValues.map(node => (0, location_js_1.toSecondaryLocation)(node, 'Returned value.')), returnedValues.length);
73
76
  }
74
77
  }
75
78
  return {
@@ -149,11 +152,11 @@ function getSingleWriteDefinition(variableName, scope) {
149
152
  return null;
150
153
  }
151
154
  function isPossibleObjectUpdate(ref) {
152
- const expressionStatement = (0, index_js_1.findFirstMatchingAncestor)(ref.identifier, n => n.type === 'ExpressionStatement' || index_js_1.FUNCTION_NODES.includes(n.type));
155
+ const expressionStatement = (0, ancestor_js_1.findFirstMatchingAncestor)(ref.identifier, n => n.type === 'ExpressionStatement' || ast_js_1.FUNCTION_NODES.includes(n.type));
153
156
  // To avoid FP, we consider method calls as write operations, since we do not know whether they will
154
157
  // update the object state or not.
155
158
  return (expressionStatement?.type === 'ExpressionStatement' &&
156
- ((0, index_js_1.isElementWrite)(expressionStatement, ref) ||
159
+ ((0, ast_js_1.isElementWrite)(expressionStatement, ref) ||
157
160
  expressionStatement.expression.type === 'CallExpression'));
158
161
  }
159
162
  function getLiteralValue(returnedValue, scope) {
package/cjs/S3524/rule.js CHANGED
@@ -51,7 +51,7 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
55
  const meta = __importStar(require("./generated-meta.js"));
56
56
  const MESSAGE_ADD_PARAMETER = 'Add parentheses around the parameter of this arrow function.';
57
57
  const MESSAGE_REMOVE_PARAMETER = 'Remove parentheses around the parameter of this arrow function.';
@@ -62,7 +62,7 @@ const DEFAULT_OPTIONS = {
62
62
  requireBodyBraces: false,
63
63
  };
64
64
  exports.rule = {
65
- meta: (0, index_js_1.generateMeta)(meta),
65
+ meta: (0, generate_meta_js_1.generateMeta)(meta),
66
66
  create(context) {
67
67
  const { requireParameterParentheses, requireBodyBraces } = {
68
68
  ...DEFAULT_OPTIONS,
package/cjs/S3525/rule.js CHANGED
@@ -55,17 +55,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
55
55
  Object.defineProperty(exports, "__esModule", { value: true });
56
56
  exports.rule = void 0;
57
57
  const typescript_1 = __importDefault(require("typescript"));
58
- const index_js_1 = require("../helpers/index.js");
58
+ const parser_services_js_1 = require("../helpers/parser-services.js");
59
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
60
+ const type_js_1 = require("../helpers/type.js");
59
61
  const meta = __importStar(require("./generated-meta.js"));
60
62
  exports.rule = {
61
- meta: (0, index_js_1.generateMeta)(meta, {
63
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
62
64
  messages: {
63
65
  declareClass: 'Declare a "{{class}}" class and move this declaration of "{{declaration}}" into it.',
64
66
  },
65
67
  }),
66
68
  create(context) {
67
69
  const services = context.sourceCode.parserServices;
68
- const isFunction = (0, index_js_1.isRequiredParserServices)(services) ? isFunctionType : isFunctionLike;
70
+ const isFunction = (0, parser_services_js_1.isRequiredParserServices)(services) ? isFunctionType : isFunctionLike;
69
71
  return {
70
72
  AssignmentExpression: (node) => {
71
73
  const { left, right } = node;
@@ -92,7 +94,7 @@ exports.rule = {
92
94
  },
93
95
  };
94
96
  function isFunctionType(node, services) {
95
- const type = (0, index_js_1.getTypeFromTreeNode)(node, services);
97
+ const type = (0, type_js_1.getTypeFromTreeNode)(node, services);
96
98
  return type.symbol && (type.symbol.flags & typescript_1.default.SymbolFlags.Function) !== 0;
97
99
  }
98
100
  function isFunctionLike(node, _services) {
package/cjs/S3531/rule.js CHANGED
@@ -51,10 +51,12 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
+ const location_js_1 = require("../helpers/location.js");
56
+ const ancestor_js_1 = require("../helpers/ancestor.js");
55
57
  const meta = __importStar(require("./generated-meta.js"));
56
58
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta, {
59
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
58
60
  messages: {
59
61
  addYield: 'Add a "yield" statement to this generator.',
60
62
  },
@@ -70,7 +72,7 @@ exports.rule = {
70
72
  if (countYield === 0 && functionNode.body.body.length > 0) {
71
73
  context.report({
72
74
  messageId: 'addYield',
73
- loc: (0, index_js_1.getMainFunctionTokenLocation)(functionNode, (0, index_js_1.getParent)(context, node), context),
75
+ loc: (0, location_js_1.getMainFunctionTokenLocation)(functionNode, (0, ancestor_js_1.getParent)(context, node), context),
74
76
  });
75
77
  }
76
78
  }
package/cjs/S3533/rule.js CHANGED
@@ -51,11 +51,14 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const helpers = __importStar(require("../helpers/index.js"));
55
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
+ const ast_js_1 = require("../helpers/ast.js");
56
+ const type_js_1 = require("../helpers/type.js");
57
+ const parser_services_js_1 = require("../helpers/parser-services.js");
58
+ const collection_js_1 = require("../helpers/collection.js");
56
59
  const meta = __importStar(require("./generated-meta.js"));
57
60
  exports.rule = {
58
- meta: (0, index_js_1.generateMeta)(meta, {
61
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
59
62
  messages: {
60
63
  standardImport: 'Use a standard "import" statement instead of "{{adhocImport}}".',
61
64
  },
@@ -85,8 +88,7 @@ exports.rule = {
85
88
  },
86
89
  };
87
90
  function isString(node, services) {
88
- return ((helpers.isRequiredParserServices(services) && helpers.isString(node, services)) ||
89
- (0, index_js_1.isStringLiteral)(node));
91
+ return (0, parser_services_js_1.isRequiredParserServices)(services) ? (0, type_js_1.isString)(node, services) : (0, ast_js_1.isStringLiteral)(node);
90
92
  }
91
93
  function isCommonJsImport(callExpression, identifier, services) {
92
94
  return (callExpression.arguments.length === 1 &&
@@ -100,6 +102,5 @@ function isAmdImport(callExpression, identifier, services) {
100
102
  if (callExpression.arguments.length !== 2 && callExpression.arguments.length !== 3) {
101
103
  return false;
102
104
  }
103
- return (helpers.isRequiredParserServices(services) &&
104
- helpers.isFunction((0, index_js_1.last)(callExpression.arguments), services));
105
+ return (0, parser_services_js_1.isRequiredParserServices)(services) && (0, type_js_1.isFunction)((0, collection_js_1.last)(callExpression.arguments), services);
105
106
  }
package/cjs/S3579/rule.js CHANGED
@@ -51,24 +51,26 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  })();
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.rule = void 0;
54
- const index_js_1 = require("../helpers/index.js");
54
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
55
+ const type_js_1 = require("../helpers/type.js");
56
+ const parser_services_js_1 = require("../helpers/parser-services.js");
55
57
  const meta = __importStar(require("./generated-meta.js"));
56
58
  exports.rule = {
57
- meta: (0, index_js_1.generateMeta)(meta, {
59
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
58
60
  messages: {
59
61
  noAssociativeArray: 'Make it an object if it must have named properties; otherwise, use a numeric index here.',
60
62
  },
61
63
  }),
62
64
  create(context) {
63
65
  const services = context.sourceCode.parserServices;
64
- if (!(0, index_js_1.isRequiredParserServices)(services)) {
66
+ if (!(0, parser_services_js_1.isRequiredParserServices)(services)) {
65
67
  return {};
66
68
  }
67
69
  return {
68
70
  'AssignmentExpression[left.type="MemberExpression"]'(node) {
69
71
  const { property, object } = node
70
72
  .left;
71
- if ((0, index_js_1.isString)(property, services) && (0, index_js_1.isArray)(object, services)) {
73
+ if ((0, type_js_1.isString)(property, services) && (0, type_js_1.isArray)(object, services)) {
72
74
  context.report({
73
75
  messageId: 'noAssociativeArray',
74
76
  node,