eslint-plugin-sonarjs 4.0.1 → 4.0.3

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 (1214) hide show
  1. package/README.md +23 -22
  2. package/cjs/S100/config.js +3 -3
  3. package/cjs/S100/generated-meta.js +3 -3
  4. package/cjs/S100/index.js +3 -3
  5. package/cjs/S100/meta.js +3 -3
  6. package/cjs/S100/rule.js +10 -8
  7. package/cjs/S101/config.js +4 -4
  8. package/cjs/S101/generated-meta.js +4 -4
  9. package/cjs/S101/index.js +3 -3
  10. package/cjs/S101/meta.js +3 -3
  11. package/cjs/S101/rule.js +6 -6
  12. package/cjs/S104/config.js +3 -3
  13. package/cjs/S104/generated-meta.js +3 -3
  14. package/cjs/S104/index.js +3 -3
  15. package/cjs/S104/meta.js +3 -3
  16. package/cjs/S104/rule.js +5 -5
  17. package/cjs/S105/generated-meta.js +3 -3
  18. package/cjs/S105/index.js +3 -3
  19. package/cjs/S105/meta.js +3 -3
  20. package/cjs/S105/rule.js +5 -5
  21. package/cjs/S1066/generated-meta.js +3 -3
  22. package/cjs/S1066/index.js +3 -3
  23. package/cjs/S1066/meta.js +3 -3
  24. package/cjs/S1066/rule.js +8 -7
  25. package/cjs/S1067/config.js +3 -3
  26. package/cjs/S1067/generated-meta.js +3 -3
  27. package/cjs/S1067/index.js +3 -3
  28. package/cjs/S1067/meta.js +3 -3
  29. package/cjs/S1067/rule.js +11 -9
  30. package/cjs/S1110/generated-meta.js +3 -3
  31. package/cjs/S1110/index.js +3 -3
  32. package/cjs/S1110/meta.js +3 -3
  33. package/cjs/S1110/rule.js +10 -8
  34. package/cjs/S1119/generated-meta.js +3 -3
  35. package/cjs/S1119/index.js +3 -3
  36. package/cjs/S1119/meta.js +3 -3
  37. package/cjs/S1119/rule.js +5 -5
  38. package/cjs/S1121/generated-meta.js +3 -3
  39. package/cjs/S1121/index.js +3 -3
  40. package/cjs/S1121/meta.js +3 -3
  41. package/cjs/S1121/rule.js +7 -6
  42. package/cjs/S1125/generated-meta.js +3 -3
  43. package/cjs/S1125/index.js +3 -3
  44. package/cjs/S1125/meta.js +3 -3
  45. package/cjs/S1125/rule.js +12 -11
  46. package/cjs/S1126/generated-meta.js +3 -3
  47. package/cjs/S1126/index.js +3 -3
  48. package/cjs/S1126/meta.js +3 -3
  49. package/cjs/S1126/rule.js +31 -12
  50. package/cjs/S1128/generated-meta.js +5 -4
  51. package/cjs/S1128/index.js +3 -3
  52. package/cjs/S1128/meta.js +3 -3
  53. package/cjs/S1128/rule.js +11 -8
  54. package/cjs/S1134/generated-meta.js +3 -3
  55. package/cjs/S1134/index.js +3 -3
  56. package/cjs/S1134/meta.js +3 -3
  57. package/cjs/S1134/rule.js +5 -5
  58. package/cjs/S1135/generated-meta.js +3 -3
  59. package/cjs/S1135/index.js +3 -3
  60. package/cjs/S1135/meta.js +3 -3
  61. package/cjs/S1135/rule.js +5 -5
  62. package/cjs/S1154/generated-meta.js +3 -3
  63. package/cjs/S1154/index.js +3 -3
  64. package/cjs/S1154/meta.js +3 -3
  65. package/cjs/S1154/rule.js +9 -7
  66. package/cjs/S117/config.js +3 -3
  67. package/cjs/S117/generated-meta.js +3 -3
  68. package/cjs/S117/index.js +3 -3
  69. package/cjs/S117/meta.js +3 -3
  70. package/cjs/S117/rule.js +9 -8
  71. package/cjs/S1172/generated-meta.js +3 -3
  72. package/cjs/S1172/index.js +3 -3
  73. package/cjs/S1172/meta.js +3 -3
  74. package/cjs/S1172/rule.js +5 -5
  75. package/cjs/S1192/config.js +3 -3
  76. package/cjs/S1192/generated-meta.js +3 -3
  77. package/cjs/S1192/index.js +3 -3
  78. package/cjs/S1192/meta.js +3 -3
  79. package/cjs/S1192/rule.js +10 -9
  80. package/cjs/S1219/generated-meta.js +3 -3
  81. package/cjs/S1219/index.js +3 -3
  82. package/cjs/S1219/meta.js +3 -3
  83. package/cjs/S1219/rule.js +7 -6
  84. package/cjs/S1226/generated-meta.js +3 -3
  85. package/cjs/S1226/index.js +3 -3
  86. package/cjs/S1226/meta.js +3 -3
  87. package/cjs/S1226/rule.js +9 -7
  88. package/cjs/S124/config.js +3 -3
  89. package/cjs/S124/generated-meta.js +3 -3
  90. package/cjs/S124/index.js +3 -3
  91. package/cjs/S124/meta.js +3 -3
  92. package/cjs/S124/rule.js +5 -5
  93. package/cjs/S125/generated-meta.js +3 -3
  94. package/cjs/S125/index.js +3 -3
  95. package/cjs/S125/meta.js +3 -3
  96. package/cjs/S125/rule.js +76 -27
  97. package/cjs/S126/generated-meta.js +3 -3
  98. package/cjs/S126/index.js +3 -3
  99. package/cjs/S126/meta.js +3 -3
  100. package/cjs/S126/rule.js +5 -5
  101. package/cjs/S1264/generated-meta.js +3 -3
  102. package/cjs/S1264/index.js +3 -3
  103. package/cjs/S1264/meta.js +3 -3
  104. package/cjs/S1264/rule.js +5 -5
  105. package/cjs/S128/generated-meta.js +3 -3
  106. package/cjs/S128/index.js +3 -3
  107. package/cjs/S128/meta.js +3 -3
  108. package/cjs/S128/rule.js +7 -6
  109. package/cjs/S1291/generated-meta.js +3 -3
  110. package/cjs/S1291/index.js +3 -3
  111. package/cjs/S1291/meta.js +3 -3
  112. package/cjs/S1291/rule.js +5 -5
  113. package/cjs/S1301/generated-meta.js +3 -3
  114. package/cjs/S1301/index.js +3 -3
  115. package/cjs/S1301/meta.js +3 -3
  116. package/cjs/S1301/rule.js +143 -5
  117. package/cjs/S1313/generated-meta.js +5 -5
  118. package/cjs/S1313/index.js +3 -3
  119. package/cjs/S1313/meta.js +3 -3
  120. package/cjs/S1313/rule.js +5 -5
  121. package/cjs/S134/config.js +4 -4
  122. package/cjs/S134/generated-meta.js +3 -3
  123. package/cjs/S134/index.js +3 -3
  124. package/cjs/S134/meta.js +3 -3
  125. package/cjs/S134/rule.js +10 -8
  126. package/cjs/S135/generated-meta.js +3 -3
  127. package/cjs/S135/index.js +3 -3
  128. package/cjs/S135/meta.js +3 -3
  129. package/cjs/S135/rule.js +8 -7
  130. package/cjs/S138/config.js +3 -3
  131. package/cjs/S138/generated-meta.js +3 -3
  132. package/cjs/S138/index.js +3 -3
  133. package/cjs/S138/meta.js +3 -3
  134. package/cjs/S138/rule.js +12 -9
  135. package/cjs/S1439/generated-meta.js +3 -3
  136. package/cjs/S1439/index.js +3 -3
  137. package/cjs/S1439/meta.js +3 -3
  138. package/cjs/S1439/rule.js +5 -5
  139. package/cjs/S1444/generated-meta.js +3 -3
  140. package/cjs/S1444/index.js +3 -3
  141. package/cjs/S1444/meta.js +3 -3
  142. package/cjs/S1444/rule.js +5 -5
  143. package/cjs/S1451/config.js +3 -3
  144. package/cjs/S1451/generated-meta.js +3 -3
  145. package/cjs/S1451/index.js +3 -3
  146. package/cjs/S1451/meta.js +3 -3
  147. package/cjs/S1451/rule.js +5 -5
  148. package/cjs/S1472/generated-meta.js +3 -3
  149. package/cjs/S1472/index.js +3 -3
  150. package/cjs/S1472/meta.js +3 -3
  151. package/cjs/S1472/rule.js +5 -5
  152. package/cjs/S1479/config.js +3 -3
  153. package/cjs/S1479/generated-meta.js +3 -3
  154. package/cjs/S1479/index.js +3 -3
  155. package/cjs/S1479/meta.js +3 -3
  156. package/cjs/S1479/rule.js +5 -5
  157. package/cjs/S1481/generated-meta.js +3 -3
  158. package/cjs/S1481/index.js +3 -3
  159. package/cjs/S1481/meta.js +3 -3
  160. package/cjs/S1481/rule.js +5 -5
  161. package/cjs/S1488/generated-meta.js +3 -3
  162. package/cjs/S1488/index.js +3 -3
  163. package/cjs/S1488/meta.js +3 -3
  164. package/cjs/S1488/rule.js +14 -10
  165. package/cjs/S1515/generated-meta.js +3 -3
  166. package/cjs/S1515/index.js +3 -3
  167. package/cjs/S1515/meta.js +3 -3
  168. package/cjs/S1515/rule.js +13 -11
  169. package/cjs/S1523/generated-meta.js +3 -3
  170. package/cjs/S1523/index.js +3 -3
  171. package/cjs/S1523/meta.js +3 -3
  172. package/cjs/S1523/rule.js +8 -8
  173. package/cjs/S1526/generated-meta.js +3 -3
  174. package/cjs/S1526/index.js +3 -3
  175. package/cjs/S1526/meta.js +3 -3
  176. package/cjs/S1526/rule.js +8 -7
  177. package/cjs/S1527/generated-meta.js +3 -3
  178. package/cjs/S1527/index.js +3 -3
  179. package/cjs/S1527/meta.js +3 -3
  180. package/cjs/S1527/rule.js +5 -5
  181. package/cjs/S1528/generated-meta.js +3 -3
  182. package/cjs/S1528/index.js +3 -3
  183. package/cjs/S1528/meta.js +3 -3
  184. package/cjs/S1528/rule.js +2 -2
  185. package/cjs/S1529/generated-meta.js +3 -3
  186. package/cjs/S1529/index.js +3 -3
  187. package/cjs/S1529/meta.js +3 -3
  188. package/cjs/S1529/rule.js +7 -6
  189. package/cjs/S1530/generated-meta.js +3 -3
  190. package/cjs/S1530/index.js +3 -3
  191. package/cjs/S1530/meta.js +3 -3
  192. package/cjs/S1530/rule.js +8 -6
  193. package/cjs/S1533/generated-meta.js +3 -3
  194. package/cjs/S1533/index.js +3 -3
  195. package/cjs/S1533/meta.js +3 -3
  196. package/cjs/S1533/rule.js +5 -5
  197. package/cjs/S1535/generated-meta.js +3 -3
  198. package/cjs/S1535/index.js +3 -3
  199. package/cjs/S1535/meta.js +3 -3
  200. package/cjs/S1535/rule.js +5 -5
  201. package/cjs/S1541/config.js +3 -3
  202. package/cjs/S1541/generated-meta.js +3 -3
  203. package/cjs/S1541/index.js +3 -3
  204. package/cjs/S1541/meta.js +3 -3
  205. package/cjs/S1541/rule.js +13 -10
  206. package/cjs/S1607/generated-meta.js +3 -3
  207. package/cjs/S1607/index.js +3 -3
  208. package/cjs/S1607/meta.js +3 -3
  209. package/cjs/S1607/rule.js +25 -23
  210. package/cjs/S1764/generated-meta.js +3 -3
  211. package/cjs/S1764/index.js +3 -3
  212. package/cjs/S1764/meta.js +3 -3
  213. package/cjs/S1764/rule.js +13 -10
  214. package/cjs/S1821/generated-meta.js +3 -3
  215. package/cjs/S1821/index.js +3 -3
  216. package/cjs/S1821/meta.js +3 -3
  217. package/cjs/S1821/rule.js +5 -5
  218. package/cjs/S1848/generated-meta.js +3 -3
  219. package/cjs/S1848/index.js +3 -3
  220. package/cjs/S1848/meta.js +3 -3
  221. package/cjs/S1848/rule.js +13 -10
  222. package/cjs/S1854/generated-meta.js +3 -3
  223. package/cjs/S1854/index.js +3 -3
  224. package/cjs/S1854/meta.js +3 -3
  225. package/cjs/S1854/rule.js +21 -17
  226. package/cjs/S1862/generated-meta.js +3 -3
  227. package/cjs/S1862/index.js +3 -3
  228. package/cjs/S1862/meta.js +3 -3
  229. package/cjs/S1862/rule.js +13 -11
  230. package/cjs/S1871/generated-meta.js +3 -3
  231. package/cjs/S1871/index.js +3 -3
  232. package/cjs/S1871/meta.js +3 -3
  233. package/cjs/S1871/rule.js +24 -19
  234. package/cjs/S1874/generated-meta.js +3 -3
  235. package/cjs/S1874/index.js +3 -3
  236. package/cjs/S1874/meta.js +3 -3
  237. package/cjs/S1874/rule.js +7 -6
  238. package/cjs/S1940/generated-meta.js +3 -3
  239. package/cjs/S1940/index.js +3 -3
  240. package/cjs/S1940/meta.js +3 -3
  241. package/cjs/S1940/rule.js +5 -5
  242. package/cjs/S1994/generated-meta.js +3 -3
  243. package/cjs/S1994/index.js +3 -3
  244. package/cjs/S1994/meta.js +3 -3
  245. package/cjs/S1994/rule.js +13 -10
  246. package/cjs/S2004/config.js +3 -3
  247. package/cjs/S2004/generated-meta.js +3 -3
  248. package/cjs/S2004/index.js +3 -3
  249. package/cjs/S2004/meta.js +3 -3
  250. package/cjs/S2004/rule.js +12 -10
  251. package/cjs/S2068/config.js +3 -3
  252. package/cjs/S2068/generated-meta.js +3 -3
  253. package/cjs/S2068/index.js +3 -3
  254. package/cjs/S2068/meta.js +3 -3
  255. package/cjs/S2068/rule.js +102 -15
  256. package/cjs/S2077/generated-meta.js +3 -3
  257. package/cjs/S2077/index.js +3 -3
  258. package/cjs/S2077/meta.js +3 -3
  259. package/cjs/S2077/rule.js +45 -9
  260. package/cjs/S2092/generated-meta.js +4 -4
  261. package/cjs/S2092/index.js +3 -3
  262. package/cjs/S2092/meta.js +3 -3
  263. package/cjs/S2092/rule.js +5 -5
  264. package/cjs/S2123/generated-meta.js +3 -3
  265. package/cjs/S2123/index.js +3 -3
  266. package/cjs/S2123/meta.js +3 -3
  267. package/cjs/S2123/rule.js +5 -5
  268. package/cjs/S2137/generated-meta.js +3 -3
  269. package/cjs/S2137/index.js +3 -3
  270. package/cjs/S2137/meta.js +3 -3
  271. package/cjs/S2137/rule.js +5 -5
  272. package/cjs/S2138/generated-meta.js +3 -3
  273. package/cjs/S2138/index.js +3 -3
  274. package/cjs/S2138/meta.js +3 -3
  275. package/cjs/S2138/rule.js +7 -6
  276. package/cjs/S2187/generated-meta.js +3 -3
  277. package/cjs/S2187/index.js +3 -3
  278. package/cjs/S2187/meta.js +3 -3
  279. package/cjs/S2187/rule.js +5 -5
  280. package/cjs/S2201/generated-meta.js +3 -3
  281. package/cjs/S2201/index.js +3 -3
  282. package/cjs/S2201/meta.js +3 -3
  283. package/cjs/S2201/rule.js +11 -8
  284. package/cjs/S2208/generated-meta.js +5 -4
  285. package/cjs/S2208/index.js +3 -3
  286. package/cjs/S2208/meta.js +3 -3
  287. package/cjs/S2208/rule.js +5 -5
  288. package/cjs/S2234/generated-meta.js +3 -3
  289. package/cjs/S2234/index.js +3 -3
  290. package/cjs/S2234/meta.js +3 -3
  291. package/cjs/S2234/rule.js +163 -16
  292. package/cjs/S2245/generated-meta.js +3 -3
  293. package/cjs/S2245/index.js +3 -3
  294. package/cjs/S2245/meta.js +3 -3
  295. package/cjs/S2245/rule.js +7 -6
  296. package/cjs/S2251/generated-meta.js +3 -3
  297. package/cjs/S2251/index.js +3 -3
  298. package/cjs/S2251/meta.js +3 -3
  299. package/cjs/S2251/rule.js +8 -7
  300. package/cjs/S2255/generated-meta.js +3 -3
  301. package/cjs/S2255/index.js +3 -3
  302. package/cjs/S2255/meta.js +3 -3
  303. package/cjs/S2255/rule.js +9 -8
  304. package/cjs/S2259/generated-meta.js +3 -3
  305. package/cjs/S2259/index.js +3 -3
  306. package/cjs/S2259/meta.js +3 -3
  307. package/cjs/S2259/rule.js +17 -12
  308. package/cjs/S2301/generated-meta.js +3 -3
  309. package/cjs/S2301/index.js +3 -3
  310. package/cjs/S2301/meta.js +3 -3
  311. package/cjs/S2301/rule.js +24 -13
  312. package/cjs/S2310/generated-meta.js +3 -3
  313. package/cjs/S2310/index.js +3 -3
  314. package/cjs/S2310/meta.js +3 -3
  315. package/cjs/S2310/rule.js +17 -14
  316. package/cjs/S2392/generated-meta.js +3 -3
  317. package/cjs/S2392/index.js +3 -3
  318. package/cjs/S2392/meta.js +3 -3
  319. package/cjs/S2392/rule.js +51 -8
  320. package/cjs/S2424/generated-meta.js +3 -3
  321. package/cjs/S2424/index.js +3 -3
  322. package/cjs/S2424/meta.js +3 -3
  323. package/cjs/S2424/rule.js +5 -5
  324. package/cjs/S2428/generated-meta.js +3 -3
  325. package/cjs/S2428/index.js +3 -3
  326. package/cjs/S2428/meta.js +3 -3
  327. package/cjs/S2428/rule.js +11 -9
  328. package/cjs/S2486/generated-meta.js +3 -3
  329. package/cjs/S2486/index.js +3 -3
  330. package/cjs/S2486/meta.js +3 -3
  331. package/cjs/S2486/rule.js +7 -6
  332. package/cjs/S2589/generated-meta.js +3 -3
  333. package/cjs/S2589/index.js +3 -3
  334. package/cjs/S2589/meta.js +3 -3
  335. package/cjs/S2589/rule.js +15 -13
  336. package/cjs/S2598/generated-meta.js +3 -3
  337. package/cjs/S2598/index.js +3 -3
  338. package/cjs/S2598/meta.js +3 -3
  339. package/cjs/S2598/rule.js +20 -17
  340. package/cjs/S2612/generated-meta.js +4 -4
  341. package/cjs/S2612/index.js +3 -3
  342. package/cjs/S2612/meta.js +3 -3
  343. package/cjs/S2612/rule.js +11 -9
  344. package/cjs/S2639/generated-meta.js +3 -3
  345. package/cjs/S2639/index.js +3 -3
  346. package/cjs/S2639/meta.js +3 -3
  347. package/cjs/S2639/rule.js +5 -5
  348. package/cjs/S2681/generated-meta.js +3 -3
  349. package/cjs/S2681/index.js +3 -3
  350. package/cjs/S2681/meta.js +3 -3
  351. package/cjs/S2681/rule.js +5 -5
  352. package/cjs/S2692/generated-meta.js +3 -3
  353. package/cjs/S2692/index.js +3 -3
  354. package/cjs/S2692/meta.js +3 -3
  355. package/cjs/S2692/rule.js +9 -7
  356. package/cjs/S2699/generated-meta.js +3 -3
  357. package/cjs/S2699/index.js +3 -3
  358. package/cjs/S2699/meta.js +3 -3
  359. package/cjs/S2699/rule.js +40 -31
  360. package/cjs/S2703/generated-meta.js +3 -3
  361. package/cjs/S2703/index.js +3 -3
  362. package/cjs/S2703/meta.js +3 -3
  363. package/cjs/S2703/rule.js +5 -5
  364. package/cjs/S2737/generated-meta.js +3 -3
  365. package/cjs/S2737/index.js +3 -3
  366. package/cjs/S2737/meta.js +3 -3
  367. package/cjs/S2737/rule.js +9 -7
  368. package/cjs/S2755/generated-meta.js +3 -3
  369. package/cjs/S2755/index.js +3 -3
  370. package/cjs/S2755/meta.js +3 -3
  371. package/cjs/S2755/rule.js +12 -9
  372. package/cjs/S2757/generated-meta.js +3 -3
  373. package/cjs/S2757/index.js +3 -3
  374. package/cjs/S2757/meta.js +3 -3
  375. package/cjs/S2757/rule.js +5 -5
  376. package/cjs/S2817/generated-meta.js +3 -3
  377. package/cjs/S2817/index.js +3 -3
  378. package/cjs/S2817/meta.js +3 -3
  379. package/cjs/S2817/rule.js +13 -10
  380. package/cjs/S2819/generated-meta.js +3 -3
  381. package/cjs/S2819/index.js +3 -3
  382. package/cjs/S2819/meta.js +3 -3
  383. package/cjs/S2819/rule.js +19 -15
  384. package/cjs/S2870/generated-meta.js +3 -3
  385. package/cjs/S2870/index.js +3 -3
  386. package/cjs/S2870/meta.js +3 -3
  387. package/cjs/S2870/rule.js +11 -8
  388. package/cjs/S2871/generated-meta.js +3 -3
  389. package/cjs/S2871/index.js +3 -3
  390. package/cjs/S2871/meta.js +3 -3
  391. package/cjs/S2871/rule.js +15 -12
  392. package/cjs/S2970/generated-meta.js +3 -3
  393. package/cjs/S2970/index.js +3 -3
  394. package/cjs/S2970/meta.js +3 -3
  395. package/cjs/S2970/rule.js +12 -11
  396. package/cjs/S2990/generated-meta.js +3 -3
  397. package/cjs/S2990/index.js +3 -3
  398. package/cjs/S2990/meta.js +3 -3
  399. package/cjs/S2990/rule.js +5 -5
  400. package/cjs/S2999/config.js +3 -3
  401. package/cjs/S2999/generated-meta.js +3 -3
  402. package/cjs/S2999/index.js +3 -3
  403. package/cjs/S2999/meta.js +3 -3
  404. package/cjs/S2999/rule.js +13 -10
  405. package/cjs/S3001/generated-meta.js +3 -3
  406. package/cjs/S3001/index.js +3 -3
  407. package/cjs/S3001/meta.js +3 -3
  408. package/cjs/S3001/rule.js +5 -5
  409. package/cjs/S3003/generated-meta.js +3 -3
  410. package/cjs/S3003/index.js +3 -3
  411. package/cjs/S3003/meta.js +3 -3
  412. package/cjs/S3003/rule.js +13 -10
  413. package/cjs/S3317/generated-meta.js +5 -4
  414. package/cjs/S3317/index.js +3 -3
  415. package/cjs/S3317/meta.js +3 -3
  416. package/cjs/S3317/rule.js +7 -6
  417. package/cjs/S3330/generated-meta.js +3 -3
  418. package/cjs/S3330/index.js +3 -3
  419. package/cjs/S3330/meta.js +3 -3
  420. package/cjs/S3330/rule.js +5 -5
  421. package/cjs/S3358/generated-meta.js +3 -3
  422. package/cjs/S3358/index.js +3 -3
  423. package/cjs/S3358/meta.js +3 -3
  424. package/cjs/S3358/rule.js +5 -5
  425. package/cjs/S3402/generated-meta.js +3 -3
  426. package/cjs/S3402/index.js +3 -3
  427. package/cjs/S3402/meta.js +3 -3
  428. package/cjs/S3402/rule.js +17 -13
  429. package/cjs/S3403/generated-meta.js +3 -3
  430. package/cjs/S3403/index.js +3 -3
  431. package/cjs/S3403/meta.js +3 -3
  432. package/cjs/S3403/rule.js +13 -10
  433. package/cjs/S3415/generated-meta.js +3 -3
  434. package/cjs/S3415/index.js +3 -3
  435. package/cjs/S3415/meta.js +3 -3
  436. package/cjs/S3415/rule.js +19 -16
  437. package/cjs/S3499/generated-meta.js +5 -4
  438. package/cjs/S3499/index.js +3 -3
  439. package/cjs/S3499/meta.js +3 -3
  440. package/cjs/S3499/rule.js +8 -7
  441. package/cjs/S3500/generated-meta.js +5 -4
  442. package/cjs/S3500/index.js +3 -3
  443. package/cjs/S3500/meta.js +3 -3
  444. package/cjs/S3500/rule.js +8 -7
  445. package/cjs/S3513/generated-meta.js +5 -4
  446. package/cjs/S3513/index.js +3 -3
  447. package/cjs/S3513/meta.js +3 -3
  448. package/cjs/S3513/rule.js +8 -7
  449. package/cjs/S3514/generated-meta.js +5 -4
  450. package/cjs/S3514/index.js +3 -3
  451. package/cjs/S3514/meta.js +3 -3
  452. package/cjs/S3514/rule.js +13 -10
  453. package/cjs/S3516/generated-meta.js +3 -3
  454. package/cjs/S3516/index.js +3 -3
  455. package/cjs/S3516/meta.js +3 -3
  456. package/cjs/S3516/rule.js +112 -10
  457. package/cjs/S3524/config.js +3 -3
  458. package/cjs/S3524/generated-meta.js +5 -4
  459. package/cjs/S3524/index.js +3 -3
  460. package/cjs/S3524/meta.js +3 -3
  461. package/cjs/S3524/rule.js +5 -5
  462. package/cjs/S3525/generated-meta.js +5 -4
  463. package/cjs/S3525/index.js +3 -3
  464. package/cjs/S3525/meta.js +3 -3
  465. package/cjs/S3525/rule.js +9 -7
  466. package/cjs/S3531/generated-meta.js +5 -4
  467. package/cjs/S3531/index.js +3 -3
  468. package/cjs/S3531/meta.js +3 -3
  469. package/cjs/S3531/rule.js +8 -6
  470. package/cjs/S3533/generated-meta.js +5 -4
  471. package/cjs/S3533/index.js +3 -3
  472. package/cjs/S3533/meta.js +3 -3
  473. package/cjs/S3533/rule.js +11 -10
  474. package/cjs/S3579/generated-meta.js +3 -3
  475. package/cjs/S3579/index.js +3 -3
  476. package/cjs/S3579/meta.js +3 -3
  477. package/cjs/S3579/rule.js +9 -7
  478. package/cjs/S3616/generated-meta.js +3 -3
  479. package/cjs/S3616/index.js +3 -3
  480. package/cjs/S3616/meta.js +3 -3
  481. package/cjs/S3616/rule.js +9 -7
  482. package/cjs/S3626/generated-meta.js +3 -3
  483. package/cjs/S3626/index.js +3 -3
  484. package/cjs/S3626/meta.js +3 -3
  485. package/cjs/S3626/rule.js +7 -6
  486. package/cjs/S3686/generated-meta.js +3 -3
  487. package/cjs/S3686/index.js +3 -3
  488. package/cjs/S3686/meta.js +3 -3
  489. package/cjs/S3686/rule.js +10 -8
  490. package/cjs/S3699/generated-meta.js +3 -3
  491. package/cjs/S3699/index.js +3 -3
  492. package/cjs/S3699/meta.js +3 -3
  493. package/cjs/S3699/rule.js +8 -7
  494. package/cjs/S3735/generated-meta.js +3 -3
  495. package/cjs/S3735/index.js +3 -3
  496. package/cjs/S3735/meta.js +3 -3
  497. package/cjs/S3735/rule.js +11 -8
  498. package/cjs/S3757/generated-meta.js +3 -3
  499. package/cjs/S3757/index.js +3 -3
  500. package/cjs/S3757/meta.js +3 -3
  501. package/cjs/S3757/rule.js +11 -9
  502. package/cjs/S3758/generated-meta.js +3 -3
  503. package/cjs/S3758/index.js +3 -3
  504. package/cjs/S3758/meta.js +3 -3
  505. package/cjs/S3758/rule.js +12 -10
  506. package/cjs/S3760/generated-meta.js +3 -3
  507. package/cjs/S3760/index.js +3 -3
  508. package/cjs/S3760/meta.js +3 -3
  509. package/cjs/S3760/rule.js +27 -24
  510. package/cjs/S3776/config.js +3 -3
  511. package/cjs/S3776/generated-meta.js +3 -3
  512. package/cjs/S3776/index.js +3 -3
  513. package/cjs/S3776/meta.js +12 -4
  514. package/cjs/S3776/rule.js +39 -38
  515. package/cjs/S3782/generated-meta.js +3 -3
  516. package/cjs/S3782/index.js +3 -3
  517. package/cjs/S3782/meta.js +3 -3
  518. package/cjs/S3782/rule.js +10 -8
  519. package/cjs/S3785/generated-meta.js +3 -3
  520. package/cjs/S3785/index.js +3 -3
  521. package/cjs/S3785/meta.js +3 -3
  522. package/cjs/S3785/rule.js +12 -9
  523. package/cjs/S3796/generated-meta.js +3 -3
  524. package/cjs/S3796/index.js +3 -3
  525. package/cjs/S3796/meta.js +3 -3
  526. package/cjs/S3796/rule.js +15 -11
  527. package/cjs/S3798/generated-meta.js +3 -3
  528. package/cjs/S3798/index.js +3 -3
  529. package/cjs/S3798/meta.js +3 -3
  530. package/cjs/S3798/rule.js +4 -3
  531. package/cjs/S3800/generated-meta.js +3 -3
  532. package/cjs/S3800/index.js +3 -3
  533. package/cjs/S3800/meta.js +3 -3
  534. package/cjs/S3800/rule.js +19 -14
  535. package/cjs/S3801/generated-meta.js +3 -3
  536. package/cjs/S3801/index.js +3 -3
  537. package/cjs/S3801/meta.js +3 -3
  538. package/cjs/S3801/rule.js +18 -14
  539. package/cjs/S3827/generated-meta.js +3 -3
  540. package/cjs/S3827/index.js +3 -3
  541. package/cjs/S3827/meta.js +3 -3
  542. package/cjs/S3827/rule.js +9 -6
  543. package/cjs/S3923/generated-meta.js +3 -3
  544. package/cjs/S3923/index.js +3 -3
  545. package/cjs/S3923/meta.js +3 -3
  546. package/cjs/S3923/rule.js +12 -9
  547. package/cjs/S3972/generated-meta.js +3 -3
  548. package/cjs/S3972/index.js +3 -3
  549. package/cjs/S3972/meta.js +3 -3
  550. package/cjs/S3972/rule.js +8 -7
  551. package/cjs/S3973/generated-meta.js +3 -3
  552. package/cjs/S3973/index.js +3 -3
  553. package/cjs/S3973/meta.js +3 -3
  554. package/cjs/S3973/rule.js +10 -8
  555. package/cjs/S3981/generated-meta.js +3 -3
  556. package/cjs/S3981/index.js +3 -3
  557. package/cjs/S3981/meta.js +3 -3
  558. package/cjs/S3981/rule.js +7 -6
  559. package/cjs/S3984/generated-meta.js +3 -3
  560. package/cjs/S3984/index.js +3 -3
  561. package/cjs/S3984/meta.js +3 -3
  562. package/cjs/S3984/rule.js +7 -6
  563. package/cjs/S4030/generated-meta.js +3 -3
  564. package/cjs/S4030/index.js +3 -3
  565. package/cjs/S4030/meta.js +3 -3
  566. package/cjs/S4030/rule.js +15 -12
  567. package/cjs/S4036/generated-meta.js +3 -3
  568. package/cjs/S4036/index.js +3 -3
  569. package/cjs/S4036/meta.js +3 -3
  570. package/cjs/S4036/rule.js +11 -9
  571. package/cjs/S4043/generated-meta.js +3 -3
  572. package/cjs/S4043/index.js +3 -3
  573. package/cjs/S4043/meta.js +3 -3
  574. package/cjs/S4043/rule.js +15 -11
  575. package/cjs/S4139/generated-meta.js +3 -3
  576. package/cjs/S4139/index.js +3 -3
  577. package/cjs/S4139/meta.js +3 -3
  578. package/cjs/S4139/rule.js +10 -8
  579. package/cjs/S4143/generated-meta.js +3 -3
  580. package/cjs/S4143/index.js +3 -3
  581. package/cjs/S4143/meta.js +3 -3
  582. package/cjs/S4143/rule.js +15 -12
  583. package/cjs/S4144/config.js +3 -3
  584. package/cjs/S4144/generated-meta.js +3 -3
  585. package/cjs/S4144/index.js +3 -3
  586. package/cjs/S4144/meta.js +3 -3
  587. package/cjs/S4144/rule.js +15 -12
  588. package/cjs/S4158/generated-meta.js +3 -3
  589. package/cjs/S4158/index.js +3 -3
  590. package/cjs/S4158/meta.js +3 -3
  591. package/cjs/S4158/rule.js +15 -12
  592. package/cjs/S4165/generated-meta.js +3 -3
  593. package/cjs/S4165/index.js +3 -3
  594. package/cjs/S4165/meta.js +3 -3
  595. package/cjs/S4165/rule.js +17 -15
  596. package/cjs/S4322/generated-meta.js +3 -3
  597. package/cjs/S4322/index.js +3 -3
  598. package/cjs/S4322/meta.js +3 -3
  599. package/cjs/S4322/rule.js +11 -8
  600. package/cjs/S4323/generated-meta.js +3 -3
  601. package/cjs/S4323/index.js +3 -3
  602. package/cjs/S4323/meta.js +3 -3
  603. package/cjs/S4323/rule.js +7 -6
  604. package/cjs/S4324/generated-meta.js +3 -3
  605. package/cjs/S4324/index.js +3 -3
  606. package/cjs/S4324/meta.js +3 -3
  607. package/cjs/S4324/rule.js +10 -8
  608. package/cjs/S4328/config.js +3 -3
  609. package/cjs/S4328/generated-meta.js +3 -3
  610. package/cjs/S4328/index.js +3 -3
  611. package/cjs/S4328/meta.js +3 -3
  612. package/cjs/S4328/rule.js +5 -5
  613. package/cjs/S4335/generated-meta.js +3 -3
  614. package/cjs/S4335/index.js +3 -3
  615. package/cjs/S4335/meta.js +3 -3
  616. package/cjs/S4335/rule.js +9 -7
  617. package/cjs/S4423/generated-meta.js +3 -3
  618. package/cjs/S4423/index.js +3 -3
  619. package/cjs/S4423/meta.js +3 -3
  620. package/cjs/S4423/rule.aws.js +3 -3
  621. package/cjs/S4423/rule.js +7 -6
  622. package/cjs/S4423/rule.lib.js +11 -10
  623. package/cjs/S4426/generated-meta.js +3 -3
  624. package/cjs/S4426/index.js +3 -3
  625. package/cjs/S4426/meta.js +3 -3
  626. package/cjs/S4426/rule.js +14 -13
  627. package/cjs/S4502/generated-meta.js +3 -3
  628. package/cjs/S4502/index.js +3 -3
  629. package/cjs/S4502/meta.js +3 -3
  630. package/cjs/S4502/rule.js +19 -16
  631. package/cjs/S4507/generated-meta.js +3 -3
  632. package/cjs/S4507/index.js +3 -3
  633. package/cjs/S4507/meta.js +3 -3
  634. package/cjs/S4507/rule.js +11 -9
  635. package/cjs/S4524/generated-meta.js +3 -3
  636. package/cjs/S4524/index.js +3 -3
  637. package/cjs/S4524/meta.js +3 -3
  638. package/cjs/S4524/rule.js +5 -5
  639. package/cjs/S4619/generated-meta.js +3 -3
  640. package/cjs/S4619/index.js +3 -3
  641. package/cjs/S4619/meta.js +3 -3
  642. package/cjs/S4619/rule.js +9 -7
  643. package/cjs/S4621/generated-meta.js +3 -3
  644. package/cjs/S4621/index.js +3 -3
  645. package/cjs/S4621/meta.js +3 -3
  646. package/cjs/S4621/rule.js +8 -7
  647. package/cjs/S4622/config.js +3 -3
  648. package/cjs/S4622/generated-meta.js +3 -3
  649. package/cjs/S4622/index.js +3 -3
  650. package/cjs/S4622/meta.js +3 -3
  651. package/cjs/S4622/rule.js +8 -6
  652. package/cjs/S4623/generated-meta.js +3 -3
  653. package/cjs/S4623/index.js +3 -3
  654. package/cjs/S4623/meta.js +3 -3
  655. package/cjs/S4623/rule.js +11 -8
  656. package/cjs/S4624/generated-meta.js +5 -4
  657. package/cjs/S4624/index.js +3 -3
  658. package/cjs/S4624/meta.js +3 -3
  659. package/cjs/S4624/rule.js +9 -7
  660. package/cjs/S4634/generated-meta.js +5 -4
  661. package/cjs/S4634/index.js +3 -3
  662. package/cjs/S4634/meta.js +3 -3
  663. package/cjs/S4634/rule.js +7 -6
  664. package/cjs/S4721/generated-meta.js +3 -3
  665. package/cjs/S4721/index.js +3 -3
  666. package/cjs/S4721/meta.js +3 -3
  667. package/cjs/S4721/rule.js +10 -8
  668. package/cjs/S4782/generated-meta.js +3 -3
  669. package/cjs/S4782/index.js +3 -3
  670. package/cjs/S4782/meta.js +3 -3
  671. package/cjs/S4782/rule.js +10 -8
  672. package/cjs/S4784/generated-meta.js +3 -3
  673. package/cjs/S4784/index.js +3 -3
  674. package/cjs/S4784/meta.js +3 -3
  675. package/cjs/S4784/rule.js +8 -7
  676. package/cjs/S4787/generated-meta.js +3 -3
  677. package/cjs/S4787/index.js +3 -3
  678. package/cjs/S4787/meta.js +3 -3
  679. package/cjs/S4787/rule.js +12 -10
  680. package/cjs/S4790/generated-meta.js +3 -3
  681. package/cjs/S4790/index.js +3 -3
  682. package/cjs/S4790/meta.js +3 -3
  683. package/cjs/S4790/rule.js +10 -8
  684. package/cjs/S4798/generated-meta.js +3 -3
  685. package/cjs/S4798/index.js +3 -3
  686. package/cjs/S4798/meta.js +3 -3
  687. package/cjs/S4798/rule.js +5 -5
  688. package/cjs/S4817/generated-meta.js +3 -3
  689. package/cjs/S4817/index.js +3 -3
  690. package/cjs/S4817/meta.js +3 -3
  691. package/cjs/S4817/rule.js +13 -11
  692. package/cjs/S4818/generated-meta.js +3 -3
  693. package/cjs/S4818/index.js +3 -3
  694. package/cjs/S4818/meta.js +3 -3
  695. package/cjs/S4818/rule.js +7 -6
  696. package/cjs/S4822/generated-meta.js +5 -4
  697. package/cjs/S4822/index.js +3 -3
  698. package/cjs/S4822/meta.js +3 -3
  699. package/cjs/S4822/rule.js +16 -12
  700. package/cjs/S4823/generated-meta.js +3 -3
  701. package/cjs/S4823/index.js +3 -3
  702. package/cjs/S4823/meta.js +3 -3
  703. package/cjs/S4823/rule.js +7 -6
  704. package/cjs/S4829/generated-meta.js +3 -3
  705. package/cjs/S4829/index.js +3 -3
  706. package/cjs/S4829/meta.js +3 -3
  707. package/cjs/S4829/rule.js +7 -6
  708. package/cjs/S4830/generated-meta.js +3 -3
  709. package/cjs/S4830/index.js +3 -3
  710. package/cjs/S4830/meta.js +3 -3
  711. package/cjs/S4830/rule.js +14 -11
  712. package/cjs/S5042/generated-meta.js +7 -7
  713. package/cjs/S5042/index.js +3 -3
  714. package/cjs/S5042/meta.js +3 -3
  715. package/cjs/S5042/rule.js +12 -10
  716. package/cjs/S5122/generated-meta.js +4 -4
  717. package/cjs/S5122/index.js +3 -3
  718. package/cjs/S5122/meta.js +3 -3
  719. package/cjs/S5122/rule.js +43 -39
  720. package/cjs/S5148/generated-meta.js +4 -4
  721. package/cjs/S5148/index.js +3 -3
  722. package/cjs/S5148/meta.js +3 -3
  723. package/cjs/S5148/rule.js +12 -11
  724. package/cjs/S5247/generated-meta.js +3 -3
  725. package/cjs/S5247/index.js +3 -3
  726. package/cjs/S5247/meta.js +3 -3
  727. package/cjs/S5247/rule.js +25 -21
  728. package/cjs/S5256/generated-meta.js +3 -3
  729. package/cjs/S5256/index.js +3 -3
  730. package/cjs/S5256/meta.js +3 -3
  731. package/cjs/S5256/rule.js +8 -7
  732. package/cjs/S5257/generated-meta.js +3 -3
  733. package/cjs/S5257/index.js +3 -3
  734. package/cjs/S5257/meta.js +3 -3
  735. package/cjs/S5257/rule.js +7 -6
  736. package/cjs/S5260/generated-meta.js +3 -3
  737. package/cjs/S5260/index.js +3 -3
  738. package/cjs/S5260/meta.js +3 -3
  739. package/cjs/S5260/rule.js +7 -6
  740. package/cjs/S5264/generated-meta.js +3 -3
  741. package/cjs/S5264/index.js +3 -3
  742. package/cjs/S5264/meta.js +3 -3
  743. package/cjs/S5264/rule.js +7 -6
  744. package/cjs/S5332/generated-meta.js +3 -3
  745. package/cjs/S5332/index.js +3 -3
  746. package/cjs/S5332/meta.js +3 -3
  747. package/cjs/S5332/rule.aws.js +3 -3
  748. package/cjs/S5332/rule.js +7 -6
  749. package/cjs/S5332/rule.lib.js +22 -20
  750. package/cjs/S5443/generated-meta.js +4 -4
  751. package/cjs/S5443/index.js +3 -3
  752. package/cjs/S5443/meta.js +3 -3
  753. package/cjs/S5443/rule.js +5 -5
  754. package/cjs/S5527/generated-meta.js +3 -3
  755. package/cjs/S5527/index.js +3 -3
  756. package/cjs/S5527/meta.js +3 -3
  757. package/cjs/S5527/rule.js +21 -17
  758. package/cjs/S5542/generated-meta.js +3 -3
  759. package/cjs/S5542/index.js +3 -3
  760. package/cjs/S5542/meta.js +3 -3
  761. package/cjs/S5542/rule.js +9 -7
  762. package/cjs/S5547/generated-meta.js +3 -3
  763. package/cjs/S5547/index.js +3 -3
  764. package/cjs/S5547/meta.js +3 -3
  765. package/cjs/S5547/rule.js +9 -7
  766. package/cjs/S5604/config.js +3 -3
  767. package/cjs/S5604/generated-meta.js +3 -3
  768. package/cjs/S5604/index.js +3 -3
  769. package/cjs/S5604/meta.js +3 -3
  770. package/cjs/S5604/rule.js +18 -17
  771. package/cjs/S5659/generated-meta.js +3 -3
  772. package/cjs/S5659/index.js +3 -3
  773. package/cjs/S5659/meta.js +3 -3
  774. package/cjs/S5659/rule.js +18 -15
  775. package/cjs/S5689/generated-meta.js +4 -4
  776. package/cjs/S5689/index.js +3 -3
  777. package/cjs/S5689/meta.js +3 -3
  778. package/cjs/S5689/rule.js +14 -11
  779. package/cjs/S5691/generated-meta.js +3 -3
  780. package/cjs/S5691/index.js +3 -3
  781. package/cjs/S5691/meta.js +3 -3
  782. package/cjs/S5691/rule.js +10 -8
  783. package/cjs/S5693/config.js +3 -3
  784. package/cjs/S5693/generated-meta.js +4 -4
  785. package/cjs/S5693/index.js +3 -3
  786. package/cjs/S5693/meta.js +3 -3
  787. package/cjs/S5693/rule.js +17 -15
  788. package/cjs/S5725/generated-meta.js +3 -3
  789. package/cjs/S5725/index.js +3 -3
  790. package/cjs/S5725/meta.js +3 -3
  791. package/cjs/S5725/rule.js +12 -9
  792. package/cjs/S5728/generated-meta.js +3 -3
  793. package/cjs/S5728/index.js +3 -3
  794. package/cjs/S5728/meta.js +3 -3
  795. package/cjs/S5728/rule.js +10 -7
  796. package/cjs/S5730/generated-meta.js +3 -3
  797. package/cjs/S5730/index.js +3 -3
  798. package/cjs/S5730/meta.js +3 -3
  799. package/cjs/S5730/rule.js +12 -9
  800. package/cjs/S5732/generated-meta.js +3 -3
  801. package/cjs/S5732/index.js +3 -3
  802. package/cjs/S5732/meta.js +3 -3
  803. package/cjs/S5732/rule.js +11 -8
  804. package/cjs/S5734/generated-meta.js +3 -3
  805. package/cjs/S5734/index.js +3 -3
  806. package/cjs/S5734/meta.js +3 -3
  807. package/cjs/S5734/rule.js +10 -7
  808. package/cjs/S5736/generated-meta.js +3 -3
  809. package/cjs/S5736/index.js +3 -3
  810. package/cjs/S5736/meta.js +3 -3
  811. package/cjs/S5736/rule.js +11 -8
  812. package/cjs/S5739/generated-meta.js +3 -3
  813. package/cjs/S5739/index.js +3 -3
  814. package/cjs/S5739/meta.js +3 -3
  815. package/cjs/S5739/rule.js +14 -11
  816. package/cjs/S5742/generated-meta.js +3 -3
  817. package/cjs/S5742/index.js +3 -3
  818. package/cjs/S5742/meta.js +3 -3
  819. package/cjs/S5742/rule.js +10 -7
  820. package/cjs/S5743/generated-meta.js +3 -3
  821. package/cjs/S5743/index.js +3 -3
  822. package/cjs/S5743/meta.js +3 -3
  823. package/cjs/S5743/rule.js +11 -9
  824. package/cjs/S5757/generated-meta.js +3 -3
  825. package/cjs/S5757/index.js +3 -3
  826. package/cjs/S5757/meta.js +3 -3
  827. package/cjs/S5757/rule.js +16 -13
  828. package/cjs/S5759/generated-meta.js +3 -3
  829. package/cjs/S5759/index.js +3 -3
  830. package/cjs/S5759/meta.js +3 -3
  831. package/cjs/S5759/rule.js +13 -10
  832. package/cjs/S5842/generated-meta.js +3 -3
  833. package/cjs/S5842/index.js +3 -3
  834. package/cjs/S5842/meta.js +3 -3
  835. package/cjs/S5842/rule.js +5 -5
  836. package/cjs/S5843/config.js +3 -3
  837. package/cjs/S5843/generated-meta.js +3 -3
  838. package/cjs/S5843/index.js +3 -3
  839. package/cjs/S5843/meta.js +3 -3
  840. package/cjs/S5843/rule.js +25 -22
  841. package/cjs/S5850/generated-meta.js +3 -3
  842. package/cjs/S5850/index.js +3 -3
  843. package/cjs/S5850/meta.js +3 -3
  844. package/cjs/S5850/rule.js +7 -6
  845. package/cjs/S5852/generated-meta.js +3 -3
  846. package/cjs/S5852/index.js +3 -3
  847. package/cjs/S5852/meta.js +3 -3
  848. package/cjs/S5852/rule.js +5 -5
  849. package/cjs/S5856/generated-meta.js +3 -3
  850. package/cjs/S5856/index.js +3 -3
  851. package/cjs/S5856/meta.js +3 -3
  852. package/cjs/S5856/rule.js +13 -10
  853. package/cjs/S5860/generated-meta.js +3 -3
  854. package/cjs/S5860/index.js +3 -3
  855. package/cjs/S5860/meta.js +3 -3
  856. package/cjs/S5860/rule.js +33 -29
  857. package/cjs/S5863/generated-meta.js +3 -3
  858. package/cjs/S5863/index.js +3 -3
  859. package/cjs/S5863/meta.js +3 -3
  860. package/cjs/S5863/rule.js +18 -14
  861. package/cjs/S5867/generated-meta.js +3 -3
  862. package/cjs/S5867/index.js +3 -3
  863. package/cjs/S5867/meta.js +3 -3
  864. package/cjs/S5867/rule.js +11 -10
  865. package/cjs/S5868/generated-meta.js +3 -3
  866. package/cjs/S5868/index.js +3 -3
  867. package/cjs/S5868/meta.js +3 -3
  868. package/cjs/S5868/rule.js +10 -8
  869. package/cjs/S5869/generated-meta.js +3 -3
  870. package/cjs/S5869/index.js +3 -3
  871. package/cjs/S5869/meta.js +3 -3
  872. package/cjs/S5869/rule.js +9 -8
  873. package/cjs/S5876/generated-meta.js +3 -3
  874. package/cjs/S5876/index.js +3 -3
  875. package/cjs/S5876/meta.js +3 -3
  876. package/cjs/S5876/rule.js +15 -11
  877. package/cjs/S5958/generated-meta.js +3 -3
  878. package/cjs/S5958/index.js +3 -3
  879. package/cjs/S5958/meta.js +3 -3
  880. package/cjs/S5958/rule.js +15 -12
  881. package/cjs/S5973/generated-meta.js +3 -3
  882. package/cjs/S5973/index.js +3 -3
  883. package/cjs/S5973/meta.js +3 -3
  884. package/cjs/S5973/rule.js +13 -10
  885. package/cjs/S6019/generated-meta.js +3 -3
  886. package/cjs/S6019/index.js +3 -3
  887. package/cjs/S6019/meta.js +3 -3
  888. package/cjs/S6019/rule.js +7 -6
  889. package/cjs/S6035/generated-meta.js +3 -3
  890. package/cjs/S6035/index.js +3 -3
  891. package/cjs/S6035/meta.js +3 -3
  892. package/cjs/S6035/rule.js +5 -5
  893. package/cjs/S6079/generated-meta.js +3 -3
  894. package/cjs/S6079/index.js +3 -3
  895. package/cjs/S6079/meta.js +3 -3
  896. package/cjs/S6079/rule.js +12 -9
  897. package/cjs/S6080/generated-meta.js +3 -3
  898. package/cjs/S6080/index.js +3 -3
  899. package/cjs/S6080/meta.js +3 -3
  900. package/cjs/S6080/rule.js +16 -13
  901. package/cjs/S6092/generated-meta.js +3 -3
  902. package/cjs/S6092/index.js +3 -3
  903. package/cjs/S6092/meta.js +3 -3
  904. package/cjs/S6092/rule.js +12 -10
  905. package/cjs/S6245/generated-meta.js +3 -3
  906. package/cjs/S6245/index.js +3 -3
  907. package/cjs/S6245/meta.js +3 -3
  908. package/cjs/S6245/rule.js +17 -12
  909. package/cjs/S6249/generated-meta.js +3 -3
  910. package/cjs/S6249/index.js +3 -3
  911. package/cjs/S6249/meta.js +3 -3
  912. package/cjs/S6249/rule.js +10 -8
  913. package/cjs/S6252/generated-meta.js +3 -3
  914. package/cjs/S6252/index.js +3 -3
  915. package/cjs/S6252/meta.js +3 -3
  916. package/cjs/S6252/rule.js +15 -11
  917. package/cjs/S6265/generated-meta.js +4 -4
  918. package/cjs/S6265/index.js +3 -3
  919. package/cjs/S6265/meta.js +3 -3
  920. package/cjs/S6265/rule.js +30 -23
  921. package/cjs/S6268/generated-meta.js +3 -3
  922. package/cjs/S6268/index.js +3 -3
  923. package/cjs/S6268/meta.js +3 -3
  924. package/cjs/S6268/rule.js +8 -7
  925. package/cjs/S6270/generated-meta.js +4 -4
  926. package/cjs/S6270/index.js +3 -3
  927. package/cjs/S6270/meta.js +3 -3
  928. package/cjs/S6270/rule.js +15 -12
  929. package/cjs/S6275/generated-meta.js +4 -4
  930. package/cjs/S6275/index.js +3 -3
  931. package/cjs/S6275/meta.js +3 -3
  932. package/cjs/S6275/rule.js +5 -5
  933. package/cjs/S6281/generated-meta.js +3 -3
  934. package/cjs/S6281/index.js +3 -3
  935. package/cjs/S6281/meta.js +3 -3
  936. package/cjs/S6281/rule.js +25 -20
  937. package/cjs/S6299/generated-meta.js +3 -3
  938. package/cjs/S6299/index.js +3 -3
  939. package/cjs/S6299/meta.js +3 -3
  940. package/cjs/S6299/rule.js +5 -5
  941. package/cjs/S6302/generated-meta.js +4 -4
  942. package/cjs/S6302/index.js +3 -3
  943. package/cjs/S6302/meta.js +3 -3
  944. package/cjs/S6302/rule.js +9 -8
  945. package/cjs/S6303/generated-meta.js +4 -4
  946. package/cjs/S6303/index.js +3 -3
  947. package/cjs/S6303/meta.js +3 -3
  948. package/cjs/S6303/rule.js +15 -13
  949. package/cjs/S6304/generated-meta.js +3 -3
  950. package/cjs/S6304/index.js +3 -3
  951. package/cjs/S6304/meta.js +3 -3
  952. package/cjs/S6304/rule.js +9 -8
  953. package/cjs/S6308/generated-meta.js +4 -4
  954. package/cjs/S6308/index.js +3 -3
  955. package/cjs/S6308/meta.js +3 -3
  956. package/cjs/S6308/rule.js +10 -8
  957. package/cjs/S6317/generated-meta.js +3 -3
  958. package/cjs/S6317/index.js +3 -3
  959. package/cjs/S6317/meta.js +3 -3
  960. package/cjs/S6317/rule.js +8 -7
  961. package/cjs/S6319/generated-meta.js +3 -3
  962. package/cjs/S6319/index.js +3 -3
  963. package/cjs/S6319/meta.js +3 -3
  964. package/cjs/S6319/rule.js +5 -5
  965. package/cjs/S6321/generated-meta.js +3 -3
  966. package/cjs/S6321/index.js +3 -3
  967. package/cjs/S6321/meta.js +3 -3
  968. package/cjs/S6321/rule.js +28 -26
  969. package/cjs/S6323/generated-meta.js +3 -3
  970. package/cjs/S6323/index.js +3 -3
  971. package/cjs/S6323/meta.js +3 -3
  972. package/cjs/S6323/rule.js +7 -6
  973. package/cjs/S6324/generated-meta.js +3 -3
  974. package/cjs/S6324/index.js +3 -3
  975. package/cjs/S6324/meta.js +3 -3
  976. package/cjs/S6324/rule.js +5 -5
  977. package/cjs/S6326/generated-meta.js +3 -3
  978. package/cjs/S6326/index.js +3 -3
  979. package/cjs/S6326/meta.js +3 -3
  980. package/cjs/S6326/rule.js +5 -5
  981. package/cjs/S6327/generated-meta.js +3 -3
  982. package/cjs/S6327/index.js +3 -3
  983. package/cjs/S6327/meta.js +3 -3
  984. package/cjs/S6327/rule.js +5 -5
  985. package/cjs/S6328/generated-meta.js +3 -3
  986. package/cjs/S6328/index.js +3 -3
  987. package/cjs/S6328/meta.js +3 -3
  988. package/cjs/S6328/rule.js +7 -6
  989. package/cjs/S6329/generated-meta.js +3 -3
  990. package/cjs/S6329/index.js +3 -3
  991. package/cjs/S6329/meta.js +3 -3
  992. package/cjs/S6329/rule.js +10 -8
  993. package/cjs/S6330/generated-meta.js +4 -4
  994. package/cjs/S6330/index.js +3 -3
  995. package/cjs/S6330/meta.js +3 -3
  996. package/cjs/S6330/rule.js +5 -5
  997. package/cjs/S6331/generated-meta.js +3 -3
  998. package/cjs/S6331/index.js +3 -3
  999. package/cjs/S6331/meta.js +3 -3
  1000. package/cjs/S6331/rule.js +3 -3
  1001. package/cjs/S6332/generated-meta.js +3 -3
  1002. package/cjs/S6332/index.js +3 -3
  1003. package/cjs/S6332/meta.js +3 -3
  1004. package/cjs/S6332/rule.js +5 -5
  1005. package/cjs/S6333/generated-meta.js +3 -3
  1006. package/cjs/S6333/index.js +3 -3
  1007. package/cjs/S6333/meta.js +3 -3
  1008. package/cjs/S6333/rule.js +11 -9
  1009. package/cjs/S6351/generated-meta.js +3 -3
  1010. package/cjs/S6351/index.js +3 -3
  1011. package/cjs/S6351/meta.js +3 -3
  1012. package/cjs/S6351/rule.js +25 -22
  1013. package/cjs/S6353/generated-meta.js +3 -3
  1014. package/cjs/S6353/index.js +3 -3
  1015. package/cjs/S6353/meta.js +3 -3
  1016. package/cjs/S6353/rule.js +5 -5
  1017. package/cjs/S6397/generated-meta.js +3 -3
  1018. package/cjs/S6397/index.js +3 -3
  1019. package/cjs/S6397/meta.js +3 -3
  1020. package/cjs/S6397/rule.js +5 -5
  1021. package/cjs/S6418/config.js +3 -3
  1022. package/cjs/S6418/generated-meta.js +3 -3
  1023. package/cjs/S6418/index.js +3 -3
  1024. package/cjs/S6418/meta.js +3 -3
  1025. package/cjs/S6418/rule.js +12 -27
  1026. package/cjs/S6426/generated-meta.js +3 -3
  1027. package/cjs/S6426/index.js +3 -3
  1028. package/cjs/S6426/meta.js +3 -3
  1029. package/cjs/S6426/rule.js +8 -7
  1030. package/cjs/S6437/generated-meta.js +3 -3
  1031. package/cjs/S6437/index.js +3 -3
  1032. package/cjs/S6437/meta.js +3 -3
  1033. package/cjs/S6437/rule.js +18 -10
  1034. package/cjs/S6439/generated-meta.js +4 -4
  1035. package/cjs/S6439/index.js +3 -3
  1036. package/cjs/S6439/meta.js +3 -3
  1037. package/cjs/S6439/rule.js +12 -10
  1038. package/cjs/S6442/generated-meta.js +4 -4
  1039. package/cjs/S6442/index.js +3 -3
  1040. package/cjs/S6442/meta.js +3 -3
  1041. package/cjs/S6442/rule.js +14 -11
  1042. package/cjs/S6443/generated-meta.js +4 -4
  1043. package/cjs/S6443/index.js +3 -3
  1044. package/cjs/S6443/meta.js +3 -3
  1045. package/cjs/S6443/rule.js +12 -10
  1046. package/cjs/S6486/generated-meta.js +3 -3
  1047. package/cjs/S6486/index.js +3 -3
  1048. package/cjs/S6486/meta.js +3 -3
  1049. package/cjs/S6486/rule.js +9 -8
  1050. package/cjs/S6564/generated-meta.js +3 -3
  1051. package/cjs/S6564/index.js +3 -3
  1052. package/cjs/S6564/meta.js +3 -3
  1053. package/cjs/S6564/rule.js +7 -6
  1054. package/cjs/S6594/generated-meta.js +3 -3
  1055. package/cjs/S6594/index.js +3 -3
  1056. package/cjs/S6594/meta.js +3 -3
  1057. package/cjs/S6594/rule.js +15 -11
  1058. package/cjs/S6627/generated-meta.js +3 -3
  1059. package/cjs/S6627/index.js +3 -3
  1060. package/cjs/S6627/meta.js +3 -3
  1061. package/cjs/S6627/rule.js +9 -7
  1062. package/cjs/S6759/generated-meta.js +3 -3
  1063. package/cjs/S6759/index.js +3 -3
  1064. package/cjs/S6759/meta.js +3 -3
  1065. package/cjs/S6759/rule.js +13 -9
  1066. package/cjs/S6958/generated-meta.js +3 -3
  1067. package/cjs/S6958/index.js +3 -3
  1068. package/cjs/S6958/meta.js +3 -3
  1069. package/cjs/S6958/rule.js +2 -2
  1070. package/cjs/S6959/generated-meta.js +3 -3
  1071. package/cjs/S6959/index.js +3 -3
  1072. package/cjs/S6959/meta.js +3 -3
  1073. package/cjs/S6959/rule.js +12 -9
  1074. package/cjs/S7059/generated-meta.js +5 -4
  1075. package/cjs/S7059/index.js +3 -3
  1076. package/cjs/S7059/meta.js +3 -3
  1077. package/cjs/S7059/rule.js +11 -8
  1078. package/cjs/S7639/generated-meta.js +3 -3
  1079. package/cjs/S7639/index.js +3 -3
  1080. package/cjs/S7639/meta.js +3 -3
  1081. package/cjs/S7639/rule.js +8 -7
  1082. package/cjs/S7790/generated-meta.js +3 -3
  1083. package/cjs/S7790/index.js +3 -3
  1084. package/cjs/S7790/meta.js +3 -3
  1085. package/cjs/S7790/rule.js +10 -8
  1086. package/cjs/S8441/generated-meta.js +3 -3
  1087. package/cjs/S8441/index.js +3 -3
  1088. package/cjs/S8441/meta.js +3 -3
  1089. package/cjs/S8441/rule.js +16 -12
  1090. package/cjs/{helpers/aws/index.js → S8479/generated-meta.js} +35 -19
  1091. package/cjs/S8479/index.js +21 -0
  1092. package/cjs/S8479/meta.js +22 -0
  1093. package/cjs/S8479/rule.js +239 -0
  1094. package/cjs/S881/generated-meta.js +3 -3
  1095. package/cjs/S881/index.js +3 -3
  1096. package/cjs/S881/meta.js +3 -3
  1097. package/cjs/S881/rule.js +5 -5
  1098. package/cjs/S888/generated-meta.js +3 -3
  1099. package/cjs/S888/index.js +3 -3
  1100. package/cjs/S888/meta.js +3 -3
  1101. package/cjs/S888/rule.js +7 -6
  1102. package/cjs/S930/generated-meta.js +3 -3
  1103. package/cjs/S930/index.js +3 -3
  1104. package/cjs/S930/meta.js +3 -3
  1105. package/cjs/S930/rule.js +17 -15
  1106. package/cjs/helpers/accessibility.js +3 -3
  1107. package/cjs/helpers/ast.js +12 -9
  1108. package/cjs/helpers/aws/s3.js +9 -6
  1109. package/cjs/helpers/cache.js +3 -3
  1110. package/cjs/helpers/chai.js +41 -43
  1111. package/cjs/helpers/collection.js +3 -3
  1112. package/cjs/helpers/configs.js +2 -2
  1113. package/cjs/helpers/cookie-flag-check.js +19 -17
  1114. package/cjs/helpers/entropy.js +33 -0
  1115. package/cjs/helpers/express.js +127 -128
  1116. package/cjs/helpers/files.js +4 -4
  1117. package/cjs/helpers/find-up/closest.js +3 -3
  1118. package/cjs/helpers/internal-metrics.js +27 -0
  1119. package/cjs/helpers/mocha.js +50 -54
  1120. package/cjs/helpers/module-ts.js +8 -3
  1121. package/cjs/helpers/package-jsons/closest.js +3 -3
  1122. package/cjs/helpers/package-jsons/dependencies.js +135 -1
  1123. package/cjs/helpers/package-jsons/index.js +1 -0
  1124. package/cjs/helpers/package-jsons/parse.js +3 -3
  1125. package/cjs/helpers/recognizers/Detector.js +3 -3
  1126. package/cjs/helpers/recognizers/detectors/CamelCaseDetector.js +3 -3
  1127. package/cjs/helpers/recognizers/detectors/ContainsDetector.js +3 -3
  1128. package/cjs/helpers/recognizers/detectors/EndWithDetector.js +3 -3
  1129. package/cjs/helpers/recognizers/detectors/KeywordsDetector.js +3 -3
  1130. package/cjs/helpers/regex/ast.js +7 -6
  1131. package/cjs/helpers/regex/extract.js +11 -11
  1132. package/cjs/helpers/regex/group.js +2 -2
  1133. package/cjs/helpers/regex/location.js +2 -2
  1134. package/cjs/helpers/regex/range.js +5 -4
  1135. package/cjs/helpers/regex/rule-template.js +4 -3
  1136. package/cjs/helpers/sinon.js +33 -36
  1137. package/cjs/helpers/supertest.js +34 -37
  1138. package/cjs/helpers/vitest.js +29 -32
  1139. package/cjs/plugin-rules.js +5 -3
  1140. package/docs/aws-ec2-unencrypted-ebs-volume.md +1 -1
  1141. package/docs/aws-iam-all-privileges.md +1 -1
  1142. package/docs/aws-iam-public-access.md +1 -1
  1143. package/docs/aws-opensearchservice-domain.md +1 -1
  1144. package/docs/aws-rds-unencrypted-databases.md +1 -1
  1145. package/docs/aws-s3-bucket-granted-access.md +1 -1
  1146. package/docs/aws-sqs-unencrypted-queue.md +1 -1
  1147. package/docs/class-name.md +3 -3
  1148. package/docs/content-length.md +1 -1
  1149. package/docs/cors.md +1 -1
  1150. package/docs/dompurify-unsafe-config.md +7 -0
  1151. package/docs/file-permissions.md +1 -1
  1152. package/docs/insecure-cookie.md +1 -1
  1153. package/docs/link-with-target-blank.md +1 -1
  1154. package/docs/no-hardcoded-ip.md +1 -1
  1155. package/docs/no-unsafe-unzip.md +4 -2
  1156. package/docs/publicly-writable-directories.md +1 -1
  1157. package/docs/x-powered-by.md +1 -1
  1158. package/package.json +39 -1
  1159. package/types/S101/config.d.ts +1 -1
  1160. package/types/S1128/generated-meta.d.ts +1 -0
  1161. package/types/S1313/generated-meta.d.ts +1 -1
  1162. package/types/S134/config.d.ts +1 -1
  1163. package/types/S2208/generated-meta.d.ts +1 -0
  1164. package/types/S3317/generated-meta.d.ts +1 -0
  1165. package/types/S3499/generated-meta.d.ts +1 -0
  1166. package/types/S3500/generated-meta.d.ts +1 -0
  1167. package/types/S3513/generated-meta.d.ts +1 -0
  1168. package/types/S3514/generated-meta.d.ts +1 -0
  1169. package/types/S3524/generated-meta.d.ts +1 -0
  1170. package/types/S3525/generated-meta.d.ts +1 -0
  1171. package/types/S3531/generated-meta.d.ts +1 -0
  1172. package/types/S3533/generated-meta.d.ts +1 -0
  1173. package/types/S3776/meta.d.ts +2 -0
  1174. package/types/S4624/generated-meta.d.ts +1 -0
  1175. package/types/S4634/generated-meta.d.ts +1 -0
  1176. package/types/S4822/generated-meta.d.ts +1 -0
  1177. package/types/S5042/generated-meta.d.ts +2 -2
  1178. package/types/S6439/generated-meta.d.ts +1 -1
  1179. package/types/S6442/generated-meta.d.ts +1 -1
  1180. package/types/S6443/generated-meta.d.ts +1 -1
  1181. package/types/S7059/generated-meta.d.ts +1 -0
  1182. package/types/S8479/generated-meta.d.ts +17 -0
  1183. package/types/S8479/index.d.ts +1 -0
  1184. package/types/S8479/meta.d.ts +2 -0
  1185. package/types/S8479/rule.d.ts +2 -0
  1186. package/types/helpers/ancestor.d.ts +1 -1
  1187. package/types/helpers/aws/s3.d.ts +1 -1
  1188. package/types/helpers/chai.d.ts +3 -5
  1189. package/types/helpers/entropy.d.ts +1 -0
  1190. package/types/helpers/express.d.ts +38 -43
  1191. package/types/helpers/files.d.ts +6 -21
  1192. package/types/helpers/internal-metrics.d.ts +5 -0
  1193. package/types/helpers/mocha.d.ts +19 -21
  1194. package/types/helpers/package-jsons/dependencies.d.ts +36 -0
  1195. package/types/helpers/regex/ast.d.ts +1 -1
  1196. package/types/helpers/regex/rule-template.d.ts +1 -1
  1197. package/types/helpers/sinon.d.ts +3 -5
  1198. package/types/helpers/supertest.d.ts +3 -5
  1199. package/types/helpers/type.d.ts +1 -1
  1200. package/types/helpers/vitest.d.ts +3 -5
  1201. package/types/plugin-rules.d.ts +1 -0
  1202. package/cjs/helpers/decorators/index.js +0 -34
  1203. package/cjs/helpers/decorators/interceptor.js +0 -88
  1204. package/cjs/helpers/index.js +0 -60
  1205. package/cjs/helpers/recognizers/index.js +0 -37
  1206. package/cjs/helpers/rule-detect-react.js +0 -29
  1207. package/cjs/helpers/validate-version.js +0 -94
  1208. package/types/helpers/aws/index.d.ts +0 -3
  1209. package/types/helpers/decorators/index.d.ts +0 -2
  1210. package/types/helpers/decorators/interceptor.d.ts +0 -16
  1211. package/types/helpers/index.d.ts +0 -28
  1212. package/types/helpers/recognizers/index.d.ts +0 -2
  1213. package/types/helpers/rule-detect-react.d.ts +0 -2
  1214. package/types/helpers/validate-version.d.ts +0 -13
