eslint-plugin-sonarjs 4.0.2 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1623) hide show
  1. package/README.md +73 -76
  2. package/cjs/S100/config.js +3 -3
  3. package/cjs/S100/generated-meta.js +5 -4
  4. package/cjs/S100/index.js +3 -3
  5. package/cjs/S100/meta.js +3 -3
  6. package/cjs/S100/rule.js +3 -3
  7. package/cjs/S101/config.js +4 -4
  8. package/cjs/S101/generated-meta.js +6 -5
  9. package/cjs/S101/index.js +3 -3
  10. package/cjs/S101/meta.js +3 -3
  11. package/cjs/S101/rule.js +4 -4
  12. package/cjs/S104/config.js +3 -3
  13. package/cjs/S104/generated-meta.js +5 -4
  14. package/cjs/S104/index.js +3 -3
  15. package/cjs/S104/meta.js +3 -3
  16. package/cjs/S104/rule.js +3 -3
  17. package/cjs/S105/generated-meta.js +5 -4
  18. package/cjs/S105/index.js +3 -3
  19. package/cjs/S105/meta.js +3 -3
  20. package/cjs/S105/rule.js +3 -3
  21. package/cjs/S1066/generated-meta.js +5 -4
  22. package/cjs/S1066/index.js +3 -3
  23. package/cjs/S1066/meta.js +3 -3
  24. package/cjs/S1066/rule.js +3 -3
  25. package/cjs/S1067/config.js +3 -3
  26. package/cjs/S1067/generated-meta.js +5 -4
  27. package/cjs/S1067/index.js +3 -3
  28. package/cjs/S1067/meta.js +3 -3
  29. package/cjs/S1067/rule.js +3 -3
  30. package/cjs/S1110/generated-meta.js +5 -4
  31. package/cjs/S1110/index.js +3 -3
  32. package/cjs/S1110/meta.js +3 -3
  33. package/cjs/S1110/rule.js +3 -3
  34. package/cjs/S1119/generated-meta.js +5 -4
  35. package/cjs/S1119/index.js +3 -3
  36. package/cjs/S1119/meta.js +3 -3
  37. package/cjs/S1119/rule.js +3 -3
  38. package/cjs/S1121/generated-meta.js +5 -4
  39. package/cjs/S1121/index.js +3 -3
  40. package/cjs/S1121/meta.js +3 -3
  41. package/cjs/S1121/rule.js +3 -3
  42. package/cjs/S1125/generated-meta.js +5 -4
  43. package/cjs/S1125/index.js +3 -3
  44. package/cjs/S1125/meta.js +3 -3
  45. package/cjs/S1125/rule.js +3 -3
  46. package/cjs/S1126/generated-meta.js +5 -4
  47. package/cjs/S1126/index.js +3 -3
  48. package/cjs/S1126/meta.js +3 -3
  49. package/cjs/S1126/rule.js +29 -10
  50. package/cjs/S1128/generated-meta.js +6 -4
  51. package/cjs/S1128/index.js +3 -3
  52. package/cjs/S1128/meta.js +3 -3
  53. package/cjs/S1128/rule.js +3 -3
  54. package/cjs/S1134/generated-meta.js +5 -4
  55. package/cjs/S1134/index.js +3 -3
  56. package/cjs/S1134/meta.js +3 -3
  57. package/cjs/S1134/rule.js +3 -3
  58. package/cjs/S1135/generated-meta.js +5 -4
  59. package/cjs/S1135/index.js +3 -3
  60. package/cjs/S1135/meta.js +3 -3
  61. package/cjs/S1135/rule.js +3 -3
  62. package/cjs/S1154/generated-meta.js +5 -4
  63. package/cjs/S1154/index.js +3 -3
  64. package/cjs/S1154/meta.js +3 -3
  65. package/cjs/S1154/rule.js +24 -5
  66. package/cjs/S117/config.js +3 -3
  67. package/cjs/S117/generated-meta.js +5 -4
  68. package/cjs/S117/index.js +3 -3
  69. package/cjs/S117/meta.js +3 -3
  70. package/cjs/S117/rule.js +3 -3
  71. package/cjs/S1172/generated-meta.js +5 -4
  72. package/cjs/S1172/index.js +3 -3
  73. package/cjs/S1172/meta.js +3 -3
  74. package/cjs/S1172/rule.js +3 -3
  75. package/cjs/S1192/config.js +3 -3
  76. package/cjs/S1192/generated-meta.js +5 -4
  77. package/cjs/S1192/index.js +3 -3
  78. package/cjs/S1192/meta.js +3 -3
  79. package/cjs/S1192/rule.js +5 -5
  80. package/cjs/S1219/generated-meta.js +5 -4
  81. package/cjs/S1219/index.js +3 -3
  82. package/cjs/S1219/meta.js +3 -3
  83. package/cjs/S1219/rule.js +3 -3
  84. package/cjs/S1226/generated-meta.js +5 -4
  85. package/cjs/S1226/index.js +3 -3
  86. package/cjs/S1226/meta.js +3 -3
  87. package/cjs/S1226/rule.js +3 -3
  88. package/cjs/S124/config.js +3 -3
  89. package/cjs/S124/generated-meta.js +5 -4
  90. package/cjs/S124/index.js +3 -3
  91. package/cjs/S124/meta.js +3 -3
  92. package/cjs/S124/rule.js +3 -3
  93. package/cjs/{S2255 → S1244}/generated-meta.js +11 -10
  94. package/cjs/{S4784 → S1244}/index.js +3 -3
  95. package/cjs/{S4817 → S1244}/meta.js +4 -4
  96. package/cjs/S1244/rule.js +265 -0
  97. package/cjs/S125/generated-meta.js +6 -5
  98. package/cjs/S125/index.js +3 -3
  99. package/cjs/S125/meta.js +3 -3
  100. package/cjs/S125/rule.js +67 -20
  101. package/cjs/S126/generated-meta.js +5 -4
  102. package/cjs/S126/index.js +3 -3
  103. package/cjs/S126/meta.js +3 -3
  104. package/cjs/S126/rule.js +3 -3
  105. package/cjs/S1264/generated-meta.js +5 -4
  106. package/cjs/S1264/index.js +3 -3
  107. package/cjs/S1264/meta.js +3 -3
  108. package/cjs/S1264/rule.js +3 -3
  109. package/cjs/S128/generated-meta.js +5 -4
  110. package/cjs/S128/index.js +3 -3
  111. package/cjs/S128/meta.js +3 -3
  112. package/cjs/S128/rule.js +3 -3
  113. package/cjs/S1291/generated-meta.js +5 -4
  114. package/cjs/S1291/index.js +3 -3
  115. package/cjs/S1291/meta.js +3 -3
  116. package/cjs/S1291/rule.js +3 -3
  117. package/cjs/S1301/generated-meta.js +6 -5
  118. package/cjs/S1301/index.js +3 -3
  119. package/cjs/S1301/meta.js +3 -3
  120. package/cjs/S1301/rule.js +141 -3
  121. package/cjs/S1313/generated-meta.js +7 -6
  122. package/cjs/S1313/index.js +3 -3
  123. package/cjs/S1313/meta.js +3 -3
  124. package/cjs/S1313/rule.js +3 -3
  125. package/cjs/S134/config.js +4 -4
  126. package/cjs/S134/generated-meta.js +5 -4
  127. package/cjs/S134/index.js +3 -3
  128. package/cjs/S134/meta.js +3 -3
  129. package/cjs/S134/rule.js +3 -3
  130. package/cjs/S135/generated-meta.js +5 -4
  131. package/cjs/S135/index.js +3 -3
  132. package/cjs/S135/meta.js +3 -3
  133. package/cjs/S135/rule.js +3 -3
  134. package/cjs/S138/config.js +3 -3
  135. package/cjs/S138/generated-meta.js +5 -4
  136. package/cjs/S138/index.js +3 -3
  137. package/cjs/S138/meta.js +3 -3
  138. package/cjs/S138/rule.js +3 -3
  139. package/cjs/S1439/generated-meta.js +5 -4
  140. package/cjs/S1439/index.js +3 -3
  141. package/cjs/S1439/meta.js +3 -3
  142. package/cjs/S1439/rule.js +3 -3
  143. package/cjs/S1444/generated-meta.js +5 -4
  144. package/cjs/S1444/index.js +3 -3
  145. package/cjs/S1444/meta.js +3 -3
  146. package/cjs/S1444/rule.js +3 -3
  147. package/cjs/S1451/config.js +3 -3
  148. package/cjs/S1451/generated-meta.js +5 -4
  149. package/cjs/S1451/index.js +3 -3
  150. package/cjs/S1451/meta.js +3 -3
  151. package/cjs/S1451/rule.js +3 -3
  152. package/cjs/S1472/generated-meta.js +5 -4
  153. package/cjs/S1472/index.js +3 -3
  154. package/cjs/S1472/meta.js +3 -3
  155. package/cjs/S1472/rule.js +3 -3
  156. package/cjs/S1479/config.js +3 -3
  157. package/cjs/S1479/generated-meta.js +5 -4
  158. package/cjs/S1479/index.js +3 -3
  159. package/cjs/S1479/meta.js +3 -3
  160. package/cjs/S1479/rule.js +3 -3
  161. package/cjs/S1481/generated-meta.js +5 -4
  162. package/cjs/S1481/index.js +3 -3
  163. package/cjs/S1481/meta.js +3 -3
  164. package/cjs/S1481/rule.js +3 -3
  165. package/cjs/S1488/generated-meta.js +5 -4
  166. package/cjs/S1488/index.js +3 -3
  167. package/cjs/S1488/meta.js +3 -3
  168. package/cjs/S1488/rule.js +3 -3
  169. package/cjs/S1515/generated-meta.js +5 -4
  170. package/cjs/S1515/index.js +3 -3
  171. package/cjs/S1515/meta.js +3 -3
  172. package/cjs/S1515/rule.js +3 -3
  173. package/cjs/S1523/generated-meta.js +6 -5
  174. package/cjs/S1523/index.js +3 -3
  175. package/cjs/S1523/meta.js +3 -3
  176. package/cjs/S1523/rule.js +3 -3
  177. package/cjs/S1526/generated-meta.js +5 -4
  178. package/cjs/S1526/index.js +3 -3
  179. package/cjs/S1526/meta.js +3 -3
  180. package/cjs/S1526/rule.js +3 -3
  181. package/cjs/S1527/generated-meta.js +5 -4
  182. package/cjs/S1527/index.js +3 -3
  183. package/cjs/S1527/meta.js +3 -3
  184. package/cjs/S1527/rule.js +3 -3
  185. package/cjs/S1528/generated-meta.js +5 -4
  186. package/cjs/S1528/index.js +3 -3
  187. package/cjs/S1528/meta.js +3 -3
  188. package/cjs/S1529/generated-meta.js +5 -4
  189. package/cjs/S1529/index.js +3 -3
  190. package/cjs/S1529/meta.js +3 -3
  191. package/cjs/S1529/rule.js +3 -3
  192. package/cjs/S1530/generated-meta.js +5 -4
  193. package/cjs/S1530/index.js +3 -3
  194. package/cjs/S1530/meta.js +3 -3
  195. package/cjs/S1530/rule.js +3 -3
  196. package/cjs/S1533/generated-meta.js +5 -4
  197. package/cjs/S1533/index.js +3 -3
  198. package/cjs/S1533/meta.js +3 -3
  199. package/cjs/S1533/rule.js +3 -3
  200. package/cjs/S1535/generated-meta.js +5 -4
  201. package/cjs/S1535/index.js +3 -3
  202. package/cjs/S1535/meta.js +3 -3
  203. package/cjs/S1535/rule.js +3 -3
  204. package/cjs/S1541/config.js +3 -3
  205. package/cjs/S1541/generated-meta.js +5 -4
  206. package/cjs/S1541/index.js +3 -3
  207. package/cjs/S1541/meta.js +3 -3
  208. package/cjs/S1541/rule.js +3 -3
  209. package/cjs/S1607/generated-meta.js +5 -4
  210. package/cjs/S1607/index.js +3 -3
  211. package/cjs/S1607/meta.js +3 -3
  212. package/cjs/S1607/rule.js +75 -10
  213. package/cjs/S1764/generated-meta.js +5 -4
  214. package/cjs/S1764/index.js +3 -3
  215. package/cjs/S1764/meta.js +3 -3
  216. package/cjs/S1764/rule.js +3 -3
  217. package/cjs/S1821/generated-meta.js +5 -4
  218. package/cjs/S1821/index.js +3 -3
  219. package/cjs/S1821/meta.js +3 -3
  220. package/cjs/S1821/rule.js +3 -3
  221. package/cjs/S1848/generated-meta.js +5 -4
  222. package/cjs/S1848/index.js +3 -3
  223. package/cjs/S1848/meta.js +3 -3
  224. package/cjs/S1848/rule.js +3 -3
  225. package/cjs/S1854/generated-meta.js +5 -4
  226. package/cjs/S1854/index.js +3 -3
  227. package/cjs/S1854/meta.js +3 -3
  228. package/cjs/S1854/rule.js +3 -3
  229. package/cjs/S1862/generated-meta.js +5 -4
  230. package/cjs/S1862/index.js +3 -3
  231. package/cjs/S1862/meta.js +3 -3
  232. package/cjs/S1862/rule.js +3 -3
  233. package/cjs/S1871/generated-meta.js +5 -4
  234. package/cjs/S1871/index.js +3 -3
  235. package/cjs/S1871/meta.js +3 -3
  236. package/cjs/S1871/rule.js +3 -3
  237. package/cjs/S1874/generated-meta.js +5 -4
  238. package/cjs/S1874/index.js +3 -3
  239. package/cjs/S1874/meta.js +3 -3
  240. package/cjs/S1874/rule.js +3 -3
  241. package/cjs/S1940/generated-meta.js +5 -4
  242. package/cjs/S1940/index.js +3 -3
  243. package/cjs/S1940/meta.js +3 -3
  244. package/cjs/S1940/rule.js +3 -3
  245. package/cjs/S1994/generated-meta.js +5 -4
  246. package/cjs/S1994/index.js +3 -3
  247. package/cjs/S1994/meta.js +3 -3
  248. package/cjs/S1994/rule.js +3 -3
  249. package/cjs/S2004/config.js +3 -3
  250. package/cjs/S2004/generated-meta.js +5 -4
  251. package/cjs/S2004/index.js +3 -3
  252. package/cjs/S2004/meta.js +3 -3
  253. package/cjs/S2004/rule.js +3 -3
  254. package/cjs/S2068/config.js +3 -3
  255. package/cjs/S2068/generated-meta.js +5 -4
  256. package/cjs/S2068/index.js +3 -3
  257. package/cjs/S2068/meta.js +3 -3
  258. package/cjs/S2068/rule.js +28 -18
  259. package/cjs/S2077/generated-meta.js +6 -5
  260. package/cjs/S2077/index.js +3 -3
  261. package/cjs/S2077/meta.js +3 -3
  262. package/cjs/S2077/rule.js +35 -3
  263. package/cjs/S2092/generated-meta.js +6 -5
  264. package/cjs/S2092/index.js +3 -3
  265. package/cjs/S2092/meta.js +3 -3
  266. package/cjs/S2092/rule.js +3 -3
  267. package/cjs/S2123/generated-meta.js +5 -4
  268. package/cjs/S2123/index.js +3 -3
  269. package/cjs/S2123/meta.js +3 -3
  270. package/cjs/S2123/rule.js +3 -3
  271. package/cjs/S2137/generated-meta.js +5 -4
  272. package/cjs/S2137/index.js +3 -3
  273. package/cjs/S2137/meta.js +3 -3
  274. package/cjs/S2137/rule.js +3 -3
  275. package/cjs/S2138/generated-meta.js +5 -4
  276. package/cjs/S2138/index.js +3 -3
  277. package/cjs/S2138/meta.js +3 -3
  278. package/cjs/S2138/rule.js +3 -3
  279. package/cjs/S2187/generated-meta.js +5 -4
  280. package/cjs/S2187/index.js +3 -3
  281. package/cjs/S2187/meta.js +3 -3
  282. package/cjs/S2187/rule.js +53 -16
  283. package/cjs/S2201/generated-meta.js +5 -4
  284. package/cjs/S2201/index.js +3 -3
  285. package/cjs/S2201/meta.js +3 -3
  286. package/cjs/S2201/rule.js +3 -3
  287. package/cjs/S2208/generated-meta.js +6 -4
  288. package/cjs/S2208/index.js +3 -3
  289. package/cjs/S2208/meta.js +3 -3
  290. package/cjs/S2208/rule.js +3 -3
  291. package/cjs/S2234/generated-meta.js +5 -4
  292. package/cjs/S2234/index.js +3 -3
  293. package/cjs/S2234/meta.js +3 -3
  294. package/cjs/S2234/rule.js +148 -5
  295. package/cjs/S2245/generated-meta.js +6 -5
  296. package/cjs/S2245/index.js +3 -3
  297. package/cjs/S2245/meta.js +3 -3
  298. package/cjs/S2245/rule.js +3 -3
  299. package/cjs/S2251/generated-meta.js +5 -4
  300. package/cjs/S2251/index.js +3 -3
  301. package/cjs/S2251/meta.js +3 -3
  302. package/cjs/S2251/rule.js +3 -3
  303. package/cjs/S2259/generated-meta.js +5 -4
  304. package/cjs/S2259/index.js +3 -3
  305. package/cjs/S2259/meta.js +3 -3
  306. package/cjs/S2259/rule.js +3 -3
  307. package/cjs/S2301/generated-meta.js +5 -4
  308. package/cjs/S2301/index.js +3 -3
  309. package/cjs/S2301/meta.js +3 -3
  310. package/cjs/S2301/rule.js +10 -4
  311. package/cjs/S2310/generated-meta.js +5 -4
  312. package/cjs/S2310/index.js +3 -3
  313. package/cjs/S2310/meta.js +3 -3
  314. package/cjs/S2310/rule.js +3 -3
  315. package/cjs/S2392/generated-meta.js +5 -4
  316. package/cjs/S2392/index.js +3 -3
  317. package/cjs/S2392/meta.js +3 -3
  318. package/cjs/S2392/rule.js +44 -3
  319. package/cjs/S2424/generated-meta.js +5 -4
  320. package/cjs/S2424/index.js +3 -3
  321. package/cjs/S2424/meta.js +3 -3
  322. package/cjs/S2424/rule.js +3 -3
  323. package/cjs/S2428/generated-meta.js +5 -4
  324. package/cjs/S2428/index.js +3 -3
  325. package/cjs/S2428/meta.js +3 -3
  326. package/cjs/S2428/rule.js +3 -3
  327. package/cjs/S2486/generated-meta.js +5 -4
  328. package/cjs/S2486/index.js +3 -3
  329. package/cjs/S2486/meta.js +3 -3
  330. package/cjs/S2486/rule.js +3 -3
  331. package/cjs/S2589/generated-meta.js +5 -4
  332. package/cjs/S2589/index.js +3 -3
  333. package/cjs/S2589/meta.js +3 -3
  334. package/cjs/S2589/rule.js +3 -3
  335. package/cjs/S2598/generated-meta.js +5 -4
  336. package/cjs/S2598/index.js +3 -3
  337. package/cjs/S2598/meta.js +3 -3
  338. package/cjs/S2598/rule.js +3 -3
  339. package/cjs/S2612/generated-meta.js +5 -4
  340. package/cjs/S2612/index.js +3 -3
  341. package/cjs/S2612/meta.js +3 -3
  342. package/cjs/S2612/rule.js +3 -3
  343. package/cjs/S2639/generated-meta.js +5 -4
  344. package/cjs/S2639/index.js +3 -3
  345. package/cjs/S2639/meta.js +3 -3
  346. package/cjs/S2639/rule.js +3 -3
  347. package/cjs/S2681/generated-meta.js +5 -4
  348. package/cjs/S2681/index.js +3 -3
  349. package/cjs/S2681/meta.js +3 -3
  350. package/cjs/S2681/rule.js +3 -3
  351. package/cjs/S2692/generated-meta.js +5 -4
  352. package/cjs/S2692/index.js +3 -3
  353. package/cjs/S2692/meta.js +3 -3
  354. package/cjs/S2692/rule.js +3 -3
  355. package/cjs/S2699/generated-meta.js +5 -4
  356. package/cjs/S2699/index.js +3 -3
  357. package/cjs/S2699/meta.js +3 -3
  358. package/cjs/S2699/rule.js +19 -5
  359. package/cjs/S2703/generated-meta.js +5 -4
  360. package/cjs/S2703/index.js +3 -3
  361. package/cjs/S2703/meta.js +3 -3
  362. package/cjs/S2703/rule.js +3 -3
  363. package/cjs/S2737/generated-meta.js +5 -4
  364. package/cjs/S2737/index.js +3 -3
  365. package/cjs/S2737/meta.js +3 -3
  366. package/cjs/S2737/rule.js +3 -3
  367. package/cjs/S2755/generated-meta.js +5 -4
  368. package/cjs/S2755/index.js +3 -3
  369. package/cjs/S2755/meta.js +3 -3
  370. package/cjs/S2755/rule.js +3 -3
  371. package/cjs/S2757/generated-meta.js +5 -4
  372. package/cjs/S2757/index.js +3 -3
  373. package/cjs/S2757/meta.js +3 -3
  374. package/cjs/S2757/rule.js +3 -3
  375. package/cjs/S2817/generated-meta.js +5 -4
  376. package/cjs/S2817/index.js +3 -3
  377. package/cjs/S2817/meta.js +3 -3
  378. package/cjs/S2817/rule.js +3 -3
  379. package/cjs/S2819/generated-meta.js +5 -4
  380. package/cjs/S2819/index.js +3 -3
  381. package/cjs/S2819/meta.js +3 -3
  382. package/cjs/S2819/rule.js +3 -3
  383. package/cjs/S2870/generated-meta.js +5 -4
  384. package/cjs/S2870/index.js +3 -3
  385. package/cjs/S2870/meta.js +3 -3
  386. package/cjs/S2870/rule.js +3 -3
  387. package/cjs/S2871/generated-meta.js +5 -4
  388. package/cjs/S2871/index.js +3 -3
  389. package/cjs/S2871/meta.js +3 -3
  390. package/cjs/S2871/rule.js +88 -4
  391. package/cjs/S2970/generated-meta.js +5 -4
  392. package/cjs/S2970/index.js +3 -3
  393. package/cjs/S2970/meta.js +3 -3
  394. package/cjs/S2970/rule.js +3 -3
  395. package/cjs/S2990/generated-meta.js +5 -4
  396. package/cjs/S2990/index.js +3 -3
  397. package/cjs/S2990/meta.js +3 -3
  398. package/cjs/S2990/rule.js +3 -3
  399. package/cjs/S2999/config.js +3 -3
  400. package/cjs/S2999/generated-meta.js +5 -4
  401. package/cjs/S2999/index.js +3 -3
  402. package/cjs/S2999/meta.js +3 -3
  403. package/cjs/S2999/rule.js +3 -3
  404. package/cjs/S3001/generated-meta.js +5 -4
  405. package/cjs/S3001/index.js +3 -3
  406. package/cjs/S3001/meta.js +3 -3
  407. package/cjs/S3001/rule.js +3 -3
  408. package/cjs/S3003/generated-meta.js +5 -4
  409. package/cjs/S3003/index.js +3 -3
  410. package/cjs/S3003/meta.js +3 -3
  411. package/cjs/S3003/rule.js +3 -3
  412. package/cjs/S3317/generated-meta.js +6 -4
  413. package/cjs/S3317/index.js +3 -3
  414. package/cjs/S3317/meta.js +3 -3
  415. package/cjs/S3317/rule.js +3 -3
  416. package/cjs/S3330/generated-meta.js +6 -5
  417. package/cjs/S3330/index.js +3 -3
  418. package/cjs/S3330/meta.js +3 -3
  419. package/cjs/S3330/rule.js +3 -3
  420. package/cjs/S3358/generated-meta.js +5 -4
  421. package/cjs/S3358/index.js +3 -3
  422. package/cjs/S3358/meta.js +3 -3
  423. package/cjs/S3358/rule.js +3 -3
  424. package/cjs/S3402/generated-meta.js +5 -4
  425. package/cjs/S3402/index.js +3 -3
  426. package/cjs/S3402/meta.js +3 -3
  427. package/cjs/S3402/rule.js +3 -3
  428. package/cjs/S3403/generated-meta.js +5 -4
  429. package/cjs/S3403/index.js +3 -3
  430. package/cjs/S3403/meta.js +3 -3
  431. package/cjs/S3403/rule.js +24 -4
  432. package/cjs/S3415/generated-meta.js +5 -4
  433. package/cjs/S3415/index.js +3 -3
  434. package/cjs/S3415/meta.js +3 -3
  435. package/cjs/S3415/rule.js +3 -3
  436. package/cjs/S3499/generated-meta.js +6 -4
  437. package/cjs/S3499/index.js +3 -3
  438. package/cjs/S3499/meta.js +3 -3
  439. package/cjs/S3499/rule.js +3 -3
  440. package/cjs/S3500/generated-meta.js +6 -4
  441. package/cjs/S3500/index.js +3 -3
  442. package/cjs/S3500/meta.js +3 -3
  443. package/cjs/S3500/rule.js +3 -3
  444. package/cjs/S3513/generated-meta.js +6 -4
  445. package/cjs/S3513/index.js +3 -3
  446. package/cjs/S3513/meta.js +3 -3
  447. package/cjs/S3513/rule.js +3 -3
  448. package/cjs/S3514/generated-meta.js +6 -4
  449. package/cjs/S3514/index.js +3 -3
  450. package/cjs/S3514/meta.js +3 -3
  451. package/cjs/S3514/rule.js +3 -3
  452. package/cjs/S3516/generated-meta.js +5 -4
  453. package/cjs/S3516/index.js +3 -3
  454. package/cjs/S3516/meta.js +3 -3
  455. package/cjs/S3516/rule.js +102 -3
  456. package/cjs/S3524/config.js +3 -3
  457. package/cjs/S3524/generated-meta.js +6 -4
  458. package/cjs/S3524/index.js +3 -3
  459. package/cjs/S3524/meta.js +3 -3
  460. package/cjs/S3524/rule.js +3 -3
  461. package/cjs/S3525/generated-meta.js +6 -4
  462. package/cjs/S3525/index.js +3 -3
  463. package/cjs/S3525/meta.js +3 -3
  464. package/cjs/S3525/rule.js +3 -3
  465. package/cjs/S3531/generated-meta.js +6 -4
  466. package/cjs/S3531/index.js +3 -3
  467. package/cjs/S3531/meta.js +3 -3
  468. package/cjs/S3531/rule.js +3 -3
  469. package/cjs/S3533/generated-meta.js +6 -4
  470. package/cjs/S3533/index.js +3 -3
  471. package/cjs/S3533/meta.js +3 -3
  472. package/cjs/S3533/rule.js +3 -3
  473. package/cjs/S3579/generated-meta.js +5 -4
  474. package/cjs/S3579/index.js +3 -3
  475. package/cjs/S3579/meta.js +3 -3
  476. package/cjs/S3579/rule.js +3 -3
  477. package/cjs/S3616/generated-meta.js +5 -4
  478. package/cjs/S3616/index.js +3 -3
  479. package/cjs/S3616/meta.js +3 -3
  480. package/cjs/S3616/rule.js +3 -3
  481. package/cjs/S3626/generated-meta.js +5 -4
  482. package/cjs/S3626/index.js +3 -3
  483. package/cjs/S3626/meta.js +3 -3
  484. package/cjs/S3626/rule.js +4 -4
  485. package/cjs/S3686/generated-meta.js +5 -4
  486. package/cjs/S3686/index.js +3 -3
  487. package/cjs/S3686/meta.js +3 -3
  488. package/cjs/S3686/rule.js +3 -3
  489. package/cjs/S3699/generated-meta.js +5 -4
  490. package/cjs/S3699/index.js +3 -3
  491. package/cjs/S3699/meta.js +3 -3
  492. package/cjs/S3699/rule.js +4 -4
  493. package/cjs/S3735/generated-meta.js +5 -4
  494. package/cjs/S3735/index.js +3 -3
  495. package/cjs/S3735/meta.js +3 -3
  496. package/cjs/S3735/rule.js +3 -3
  497. package/cjs/S3757/generated-meta.js +5 -4
  498. package/cjs/S3757/index.js +3 -3
  499. package/cjs/S3757/meta.js +3 -3
  500. package/cjs/S3757/rule.js +6 -4
  501. package/cjs/S3758/generated-meta.js +5 -4
  502. package/cjs/S3758/index.js +3 -3
  503. package/cjs/S3758/meta.js +3 -3
  504. package/cjs/S3758/rule.js +3 -3
  505. package/cjs/S3760/generated-meta.js +5 -4
  506. package/cjs/S3760/index.js +3 -3
  507. package/cjs/S3760/meta.js +3 -3
  508. package/cjs/S3760/rule.js +3 -3
  509. package/cjs/S3776/config.js +3 -3
  510. package/cjs/S3776/generated-meta.js +5 -4
  511. package/cjs/S3776/index.js +3 -3
  512. package/cjs/S3776/meta.js +12 -4
  513. package/cjs/S3776/rule.js +13 -16
  514. package/cjs/S3782/generated-meta.js +5 -4
  515. package/cjs/S3782/index.js +3 -3
  516. package/cjs/S3782/meta.js +3 -3
  517. package/cjs/S3782/rule.js +4 -4
  518. package/cjs/S3785/generated-meta.js +5 -4
  519. package/cjs/S3785/index.js +3 -3
  520. package/cjs/S3785/meta.js +3 -3
  521. package/cjs/S3785/rule.js +3 -3
  522. package/cjs/S3796/generated-meta.js +5 -4
  523. package/cjs/S3796/index.js +3 -3
  524. package/cjs/S3796/meta.js +3 -3
  525. package/cjs/S3796/rule.js +3 -3
  526. package/cjs/S3798/generated-meta.js +5 -4
  527. package/cjs/S3798/index.js +3 -3
  528. package/cjs/S3798/meta.js +3 -3
  529. package/cjs/S3798/rule.js +57 -17
  530. package/cjs/S3800/generated-meta.js +5 -4
  531. package/cjs/S3800/index.js +3 -3
  532. package/cjs/S3800/meta.js +3 -3
  533. package/cjs/S3800/rule.js +3 -3
  534. package/cjs/S3801/generated-meta.js +5 -4
  535. package/cjs/S3801/index.js +3 -3
  536. package/cjs/S3801/meta.js +3 -3
  537. package/cjs/S3801/rule.js +3 -3
  538. package/cjs/S3827/generated-meta.js +5 -4
  539. package/cjs/S3827/index.js +3 -3
  540. package/cjs/S3827/meta.js +3 -3
  541. package/cjs/S3923/generated-meta.js +5 -4
  542. package/cjs/S3923/index.js +3 -3
  543. package/cjs/S3923/meta.js +3 -3
  544. package/cjs/S3923/rule.js +3 -3
  545. package/cjs/S3972/generated-meta.js +5 -4
  546. package/cjs/S3972/index.js +3 -3
  547. package/cjs/S3972/meta.js +3 -3
  548. package/cjs/S3972/rule.js +3 -3
  549. package/cjs/S3973/generated-meta.js +5 -4
  550. package/cjs/S3973/index.js +3 -3
  551. package/cjs/S3973/meta.js +3 -3
  552. package/cjs/S3973/rule.js +3 -3
  553. package/cjs/S3981/generated-meta.js +5 -4
  554. package/cjs/S3981/index.js +3 -3
  555. package/cjs/S3981/meta.js +3 -3
  556. package/cjs/S3981/rule.js +3 -3
  557. package/cjs/S3984/generated-meta.js +5 -4
  558. package/cjs/S3984/index.js +3 -3
  559. package/cjs/S3984/meta.js +3 -3
  560. package/cjs/S3984/rule.js +3 -3
  561. package/cjs/S4030/generated-meta.js +5 -4
  562. package/cjs/S4030/index.js +3 -3
  563. package/cjs/S4030/meta.js +3 -3
  564. package/cjs/S4030/rule.js +5 -5
  565. package/cjs/S4036/generated-meta.js +6 -5
  566. package/cjs/S4036/index.js +3 -3
  567. package/cjs/S4036/meta.js +3 -3
  568. package/cjs/S4036/rule.js +4 -4
  569. package/cjs/S4043/generated-meta.js +5 -4
  570. package/cjs/S4043/index.js +3 -3
  571. package/cjs/S4043/meta.js +3 -3
  572. package/cjs/S4043/rule.js +3 -3
  573. package/cjs/S4139/generated-meta.js +5 -4
  574. package/cjs/S4139/index.js +3 -3
  575. package/cjs/S4139/meta.js +3 -3
  576. package/cjs/S4139/rule.js +3 -3
  577. package/cjs/S4143/generated-meta.js +5 -4
  578. package/cjs/S4143/index.js +3 -3
  579. package/cjs/S4143/meta.js +3 -3
  580. package/cjs/S4143/rule.js +3 -3
  581. package/cjs/S4144/config.js +3 -3
  582. package/cjs/S4144/generated-meta.js +5 -4
  583. package/cjs/S4144/index.js +3 -3
  584. package/cjs/S4144/meta.js +3 -3
  585. package/cjs/S4144/rule.js +3 -3
  586. package/cjs/S4158/generated-meta.js +5 -4
  587. package/cjs/S4158/index.js +3 -3
  588. package/cjs/S4158/meta.js +3 -3
  589. package/cjs/S4158/rule.js +4 -4
  590. package/cjs/S4165/generated-meta.js +5 -4
  591. package/cjs/S4165/index.js +3 -3
  592. package/cjs/S4165/meta.js +3 -3
  593. package/cjs/S4165/rule.js +3 -3
  594. package/cjs/S4322/generated-meta.js +5 -4
  595. package/cjs/S4322/index.js +3 -3
  596. package/cjs/S4322/meta.js +3 -3
  597. package/cjs/S4322/rule.js +3 -3
  598. package/cjs/S4323/generated-meta.js +5 -4
  599. package/cjs/S4323/index.js +3 -3
  600. package/cjs/S4323/meta.js +3 -3
  601. package/cjs/S4323/rule.js +3 -3
  602. package/cjs/S4324/generated-meta.js +5 -4
  603. package/cjs/S4324/index.js +3 -3
  604. package/cjs/S4324/meta.js +3 -3
  605. package/cjs/S4324/rule.js +3 -3
  606. package/cjs/S4328/config.js +3 -3
  607. package/cjs/S4328/generated-meta.js +5 -4
  608. package/cjs/S4328/index.js +3 -3
  609. package/cjs/S4328/meta.js +3 -3
  610. package/cjs/S4328/rule.js +10 -5
  611. package/cjs/S4335/generated-meta.js +5 -4
  612. package/cjs/S4335/index.js +3 -3
  613. package/cjs/S4335/meta.js +3 -3
  614. package/cjs/S4335/rule.js +3 -3
  615. package/cjs/S4423/generated-meta.js +5 -4
  616. package/cjs/S4423/index.js +3 -3
  617. package/cjs/S4423/meta.js +3 -3
  618. package/cjs/S4423/rule.aws.js +3 -3
  619. package/cjs/S4423/rule.js +3 -3
  620. package/cjs/S4423/rule.lib.js +3 -3
  621. package/cjs/S4426/generated-meta.js +5 -4
  622. package/cjs/S4426/index.js +3 -3
  623. package/cjs/S4426/meta.js +3 -3
  624. package/cjs/S4426/rule.js +3 -3
  625. package/cjs/S4502/generated-meta.js +6 -5
  626. package/cjs/S4502/index.js +3 -3
  627. package/cjs/S4502/meta.js +3 -3
  628. package/cjs/S4502/rule.js +3 -3
  629. package/cjs/S4507/generated-meta.js +6 -5
  630. package/cjs/S4507/index.js +3 -3
  631. package/cjs/S4507/meta.js +3 -3
  632. package/cjs/S4507/rule.js +3 -3
  633. package/cjs/S4524/generated-meta.js +5 -4
  634. package/cjs/S4524/index.js +3 -3
  635. package/cjs/S4524/meta.js +3 -3
  636. package/cjs/S4524/rule.js +3 -3
  637. package/cjs/S4619/generated-meta.js +5 -4
  638. package/cjs/S4619/index.js +3 -3
  639. package/cjs/S4619/meta.js +3 -3
  640. package/cjs/S4619/rule.js +3 -3
  641. package/cjs/S4621/generated-meta.js +5 -4
  642. package/cjs/S4621/index.js +3 -3
  643. package/cjs/S4621/meta.js +3 -3
  644. package/cjs/S4621/rule.js +3 -3
  645. package/cjs/S4622/config.js +3 -3
  646. package/cjs/S4622/generated-meta.js +5 -4
  647. package/cjs/S4622/index.js +3 -3
  648. package/cjs/S4622/meta.js +3 -3
  649. package/cjs/S4622/rule.js +3 -3
  650. package/cjs/S4623/generated-meta.js +5 -4
  651. package/cjs/S4623/index.js +3 -3
  652. package/cjs/S4623/meta.js +3 -3
  653. package/cjs/S4623/rule.js +3 -3
  654. package/cjs/S4624/generated-meta.js +6 -4
  655. package/cjs/S4624/index.js +3 -3
  656. package/cjs/S4624/meta.js +3 -3
  657. package/cjs/S4624/rule.js +5 -10
  658. package/cjs/S4634/generated-meta.js +6 -4
  659. package/cjs/S4634/index.js +3 -3
  660. package/cjs/S4634/meta.js +3 -3
  661. package/cjs/S4634/rule.js +3 -3
  662. package/cjs/S4721/generated-meta.js +8 -7
  663. package/cjs/S4721/index.js +3 -3
  664. package/cjs/S4721/meta.js +3 -3
  665. package/cjs/S4721/rule.js +3 -3
  666. package/cjs/S4782/generated-meta.js +5 -4
  667. package/cjs/S4782/index.js +3 -3
  668. package/cjs/S4782/meta.js +3 -3
  669. package/cjs/S4782/rule.js +99 -17
  670. package/cjs/S4790/generated-meta.js +6 -5
  671. package/cjs/S4790/index.js +3 -3
  672. package/cjs/S4790/meta.js +3 -3
  673. package/cjs/S4790/rule.js +220 -5
  674. package/cjs/S4798/generated-meta.js +5 -4
  675. package/cjs/S4798/index.js +3 -3
  676. package/cjs/S4798/meta.js +3 -3
  677. package/cjs/S4798/rule.js +3 -3
  678. package/cjs/S4822/generated-meta.js +6 -4
  679. package/cjs/S4822/index.js +3 -3
  680. package/cjs/S4822/meta.js +3 -3
  681. package/cjs/S4822/rule.js +3 -3
  682. package/cjs/S4830/generated-meta.js +5 -4
  683. package/cjs/S4830/index.js +3 -3
  684. package/cjs/S4830/meta.js +3 -3
  685. package/cjs/S4830/rule.js +3 -3
  686. package/cjs/S5042/generated-meta.js +9 -8
  687. package/cjs/S5042/index.js +3 -3
  688. package/cjs/S5042/meta.js +3 -3
  689. package/cjs/S5042/rule.js +3 -3
  690. package/cjs/S5122/generated-meta.js +6 -5
  691. package/cjs/S5122/index.js +3 -3
  692. package/cjs/S5122/meta.js +3 -3
  693. package/cjs/S5122/rule.js +3 -3
  694. package/cjs/S5148/generated-meta.js +6 -5
  695. package/cjs/S5148/index.js +3 -3
  696. package/cjs/S5148/meta.js +3 -3
  697. package/cjs/S5148/rule.js +3 -3
  698. package/cjs/S5247/generated-meta.js +6 -5
  699. package/cjs/S5247/index.js +3 -3
  700. package/cjs/S5247/meta.js +3 -3
  701. package/cjs/S5247/rule.js +3 -3
  702. package/cjs/S5256/generated-meta.js +5 -4
  703. package/cjs/S5256/index.js +3 -3
  704. package/cjs/S5256/meta.js +3 -3
  705. package/cjs/S5256/rule.js +3 -3
  706. package/cjs/S5257/generated-meta.js +5 -4
  707. package/cjs/S5257/index.js +3 -3
  708. package/cjs/S5257/meta.js +3 -3
  709. package/cjs/S5257/rule.js +3 -3
  710. package/cjs/S5260/generated-meta.js +5 -4
  711. package/cjs/S5260/index.js +3 -3
  712. package/cjs/S5260/meta.js +3 -3
  713. package/cjs/S5260/rule.js +3 -3
  714. package/cjs/S5264/generated-meta.js +5 -4
  715. package/cjs/S5264/index.js +3 -3
  716. package/cjs/S5264/meta.js +3 -3
  717. package/cjs/S5264/rule.js +3 -3
  718. package/cjs/S5332/generated-meta.js +6 -5
  719. package/cjs/S5332/index.js +3 -3
  720. package/cjs/S5332/meta.js +3 -3
  721. package/cjs/S5332/rule.aws.js +3 -3
  722. package/cjs/S5332/rule.js +3 -3
  723. package/cjs/S5332/rule.lib.js +57 -49
  724. package/cjs/S5443/generated-meta.js +6 -5
  725. package/cjs/S5443/index.js +3 -3
  726. package/cjs/S5443/meta.js +3 -3
  727. package/cjs/S5443/rule.js +3 -3
  728. package/cjs/S5527/generated-meta.js +5 -4
  729. package/cjs/S5527/index.js +3 -3
  730. package/cjs/S5527/meta.js +3 -3
  731. package/cjs/S5527/rule.js +3 -3
  732. package/cjs/S5542/generated-meta.js +5 -4
  733. package/cjs/S5542/index.js +3 -3
  734. package/cjs/S5542/meta.js +3 -3
  735. package/cjs/S5542/rule.js +3 -3
  736. package/cjs/S5547/generated-meta.js +5 -4
  737. package/cjs/S5547/index.js +3 -3
  738. package/cjs/S5547/meta.js +3 -3
  739. package/cjs/S5547/rule.js +3 -3
  740. package/cjs/S5604/config.js +3 -3
  741. package/cjs/S5604/generated-meta.js +8 -7
  742. package/cjs/S5604/index.js +3 -3
  743. package/cjs/S5604/meta.js +3 -3
  744. package/cjs/S5604/rule.js +3 -3
  745. package/cjs/S5659/generated-meta.js +5 -4
  746. package/cjs/S5659/index.js +3 -3
  747. package/cjs/S5659/meta.js +3 -3
  748. package/cjs/S5659/rule.js +3 -3
  749. package/cjs/S5689/generated-meta.js +6 -5
  750. package/cjs/S5689/index.js +3 -3
  751. package/cjs/S5689/meta.js +3 -3
  752. package/cjs/S5689/rule.js +3 -3
  753. package/cjs/S5691/generated-meta.js +8 -7
  754. package/cjs/S5691/index.js +3 -3
  755. package/cjs/S5691/meta.js +3 -3
  756. package/cjs/S5691/rule.js +3 -3
  757. package/cjs/S5693/config.js +3 -3
  758. package/cjs/S5693/generated-meta.js +6 -5
  759. package/cjs/S5693/index.js +3 -3
  760. package/cjs/S5693/meta.js +3 -3
  761. package/cjs/S5693/rule.js +48 -4
  762. package/cjs/S5725/generated-meta.js +6 -5
  763. package/cjs/S5725/index.js +3 -3
  764. package/cjs/S5725/meta.js +3 -3
  765. package/cjs/S5725/rule.js +78 -15
  766. package/cjs/S5728/generated-meta.js +6 -5
  767. package/cjs/S5728/index.js +3 -3
  768. package/cjs/S5728/meta.js +3 -3
  769. package/cjs/S5728/rule.js +3 -3
  770. package/cjs/S5730/generated-meta.js +8 -7
  771. package/cjs/S5730/index.js +3 -3
  772. package/cjs/S5730/meta.js +3 -3
  773. package/cjs/S5730/rule.js +3 -3
  774. package/cjs/S5732/generated-meta.js +8 -7
  775. package/cjs/S5732/index.js +3 -3
  776. package/cjs/S5732/meta.js +3 -3
  777. package/cjs/S5732/rule.js +3 -3
  778. package/cjs/S5734/generated-meta.js +6 -5
  779. package/cjs/S5734/index.js +3 -3
  780. package/cjs/S5734/meta.js +3 -3
  781. package/cjs/S5734/rule.js +3 -3
  782. package/cjs/S5736/generated-meta.js +6 -5
  783. package/cjs/S5736/index.js +3 -3
  784. package/cjs/S5736/meta.js +3 -3
  785. package/cjs/S5736/rule.js +3 -3
  786. package/cjs/S5739/generated-meta.js +6 -5
  787. package/cjs/S5739/index.js +3 -3
  788. package/cjs/S5739/meta.js +3 -3
  789. package/cjs/S5739/rule.js +3 -3
  790. package/cjs/S5757/generated-meta.js +8 -7
  791. package/cjs/S5757/index.js +3 -3
  792. package/cjs/S5757/meta.js +3 -3
  793. package/cjs/S5757/rule.js +3 -3
  794. package/cjs/S5759/generated-meta.js +8 -7
  795. package/cjs/S5759/index.js +3 -3
  796. package/cjs/S5759/meta.js +3 -3
  797. package/cjs/S5759/rule.js +3 -3
  798. package/cjs/S5842/generated-meta.js +5 -4
  799. package/cjs/S5842/index.js +3 -3
  800. package/cjs/S5842/meta.js +3 -3
  801. package/cjs/S5842/rule.js +3 -3
  802. package/cjs/S5843/config.js +3 -3
  803. package/cjs/S5843/generated-meta.js +5 -4
  804. package/cjs/S5843/index.js +3 -3
  805. package/cjs/S5843/meta.js +3 -3
  806. package/cjs/S5843/rule.js +3 -3
  807. package/cjs/S5845/generated-meta.js +52 -0
  808. package/cjs/{S2255 → S5845}/index.js +3 -3
  809. package/cjs/{S2255 → S5845}/meta.js +4 -4
  810. package/cjs/S5845/rule.js +296 -0
  811. package/cjs/S5850/generated-meta.js +5 -4
  812. package/cjs/S5850/index.js +3 -3
  813. package/cjs/S5850/meta.js +3 -3
  814. package/cjs/S5850/rule.js +3 -3
  815. package/cjs/S5852/generated-meta.js +6 -5
  816. package/cjs/S5852/index.js +3 -3
  817. package/cjs/S5852/meta.js +3 -3
  818. package/cjs/S5852/rule.js +14 -6
  819. package/cjs/S5856/generated-meta.js +5 -4
  820. package/cjs/S5856/index.js +3 -3
  821. package/cjs/S5856/meta.js +3 -3
  822. package/cjs/S5856/rule.js +3 -3
  823. package/cjs/S5860/generated-meta.js +5 -4
  824. package/cjs/S5860/index.js +3 -3
  825. package/cjs/S5860/meta.js +3 -3
  826. package/cjs/S5860/rule.js +3 -3
  827. package/cjs/S5863/generated-meta.js +5 -4
  828. package/cjs/S5863/index.js +3 -3
  829. package/cjs/S5863/meta.js +3 -3
  830. package/cjs/S5863/rule.js +3 -3
  831. package/cjs/S5867/generated-meta.js +5 -4
  832. package/cjs/S5867/index.js +3 -3
  833. package/cjs/S5867/meta.js +3 -3
  834. package/cjs/S5867/rule.js +3 -3
  835. package/cjs/S5868/generated-meta.js +5 -4
  836. package/cjs/S5868/index.js +3 -3
  837. package/cjs/S5868/meta.js +3 -3
  838. package/cjs/S5868/rule.js +57 -28
  839. package/cjs/S5869/generated-meta.js +5 -4
  840. package/cjs/S5869/index.js +3 -3
  841. package/cjs/S5869/meta.js +3 -3
  842. package/cjs/S5869/rule.js +3 -3
  843. package/cjs/S5876/generated-meta.js +5 -4
  844. package/cjs/S5876/index.js +3 -3
  845. package/cjs/S5876/meta.js +3 -3
  846. package/cjs/S5876/rule.js +3 -3
  847. package/cjs/S5906/assertion-suggestions.js +279 -0
  848. package/cjs/S5906/assertion-utils.js +103 -0
  849. package/cjs/S5906/cypress-suggestions.js +62 -0
  850. package/cjs/S5906/expect-chain.js +16 -0
  851. package/cjs/S5906/generated-meta.js +52 -0
  852. package/cjs/{S4787 → S5906}/index.js +3 -3
  853. package/cjs/{S4818 → S5906}/meta.js +4 -4
  854. package/cjs/S5906/playwright-suggestions.js +103 -0
  855. package/cjs/S5906/rule.js +365 -0
  856. package/cjs/S5914/generated-meta.js +52 -0
  857. package/cjs/{S4817 → S5914}/index.js +3 -3
  858. package/cjs/{S4787 → S5914}/meta.js +4 -4
  859. package/cjs/S5914/rule.js +213 -0
  860. package/cjs/S5958/generated-meta.js +5 -4
  861. package/cjs/S5958/index.js +3 -3
  862. package/cjs/S5958/meta.js +3 -3
  863. package/cjs/S5958/rule.js +3 -3
  864. package/cjs/S5973/generated-meta.js +5 -4
  865. package/cjs/S5973/index.js +3 -3
  866. package/cjs/S5973/meta.js +3 -3
  867. package/cjs/S5973/rule.js +4 -4
  868. package/cjs/S6019/generated-meta.js +5 -4
  869. package/cjs/S6019/index.js +3 -3
  870. package/cjs/S6019/meta.js +3 -3
  871. package/cjs/S6019/rule.js +3 -3
  872. package/cjs/S6035/generated-meta.js +5 -4
  873. package/cjs/S6035/index.js +3 -3
  874. package/cjs/S6035/meta.js +3 -3
  875. package/cjs/S6035/rule.js +3 -3
  876. package/cjs/S6079/generated-meta.js +5 -4
  877. package/cjs/S6079/index.js +3 -3
  878. package/cjs/S6079/meta.js +3 -3
  879. package/cjs/S6079/rule.js +3 -3
  880. package/cjs/S6080/generated-meta.js +5 -4
  881. package/cjs/S6080/index.js +3 -3
  882. package/cjs/S6080/meta.js +3 -3
  883. package/cjs/S6080/rule.js +3 -3
  884. package/cjs/S6092/generated-meta.js +5 -4
  885. package/cjs/S6092/index.js +3 -3
  886. package/cjs/S6092/meta.js +3 -3
  887. package/cjs/S6092/rule.js +3 -3
  888. package/cjs/S6249/generated-meta.js +6 -5
  889. package/cjs/S6249/index.js +3 -3
  890. package/cjs/S6249/meta.js +3 -3
  891. package/cjs/S6249/rule.js +3 -3
  892. package/cjs/S6252/generated-meta.js +6 -5
  893. package/cjs/S6252/index.js +3 -3
  894. package/cjs/S6252/meta.js +3 -3
  895. package/cjs/S6252/rule.js +3 -3
  896. package/cjs/S6265/generated-meta.js +6 -5
  897. package/cjs/S6265/index.js +3 -3
  898. package/cjs/S6265/meta.js +3 -3
  899. package/cjs/S6265/rule.js +3 -3
  900. package/cjs/S6268/generated-meta.js +6 -5
  901. package/cjs/S6268/index.js +3 -3
  902. package/cjs/S6268/meta.js +3 -3
  903. package/cjs/S6268/rule.js +3 -3
  904. package/cjs/S6270/generated-meta.js +6 -5
  905. package/cjs/S6270/index.js +3 -3
  906. package/cjs/S6270/meta.js +3 -3
  907. package/cjs/S6270/rule.js +3 -3
  908. package/cjs/S6275/generated-meta.js +6 -5
  909. package/cjs/S6275/index.js +3 -3
  910. package/cjs/S6275/meta.js +3 -3
  911. package/cjs/S6275/rule.js +3 -3
  912. package/cjs/S6281/generated-meta.js +6 -5
  913. package/cjs/S6281/index.js +3 -3
  914. package/cjs/S6281/meta.js +3 -3
  915. package/cjs/S6281/rule.js +10 -23
  916. package/cjs/S6302/generated-meta.js +6 -5
  917. package/cjs/S6302/index.js +3 -3
  918. package/cjs/S6302/meta.js +3 -3
  919. package/cjs/S6302/rule.js +3 -3
  920. package/cjs/S6303/generated-meta.js +6 -5
  921. package/cjs/S6303/index.js +3 -3
  922. package/cjs/S6303/meta.js +3 -3
  923. package/cjs/S6303/rule.js +3 -3
  924. package/cjs/S6304/generated-meta.js +6 -5
  925. package/cjs/S6304/index.js +3 -3
  926. package/cjs/S6304/meta.js +3 -3
  927. package/cjs/S6304/rule.js +3 -3
  928. package/cjs/S6308/generated-meta.js +6 -5
  929. package/cjs/S6308/index.js +3 -3
  930. package/cjs/S6308/meta.js +3 -3
  931. package/cjs/S6308/rule.js +3 -3
  932. package/cjs/S6317/generated-meta.js +5 -4
  933. package/cjs/S6317/index.js +3 -3
  934. package/cjs/S6317/meta.js +3 -3
  935. package/cjs/S6317/rule.js +3 -3
  936. package/cjs/S6319/generated-meta.js +6 -5
  937. package/cjs/S6319/index.js +3 -3
  938. package/cjs/S6319/meta.js +3 -3
  939. package/cjs/S6319/rule.js +3 -3
  940. package/cjs/S6321/generated-meta.js +5 -4
  941. package/cjs/S6321/index.js +3 -3
  942. package/cjs/S6321/meta.js +3 -3
  943. package/cjs/S6321/rule.js +3 -3
  944. package/cjs/S6323/generated-meta.js +5 -4
  945. package/cjs/S6323/index.js +3 -3
  946. package/cjs/S6323/meta.js +3 -3
  947. package/cjs/S6323/rule.js +3 -3
  948. package/cjs/S6324/generated-meta.js +5 -4
  949. package/cjs/S6324/index.js +3 -3
  950. package/cjs/S6324/meta.js +3 -3
  951. package/cjs/S6324/rule.js +8 -8
  952. package/cjs/S6326/generated-meta.js +5 -4
  953. package/cjs/S6326/index.js +3 -3
  954. package/cjs/S6326/meta.js +3 -3
  955. package/cjs/S6326/rule.js +3 -3
  956. package/cjs/S6327/generated-meta.js +6 -5
  957. package/cjs/S6327/index.js +3 -3
  958. package/cjs/S6327/meta.js +3 -3
  959. package/cjs/S6327/rule.js +3 -3
  960. package/cjs/S6328/generated-meta.js +5 -4
  961. package/cjs/S6328/index.js +3 -3
  962. package/cjs/S6328/meta.js +3 -3
  963. package/cjs/S6328/rule.js +3 -3
  964. package/cjs/S6329/generated-meta.js +6 -5
  965. package/cjs/S6329/index.js +3 -3
  966. package/cjs/S6329/meta.js +3 -3
  967. package/cjs/S6329/rule.js +3 -3
  968. package/cjs/S6330/generated-meta.js +6 -5
  969. package/cjs/S6330/index.js +3 -3
  970. package/cjs/S6330/meta.js +3 -3
  971. package/cjs/S6330/rule.js +3 -3
  972. package/cjs/S6331/generated-meta.js +5 -4
  973. package/cjs/S6331/index.js +3 -3
  974. package/cjs/S6331/meta.js +3 -3
  975. package/cjs/S6331/rule.js +3 -3
  976. package/cjs/S6332/generated-meta.js +6 -5
  977. package/cjs/S6332/index.js +3 -3
  978. package/cjs/S6332/meta.js +3 -3
  979. package/cjs/S6332/rule.js +3 -3
  980. package/cjs/S6333/generated-meta.js +6 -5
  981. package/cjs/S6333/index.js +3 -3
  982. package/cjs/S6333/meta.js +3 -3
  983. package/cjs/S6333/rule.js +3 -3
  984. package/cjs/S6351/generated-meta.js +5 -4
  985. package/cjs/S6351/index.js +3 -3
  986. package/cjs/S6351/meta.js +3 -3
  987. package/cjs/S6351/rule.js +3 -3
  988. package/cjs/S6353/generated-meta.js +5 -4
  989. package/cjs/S6353/index.js +3 -3
  990. package/cjs/S6353/meta.js +3 -3
  991. package/cjs/S6353/rule.js +3 -3
  992. package/cjs/S6397/generated-meta.js +5 -4
  993. package/cjs/S6397/index.js +3 -3
  994. package/cjs/S6397/meta.js +3 -3
  995. package/cjs/S6397/rule.js +3 -3
  996. package/cjs/S6418/config.js +3 -3
  997. package/cjs/S6418/generated-meta.js +5 -4
  998. package/cjs/S6418/index.js +3 -3
  999. package/cjs/S6418/meta.js +3 -3
  1000. package/cjs/S6418/rule.js +3 -3
  1001. package/cjs/S6426/generated-meta.js +5 -4
  1002. package/cjs/S6426/index.js +3 -3
  1003. package/cjs/S6426/meta.js +3 -3
  1004. package/cjs/S6426/rule.js +9 -4
  1005. package/cjs/S6437/generated-meta.js +5 -4
  1006. package/cjs/S6437/index.js +3 -3
  1007. package/cjs/S6437/meta.js +3 -3
  1008. package/cjs/S6437/rule.js +12 -5
  1009. package/cjs/S6439/generated-meta.js +6 -5
  1010. package/cjs/S6439/index.js +3 -3
  1011. package/cjs/S6439/meta.js +3 -3
  1012. package/cjs/S6439/rule.js +3 -3
  1013. package/cjs/S6442/generated-meta.js +6 -5
  1014. package/cjs/S6442/index.js +3 -3
  1015. package/cjs/S6442/meta.js +3 -3
  1016. package/cjs/S6442/rule.js +3 -3
  1017. package/cjs/S6443/generated-meta.js +6 -5
  1018. package/cjs/S6443/index.js +3 -3
  1019. package/cjs/S6443/meta.js +3 -3
  1020. package/cjs/S6443/rule.js +3 -3
  1021. package/cjs/S6486/generated-meta.js +5 -4
  1022. package/cjs/S6486/index.js +3 -3
  1023. package/cjs/S6486/meta.js +3 -3
  1024. package/cjs/S6486/rule.js +8 -8
  1025. package/cjs/S6564/generated-meta.js +5 -4
  1026. package/cjs/S6564/index.js +3 -3
  1027. package/cjs/S6564/meta.js +3 -3
  1028. package/cjs/S6564/rule.js +3 -3
  1029. package/cjs/S6594/generated-meta.js +5 -4
  1030. package/cjs/S6594/index.js +3 -3
  1031. package/cjs/S6594/meta.js +3 -3
  1032. package/cjs/S6594/rule.js +3 -3
  1033. package/cjs/S6627/generated-meta.js +5 -4
  1034. package/cjs/S6627/index.js +3 -3
  1035. package/cjs/S6627/meta.js +3 -3
  1036. package/cjs/S6627/rule.js +3 -3
  1037. package/cjs/S6759/generated-meta.js +5 -4
  1038. package/cjs/S6759/index.js +3 -3
  1039. package/cjs/S6759/meta.js +3 -3
  1040. package/cjs/S6759/rule.js +34 -4
  1041. package/cjs/S6958/generated-meta.js +5 -4
  1042. package/cjs/S6958/index.js +3 -3
  1043. package/cjs/S6958/meta.js +3 -3
  1044. package/cjs/S6959/generated-meta.js +5 -4
  1045. package/cjs/S6959/index.js +3 -3
  1046. package/cjs/S6959/meta.js +3 -3
  1047. package/cjs/S6959/rule.js +3 -3
  1048. package/cjs/S7059/generated-meta.js +6 -4
  1049. package/cjs/S7059/index.js +3 -3
  1050. package/cjs/S7059/meta.js +3 -3
  1051. package/cjs/S7059/rule.js +3 -3
  1052. package/cjs/S7639/generated-meta.js +5 -4
  1053. package/cjs/S7639/index.js +3 -3
  1054. package/cjs/S7639/meta.js +3 -3
  1055. package/cjs/S7639/rule.js +3 -3
  1056. package/cjs/S7790/generated-meta.js +5 -4
  1057. package/cjs/S7790/index.js +3 -3
  1058. package/cjs/S7790/meta.js +3 -3
  1059. package/cjs/S7790/rule.js +3 -3
  1060. package/cjs/S8441/generated-meta.js +5 -4
  1061. package/cjs/S8441/index.js +3 -3
  1062. package/cjs/S8441/meta.js +3 -3
  1063. package/cjs/S8441/rule.js +3 -3
  1064. package/cjs/{S4817 → S8479}/generated-meta.js +12 -11
  1065. package/cjs/S8479/index.js +21 -0
  1066. package/cjs/S8479/meta.js +22 -0
  1067. package/cjs/S8479/rule.js +239 -0
  1068. package/cjs/S8754/generated-meta.js +52 -0
  1069. package/cjs/S8754/index.js +21 -0
  1070. package/cjs/{S5743 → S8754}/meta.js +4 -4
  1071. package/cjs/S8754/rule.js +289 -0
  1072. package/cjs/{S4784 → S8780}/generated-meta.js +12 -11
  1073. package/cjs/S8780/index.js +21 -0
  1074. package/cjs/S8780/meta.js +21 -0
  1075. package/cjs/S8780/rule.js +321 -0
  1076. package/cjs/S8781/generated-meta.js +52 -0
  1077. package/cjs/S8781/index.js +21 -0
  1078. package/cjs/S8781/meta.js +21 -0
  1079. package/cjs/S8781/rule.js +112 -0
  1080. package/cjs/S8782/generated-meta.js +52 -0
  1081. package/cjs/S8782/index.js +21 -0
  1082. package/cjs/S8782/meta.js +21 -0
  1083. package/cjs/S8782/rule.js +148 -0
  1084. package/cjs/S8783/generated-meta.js +52 -0
  1085. package/cjs/S8783/index.js +21 -0
  1086. package/cjs/S8783/meta.js +21 -0
  1087. package/cjs/S8783/rule.js +167 -0
  1088. package/cjs/{S4787 → S8786}/generated-meta.js +12 -11
  1089. package/cjs/S8786/index.js +21 -0
  1090. package/cjs/{S4784 → S8786}/meta.js +5 -4
  1091. package/cjs/{S4818 → S8786}/rule.js +27 -23
  1092. package/cjs/S881/generated-meta.js +5 -4
  1093. package/cjs/S881/index.js +3 -3
  1094. package/cjs/S881/meta.js +3 -3
  1095. package/cjs/S881/rule.js +3 -3
  1096. package/cjs/S888/generated-meta.js +5 -4
  1097. package/cjs/S888/index.js +3 -3
  1098. package/cjs/S888/meta.js +3 -3
  1099. package/cjs/S888/rule.js +3 -3
  1100. package/cjs/S930/generated-meta.js +5 -4
  1101. package/cjs/S930/index.js +3 -3
  1102. package/cjs/S930/meta.js +3 -3
  1103. package/cjs/S930/rule.js +3 -3
  1104. package/cjs/helpers/accessibility.js +3 -3
  1105. package/cjs/helpers/assertions-chai-common.js +29 -0
  1106. package/cjs/helpers/assertions-chai.js +331 -0
  1107. package/cjs/helpers/assertions-cypress.js +95 -0
  1108. package/cjs/helpers/assertions.js +285 -0
  1109. package/cjs/helpers/ast.js +31 -1
  1110. package/cjs/helpers/cache.js +3 -3
  1111. package/cjs/helpers/chai.js +1 -1
  1112. package/cjs/helpers/collection.js +3 -3
  1113. package/cjs/helpers/configs.js +39 -3
  1114. package/cjs/helpers/cypress.js +73 -0
  1115. package/cjs/helpers/dependency-manifests/all-in-parent-dirs.js +92 -0
  1116. package/cjs/helpers/dependency-manifests/closest.js +40 -0
  1117. package/cjs/helpers/dependency-manifests/dependencies.js +255 -0
  1118. package/cjs/helpers/dependency-manifests/index.js +78 -0
  1119. package/cjs/helpers/dependency-manifests/parse.js +51 -0
  1120. package/cjs/helpers/dependency-manifests/parsed-dependency-files.js +80 -0
  1121. package/cjs/helpers/dependency-manifests/resolvers/deno.js +79 -0
  1122. package/cjs/helpers/dependency-manifests/resolvers/helpers.js +41 -0
  1123. package/cjs/helpers/dependency-manifests/resolvers/package-json.js +167 -0
  1124. package/cjs/helpers/dependency-manifests/resolvers/types.js +4 -0
  1125. package/cjs/helpers/entropy.js +5 -5
  1126. package/cjs/helpers/files.js +33 -4
  1127. package/cjs/helpers/find-up/all-in-parent-dirs.js +1 -0
  1128. package/cjs/helpers/find-up/closest.js +4 -3
  1129. package/cjs/helpers/find-up/find-minimatch.js +2 -2
  1130. package/cjs/helpers/generate-meta.js +1 -1
  1131. package/cjs/helpers/internal-metrics.js +27 -0
  1132. package/cjs/helpers/mocha-style-test-frameworks.js +132 -0
  1133. package/cjs/helpers/mocha.js +17 -7
  1134. package/cjs/helpers/module-ts.js +8 -3
  1135. package/cjs/helpers/module.js +116 -23
  1136. package/cjs/helpers/numbers.js +62 -0
  1137. package/cjs/helpers/playwright.js +13 -0
  1138. package/cjs/helpers/recognizers/Detector.js +3 -3
  1139. package/cjs/helpers/recognizers/detectors/CamelCaseDetector.js +3 -3
  1140. package/cjs/helpers/recognizers/detectors/ContainsDetector.js +3 -3
  1141. package/cjs/helpers/recognizers/detectors/EndWithDetector.js +3 -3
  1142. package/cjs/helpers/recognizers/detectors/KeywordsDetector.js +3 -3
  1143. package/cjs/helpers/regex/extract.js +21 -9
  1144. package/cjs/helpers/regex/flags.js +12 -5
  1145. package/cjs/helpers/sinon.js +0 -4
  1146. package/cjs/helpers/supertest.js +0 -4
  1147. package/cjs/helpers/test-file-pattern.js +63 -0
  1148. package/cjs/helpers/type-origin.js +82 -0
  1149. package/cjs/helpers/type.js +162 -1
  1150. package/cjs/helpers/vitest.js +0 -4
  1151. package/cjs/plugin-rules.js +299 -299
  1152. package/docs/async-test-assertions.md +7 -0
  1153. package/docs/aws-apigateway-public-api.md +1 -1
  1154. package/docs/aws-ec2-rds-dms-public.md +1 -1
  1155. package/docs/aws-ec2-unencrypted-ebs-volume.md +1 -1
  1156. package/docs/aws-efs-unencrypted.md +1 -1
  1157. package/docs/aws-iam-all-privileges.md +1 -1
  1158. package/docs/aws-iam-all-resources-accessible.md +1 -1
  1159. package/docs/aws-iam-public-access.md +1 -1
  1160. package/docs/aws-opensearchservice-domain.md +1 -1
  1161. package/docs/aws-rds-unencrypted-databases.md +1 -1
  1162. package/docs/aws-s3-bucket-granted-access.md +1 -1
  1163. package/docs/aws-s3-bucket-insecure-http.md +1 -1
  1164. package/docs/aws-s3-bucket-public-access.md +1 -1
  1165. package/docs/aws-s3-bucket-versioning.md +1 -1
  1166. package/docs/aws-sagemaker-unencrypted-notebook.md +1 -1
  1167. package/docs/aws-sns-unencrypted-topics.md +1 -1
  1168. package/docs/aws-sqs-unencrypted-queue.md +1 -1
  1169. package/docs/class-name.md +3 -3
  1170. package/docs/code-eval.md +1 -1
  1171. package/docs/confidential-information-logging.md +4 -2
  1172. package/docs/content-length.md +1 -1
  1173. package/docs/content-security-policy.md +1 -1
  1174. package/docs/cookie-no-httponly.md +1 -1
  1175. package/docs/cors.md +1 -1
  1176. package/docs/csrf.md +1 -1
  1177. package/docs/disabled-auto-escaping.md +1 -1
  1178. package/docs/disabled-resource-integrity.md +1 -1
  1179. package/docs/dompurify-unsafe-config.md +9 -0
  1180. package/docs/frame-ancestors.md +4 -2
  1181. package/docs/hashing.md +1 -1
  1182. package/docs/hidden-files.md +4 -2
  1183. package/docs/hooks-before-test-cases.md +7 -0
  1184. package/docs/insecure-cookie.md +1 -1
  1185. package/docs/link-with-target-blank.md +1 -1
  1186. package/docs/no-angular-bypass-sanitization.md +1 -1
  1187. package/docs/no-clear-text-protocols.md +1 -1
  1188. package/docs/no-commented-code.md +1 -1
  1189. package/docs/no-duplicate-test-title.md +7 -0
  1190. package/docs/no-empty-test-title.md +7 -0
  1191. package/docs/no-floating-point-equality.md +7 -0
  1192. package/docs/no-forced-browser-interaction.md +7 -0
  1193. package/docs/no-hardcoded-ip.md +1 -1
  1194. package/docs/no-incompatible-assertion-types.md +9 -0
  1195. package/docs/no-intrusive-permissions.md +4 -2
  1196. package/docs/no-ip-forward.md +4 -2
  1197. package/docs/no-mime-sniff.md +1 -1
  1198. package/docs/no-mixed-content.md +4 -2
  1199. package/docs/no-os-command-from-path.md +1 -1
  1200. package/docs/no-referrer-policy.md +1 -1
  1201. package/docs/no-small-switch.md +2 -0
  1202. package/docs/no-trivial-assertions.md +7 -0
  1203. package/docs/no-unsafe-unzip.md +4 -2
  1204. package/docs/os-command.md +4 -2
  1205. package/docs/prefer-specific-assertions.md +9 -0
  1206. package/docs/production-debug.md +1 -1
  1207. package/docs/pseudo-random.md +1 -1
  1208. package/docs/publicly-writable-directories.md +1 -1
  1209. package/docs/slow-regex.md +1 -1
  1210. package/docs/sql-queries.md +1 -1
  1211. package/docs/strict-transport-security.md +1 -1
  1212. package/docs/super-linear-regex.md +7 -0
  1213. package/docs/x-powered-by.md +1 -1
  1214. package/package.json +7 -6
  1215. package/types/S100/generated-meta.d.ts +1 -0
  1216. package/types/S101/config.d.ts +1 -1
  1217. package/types/S101/generated-meta.d.ts +1 -0
  1218. package/types/S104/generated-meta.d.ts +1 -0
  1219. package/types/S105/generated-meta.d.ts +1 -0
  1220. package/types/S1066/generated-meta.d.ts +1 -0
  1221. package/types/S1067/generated-meta.d.ts +1 -0
  1222. package/types/S1110/generated-meta.d.ts +1 -0
  1223. package/types/S1119/generated-meta.d.ts +1 -0
  1224. package/types/S1121/generated-meta.d.ts +1 -0
  1225. package/types/S1125/generated-meta.d.ts +1 -0
  1226. package/types/S1126/generated-meta.d.ts +1 -0
  1227. package/types/S1128/generated-meta.d.ts +2 -0
  1228. package/types/S1134/generated-meta.d.ts +1 -0
  1229. package/types/S1135/generated-meta.d.ts +1 -0
  1230. package/types/S1154/generated-meta.d.ts +1 -0
  1231. package/types/S117/generated-meta.d.ts +1 -0
  1232. package/types/S1172/generated-meta.d.ts +1 -0
  1233. package/types/S1192/generated-meta.d.ts +1 -0
  1234. package/types/S1219/generated-meta.d.ts +1 -0
  1235. package/types/S1226/generated-meta.d.ts +1 -0
  1236. package/types/S124/generated-meta.d.ts +1 -0
  1237. package/types/{S2255 → S1244}/generated-meta.d.ts +3 -2
  1238. package/types/S1244/meta.d.ts +2 -0
  1239. package/types/S125/generated-meta.d.ts +1 -0
  1240. package/types/S126/generated-meta.d.ts +1 -0
  1241. package/types/S1264/generated-meta.d.ts +1 -0
  1242. package/types/S128/generated-meta.d.ts +1 -0
  1243. package/types/S1291/generated-meta.d.ts +1 -0
  1244. package/types/S1301/generated-meta.d.ts +2 -1
  1245. package/types/S1313/generated-meta.d.ts +2 -1
  1246. package/types/S134/config.d.ts +1 -1
  1247. package/types/S134/generated-meta.d.ts +1 -0
  1248. package/types/S135/generated-meta.d.ts +1 -0
  1249. package/types/S138/generated-meta.d.ts +1 -0
  1250. package/types/S1439/generated-meta.d.ts +1 -0
  1251. package/types/S1444/generated-meta.d.ts +1 -0
  1252. package/types/S1451/generated-meta.d.ts +1 -0
  1253. package/types/S1472/generated-meta.d.ts +1 -0
  1254. package/types/S1479/generated-meta.d.ts +1 -0
  1255. package/types/S1481/generated-meta.d.ts +1 -0
  1256. package/types/S1488/generated-meta.d.ts +1 -0
  1257. package/types/S1515/generated-meta.d.ts +1 -0
  1258. package/types/S1523/generated-meta.d.ts +1 -0
  1259. package/types/S1526/generated-meta.d.ts +1 -0
  1260. package/types/S1527/generated-meta.d.ts +1 -0
  1261. package/types/S1528/generated-meta.d.ts +1 -0
  1262. package/types/S1529/generated-meta.d.ts +1 -0
  1263. package/types/S1530/generated-meta.d.ts +1 -0
  1264. package/types/S1533/generated-meta.d.ts +1 -0
  1265. package/types/S1535/generated-meta.d.ts +1 -0
  1266. package/types/S1541/generated-meta.d.ts +1 -0
  1267. package/types/S1607/generated-meta.d.ts +1 -0
  1268. package/types/S1764/generated-meta.d.ts +1 -0
  1269. package/types/S1821/generated-meta.d.ts +1 -0
  1270. package/types/S1848/generated-meta.d.ts +1 -0
  1271. package/types/S1854/generated-meta.d.ts +1 -0
  1272. package/types/S1862/generated-meta.d.ts +1 -0
  1273. package/types/S1871/generated-meta.d.ts +1 -0
  1274. package/types/S1874/generated-meta.d.ts +1 -0
  1275. package/types/S1940/generated-meta.d.ts +1 -0
  1276. package/types/S1994/generated-meta.d.ts +1 -0
  1277. package/types/S2004/generated-meta.d.ts +1 -0
  1278. package/types/S2068/generated-meta.d.ts +1 -0
  1279. package/types/S2077/generated-meta.d.ts +1 -0
  1280. package/types/S2092/generated-meta.d.ts +1 -0
  1281. package/types/S2123/generated-meta.d.ts +1 -0
  1282. package/types/S2137/generated-meta.d.ts +1 -0
  1283. package/types/S2138/generated-meta.d.ts +1 -0
  1284. package/types/S2187/generated-meta.d.ts +1 -0
  1285. package/types/S2201/generated-meta.d.ts +1 -0
  1286. package/types/S2208/generated-meta.d.ts +2 -0
  1287. package/types/S2234/generated-meta.d.ts +1 -0
  1288. package/types/S2245/generated-meta.d.ts +1 -0
  1289. package/types/S2251/generated-meta.d.ts +1 -0
  1290. package/types/S2259/generated-meta.d.ts +1 -0
  1291. package/types/S2301/generated-meta.d.ts +1 -0
  1292. package/types/S2310/generated-meta.d.ts +1 -0
  1293. package/types/S2392/generated-meta.d.ts +1 -0
  1294. package/types/S2424/generated-meta.d.ts +1 -0
  1295. package/types/S2428/generated-meta.d.ts +1 -0
  1296. package/types/S2486/generated-meta.d.ts +1 -0
  1297. package/types/S2589/generated-meta.d.ts +1 -0
  1298. package/types/S2598/generated-meta.d.ts +1 -0
  1299. package/types/S2612/generated-meta.d.ts +1 -0
  1300. package/types/S2639/generated-meta.d.ts +1 -0
  1301. package/types/S2681/generated-meta.d.ts +1 -0
  1302. package/types/S2692/generated-meta.d.ts +1 -0
  1303. package/types/S2699/generated-meta.d.ts +1 -0
  1304. package/types/S2703/generated-meta.d.ts +1 -0
  1305. package/types/S2737/generated-meta.d.ts +1 -0
  1306. package/types/S2755/generated-meta.d.ts +1 -0
  1307. package/types/S2757/generated-meta.d.ts +1 -0
  1308. package/types/S2817/generated-meta.d.ts +1 -0
  1309. package/types/S2819/generated-meta.d.ts +1 -0
  1310. package/types/S2870/generated-meta.d.ts +1 -0
  1311. package/types/S2871/generated-meta.d.ts +1 -0
  1312. package/types/S2970/generated-meta.d.ts +1 -0
  1313. package/types/S2990/generated-meta.d.ts +1 -0
  1314. package/types/S2999/generated-meta.d.ts +1 -0
  1315. package/types/S3001/generated-meta.d.ts +1 -0
  1316. package/types/S3003/generated-meta.d.ts +1 -0
  1317. package/types/S3317/generated-meta.d.ts +2 -0
  1318. package/types/S3330/generated-meta.d.ts +1 -0
  1319. package/types/S3358/generated-meta.d.ts +1 -0
  1320. package/types/S3402/generated-meta.d.ts +1 -0
  1321. package/types/S3403/generated-meta.d.ts +1 -0
  1322. package/types/S3415/generated-meta.d.ts +1 -0
  1323. package/types/S3499/generated-meta.d.ts +2 -0
  1324. package/types/S3500/generated-meta.d.ts +2 -0
  1325. package/types/S3513/generated-meta.d.ts +2 -0
  1326. package/types/S3514/generated-meta.d.ts +2 -0
  1327. package/types/S3516/generated-meta.d.ts +1 -0
  1328. package/types/S3524/generated-meta.d.ts +2 -0
  1329. package/types/S3525/generated-meta.d.ts +2 -0
  1330. package/types/S3531/generated-meta.d.ts +2 -0
  1331. package/types/S3533/generated-meta.d.ts +2 -0
  1332. package/types/S3579/generated-meta.d.ts +1 -0
  1333. package/types/S3616/generated-meta.d.ts +1 -0
  1334. package/types/S3626/generated-meta.d.ts +1 -0
  1335. package/types/S3686/generated-meta.d.ts +1 -0
  1336. package/types/S3699/generated-meta.d.ts +1 -0
  1337. package/types/S3735/generated-meta.d.ts +1 -0
  1338. package/types/S3757/generated-meta.d.ts +1 -0
  1339. package/types/S3758/generated-meta.d.ts +1 -0
  1340. package/types/S3760/generated-meta.d.ts +1 -0
  1341. package/types/S3776/generated-meta.d.ts +1 -0
  1342. package/types/S3776/meta.d.ts +2 -0
  1343. package/types/S3782/generated-meta.d.ts +1 -0
  1344. package/types/S3785/generated-meta.d.ts +1 -0
  1345. package/types/S3796/generated-meta.d.ts +1 -0
  1346. package/types/S3798/generated-meta.d.ts +1 -0
  1347. package/types/S3800/generated-meta.d.ts +1 -0
  1348. package/types/S3801/generated-meta.d.ts +1 -0
  1349. package/types/S3827/generated-meta.d.ts +1 -0
  1350. package/types/S3923/generated-meta.d.ts +1 -0
  1351. package/types/S3972/generated-meta.d.ts +1 -0
  1352. package/types/S3973/generated-meta.d.ts +1 -0
  1353. package/types/S3981/generated-meta.d.ts +1 -0
  1354. package/types/S3984/generated-meta.d.ts +1 -0
  1355. package/types/S4030/generated-meta.d.ts +1 -0
  1356. package/types/S4036/generated-meta.d.ts +1 -0
  1357. package/types/S4043/generated-meta.d.ts +1 -0
  1358. package/types/S4139/generated-meta.d.ts +1 -0
  1359. package/types/S4143/generated-meta.d.ts +1 -0
  1360. package/types/S4144/generated-meta.d.ts +1 -0
  1361. package/types/S4158/generated-meta.d.ts +1 -0
  1362. package/types/S4165/generated-meta.d.ts +1 -0
  1363. package/types/S4322/generated-meta.d.ts +1 -0
  1364. package/types/S4323/generated-meta.d.ts +1 -0
  1365. package/types/S4324/generated-meta.d.ts +1 -0
  1366. package/types/S4328/generated-meta.d.ts +1 -0
  1367. package/types/S4335/generated-meta.d.ts +1 -0
  1368. package/types/S4423/generated-meta.d.ts +1 -0
  1369. package/types/S4426/generated-meta.d.ts +1 -0
  1370. package/types/S4502/generated-meta.d.ts +1 -0
  1371. package/types/S4507/generated-meta.d.ts +1 -0
  1372. package/types/S4524/generated-meta.d.ts +1 -0
  1373. package/types/S4619/generated-meta.d.ts +1 -0
  1374. package/types/S4621/generated-meta.d.ts +1 -0
  1375. package/types/S4622/generated-meta.d.ts +1 -0
  1376. package/types/S4623/generated-meta.d.ts +1 -0
  1377. package/types/S4624/generated-meta.d.ts +2 -0
  1378. package/types/S4634/generated-meta.d.ts +2 -0
  1379. package/types/S4721/generated-meta.d.ts +2 -1
  1380. package/types/S4782/generated-meta.d.ts +1 -0
  1381. package/types/S4790/generated-meta.d.ts +1 -0
  1382. package/types/S4798/generated-meta.d.ts +1 -0
  1383. package/types/S4822/generated-meta.d.ts +2 -0
  1384. package/types/S4830/generated-meta.d.ts +1 -0
  1385. package/types/S5042/generated-meta.d.ts +3 -2
  1386. package/types/S5122/generated-meta.d.ts +1 -0
  1387. package/types/S5148/generated-meta.d.ts +1 -0
  1388. package/types/S5247/generated-meta.d.ts +1 -0
  1389. package/types/S5256/generated-meta.d.ts +1 -0
  1390. package/types/S5257/generated-meta.d.ts +1 -0
  1391. package/types/S5260/generated-meta.d.ts +1 -0
  1392. package/types/S5264/generated-meta.d.ts +1 -0
  1393. package/types/S5332/generated-meta.d.ts +1 -0
  1394. package/types/S5443/generated-meta.d.ts +1 -0
  1395. package/types/S5527/generated-meta.d.ts +1 -0
  1396. package/types/S5542/generated-meta.d.ts +1 -0
  1397. package/types/S5547/generated-meta.d.ts +1 -0
  1398. package/types/S5604/generated-meta.d.ts +2 -1
  1399. package/types/S5659/generated-meta.d.ts +1 -0
  1400. package/types/S5689/generated-meta.d.ts +1 -0
  1401. package/types/S5691/generated-meta.d.ts +2 -1
  1402. package/types/S5693/generated-meta.d.ts +1 -0
  1403. package/types/S5725/generated-meta.d.ts +1 -0
  1404. package/types/S5728/generated-meta.d.ts +1 -0
  1405. package/types/S5730/generated-meta.d.ts +2 -1
  1406. package/types/S5732/generated-meta.d.ts +2 -1
  1407. package/types/S5734/generated-meta.d.ts +1 -0
  1408. package/types/S5736/generated-meta.d.ts +1 -0
  1409. package/types/S5739/generated-meta.d.ts +1 -0
  1410. package/types/S5757/generated-meta.d.ts +2 -1
  1411. package/types/S5759/generated-meta.d.ts +2 -1
  1412. package/types/S5842/generated-meta.d.ts +1 -0
  1413. package/types/S5843/generated-meta.d.ts +1 -0
  1414. package/types/S5845/generated-meta.d.ts +18 -0
  1415. package/types/S5845/meta.d.ts +2 -0
  1416. package/types/S5850/generated-meta.d.ts +1 -0
  1417. package/types/S5852/generated-meta.d.ts +1 -0
  1418. package/types/S5856/generated-meta.d.ts +1 -0
  1419. package/types/S5860/generated-meta.d.ts +1 -0
  1420. package/types/S5863/generated-meta.d.ts +1 -0
  1421. package/types/S5867/generated-meta.d.ts +1 -0
  1422. package/types/S5868/generated-meta.d.ts +1 -0
  1423. package/types/S5869/generated-meta.d.ts +1 -0
  1424. package/types/S5876/generated-meta.d.ts +1 -0
  1425. package/types/S5906/assertion-suggestions.d.ts +7 -0
  1426. package/types/S5906/assertion-utils.d.ts +14 -0
  1427. package/types/S5906/cypress-suggestions.d.ts +4 -0
  1428. package/types/S5906/expect-chain.d.ts +5 -0
  1429. package/types/S5906/generated-meta.d.ts +18 -0
  1430. package/types/S5906/meta.d.ts +2 -0
  1431. package/types/S5906/playwright-suggestions.d.ts +4 -0
  1432. package/types/S5914/generated-meta.d.ts +18 -0
  1433. package/types/S5914/meta.d.ts +2 -0
  1434. package/types/S5958/generated-meta.d.ts +1 -0
  1435. package/types/S5973/generated-meta.d.ts +1 -0
  1436. package/types/S6019/generated-meta.d.ts +1 -0
  1437. package/types/S6035/generated-meta.d.ts +1 -0
  1438. package/types/S6079/generated-meta.d.ts +1 -0
  1439. package/types/S6080/generated-meta.d.ts +1 -0
  1440. package/types/S6092/generated-meta.d.ts +1 -0
  1441. package/types/S6249/generated-meta.d.ts +1 -0
  1442. package/types/S6252/generated-meta.d.ts +1 -0
  1443. package/types/S6265/generated-meta.d.ts +1 -0
  1444. package/types/S6268/generated-meta.d.ts +1 -0
  1445. package/types/S6270/generated-meta.d.ts +1 -0
  1446. package/types/S6275/generated-meta.d.ts +1 -0
  1447. package/types/S6281/generated-meta.d.ts +1 -0
  1448. package/types/S6302/generated-meta.d.ts +1 -0
  1449. package/types/S6303/generated-meta.d.ts +1 -0
  1450. package/types/S6304/generated-meta.d.ts +1 -0
  1451. package/types/S6308/generated-meta.d.ts +1 -0
  1452. package/types/S6317/generated-meta.d.ts +1 -0
  1453. package/types/S6319/generated-meta.d.ts +1 -0
  1454. package/types/S6321/generated-meta.d.ts +1 -0
  1455. package/types/S6323/generated-meta.d.ts +1 -0
  1456. package/types/S6324/generated-meta.d.ts +1 -0
  1457. package/types/S6326/generated-meta.d.ts +1 -0
  1458. package/types/S6327/generated-meta.d.ts +1 -0
  1459. package/types/S6328/generated-meta.d.ts +1 -0
  1460. package/types/S6329/generated-meta.d.ts +1 -0
  1461. package/types/S6330/generated-meta.d.ts +1 -0
  1462. package/types/S6331/generated-meta.d.ts +1 -0
  1463. package/types/S6332/generated-meta.d.ts +1 -0
  1464. package/types/S6333/generated-meta.d.ts +1 -0
  1465. package/types/S6351/generated-meta.d.ts +1 -0
  1466. package/types/S6353/generated-meta.d.ts +1 -0
  1467. package/types/S6397/generated-meta.d.ts +1 -0
  1468. package/types/S6418/generated-meta.d.ts +1 -0
  1469. package/types/S6426/generated-meta.d.ts +1 -0
  1470. package/types/S6437/generated-meta.d.ts +1 -0
  1471. package/types/S6439/generated-meta.d.ts +2 -1
  1472. package/types/S6442/generated-meta.d.ts +2 -1
  1473. package/types/S6443/generated-meta.d.ts +2 -1
  1474. package/types/S6486/generated-meta.d.ts +1 -0
  1475. package/types/S6564/generated-meta.d.ts +1 -0
  1476. package/types/S6594/generated-meta.d.ts +1 -0
  1477. package/types/S6627/generated-meta.d.ts +1 -0
  1478. package/types/S6759/generated-meta.d.ts +1 -0
  1479. package/types/S6958/generated-meta.d.ts +1 -0
  1480. package/types/S6959/generated-meta.d.ts +1 -0
  1481. package/types/S7059/generated-meta.d.ts +2 -0
  1482. package/types/S7639/generated-meta.d.ts +1 -0
  1483. package/types/S7790/generated-meta.d.ts +1 -0
  1484. package/types/S8441/generated-meta.d.ts +1 -0
  1485. package/types/{S4787 → S8479}/generated-meta.d.ts +4 -3
  1486. package/types/S8479/meta.d.ts +2 -0
  1487. package/types/S8754/generated-meta.d.ts +18 -0
  1488. package/types/{S5743 → S8754}/meta.d.ts +1 -1
  1489. package/types/{S4817 → S8780}/generated-meta.d.ts +4 -3
  1490. package/types/S8780/meta.d.ts +2 -0
  1491. package/types/S8781/generated-meta.d.ts +18 -0
  1492. package/types/S8781/meta.d.ts +2 -0
  1493. package/types/S8782/generated-meta.d.ts +18 -0
  1494. package/types/S8782/meta.d.ts +2 -0
  1495. package/types/S8783/generated-meta.d.ts +18 -0
  1496. package/types/S8783/meta.d.ts +2 -0
  1497. package/types/{S4784 → S8786}/generated-meta.d.ts +4 -3
  1498. package/types/S8786/meta.d.ts +2 -0
  1499. package/types/S881/generated-meta.d.ts +1 -0
  1500. package/types/S888/generated-meta.d.ts +1 -0
  1501. package/types/S930/generated-meta.d.ts +1 -0
  1502. package/types/helpers/assertions-chai-common.d.ts +7 -0
  1503. package/types/helpers/assertions-chai.d.ts +4 -0
  1504. package/types/helpers/assertions-cypress.d.ts +7 -0
  1505. package/types/helpers/assertions.d.ts +39 -0
  1506. package/types/helpers/ast.d.ts +10 -0
  1507. package/types/helpers/configs.d.ts +7 -38
  1508. package/types/helpers/cypress.d.ts +11 -0
  1509. package/types/helpers/dependency-manifests/all-in-parent-dirs.d.ts +18 -0
  1510. package/types/helpers/dependency-manifests/closest.d.ts +5 -0
  1511. package/types/helpers/dependency-manifests/dependencies.d.ts +73 -0
  1512. package/types/helpers/dependency-manifests/index.d.ts +22 -0
  1513. package/types/helpers/dependency-manifests/parse.d.ts +12 -0
  1514. package/types/helpers/dependency-manifests/parsed-dependency-files.d.ts +8 -0
  1515. package/types/helpers/dependency-manifests/resolvers/deno.d.ts +12 -0
  1516. package/types/helpers/dependency-manifests/resolvers/helpers.d.ts +12 -0
  1517. package/types/helpers/dependency-manifests/resolvers/package-json.d.ts +2 -0
  1518. package/types/helpers/dependency-manifests/resolvers/types.d.ts +46 -0
  1519. package/types/helpers/files.d.ts +14 -21
  1520. package/types/helpers/generate-meta.d.ts +5 -0
  1521. package/types/helpers/internal-metrics.d.ts +5 -0
  1522. package/types/helpers/mocha-style-test-frameworks.d.ts +19 -0
  1523. package/types/helpers/mocha.d.ts +7 -0
  1524. package/types/helpers/module.d.ts +14 -8
  1525. package/types/helpers/numbers.d.ts +4 -0
  1526. package/types/helpers/playwright.d.ts +2 -0
  1527. package/types/helpers/regex/extract.d.ts +7 -3
  1528. package/types/helpers/sinon.d.ts +0 -1
  1529. package/types/helpers/supertest.d.ts +0 -1
  1530. package/types/helpers/test-file-pattern.d.ts +17 -0
  1531. package/types/helpers/type-origin.d.ts +31 -0
  1532. package/types/helpers/type.d.ts +92 -1
  1533. package/types/helpers/vitest.d.ts +0 -1
  1534. package/types/plugin-rules.d.ts +11 -11
  1535. package/cjs/S2255/rule.js +0 -111
  1536. package/cjs/S4784/rule.js +0 -120
  1537. package/cjs/S4787/rule.js +0 -124
  1538. package/cjs/S4817/rule.js +0 -103
  1539. package/cjs/S4818/generated-meta.js +0 -51
  1540. package/cjs/S4818/index.js +0 -21
  1541. package/cjs/S4823/generated-meta.js +0 -51
  1542. package/cjs/S4823/index.js +0 -21
  1543. package/cjs/S4823/meta.js +0 -21
  1544. package/cjs/S4823/rule.js +0 -75
  1545. package/cjs/S4829/generated-meta.js +0 -51
  1546. package/cjs/S4829/index.js +0 -21
  1547. package/cjs/S4829/meta.js +0 -21
  1548. package/cjs/S4829/rule.js +0 -75
  1549. package/cjs/S5742/generated-meta.js +0 -51
  1550. package/cjs/S5742/index.js +0 -21
  1551. package/cjs/S5742/meta.js +0 -22
  1552. package/cjs/S5742/rule.js +0 -75
  1553. package/cjs/S5743/generated-meta.js +0 -51
  1554. package/cjs/S5743/index.js +0 -21
  1555. package/cjs/S5743/rule.js +0 -78
  1556. package/cjs/S6245/generated-meta.js +0 -51
  1557. package/cjs/S6245/index.js +0 -21
  1558. package/cjs/S6245/meta.js +0 -22
  1559. package/cjs/S6245/rule.js +0 -87
  1560. package/cjs/S6299/generated-meta.js +0 -51
  1561. package/cjs/S6299/index.js +0 -21
  1562. package/cjs/S6299/meta.js +0 -21
  1563. package/cjs/S6299/rule.js +0 -93
  1564. package/cjs/helpers/package-jsons/all-in-parent-dirs.js +0 -31
  1565. package/cjs/helpers/package-jsons/closest.js +0 -32
  1566. package/cjs/helpers/package-jsons/dependencies.js +0 -87
  1567. package/cjs/helpers/package-jsons/index.js +0 -41
  1568. package/cjs/helpers/package-jsons/parse.js +0 -79
  1569. package/docs/aws-s3-bucket-server-encryption.md +0 -9
  1570. package/docs/certificate-transparency.md +0 -9
  1571. package/docs/cookies.md +0 -9
  1572. package/docs/dns-prefetching.md +0 -9
  1573. package/docs/encryption.md +0 -9
  1574. package/docs/no-vue-bypass-sanitization.md +0 -9
  1575. package/docs/process-argv.md +0 -9
  1576. package/docs/regular-expr.md +0 -9
  1577. package/docs/sockets.md +0 -9
  1578. package/docs/standard-input.md +0 -9
  1579. package/docs/xpath.md +0 -9
  1580. package/types/S2255/meta.d.ts +0 -2
  1581. package/types/S4784/meta.d.ts +0 -2
  1582. package/types/S4787/meta.d.ts +0 -2
  1583. package/types/S4817/meta.d.ts +0 -2
  1584. package/types/S4818/generated-meta.d.ts +0 -17
  1585. package/types/S4818/meta.d.ts +0 -2
  1586. package/types/S4823/generated-meta.d.ts +0 -17
  1587. package/types/S4823/meta.d.ts +0 -2
  1588. package/types/S4829/generated-meta.d.ts +0 -17
  1589. package/types/S4829/meta.d.ts +0 -2
  1590. package/types/S5742/generated-meta.d.ts +0 -17
  1591. package/types/S5742/meta.d.ts +0 -3
  1592. package/types/S5743/generated-meta.d.ts +0 -17
  1593. package/types/S6245/generated-meta.d.ts +0 -17
  1594. package/types/S6245/meta.d.ts +0 -3
  1595. package/types/S6299/generated-meta.d.ts +0 -17
  1596. package/types/S6299/meta.d.ts +0 -2
  1597. package/types/helpers/package-jsons/all-in-parent-dirs.d.ts +0 -10
  1598. package/types/helpers/package-jsons/closest.d.ts +0 -2
  1599. package/types/helpers/package-jsons/dependencies.d.ts +0 -32
  1600. package/types/helpers/package-jsons/index.d.ts +0 -8
  1601. package/types/helpers/package-jsons/parse.d.ts +0 -13
  1602. /package/types/{S2255 → S1244}/index.d.ts +0 -0
  1603. /package/types/{S2255 → S1244}/rule.d.ts +0 -0
  1604. /package/types/{S4784 → S5845}/index.d.ts +0 -0
  1605. /package/types/{S4784 → S5845}/rule.d.ts +0 -0
  1606. /package/types/{S4787 → S5906}/index.d.ts +0 -0
  1607. /package/types/{S4787 → S5906}/rule.d.ts +0 -0
  1608. /package/types/{S4817 → S5914}/index.d.ts +0 -0
  1609. /package/types/{S4817 → S5914}/rule.d.ts +0 -0
  1610. /package/types/{S4818 → S8479}/index.d.ts +0 -0
  1611. /package/types/{S4818 → S8479}/rule.d.ts +0 -0
  1612. /package/types/{S4823 → S8754}/index.d.ts +0 -0
  1613. /package/types/{S4823 → S8754}/rule.d.ts +0 -0
  1614. /package/types/{S4829 → S8780}/index.d.ts +0 -0
  1615. /package/types/{S4829 → S8780}/rule.d.ts +0 -0
  1616. /package/types/{S5742 → S8781}/index.d.ts +0 -0
  1617. /package/types/{S5742 → S8781}/rule.d.ts +0 -0
  1618. /package/types/{S5743 → S8782}/index.d.ts +0 -0
  1619. /package/types/{S5743 → S8782}/rule.d.ts +0 -0
  1620. /package/types/{S6245 → S8783}/index.d.ts +0 -0
  1621. /package/types/{S6245 → S8783}/rule.d.ts +0 -0
  1622. /package/types/{S6299 → S8786}/index.d.ts +0 -0
  1623. /package/types/{S6299 → S8786}/rule.d.ts +0 -0