package/cjs/S4139/meta.js CHANGED
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.eslintId = exports.implementation = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4139/rule.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -51,22 +51,24 @@ 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
  useForOf: 'Use "for...of" to iterate over this "{{iterable}}".',
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
  ForInStatement: (node) => {
69
- const type = (0, index_js_1.getTypeFromTreeNode)(node.right, services);
71
+ const type = (0, type_js_1.getTypeFromTreeNode)(node.right, services);
70
72
  if (isIterable(type)) {
71
73
  const iterable = type.symbol ? type.symbol.name : 'String';
72
74
  context.report({
@@ -78,7 +80,7 @@ exports.rule = {
78
80
  },
79
81
  };
80
82
  function isIterable(type) {
81
- return isCollection(type) || (0, index_js_1.isStringType)(type) || (0, index_js_1.isArrayLikeType)(type, services);
83
+ return isCollection(type) || (0, type_js_1.isStringType)(type) || (0, type_js_1.isArrayLikeType)(type, services);
82
84
  }
83
85
  },
84
86
  };
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.rule = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4143/meta.js CHANGED
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.hasSecondaries = exports.eslintId = exports.implementation = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4143/rule.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -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 index_js_1 = require("../helpers/index.js");
54
+ const equivalence_js_1 = require("../helpers/equivalence.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 message = 'Verify this is the index that was intended; "{{index}}" was already set on line {{line}}.';
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
  verifyIntendedIndex: message,
61
64
  },
@@ -69,7 +72,7 @@ exports.rule = {
69
72
  checkStatements(node.body);
70
73
  },
71
74
  Program(node) {
72
- checkStatements((0, index_js_1.getProgramStatements)(node));
75
+ checkStatements((0, ast_js_1.getProgramStatements)(node));
73
76
  },
74
77
  };
75
78
  function checkStatements(statements) {
@@ -79,15 +82,15 @@ exports.rule = {
79
82
  const keyWriteUsage = getKeyWriteUsage(statement);
80
83
  if (keyWriteUsage) {
81
84
  if (collection &&
82
- !(0, index_js_1.areEquivalent)(keyWriteUsage.collectionNode, collection, context.sourceCode)) {
85
+ !(0, equivalence_js_1.areEquivalent)(keyWriteUsage.collectionNode, collection, context.sourceCode)) {
83
86
  usedKeys.clear();
84
87
  }
85
88
  const sameKeyWriteUsage = usedKeys.get(keyWriteUsage.indexOrKey);
86
89
  if (sameKeyWriteUsage?.node.loc) {
87
90
  const secondaryLocations = [
88
- (0, index_js_1.toSecondaryLocation)(sameKeyWriteUsage.node, 'Original value'),
91
+ (0, location_js_1.toSecondaryLocation)(sameKeyWriteUsage.node, 'Original value'),
89
92
  ];
90
- (0, index_js_1.report)(context, {
93
+ (0, location_js_1.report)(context, {
91
94
  node: keyWriteUsage.node,
92
95
  messageId: 'verifyIntendedIndex',
93
96
  message,
@@ -153,11 +156,11 @@ function isSimpleAssignment(node) {
153
156
  return node.type === 'AssignmentExpression' && node.operator === '=';
154
157
  }
155
158
  function extractIndex(node) {
156
- if ((0, index_js_1.isLiteral)(node)) {
159
+ if ((0, ast_js_1.isLiteral)(node)) {
157
160
  const { value } = node;
158
161
  return typeof value === 'number' || typeof value === 'string' ? String(value) : undefined;
159
162
  }
160
- else if ((0, index_js_1.isIdentifier)(node)) {
163
+ else if ((0, ast_js_1.isIdentifier)(node)) {
161
164
  return node.name;
162
165
  }
163
166
  return undefined;
@@ -165,7 +168,7 @@ function extractIndex(node) {
165
168
  function mapOrSetKeyWriteUsage(node) {
166
169
  if (node.type === 'CallExpression' && node.callee.type === 'MemberExpression') {
167
170
  const propertyAccess = node.callee;
168
- if ((0, index_js_1.isIdentifier)(propertyAccess.property)) {
171
+ if ((0, ast_js_1.isIdentifier)(propertyAccess.property)) {
169
172
  const methodName = propertyAccess.property.name;
170
173
  const addMethod = methodName === 'add' && node.arguments.length === 1;
171
174
  const setMethod = methodName === 'set' && node.arguments.length === 2;
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.rule = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4144/meta.js CHANGED
@@ -17,11 +17,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.schema = exports.hasSecondaries = exports.eslintId = exports.implementation = void 0;
18
18
  /*
19
19
  * SonarQube JavaScript Plugin
20
- * Copyright (C) 2011-2025 SonarSource Sàrl
20
+ * Copyright (C) SonarSource Sàrl
21
21
  * mailto:info AT sonarsource DOT com
22
22
  *
23
- * This program is free software; you can redistribute it and/or
24
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
23
+ * You can redistribute and/or modify this program under the terms of
24
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
25
25
  *
26
26
  * This program is distributed in the hope that it will be useful,
27
27
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4144/rule.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -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 equivalence_js_1 = require("../helpers/equivalence.js");
55
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
56
+ const location_js_1 = require("../helpers/location.js");
57
+ const collection_js_1 = require("../helpers/collection.js");
55
58
  const meta = __importStar(require("./generated-meta.js"));
56
59
  const DEFAULT_MIN_LINES = 3;
57
60
  const message = 'Update this function so that its implementation is not identical to the one on line {{line}}.';
58
61
  exports.rule = {
59
- meta: (0, index_js_1.generateMeta)(meta, {
62
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
60
63
  messages: {
61
64
  identicalFunctions: message,
62
65
  },
@@ -88,14 +91,14 @@ exports.rule = {
88
91
  const duplicatingFunction = functions[i].function;
89
92
  for (let j = 0; j < i; j++) {
90
93
  const originalFunction = functions[j].function;
91
- if ((0, index_js_1.areEquivalent)(duplicatingFunction.body, originalFunction.body, context.sourceCode) &&
94
+ if ((0, equivalence_js_1.areEquivalent)(duplicatingFunction.body, originalFunction.body, context.sourceCode) &&
92
95
  originalFunction.loc) {
93
- const loc = (0, index_js_1.getMainFunctionTokenLocation)(duplicatingFunction, functions[i].parent, context);
94
- const originalFunctionLoc = (0, index_js_1.getMainFunctionTokenLocation)(originalFunction, functions[j].parent, context);
96
+ const loc = (0, location_js_1.getMainFunctionTokenLocation)(duplicatingFunction, functions[i].parent, context);
97
+ const originalFunctionLoc = (0, location_js_1.getMainFunctionTokenLocation)(originalFunction, functions[j].parent, context);
95
98
  const secondaryLocations = [
96
- (0, index_js_1.toSecondaryLocation)({ loc: originalFunctionLoc }, 'Original implementation'),
99
+ (0, location_js_1.toSecondaryLocation)({ loc: originalFunctionLoc }, 'Original implementation'),
97
100
  ];
98
- (0, index_js_1.report)(context, {
101
+ (0, location_js_1.report)(context, {
99
102
  message,
100
103
  data: {
101
104
  line: originalFunction.loc.start.line,
@@ -112,12 +115,12 @@ exports.rule = {
112
115
  if (tokens.length > 0 && tokens[0].value === '{') {
113
116
  tokens.shift();
114
117
  }
115
- if (tokens.length > 0 && (0, index_js_1.last)(tokens).value === '}') {
118
+ if (tokens.length > 0 && (0, collection_js_1.last)(tokens).value === '}') {
116
119
  tokens.pop();
117
120
  }
118
121
  if (tokens.length > 0) {
119
122
  const firstLine = tokens[0].loc.start.line;
120
- const lastLine = (0, index_js_1.last)(tokens).loc.end.line;
123
+ const lastLine = (0, collection_js_1.last)(tokens).loc.end.line;
121
124
  return lastLine - firstLine + 1 >= minLines;
122
125
  }
123
126
  return false;
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.rule = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4158/meta.js CHANGED
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.eslintId = exports.implementation = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4158/rule.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -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 ancestor_js_1 = require("../helpers/ancestor.js");
55
+ const collection_js_1 = require("../helpers/collection.js");
56
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
57
+ const ast_js_1 = require("../helpers/ast.js");
55
58
  const meta = __importStar(require("./generated-meta.js"));
56
59
  // Methods that mutate the collection but can't add elements
57
60
  const nonAdditiveMutatorMethods = [
@@ -102,7 +105,7 @@ const strictlyReadingMethods = new Set([
102
105
  ...iterationMethods,
103
106
  ]);
104
107
  exports.rule = {
105
- meta: (0, index_js_1.generateMeta)(meta, {
108
+ meta: (0, generate_meta_js_1.generateMeta)(meta, {
106
109
  messages: {
107
110
  reviewUsageOfIdentifier: 'Review this usage of "{{identifierName}}" as it can only be empty here.',
108
111
  },
@@ -168,7 +171,7 @@ function reportEmptyCollectionUsage(variable, context) {
168
171
  }
169
172
  }
170
173
  function isReferenceAssigningEmptyCollection(ref) {
171
- const declOrExprStmt = (0, index_js_1.findFirstMatchingAncestor)(ref.identifier, n => n.type === 'VariableDeclarator' || n.type === 'ExpressionStatement');
174
+ const declOrExprStmt = (0, ancestor_js_1.findFirstMatchingAncestor)(ref.identifier, n => n.type === 'VariableDeclarator' || n.type === 'ExpressionStatement');
172
175
  if (declOrExprStmt) {
173
176
  if (declOrExprStmt.type === 'VariableDeclarator' && declOrExprStmt.init) {
174
177
  return isEmptyCollectionType(declOrExprStmt.init);
@@ -176,7 +179,7 @@ function isReferenceAssigningEmptyCollection(ref) {
176
179
  if (declOrExprStmt.type === 'ExpressionStatement') {
177
180
  const { expression } = declOrExprStmt;
178
181
  return (expression.type === 'AssignmentExpression' &&
179
- (0, index_js_1.isReferenceTo)(ref, expression.left) &&
182
+ (0, ast_js_1.isReferenceTo)(ref, expression.left) &&
180
183
  isEmptyCollectionType(expression.right));
181
184
  }
182
185
  }
@@ -187,7 +190,7 @@ function isEmptyCollectionType(node) {
187
190
  return node.elements.length === 0;
188
191
  }
189
192
  else if (node?.type === 'CallExpression' || node?.type === 'NewExpression') {
190
- return (0, index_js_1.isIdentifier)(node.callee, ...index_js_1.collectionConstructor) && node.arguments.length === 0;
193
+ return (0, ast_js_1.isIdentifier)(node.callee, ...collection_js_1.collectionConstructor) && node.arguments.length === 0;
191
194
  }
192
195
  return false;
193
196
  }
@@ -199,14 +202,14 @@ function isStrictlyReadingMethodCall(usage) {
199
202
  if (parent?.type === 'MemberExpression') {
200
203
  const memberExpressionParent = parent.parent;
201
204
  if (memberExpressionParent?.type === 'CallExpression') {
202
- return (0, index_js_1.isIdentifier)(parent.property, ...strictlyReadingMethods);
205
+ return (0, ast_js_1.isIdentifier)(parent.property, ...strictlyReadingMethods);
203
206
  }
204
207
  }
205
208
  return false;
206
209
  }
207
210
  function isForIterationPattern(ref) {
208
- const forInOrOfStatement = (0, index_js_1.findFirstMatchingAncestor)(ref.identifier, n => n.type === 'ForOfStatement' || n.type === 'ForInStatement');
209
- return forInOrOfStatement && forInOrOfStatement.right === ref.identifier;
211
+ const forInOrOfStatement = (0, ancestor_js_1.findFirstMatchingAncestor)(ref.identifier, n => n.type === 'ForOfStatement' || n.type === 'ForInStatement');
212
+ return forInOrOfStatement?.right === ref.identifier;
210
213
  }
211
214
  function isElementRead(ref) {
212
215
  const { parent } = ref.identifier;
@@ -216,7 +219,7 @@ function isElementRead(ref) {
216
219
  }
217
220
  const writingAssignmentOperators = new Set(['=', '||=', '&&=', '??=']);
218
221
  function isElementWrite(memberExpression) {
219
- const ancestors = (0, index_js_1.ancestorsChain)(memberExpression, new Set());
222
+ const ancestors = (0, ancestor_js_1.ancestorsChain)(memberExpression, new Set());
220
223
  const assignment = ancestors.find(n => n.type === 'AssignmentExpression');
221
224
  if (assignment && writingAssignmentOperators.has(assignment.operator)) {
222
225
  return [memberExpression, ...ancestors].includes(assignment.left);
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.rule = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4165/meta.js CHANGED
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.eslintId = exports.implementation = void 0;
4
4
  /*
5
5
  * SonarQube JavaScript Plugin
6
- * Copyright (C) 2011-2025 SonarSource Sàrl
6
+ * Copyright (C) SonarSource Sàrl
7
7
  * mailto:info AT sonarsource DOT com
8
8
  *
9
- * This program is free software; you can redistribute it and/or
10
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
9
+ * You can redistribute and/or modify this program under the terms of
10
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
11
11
  *
12
12
  * This program is distributed in the hope that it will be useful,
13
13
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
package/cjs/S4165/rule.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  /*
3
3
  * SonarQube JavaScript Plugin
4
- * Copyright (C) 2011-2025 SonarSource Sàrl
4
+ * Copyright (C) SonarSource Sàrl
5
5
  * mailto:info AT sonarsource DOT com
6
6
  *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the Sonar Source-Available License Version 1, as published by SonarSource SA.
7
+ * You can redistribute and/or modify this program under the terms of
8
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
9
9
  *
10
10
  * This program is distributed in the hope that it will be useful,
11
11
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -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 reaching_definitions_js_1 = require("../helpers/reaching-definitions.js");
55
+ const generate_meta_js_1 = require("../helpers/generate-meta.js");
56
+ const collection_js_1 = require("../helpers/collection.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
  reviewAssignment: 'Review this redundant assignment: "{{symbol}}" already holds the assigned value along all execution paths.',
60
62
  },
@@ -80,7 +82,7 @@ exports.rule = {
80
82
  checkIdentifierUsage(node);
81
83
  },
82
84
  'Program:exit': () => {
83
- (0, index_js_1.reachingDefinitions)(reachingDefsMap);
85
+ (0, reaching_definitions_js_1.reachingDefinitions)(reachingDefsMap);
84
86
  for (const defs of reachingDefsMap.values()) {
85
87
  checkSegment(defs);
86
88
  }
@@ -92,7 +94,7 @@ exports.rule = {
92
94
  },
93
95
  // CodePath events
94
96
  onCodePathSegmentStart: (segment) => {
95
- reachingDefsMap.set(segment.id, new index_js_1.ReachingDefinitions(segment));
97
+ reachingDefsMap.set(segment.id, new reaching_definitions_js_1.ReachingDefinitions(segment));
96
98
  currentCodePathSegments.push(segment);
97
99
  },
98
100
  onCodePathStart: codePath => {
@@ -109,7 +111,7 @@ exports.rule = {
109
111
  },
110
112
  };
111
113
  function popAssignmentContext() {
112
- const assignment = (0, index_js_1.last)(codePathStack).assignmentStack.pop();
114
+ const assignment = (0, collection_js_1.last)(codePathStack).assignmentStack.pop();
113
115
  for (const r of assignment.rhs) {
114
116
  processReference(r);
115
117
  }
@@ -118,7 +120,7 @@ exports.rule = {
118
120
  }
119
121
  }
120
122
  function pushAssignmentContext(node) {
121
- (0, index_js_1.last)(codePathStack).assignmentStack.push(new AssignmentContext(node));
123
+ (0, collection_js_1.last)(codePathStack).assignmentStack.push(new AssignmentContext(node));
122
124
  }
123
125
  function checkSegment(reachingDefs) {
124
126
  const assignedValuesMap = new Map(reachingDefs.in);
@@ -128,7 +130,7 @@ exports.rule = {
128
130
  continue;
129
131
  }
130
132
  const lhsValues = assignedValuesMap.get(variable);
131
- const rhsValues = (0, index_js_1.resolveAssignedValues)(variable, ref.writeExpr, assignedValuesMap, ref.from);
133
+ const rhsValues = (0, reaching_definitions_js_1.resolveAssignedValues)(variable, ref.writeExpr, assignedValuesMap, ref.from);
132
134
  if (lhsValues?.type === 'AssignedValues' && lhsValues?.size === 1) {
133
135
  const [lhsVal] = [...lhsValues];
134
136
  checkRedundantAssignement(ref, ref.writeExpr, lhsVal, rhsValues, variable.name);
@@ -187,9 +189,9 @@ exports.rule = {
187
189
  }
188
190
  }
189
191
  function processReference(ref) {
190
- const assignmentStack = (0, index_js_1.last)(codePathStack).assignmentStack;
192
+ const assignmentStack = (0, collection_js_1.last)(codePathStack).assignmentStack;
191
193
  if (assignmentStack.length > 0) {
192
- const assignment = (0, index_js_1.last)(assignmentStack);
194
+ const assignment = (0, collection_js_1.last)(assignmentStack);
193
195
  assignment.add(ref);
194
196
  }
195
197
  else {
@@ -205,13 +207,13 @@ exports.rule = {
205
207
  defs = reachingDefsMap.get(segment.id);
206
208
  }
207
209
  else {
208
- defs = new index_js_1.ReachingDefinitions(segment);
210
+ defs = new reaching_definitions_js_1.ReachingDefinitions(segment);
209
211
  reachingDefsMap.set(segment.id, defs);
210
212
  }
211
213
  return defs;
212
214
  }
213
215
  function updateVariableUsages(variable) {
214
- const codePathId = (0, index_js_1.last)(codePathStack).codePath.id;
216
+ const codePathId = (0, collection_js_1.last)(codePathStack).codePath.id;
215
217
  if (variableUsages.has(variable)) {
216
218
  variableUsages.get(variable).add(codePathId);
217
219
  }
@@ -295,7 +297,7 @@ class AssignmentContext {
295
297
  function isSelfAssignement(ref) {
296
298
  const lhs = ref.resolved;
297
299
  if (ref.writeExpr?.type === 'Identifier') {
298
- const rhs = (0, index_js_1.getVariableFromIdentifier)(ref.writeExpr, ref.from);
300
+ const rhs = (0, reaching_definitions_js_1.getVariableFromIdentifier)(ref.writeExpr, ref.from);
299
301
  return lhs === rhs;
300
302
  }
301
303
  return false;