@@ -0,0 +1,255 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.moduleTypeCache = exports.dependenciesCache = void 0;
7
+ exports.getDependencies = getDependencies;
8
+ exports.getModuleType = getModuleType;
9
+ exports.setCurrentFileInlineDependencies = setCurrentFileInlineDependencies;
10
+ exports.withCurrentFileInlineDependencies = withCurrentFileInlineDependencies;
11
+ exports.getDependenciesSanitizePaths = getDependenciesSanitizePaths;
12
+ exports.getReactVersion = getReactVersion;
13
+ exports.parseReactVersion = parseReactVersion;
14
+ exports.getTypeScriptSignalsFromPackageJsonFiles = getTypeScriptSignalsFromPackageJsonFiles;
15
+ exports.getNodeVersionSignal = getNodeVersionSignal;
16
+ exports.getTypeScriptVersionSignal = getTypeScriptVersionSignal;
17
+ const cache_js_1 = require("../cache.js");
18
+ const node_fs_1 = __importDefault(require("node:fs"));
19
+ const posix_1 = require("node:path/posix");
20
+ const semver_1 = require("semver");
21
+ const files_js_1 = require("../files.js");
22
+ const closest_js_1 = require("./closest.js");
23
+ const all_in_parent_dirs_js_1 = require("./all-in-parent-dirs.js");
24
+ const types_js_1 = require("./resolvers/types.js");
25
+ const parsed_dependency_files_js_1 = require("./parsed-dependency-files.js");
26
+ const MODULE_TYPE_BY_EXTENSION = {
27
+ '.mjs': 'module',
28
+ '.mts': 'module',
29
+ '.cjs': 'commonjs',
30
+ '.cts': 'commonjs',
31
+ };
32
+ /**
33
+ * Cache for the available dependencies by dirname. Exported for tests
34
+ */
35
+ exports.dependenciesCache = new cache_js_1.ComputedCache((dir, topDir) => {
36
+ const closestDependencyManifestDir = (0, closest_js_1.getClosestDependencyManifestDir)(dir, topDir);
37
+ const result = new Map();
38
+ if (!closestDependencyManifestDir) {
39
+ return result;
40
+ }
41
+ for (const { dependencies } of (0, all_in_parent_dirs_js_1.getDependencyManifests)(closestDependencyManifestDir, topDir, node_fs_1.default)) {
42
+ for (const [name, version] of dependencies) {
43
+ if (!result.has(name)) {
44
+ result.set(name, version);
45
+ }
46
+ }
47
+ }
48
+ return result;
49
+ });
50
+ /**
51
+ * Cache for module type signal by dirname. Exported for tests.
52
+ */
53
+ exports.moduleTypeCache = new cache_js_1.ComputedCache((dir, topDir) => {
54
+ const closestDependencyManifestDirName = (0, closest_js_1.getClosestDependencyManifestDir)(dir, topDir);
55
+ if (!closestDependencyManifestDirName) {
56
+ return undefined;
57
+ }
58
+ const [firstManifest] = (0, all_in_parent_dirs_js_1.getDependencyManifests)(closestDependencyManifestDirName, topDir, node_fs_1.default);
59
+ return firstManifest?.moduleType;
60
+ });
61
+ /**
62
+ * Retrieve the dependencies of all the dependency manifest files available for the given file.
63
+ *
64
+ * @param dir dirname of the context.filename
65
+ * @param topDir working dir, will search up to that root
66
+ * @returns Map of dependency names to their version strings
67
+ */
68
+ function getDependencies(dir, topDir) {
69
+ const closestDependencyManifestDir = (0, closest_js_1.getClosestDependencyManifestDir)(dir, topDir);
70
+ if (closestDependencyManifestDir) {
71
+ return exports.dependenciesCache.get(closestDependencyManifestDir, topDir);
72
+ }
73
+ return new Map();
74
+ }
75
+ /**
76
+ * Retrieve the module type signal for a file.
77
+ *
78
+ * Extension-specific module kinds (.mjs/.mts and .cjs/.cts) are explicit and
79
+ * take precedence. Otherwise, package.json#type from the closest manifest only
80
+ * is used. If that closest manifest exists but omits "type", default to CommonJS.
81
+ */
82
+ function getModuleType(filePath, topDir) {
83
+ const extensionSignal = MODULE_TYPE_BY_EXTENSION[(0, posix_1.extname)(filePath).toLowerCase()];
84
+ if (extensionSignal) {
85
+ return extensionSignal;
86
+ }
87
+ return exports.moduleTypeCache.get((0, files_js_1.dirnamePath)(filePath), topDir);
88
+ }
89
+ /**
90
+ * Inline npm: imports parsed from the source file currently being linted (Deno-style).
91
+ * Set by the linter before each file is verified, cleared afterwards via clearFileCaches().
92
+ * Allows dependency-helper consumers (getReactVersion, getDependenciesSanitizePaths)
93
+ * to see the same dependency picture as rule-activation filtering.
94
+ */
95
+ let currentFileInlineDependencies = null;
96
+ function setCurrentFileInlineDependencies(deps) {
97
+ currentFileInlineDependencies = deps;
98
+ }
99
+ /**
100
+ * Merges inline npm: imports with manifest dependencies, giving precedence to inline imports.
101
+ */
102
+ function withCurrentFileInlineDependencies(manifest) {
103
+ if (!currentFileInlineDependencies || currentFileInlineDependencies.size === 0) {
104
+ return manifest;
105
+ }
106
+ const merged = new Map(manifest);
107
+ for (const [name, inlineVersion] of currentFileInlineDependencies) {
108
+ // Inline npm: imports are the version actually loaded at runtime for this file,
109
+ // so they take precedence over the project-wide manifest version.
110
+ if (merged.has(name)) {
111
+ const manifestVersion = merged.get(name);
112
+ if (manifestVersion !== inlineVersion) {
113
+ console.debug(`Dependency "${typeof name === 'string' ? name : name.pattern}" has a version conflict between the manifest ` +
114
+ `(${manifestVersion ?? '<unspecified>'}) and an inline npm: import ` +
115
+ `(${inlineVersion ?? '<unspecified>'}). Using the inline version.`);
116
+ }
117
+ }
118
+ merged.set(name, inlineVersion);
119
+ }
120
+ return merged;
121
+ }
122
+ function getDependenciesSanitizePaths(context) {
123
+ return withCurrentFileInlineDependencies(getDependencies((0, files_js_1.dirnamePath)((0, files_js_1.normalizeToAbsolutePath)(context.filename)), (0, files_js_1.normalizeToAbsolutePath)(context.cwd)));
124
+ }
125
+ /**
126
+ * Gets the React version from the closest package.json.
127
+ *
128
+ * @param context ESLint rule context
129
+ * @returns React version string (coerced from range) or null if not found
130
+ */
131
+ function getReactVersion(context) {
132
+ const dir = (0, files_js_1.dirnamePath)((0, files_js_1.normalizeToAbsolutePath)(context.filename));
133
+ const dependencies = withCurrentFileInlineDependencies(getDependencies(dir, (0, files_js_1.normalizeToAbsolutePath)(context.cwd)));
134
+ const reactVersion = dependencies.get('react');
135
+ // Deno npm: imports reflect the actual runtime version and are intentionally included here, unlike the TypeScript/Node.js version signals
136
+ if (!reactVersion) {
137
+ return null;
138
+ }
139
+ return parseReactVersion(reactVersion);
140
+ }
141
+ /**
142
+ * Parses a React version string and returns a valid semver version.
143
+ * Exported for testing purposes.
144
+ *
145
+ * @param reactVersion Version string from package.json (e.g., "^18.0.0", "19.0", "catalog:frontend")
146
+ * @returns Valid semver version string or null if parsing fails
147
+ */
148
+ function parseReactVersion(reactVersion) {
149
+ try {
150
+ // Coerce version ranges (e.g., "^18.0.0") to valid semver versions
151
+ return (0, semver_1.minVersion)(reactVersion)?.version ?? null;
152
+ }
153
+ catch {
154
+ // Handle non-semver strings like pnpm catalog references (e.g., "catalog:frontend")
155
+ return null;
156
+ }
157
+ }
158
+ function getAllDependencySignals(packageJson) {
159
+ return {
160
+ ...packageJson.dependencies,
161
+ ...packageJson.devDependencies,
162
+ ...packageJson.peerDependencies,
163
+ ...packageJson.optionalDependencies,
164
+ };
165
+ }
166
+ function getDependencyVersionSignal(packageJson, dependencyName) {
167
+ const dependencyVersion = getAllDependencySignals(packageJson)[dependencyName];
168
+ return typeof dependencyVersion === 'string' ? dependencyVersion : null;
169
+ }
170
+ function getVersionSignalFromManifests(dir, topDir, dependencyName, fallbackSignal) {
171
+ // Walk up nearest-first. At each node manifest, prefer the primary signal
172
+ // (e.g. @types/node — catalog/workspace-resolved by the npm resolver) over the
173
+ // fallback (engines.node, read from the same manifest's PackageJson). The
174
+ // first valid primary signal wins; otherwise the first valid fallback wins; if
175
+ // neither is valid, continue walking parents. This lets a parent package's
176
+ // engines.node be picked up when the nested package declares neither signal,
177
+ // or only unusable fallbacks like "*" / "latest".
178
+ // Deno manifests are skipped — @types/node and engines.node are npm concepts.
179
+ const lookupKey = dependencyName.startsWith(types_js_1.DEFINITELY_TYPED)
180
+ ? dependencyName.substring(types_js_1.DEFINITELY_TYPED.length)
181
+ : dependencyName;
182
+ for (const manifest of (0, all_in_parent_dirs_js_1.getDependencyManifests)((0, files_js_1.normalizeToAbsolutePath)(dir), (0, files_js_1.normalizeToAbsolutePath)(topDir), node_fs_1.default)) {
183
+ if (manifest.type !== 'package-json') {
184
+ continue;
185
+ }
186
+ const version = manifest.dependencies.get(lookupKey) ?? null;
187
+ if (isValidDependencySignal(version)) {
188
+ return version;
189
+ }
190
+ if (fallbackSignal) {
191
+ const fb = fallbackSignal(manifest.manifest);
192
+ if (isValidDependencySignal(fb)) {
193
+ return fb;
194
+ }
195
+ }
196
+ }
197
+ return null;
198
+ }
199
+ function isValidDependencySignal(versionSignal) {
200
+ return versionSignal !== null && versionSignal !== 'latest' && versionSignal !== '*';
201
+ }
202
+ function hasTypeScriptNativePreviewSignal(packageJson) {
203
+ return isValidDependencySignal(getDependencyVersionSignal(packageJson, '@typescript/native-preview'));
204
+ }
205
+ function getTypeScriptVersionSignalsFromPackageJson(packageJson) {
206
+ const result = [];
207
+ const nativePreviewVersion = getDependencyVersionSignal(packageJson, '@typescript/native-preview');
208
+ if (isValidDependencySignal(nativePreviewVersion)) {
209
+ result.push(nativePreviewVersion);
210
+ }
211
+ const typeScriptVersion = getDependencyVersionSignal(packageJson, 'typescript');
212
+ if (isValidDependencySignal(typeScriptVersion)) {
213
+ result.push(typeScriptVersion);
214
+ }
215
+ return result;
216
+ }
217
+ function getTypeScriptSignalsFromPackageJsonFiles(packageJsonFiles) {
218
+ const typeScriptVersionSignals = [];
219
+ let hasTypeScriptNativePreview = false;
220
+ for (const packageJsonFile of packageJsonFiles) {
221
+ const packageJson = (0, parsed_dependency_files_js_1.parsePackageJsonContent)(packageJsonFile.fileContent);
222
+ if (packageJson === undefined) {
223
+ continue;
224
+ }
225
+ typeScriptVersionSignals.push(...getTypeScriptVersionSignalsFromPackageJson(packageJson));
226
+ hasTypeScriptNativePreview =
227
+ hasTypeScriptNativePreview || hasTypeScriptNativePreviewSignal(packageJson);
228
+ }
229
+ return { typeScriptVersionSignals, hasTypeScriptNativePreview };
230
+ }
231
+ /**
232
+ * Gets a Node.js version signal by walking up from `dir` toward `topDir`,
233
+ * picking the closest package.json with @types/node (preferred) or engines.node.
234
+ *
235
+ * @param dir directory to start the upward search from (e.g. tsconfig dir, file dir)
236
+ * @param topDir analysis base directory; walk stops here. Defaults to `dir` to
237
+ * preserve the legacy "manifest at exactly this dir" semantics for callers
238
+ * that don't yet provide a separate analysis root.
239
+ * @returns raw version string from @types/node or engines.node, or null if not found
240
+ */
241
+ function getNodeVersionSignal(dir, topDir = dir) {
242
+ return getVersionSignalFromManifests(dir, topDir, '@types/node', packageJson => {
243
+ const enginesNode = packageJson.engines?.['node'];
244
+ return typeof enginesNode === 'string' ? enginesNode : null;
245
+ });
246
+ }
247
+ /**
248
+ * Gets a TypeScript version signal from the closest package.json walking up
249
+ * from `dir` to `topDir`. Defaults `topDir = dir` for backward compatibility.
250
+ *
251
+ * @returns raw version string from typescript dependency, or null if not found
252
+ */
253
+ function getTypeScriptVersionSignal(dir, topDir = dir) {
254
+ return getVersionSignalFromManifests(dir, topDir, 'typescript');
255
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PRELOADABLE_DEPENDENCY_MANIFESTS = exports.DEPENDENCY_MANIFESTS = exports.PNPM_WORKSPACE_YAML = exports.DENO_JSONC = exports.DENO_JSON = exports.PACKAGE_JSON = void 0;
4
+ exports.isPreloadableDependencyManifestPath = isPreloadableDependencyManifestPath;
5
+ exports.fillManifestCaches = fillManifestCaches;
6
+ exports.clearDependenciesCache = clearDependenciesCache;
7
+ exports.getPreloadableDependencyManifestName = getPreloadableDependencyManifestName;
8
+ const find_minimatch_js_1 = require("../find-up/find-minimatch.js");
9
+ const dependencies_js_1 = require("./dependencies.js");
10
+ const closest_js_1 = require("../find-up/closest.js");
11
+ const all_in_parent_dirs_js_1 = require("../find-up/all-in-parent-dirs.js");
12
+ const posix_1 = require("node:path/posix");
13
+ const parsed_dependency_files_js_1 = require("./parsed-dependency-files.js");
14
+ exports.PACKAGE_JSON = 'package.json';
15
+ exports.DENO_JSON = 'deno.json';
16
+ exports.DENO_JSONC = 'deno.jsonc';
17
+ exports.PNPM_WORKSPACE_YAML = 'pnpm-workspace.yaml';
18
+ exports.DEPENDENCY_MANIFESTS = [exports.DENO_JSON, exports.DENO_JSONC, exports.PACKAGE_JSON];
19
+ exports.PRELOADABLE_DEPENDENCY_MANIFESTS = [
20
+ ...exports.DEPENDENCY_MANIFESTS,
21
+ exports.PNPM_WORKSPACE_YAML,
22
+ ];
23
+ function isPreloadableDependencyManifestName(fileName) {
24
+ return exports.PRELOADABLE_DEPENDENCY_MANIFESTS.includes(fileName);
25
+ }
26
+ function isPreloadableDependencyManifestPath(path) {
27
+ const normalizedBasename = (0, posix_1.basename)(path).toLowerCase();
28
+ return isPreloadableDependencyManifestName(normalizedBasename);
29
+ }
30
+ /**
31
+ * Preloads manifest lookup caches so later rules can resolve manifests
32
+ * without re-walking the file system.
33
+ */
34
+ function fillManifestCaches(manifestName, manifests, dirnameToParent, topDir) {
35
+ const closestCache = closest_js_1.closestPatternCache.get(manifestName).get(topDir);
36
+ const manifestsInParentsCache = manifestName === exports.PNPM_WORKSPACE_YAML
37
+ ? undefined
38
+ : all_in_parent_dirs_js_1.patternInParentsCache.get(manifestName).get(topDir);
39
+ const sortedDirs = Array.from(dirnameToParent.entries()).sort(([leftDir], [rightDir]) => leftDir.split('/').length - rightDir.split('/').length || leftDir.localeCompare(rightDir));
40
+ for (const [dir, parent] of sortedDirs) {
41
+ const currentManifest = manifests.get(dir);
42
+ const inheritedClosestManifest = parent ? closestCache.get(parent) : undefined;
43
+ closestCache.set(dir, currentManifest ?? inheritedClosestManifest);
44
+ if (!manifestsInParentsCache) {
45
+ continue;
46
+ }
47
+ const manifestsInParents = parent ? [...manifestsInParentsCache.get(parent)] : [];
48
+ if (currentManifest) {
49
+ manifestsInParents.unshift(currentManifest);
50
+ }
51
+ manifestsInParentsCache.set(dir, manifestsInParents);
52
+ }
53
+ }
54
+ /**
55
+ * In the case of SonarIDE, when a dependency manifest file changes, the cache can become obsolete.
56
+ */
57
+ function clearDependenciesCache() {
58
+ dependencies_js_1.dependenciesCache.clear();
59
+ dependencies_js_1.moduleTypeCache.clear();
60
+ (0, parsed_dependency_files_js_1.clearParsedDependencyFileCache)();
61
+ for (const manifestName of exports.PRELOADABLE_DEPENDENCY_MANIFESTS) {
62
+ closest_js_1.closestPatternCache.get(manifestName).clear();
63
+ if (manifestName !== exports.PNPM_WORKSPACE_YAML) {
64
+ all_in_parent_dirs_js_1.patternInParentsCache.get(manifestName).clear();
65
+ }
66
+ }
67
+ find_minimatch_js_1.MinimatchCache.clear();
68
+ }
69
+ /**
70
+ * Returns the preloadable dependency manifest filename if the path points to one.
71
+ */
72
+ function getPreloadableDependencyManifestName(path) {
73
+ const normalizedBasename = (0, posix_1.basename)(path).toLowerCase();
74
+ if (isPreloadableDependencyManifestName(normalizedBasename)) {
75
+ return normalizedBasename;
76
+ }
77
+ return undefined;
78
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addDependencies = addDependencies;
4
+ exports.addDependenciesArray = addDependenciesArray;
5
+ exports.addDependency = addDependency;
6
+ /*
7
+ * SonarQube JavaScript Plugin
8
+ * Copyright (C) SonarSource Sàrl
9
+ * mailto:info AT sonarsource DOT com
10
+ *
11
+ * You can redistribute and/or modify this program under the terms of
12
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
13
+ *
14
+ * This program is distributed in the hope that it will be useful,
15
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+ * See the Sonar Source-Available License for more details.
18
+ *
19
+ * You should have received a copy of the Sonar Source-Available License
20
+ * along with this program; if not, see https://sonarsource.com/license/ssal/
21
+ */
22
+ const minimatch_1 = require("minimatch");
23
+ const types_js_1 = require("./resolvers/types.js");
24
+ function addDependencies(result, dependencies, isGlob = false) {
25
+ for (const name of Object.keys(dependencies).filter(name => {
26
+ // Add this filter, as the PackageJson.Dependency can be any arbitrary JSON contrary to the claimed Record<String, String> typing.
27
+ const value = dependencies[name];
28
+ return typeof value === 'string' || value === undefined;
29
+ })) {
30
+ addDependency(result, { dependency: name, isGlob, version: dependencies[name] });
31
+ }
32
+ }
33
+ function addDependenciesArray(result, dependencies, isGlob = true) {
34
+ for (const name of dependencies) {
35
+ addDependency(result, { dependency: name, isGlob });
36
+ }
37
+ }
38
+ function addDependency(result, { dependency, isGlob, version, alias }) {
39
+ if (isGlob) {
40
+ result.set(new minimatch_1.Minimatch(dependency, { nocase: true, matchBase: true }), version);
41
+ }
42
+ else {
43
+ result.set(dependency.startsWith(types_js_1.DEFINITELY_TYPED)
44
+ ? dependency.substring(types_js_1.DEFINITELY_TYPED.length)
45
+ : dependency, version);
46
+ }
47
+ if (alias) {
48
+ // Also add the alias as a dependency, so it can be resolved in rules, for instance S4328
49
+ result.set(alias, version);
50
+ }
51
+ }
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.clearParsedDependencyFileCache = clearParsedDependencyFileCache;
7
+ exports.parsePackageJson = parsePackageJson;
8
+ exports.parsePackageJsonContent = parsePackageJsonContent;
9
+ exports.parsePnpmWorkspace = parsePnpmWorkspace;
10
+ exports.parseDenoManifest = parseDenoManifest;
11
+ const typescript_1 = __importDefault(require("typescript"));
12
+ const yaml_1 = __importDefault(require("yaml"));
13
+ const files_js_1 = require("../files.js");
14
+ const parsedPackageJsonCache = new Map();
15
+ const parsedPnpmWorkspaceCache = new Map();
16
+ const parsedDenoManifestCache = new Map();
17
+ function clearParsedDependencyFileCache() {
18
+ parsedPackageJsonCache.clear();
19
+ parsedPnpmWorkspaceCache.clear();
20
+ parsedDenoManifestCache.clear();
21
+ }
22
+ function getOrSetParsedDependencyFile(cache, file, parse) {
23
+ const cacheKey = (0, files_js_1.normalizeToAbsolutePath)(file.filePath);
24
+ if (cache.has(cacheKey)) {
25
+ return cache.get(cacheKey);
26
+ }
27
+ const parsed = parse(file);
28
+ cache.set(cacheKey, parsed);
29
+ return parsed;
30
+ }
31
+ function parsePackageJson(file) {
32
+ return getOrSetParsedDependencyFile(parsedPackageJsonCache, file, file => parsePackageJsonContent(file.fileContent, file.filePath));
33
+ }
34
+ function parsePackageJsonContent(content, filePath) {
35
+ try {
36
+ return JSON.parse((0, files_js_1.stripBOM)(content));
37
+ }
38
+ catch (error) {
39
+ if (filePath) {
40
+ console.debug(`Error parsing package.json ${filePath}: ${error}`);
41
+ }
42
+ return undefined;
43
+ }
44
+ }
45
+ function parsePnpmWorkspace(file) {
46
+ return getOrSetParsedDependencyFile(parsedPnpmWorkspaceCache, file, parsePnpmWorkspaceContent);
47
+ }
48
+ function parsePnpmWorkspaceContent(file) {
49
+ try {
50
+ const parsedPnpm = yaml_1.default.parse(file.fileContent);
51
+ if (parsedPnpm &&
52
+ ('catalog' in parsedPnpm || 'catalogs' in parsedPnpm || 'packages' in parsedPnpm)) {
53
+ return parsedPnpm;
54
+ }
55
+ return undefined;
56
+ }
57
+ catch (error) {
58
+ console.debug(`Error parsing pnpm workspace ${file.filePath}: ${error}`);
59
+ return undefined;
60
+ }
61
+ }
62
+ function parseDenoManifest(file) {
63
+ return getOrSetParsedDependencyFile(parsedDenoManifestCache, file, parseDenoManifestContent);
64
+ }
65
+ function parseDenoManifestContent(file) {
66
+ try {
67
+ // ts.parseConfigFileTextToJson handles JSON with comments and trailing commas
68
+ const parsed = typescript_1.default.parseConfigFileTextToJson(file.filePath, (0, files_js_1.stripBOM)(file.fileContent));
69
+ if (parsed.error) {
70
+ const message = typescript_1.default.flattenDiagnosticMessageText(parsed.error.messageText, '\n');
71
+ console.debug(`Error parsing deno manifest ${file.filePath}: ${message}`);
72
+ return;
73
+ }
74
+ return parsed.config;
75
+ }
76
+ catch (error) {
77
+ console.debug(`Error parsing deno manifest ${file.filePath}: ${error}`);
78
+ return;
79
+ }
80
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.denoManifestResolver = void 0;
4
+ exports.parseInlineNPMImport = parseInlineNPMImport;
5
+ const index_js_1 = require("../index.js");
6
+ const helpers_js_1 = require("./helpers.js");
7
+ const parse_js_1 = require("../parse.js");
8
+ const parsed_dependency_files_js_1 = require("../parsed-dependency-files.js");
9
+ exports.denoManifestResolver = {
10
+ resolve(dir, topDir, fileSystem) {
11
+ // if both `deno.json` and `deno.jsonc` are present, prefer `deno.json` and ignore `deno.jsonc`
12
+ const denoJson = (0, helpers_js_1.getManifestFileInDir)(index_js_1.DENO_JSON, dir, topDir, fileSystem);
13
+ const denoJsonc = (0, helpers_js_1.getManifestFileInDir)(index_js_1.DENO_JSONC, dir, topDir, fileSystem);
14
+ const denoModuleType = 'module';
15
+ const effectiveDenoJson = denoJson ?? denoJsonc;
16
+ if (effectiveDenoJson) {
17
+ const manifest = (0, parsed_dependency_files_js_1.parseDenoManifest)(effectiveDenoJson) ?? {};
18
+ return [
19
+ {
20
+ type: 'deno',
21
+ manifest,
22
+ dependencies: buildDependencies(manifest),
23
+ moduleType: denoModuleType,
24
+ },
25
+ ];
26
+ }
27
+ return [];
28
+ },
29
+ };
30
+ function buildDependencies(manifest) {
31
+ const dependencies = new Map();
32
+ if (manifest.imports && typeof manifest.imports === 'object') {
33
+ for (const [alias, target] of Object.entries(manifest.imports)) {
34
+ if (typeof target !== 'string') {
35
+ continue;
36
+ }
37
+ const parsedSpecifier = parseInlineNPMImport(target);
38
+ if (parsedSpecifier) {
39
+ (0, parse_js_1.addDependency)(dependencies, {
40
+ dependency: parsedSpecifier.packageName,
41
+ isGlob: false,
42
+ version: parsedSpecifier.version,
43
+ alias,
44
+ });
45
+ }
46
+ }
47
+ }
48
+ if (Array.isArray(manifest.workspace)) {
49
+ (0, parse_js_1.addDependenciesArray)(dependencies, manifest.workspace);
50
+ }
51
+ else if (manifest.workspace?.members) {
52
+ (0, parse_js_1.addDependenciesArray)(dependencies, manifest.workspace.members);
53
+ }
54
+ return dependencies;
55
+ }
56
+ // Captures `npm:` payload as: package name (scoped or unscoped), optional version, optional ignored subpath.
57
+ // Examples:
58
+ // npm:cowsay@^1.6.0
59
+ // npm:@scopename/mypackage@~11.1.0
60
+ const DENO_NPM_IMPORT_PATTERN = /^(@[^/]*\/[^/@]*|[^/@]+)(?:@([^/]*))?(?:\/.*)?$/;
61
+ /**
62
+ * Parses an import map URL Specifier matching Deno npm format:
63
+ * npm:<package>[@<version>][/<path>]
64
+ */
65
+ function parseInlineNPMImport(value) {
66
+ // currently only handle npm: specifiers since rules are focused on NPM dependencies
67
+ if (!value.startsWith('npm:')) {
68
+ return undefined;
69
+ }
70
+ const match = DENO_NPM_IMPORT_PATTERN.exec(value.slice('npm:'.length));
71
+ if (!match) {
72
+ return undefined;
73
+ }
74
+ const [, packageName, version] = match;
75
+ return {
76
+ packageName,
77
+ version: version || undefined,
78
+ };
79
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getManifestFileInDir = getManifestFileInDir;
4
+ exports.getParentDirPath = getParentDirPath;
5
+ /*
6
+ * SonarQube JavaScript Plugin
7
+ * Copyright (C) SonarSource Sàrl
8
+ * mailto:info AT sonarsource DOT com
9
+ *
10
+ * You can redistribute and/or modify this program under the terms of
11
+ * the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
12
+ *
13
+ * This program is distributed in the hope that it will be useful,
14
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16
+ * See the Sonar Source-Available License for more details.
17
+ *
18
+ * You should have received a copy of the Sonar Source-Available License
19
+ * along with this program; if not, see https://sonarsource.com/license/ssal/
20
+ */
21
+ const files_js_1 = require("../../files.js");
22
+ const closest_js_1 = require("../../find-up/closest.js");
23
+ /**
24
+ * Returns the manifest file at exactly `dir` (not a parent directory), or `undefined` if absent.
25
+ */
26
+ function getManifestFileInDir(manifestName, dir, topDir, fileSystem) {
27
+ const file = closest_js_1.closestPatternCache.get(manifestName, fileSystem).get(topDir).get(dir);
28
+ if (file && (0, files_js_1.dirnamePath)(file.filePath) === dir) {
29
+ return file;
30
+ }
31
+ return undefined;
32
+ }
33
+ /**
34
+ * Get the parent directory of the given path.
35
+ * @param path Path to get the parent directory of.
36
+ * @returns The parent directory or `null` if it is the root directory.
37
+ */
38
+ function getParentDirPath(path) {
39
+ const parentDir = (0, files_js_1.dirnamePath)(path);
40
+ return parentDir === path ? null : parentDir;
41
+ }