eslint-plugin-sonarjs 4.0.1 → 4.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -22
- package/cjs/S100/config.js +3 -3
- package/cjs/S100/generated-meta.js +3 -3
- package/cjs/S100/index.js +3 -3
- package/cjs/S100/meta.js +3 -3
- package/cjs/S100/rule.js +10 -8
- package/cjs/S101/config.js +4 -4
- package/cjs/S101/generated-meta.js +4 -4
- package/cjs/S101/index.js +3 -3
- package/cjs/S101/meta.js +3 -3
- package/cjs/S101/rule.js +6 -6
- package/cjs/S104/config.js +3 -3
- package/cjs/S104/generated-meta.js +3 -3
- package/cjs/S104/index.js +3 -3
- package/cjs/S104/meta.js +3 -3
- package/cjs/S104/rule.js +5 -5
- package/cjs/S105/generated-meta.js +3 -3
- package/cjs/S105/index.js +3 -3
- package/cjs/S105/meta.js +3 -3
- package/cjs/S105/rule.js +5 -5
- package/cjs/S1066/generated-meta.js +3 -3
- package/cjs/S1066/index.js +3 -3
- package/cjs/S1066/meta.js +3 -3
- package/cjs/S1066/rule.js +8 -7
- package/cjs/S1067/config.js +3 -3
- package/cjs/S1067/generated-meta.js +3 -3
- package/cjs/S1067/index.js +3 -3
- package/cjs/S1067/meta.js +3 -3
- package/cjs/S1067/rule.js +11 -9
- package/cjs/S1110/generated-meta.js +3 -3
- package/cjs/S1110/index.js +3 -3
- package/cjs/S1110/meta.js +3 -3
- package/cjs/S1110/rule.js +10 -8
- package/cjs/S1119/generated-meta.js +3 -3
- package/cjs/S1119/index.js +3 -3
- package/cjs/S1119/meta.js +3 -3
- package/cjs/S1119/rule.js +5 -5
- package/cjs/S1121/generated-meta.js +3 -3
- package/cjs/S1121/index.js +3 -3
- package/cjs/S1121/meta.js +3 -3
- package/cjs/S1121/rule.js +7 -6
- package/cjs/S1125/generated-meta.js +3 -3
- package/cjs/S1125/index.js +3 -3
- package/cjs/S1125/meta.js +3 -3
- package/cjs/S1125/rule.js +12 -11
- package/cjs/S1126/generated-meta.js +3 -3
- package/cjs/S1126/index.js +3 -3
- package/cjs/S1126/meta.js +3 -3
- package/cjs/S1126/rule.js +31 -12
- package/cjs/S1128/generated-meta.js +5 -4
- package/cjs/S1128/index.js +3 -3
- package/cjs/S1128/meta.js +3 -3
- package/cjs/S1128/rule.js +11 -8
- package/cjs/S1134/generated-meta.js +3 -3
- package/cjs/S1134/index.js +3 -3
- package/cjs/S1134/meta.js +3 -3
- package/cjs/S1134/rule.js +5 -5
- package/cjs/S1135/generated-meta.js +3 -3
- package/cjs/S1135/index.js +3 -3
- package/cjs/S1135/meta.js +3 -3
- package/cjs/S1135/rule.js +5 -5
- package/cjs/S1154/generated-meta.js +3 -3
- package/cjs/S1154/index.js +3 -3
- package/cjs/S1154/meta.js +3 -3
- package/cjs/S1154/rule.js +9 -7
- package/cjs/S117/config.js +3 -3
- package/cjs/S117/generated-meta.js +3 -3
- package/cjs/S117/index.js +3 -3
- package/cjs/S117/meta.js +3 -3
- package/cjs/S117/rule.js +9 -8
- package/cjs/S1172/generated-meta.js +3 -3
- package/cjs/S1172/index.js +3 -3
- package/cjs/S1172/meta.js +3 -3
- package/cjs/S1172/rule.js +5 -5
- package/cjs/S1192/config.js +3 -3
- package/cjs/S1192/generated-meta.js +3 -3
- package/cjs/S1192/index.js +3 -3
- package/cjs/S1192/meta.js +3 -3
- package/cjs/S1192/rule.js +10 -9
- package/cjs/S1219/generated-meta.js +3 -3
- package/cjs/S1219/index.js +3 -3
- package/cjs/S1219/meta.js +3 -3
- package/cjs/S1219/rule.js +7 -6
- package/cjs/S1226/generated-meta.js +3 -3
- package/cjs/S1226/index.js +3 -3
- package/cjs/S1226/meta.js +3 -3
- package/cjs/S1226/rule.js +9 -7
- package/cjs/S124/config.js +3 -3
- package/cjs/S124/generated-meta.js +3 -3
- package/cjs/S124/index.js +3 -3
- package/cjs/S124/meta.js +3 -3
- package/cjs/S124/rule.js +5 -5
- package/cjs/S125/generated-meta.js +3 -3
- package/cjs/S125/index.js +3 -3
- package/cjs/S125/meta.js +3 -3
- package/cjs/S125/rule.js +76 -27
- package/cjs/S126/generated-meta.js +3 -3
- package/cjs/S126/index.js +3 -3
- package/cjs/S126/meta.js +3 -3
- package/cjs/S126/rule.js +5 -5
- package/cjs/S1264/generated-meta.js +3 -3
- package/cjs/S1264/index.js +3 -3
- package/cjs/S1264/meta.js +3 -3
- package/cjs/S1264/rule.js +5 -5
- package/cjs/S128/generated-meta.js +3 -3
- package/cjs/S128/index.js +3 -3
- package/cjs/S128/meta.js +3 -3
- package/cjs/S128/rule.js +7 -6
- package/cjs/S1291/generated-meta.js +3 -3
- package/cjs/S1291/index.js +3 -3
- package/cjs/S1291/meta.js +3 -3
- package/cjs/S1291/rule.js +5 -5
- package/cjs/S1301/generated-meta.js +3 -3
- package/cjs/S1301/index.js +3 -3
- package/cjs/S1301/meta.js +3 -3
- package/cjs/S1301/rule.js +143 -5
- package/cjs/S1313/generated-meta.js +5 -5
- package/cjs/S1313/index.js +3 -3
- package/cjs/S1313/meta.js +3 -3
- package/cjs/S1313/rule.js +5 -5
- package/cjs/S134/config.js +4 -4
- package/cjs/S134/generated-meta.js +3 -3
- package/cjs/S134/index.js +3 -3
- package/cjs/S134/meta.js +3 -3
- package/cjs/S134/rule.js +10 -8
- package/cjs/S135/generated-meta.js +3 -3
- package/cjs/S135/index.js +3 -3
- package/cjs/S135/meta.js +3 -3
- package/cjs/S135/rule.js +8 -7
- package/cjs/S138/config.js +3 -3
- package/cjs/S138/generated-meta.js +3 -3
- package/cjs/S138/index.js +3 -3
- package/cjs/S138/meta.js +3 -3
- package/cjs/S138/rule.js +12 -9
- package/cjs/S1439/generated-meta.js +3 -3
- package/cjs/S1439/index.js +3 -3
- package/cjs/S1439/meta.js +3 -3
- package/cjs/S1439/rule.js +5 -5
- package/cjs/S1444/generated-meta.js +3 -3
- package/cjs/S1444/index.js +3 -3
- package/cjs/S1444/meta.js +3 -3
- package/cjs/S1444/rule.js +5 -5
- package/cjs/S1451/config.js +3 -3
- package/cjs/S1451/generated-meta.js +3 -3
- package/cjs/S1451/index.js +3 -3
- package/cjs/S1451/meta.js +3 -3
- package/cjs/S1451/rule.js +5 -5
- package/cjs/S1472/generated-meta.js +3 -3
- package/cjs/S1472/index.js +3 -3
- package/cjs/S1472/meta.js +3 -3
- package/cjs/S1472/rule.js +5 -5
- package/cjs/S1479/config.js +3 -3
- package/cjs/S1479/generated-meta.js +3 -3
- package/cjs/S1479/index.js +3 -3
- package/cjs/S1479/meta.js +3 -3
- package/cjs/S1479/rule.js +5 -5
- package/cjs/S1481/generated-meta.js +3 -3
- package/cjs/S1481/index.js +3 -3
- package/cjs/S1481/meta.js +3 -3
- package/cjs/S1481/rule.js +5 -5
- package/cjs/S1488/generated-meta.js +3 -3
- package/cjs/S1488/index.js +3 -3
- package/cjs/S1488/meta.js +3 -3
- package/cjs/S1488/rule.js +14 -10
- package/cjs/S1515/generated-meta.js +3 -3
- package/cjs/S1515/index.js +3 -3
- package/cjs/S1515/meta.js +3 -3
- package/cjs/S1515/rule.js +13 -11
- package/cjs/S1523/generated-meta.js +3 -3
- package/cjs/S1523/index.js +3 -3
- package/cjs/S1523/meta.js +3 -3
- package/cjs/S1523/rule.js +8 -8
- package/cjs/S1526/generated-meta.js +3 -3
- package/cjs/S1526/index.js +3 -3
- package/cjs/S1526/meta.js +3 -3
- package/cjs/S1526/rule.js +8 -7
- package/cjs/S1527/generated-meta.js +3 -3
- package/cjs/S1527/index.js +3 -3
- package/cjs/S1527/meta.js +3 -3
- package/cjs/S1527/rule.js +5 -5
- package/cjs/S1528/generated-meta.js +3 -3
- package/cjs/S1528/index.js +3 -3
- package/cjs/S1528/meta.js +3 -3
- package/cjs/S1528/rule.js +2 -2
- package/cjs/S1529/generated-meta.js +3 -3
- package/cjs/S1529/index.js +3 -3
- package/cjs/S1529/meta.js +3 -3
- package/cjs/S1529/rule.js +7 -6
- package/cjs/S1530/generated-meta.js +3 -3
- package/cjs/S1530/index.js +3 -3
- package/cjs/S1530/meta.js +3 -3
- package/cjs/S1530/rule.js +8 -6
- package/cjs/S1533/generated-meta.js +3 -3
- package/cjs/S1533/index.js +3 -3
- package/cjs/S1533/meta.js +3 -3
- package/cjs/S1533/rule.js +5 -5
- package/cjs/S1535/generated-meta.js +3 -3
- package/cjs/S1535/index.js +3 -3
- package/cjs/S1535/meta.js +3 -3
- package/cjs/S1535/rule.js +5 -5
- package/cjs/S1541/config.js +3 -3
- package/cjs/S1541/generated-meta.js +3 -3
- package/cjs/S1541/index.js +3 -3
- package/cjs/S1541/meta.js +3 -3
- package/cjs/S1541/rule.js +13 -10
- package/cjs/S1607/generated-meta.js +3 -3
- package/cjs/S1607/index.js +3 -3
- package/cjs/S1607/meta.js +3 -3
- package/cjs/S1607/rule.js +25 -23
- package/cjs/S1764/generated-meta.js +3 -3
- package/cjs/S1764/index.js +3 -3
- package/cjs/S1764/meta.js +3 -3
- package/cjs/S1764/rule.js +13 -10
- package/cjs/S1821/generated-meta.js +3 -3
- package/cjs/S1821/index.js +3 -3
- package/cjs/S1821/meta.js +3 -3
- package/cjs/S1821/rule.js +5 -5
- package/cjs/S1848/generated-meta.js +3 -3
- package/cjs/S1848/index.js +3 -3
- package/cjs/S1848/meta.js +3 -3
- package/cjs/S1848/rule.js +13 -10
- package/cjs/S1854/generated-meta.js +3 -3
- package/cjs/S1854/index.js +3 -3
- package/cjs/S1854/meta.js +3 -3
- package/cjs/S1854/rule.js +21 -17
- package/cjs/S1862/generated-meta.js +3 -3
- package/cjs/S1862/index.js +3 -3
- package/cjs/S1862/meta.js +3 -3
- package/cjs/S1862/rule.js +13 -11
- package/cjs/S1871/generated-meta.js +3 -3
- package/cjs/S1871/index.js +3 -3
- package/cjs/S1871/meta.js +3 -3
- package/cjs/S1871/rule.js +24 -19
- package/cjs/S1874/generated-meta.js +3 -3
- package/cjs/S1874/index.js +3 -3
- package/cjs/S1874/meta.js +3 -3
- package/cjs/S1874/rule.js +7 -6
- package/cjs/S1940/generated-meta.js +3 -3
- package/cjs/S1940/index.js +3 -3
- package/cjs/S1940/meta.js +3 -3
- package/cjs/S1940/rule.js +5 -5
- package/cjs/S1994/generated-meta.js +3 -3
- package/cjs/S1994/index.js +3 -3
- package/cjs/S1994/meta.js +3 -3
- package/cjs/S1994/rule.js +13 -10
- package/cjs/S2004/config.js +3 -3
- package/cjs/S2004/generated-meta.js +3 -3
- package/cjs/S2004/index.js +3 -3
- package/cjs/S2004/meta.js +3 -3
- package/cjs/S2004/rule.js +12 -10
- package/cjs/S2068/config.js +3 -3
- package/cjs/S2068/generated-meta.js +3 -3
- package/cjs/S2068/index.js +3 -3
- package/cjs/S2068/meta.js +3 -3
- package/cjs/S2068/rule.js +102 -15
- package/cjs/S2077/generated-meta.js +3 -3
- package/cjs/S2077/index.js +3 -3
- package/cjs/S2077/meta.js +3 -3
- package/cjs/S2077/rule.js +45 -9
- package/cjs/S2092/generated-meta.js +4 -4
- package/cjs/S2092/index.js +3 -3
- package/cjs/S2092/meta.js +3 -3
- package/cjs/S2092/rule.js +5 -5
- package/cjs/S2123/generated-meta.js +3 -3
- package/cjs/S2123/index.js +3 -3
- package/cjs/S2123/meta.js +3 -3
- package/cjs/S2123/rule.js +5 -5
- package/cjs/S2137/generated-meta.js +3 -3
- package/cjs/S2137/index.js +3 -3
- package/cjs/S2137/meta.js +3 -3
- package/cjs/S2137/rule.js +5 -5
- package/cjs/S2138/generated-meta.js +3 -3
- package/cjs/S2138/index.js +3 -3
- package/cjs/S2138/meta.js +3 -3
- package/cjs/S2138/rule.js +7 -6
- package/cjs/S2187/generated-meta.js +3 -3
- package/cjs/S2187/index.js +3 -3
- package/cjs/S2187/meta.js +3 -3
- package/cjs/S2187/rule.js +5 -5
- package/cjs/S2201/generated-meta.js +3 -3
- package/cjs/S2201/index.js +3 -3
- package/cjs/S2201/meta.js +3 -3
- package/cjs/S2201/rule.js +11 -8
- package/cjs/S2208/generated-meta.js +5 -4
- package/cjs/S2208/index.js +3 -3
- package/cjs/S2208/meta.js +3 -3
- package/cjs/S2208/rule.js +5 -5
- package/cjs/S2234/generated-meta.js +3 -3
- package/cjs/S2234/index.js +3 -3
- package/cjs/S2234/meta.js +3 -3
- package/cjs/S2234/rule.js +163 -16
- package/cjs/S2245/generated-meta.js +3 -3
- package/cjs/S2245/index.js +3 -3
- package/cjs/S2245/meta.js +3 -3
- package/cjs/S2245/rule.js +7 -6
- package/cjs/S2251/generated-meta.js +3 -3
- package/cjs/S2251/index.js +3 -3
- package/cjs/S2251/meta.js +3 -3
- package/cjs/S2251/rule.js +8 -7
- package/cjs/S2255/generated-meta.js +3 -3
- package/cjs/S2255/index.js +3 -3
- package/cjs/S2255/meta.js +3 -3
- package/cjs/S2255/rule.js +9 -8
- package/cjs/S2259/generated-meta.js +3 -3
- package/cjs/S2259/index.js +3 -3
- package/cjs/S2259/meta.js +3 -3
- package/cjs/S2259/rule.js +17 -12
- package/cjs/S2301/generated-meta.js +3 -3
- package/cjs/S2301/index.js +3 -3
- package/cjs/S2301/meta.js +3 -3
- package/cjs/S2301/rule.js +24 -13
- package/cjs/S2310/generated-meta.js +3 -3
- package/cjs/S2310/index.js +3 -3
- package/cjs/S2310/meta.js +3 -3
- package/cjs/S2310/rule.js +17 -14
- package/cjs/S2392/generated-meta.js +3 -3
- package/cjs/S2392/index.js +3 -3
- package/cjs/S2392/meta.js +3 -3
- package/cjs/S2392/rule.js +51 -8
- package/cjs/S2424/generated-meta.js +3 -3
- package/cjs/S2424/index.js +3 -3
- package/cjs/S2424/meta.js +3 -3
- package/cjs/S2424/rule.js +5 -5
- package/cjs/S2428/generated-meta.js +3 -3
- package/cjs/S2428/index.js +3 -3
- package/cjs/S2428/meta.js +3 -3
- package/cjs/S2428/rule.js +11 -9
- package/cjs/S2486/generated-meta.js +3 -3
- package/cjs/S2486/index.js +3 -3
- package/cjs/S2486/meta.js +3 -3
- package/cjs/S2486/rule.js +7 -6
- package/cjs/S2589/generated-meta.js +3 -3
- package/cjs/S2589/index.js +3 -3
- package/cjs/S2589/meta.js +3 -3
- package/cjs/S2589/rule.js +15 -13
- package/cjs/S2598/generated-meta.js +3 -3
- package/cjs/S2598/index.js +3 -3
- package/cjs/S2598/meta.js +3 -3
- package/cjs/S2598/rule.js +20 -17
- package/cjs/S2612/generated-meta.js +4 -4
- package/cjs/S2612/index.js +3 -3
- package/cjs/S2612/meta.js +3 -3
- package/cjs/S2612/rule.js +11 -9
- package/cjs/S2639/generated-meta.js +3 -3
- package/cjs/S2639/index.js +3 -3
- package/cjs/S2639/meta.js +3 -3
- package/cjs/S2639/rule.js +5 -5
- package/cjs/S2681/generated-meta.js +3 -3
- package/cjs/S2681/index.js +3 -3
- package/cjs/S2681/meta.js +3 -3
- package/cjs/S2681/rule.js +5 -5
- package/cjs/S2692/generated-meta.js +3 -3
- package/cjs/S2692/index.js +3 -3
- package/cjs/S2692/meta.js +3 -3
- package/cjs/S2692/rule.js +9 -7
- package/cjs/S2699/generated-meta.js +3 -3
- package/cjs/S2699/index.js +3 -3
- package/cjs/S2699/meta.js +3 -3
- package/cjs/S2699/rule.js +40 -31
- package/cjs/S2703/generated-meta.js +3 -3
- package/cjs/S2703/index.js +3 -3
- package/cjs/S2703/meta.js +3 -3
- package/cjs/S2703/rule.js +5 -5
- package/cjs/S2737/generated-meta.js +3 -3
- package/cjs/S2737/index.js +3 -3
- package/cjs/S2737/meta.js +3 -3
- package/cjs/S2737/rule.js +9 -7
- package/cjs/S2755/generated-meta.js +3 -3
- package/cjs/S2755/index.js +3 -3
- package/cjs/S2755/meta.js +3 -3
- package/cjs/S2755/rule.js +12 -9
- package/cjs/S2757/generated-meta.js +3 -3
- package/cjs/S2757/index.js +3 -3
- package/cjs/S2757/meta.js +3 -3
- package/cjs/S2757/rule.js +5 -5
- package/cjs/S2817/generated-meta.js +3 -3
- package/cjs/S2817/index.js +3 -3
- package/cjs/S2817/meta.js +3 -3
- package/cjs/S2817/rule.js +13 -10
- package/cjs/S2819/generated-meta.js +3 -3
- package/cjs/S2819/index.js +3 -3
- package/cjs/S2819/meta.js +3 -3
- package/cjs/S2819/rule.js +19 -15
- package/cjs/S2870/generated-meta.js +3 -3
- package/cjs/S2870/index.js +3 -3
- package/cjs/S2870/meta.js +3 -3
- package/cjs/S2870/rule.js +11 -8
- package/cjs/S2871/generated-meta.js +3 -3
- package/cjs/S2871/index.js +3 -3
- package/cjs/S2871/meta.js +3 -3
- package/cjs/S2871/rule.js +15 -12
- package/cjs/S2970/generated-meta.js +3 -3
- package/cjs/S2970/index.js +3 -3
- package/cjs/S2970/meta.js +3 -3
- package/cjs/S2970/rule.js +12 -11
- package/cjs/S2990/generated-meta.js +3 -3
- package/cjs/S2990/index.js +3 -3
- package/cjs/S2990/meta.js +3 -3
- package/cjs/S2990/rule.js +5 -5
- package/cjs/S2999/config.js +3 -3
- package/cjs/S2999/generated-meta.js +3 -3
- package/cjs/S2999/index.js +3 -3
- package/cjs/S2999/meta.js +3 -3
- package/cjs/S2999/rule.js +13 -10
- package/cjs/S3001/generated-meta.js +3 -3
- package/cjs/S3001/index.js +3 -3
- package/cjs/S3001/meta.js +3 -3
- package/cjs/S3001/rule.js +5 -5
- package/cjs/S3003/generated-meta.js +3 -3
- package/cjs/S3003/index.js +3 -3
- package/cjs/S3003/meta.js +3 -3
- package/cjs/S3003/rule.js +13 -10
- package/cjs/S3317/generated-meta.js +5 -4
- package/cjs/S3317/index.js +3 -3
- package/cjs/S3317/meta.js +3 -3
- package/cjs/S3317/rule.js +7 -6
- package/cjs/S3330/generated-meta.js +3 -3
- package/cjs/S3330/index.js +3 -3
- package/cjs/S3330/meta.js +3 -3
- package/cjs/S3330/rule.js +5 -5
- package/cjs/S3358/generated-meta.js +3 -3
- package/cjs/S3358/index.js +3 -3
- package/cjs/S3358/meta.js +3 -3
- package/cjs/S3358/rule.js +5 -5
- package/cjs/S3402/generated-meta.js +3 -3
- package/cjs/S3402/index.js +3 -3
- package/cjs/S3402/meta.js +3 -3
- package/cjs/S3402/rule.js +17 -13
- package/cjs/S3403/generated-meta.js +3 -3
- package/cjs/S3403/index.js +3 -3
- package/cjs/S3403/meta.js +3 -3
- package/cjs/S3403/rule.js +13 -10
- package/cjs/S3415/generated-meta.js +3 -3
- package/cjs/S3415/index.js +3 -3
- package/cjs/S3415/meta.js +3 -3
- package/cjs/S3415/rule.js +19 -16
- package/cjs/S3499/generated-meta.js +5 -4
- package/cjs/S3499/index.js +3 -3
- package/cjs/S3499/meta.js +3 -3
- package/cjs/S3499/rule.js +8 -7
- package/cjs/S3500/generated-meta.js +5 -4
- package/cjs/S3500/index.js +3 -3
- package/cjs/S3500/meta.js +3 -3
- package/cjs/S3500/rule.js +8 -7
- package/cjs/S3513/generated-meta.js +5 -4
- package/cjs/S3513/index.js +3 -3
- package/cjs/S3513/meta.js +3 -3
- package/cjs/S3513/rule.js +8 -7
- package/cjs/S3514/generated-meta.js +5 -4
- package/cjs/S3514/index.js +3 -3
- package/cjs/S3514/meta.js +3 -3
- package/cjs/S3514/rule.js +13 -10
- package/cjs/S3516/generated-meta.js +3 -3
- package/cjs/S3516/index.js +3 -3
- package/cjs/S3516/meta.js +3 -3
- package/cjs/S3516/rule.js +112 -10
- package/cjs/S3524/config.js +3 -3
- package/cjs/S3524/generated-meta.js +5 -4
- package/cjs/S3524/index.js +3 -3
- package/cjs/S3524/meta.js +3 -3
- package/cjs/S3524/rule.js +5 -5
- package/cjs/S3525/generated-meta.js +5 -4
- package/cjs/S3525/index.js +3 -3
- package/cjs/S3525/meta.js +3 -3
- package/cjs/S3525/rule.js +9 -7
- package/cjs/S3531/generated-meta.js +5 -4
- package/cjs/S3531/index.js +3 -3
- package/cjs/S3531/meta.js +3 -3
- package/cjs/S3531/rule.js +8 -6
- package/cjs/S3533/generated-meta.js +5 -4
- package/cjs/S3533/index.js +3 -3
- package/cjs/S3533/meta.js +3 -3
- package/cjs/S3533/rule.js +11 -10
- package/cjs/S3579/generated-meta.js +3 -3
- package/cjs/S3579/index.js +3 -3
- package/cjs/S3579/meta.js +3 -3
- package/cjs/S3579/rule.js +9 -7
- package/cjs/S3616/generated-meta.js +3 -3
- package/cjs/S3616/index.js +3 -3
- package/cjs/S3616/meta.js +3 -3
- package/cjs/S3616/rule.js +9 -7
- package/cjs/S3626/generated-meta.js +3 -3
- package/cjs/S3626/index.js +3 -3
- package/cjs/S3626/meta.js +3 -3
- package/cjs/S3626/rule.js +7 -6
- package/cjs/S3686/generated-meta.js +3 -3
- package/cjs/S3686/index.js +3 -3
- package/cjs/S3686/meta.js +3 -3
- package/cjs/S3686/rule.js +10 -8
- package/cjs/S3699/generated-meta.js +3 -3
- package/cjs/S3699/index.js +3 -3
- package/cjs/S3699/meta.js +3 -3
- package/cjs/S3699/rule.js +8 -7
- package/cjs/S3735/generated-meta.js +3 -3
- package/cjs/S3735/index.js +3 -3
- package/cjs/S3735/meta.js +3 -3
- package/cjs/S3735/rule.js +11 -8
- package/cjs/S3757/generated-meta.js +3 -3
- package/cjs/S3757/index.js +3 -3
- package/cjs/S3757/meta.js +3 -3
- package/cjs/S3757/rule.js +11 -9
- package/cjs/S3758/generated-meta.js +3 -3
- package/cjs/S3758/index.js +3 -3
- package/cjs/S3758/meta.js +3 -3
- package/cjs/S3758/rule.js +12 -10
- package/cjs/S3760/generated-meta.js +3 -3
- package/cjs/S3760/index.js +3 -3
- package/cjs/S3760/meta.js +3 -3
- package/cjs/S3760/rule.js +27 -24
- package/cjs/S3776/config.js +3 -3
- package/cjs/S3776/generated-meta.js +3 -3
- package/cjs/S3776/index.js +3 -3
- package/cjs/S3776/meta.js +12 -4
- package/cjs/S3776/rule.js +39 -38
- package/cjs/S3782/generated-meta.js +3 -3
- package/cjs/S3782/index.js +3 -3
- package/cjs/S3782/meta.js +3 -3
- package/cjs/S3782/rule.js +10 -8
- package/cjs/S3785/generated-meta.js +3 -3
- package/cjs/S3785/index.js +3 -3
- package/cjs/S3785/meta.js +3 -3
- package/cjs/S3785/rule.js +12 -9
- package/cjs/S3796/generated-meta.js +3 -3
- package/cjs/S3796/index.js +3 -3
- package/cjs/S3796/meta.js +3 -3
- package/cjs/S3796/rule.js +15 -11
- package/cjs/S3798/generated-meta.js +3 -3
- package/cjs/S3798/index.js +3 -3
- package/cjs/S3798/meta.js +3 -3
- package/cjs/S3798/rule.js +4 -3
- package/cjs/S3800/generated-meta.js +3 -3
- package/cjs/S3800/index.js +3 -3
- package/cjs/S3800/meta.js +3 -3
- package/cjs/S3800/rule.js +19 -14
- package/cjs/S3801/generated-meta.js +3 -3
- package/cjs/S3801/index.js +3 -3
- package/cjs/S3801/meta.js +3 -3
- package/cjs/S3801/rule.js +18 -14
- package/cjs/S3827/generated-meta.js +3 -3
- package/cjs/S3827/index.js +3 -3
- package/cjs/S3827/meta.js +3 -3
- package/cjs/S3827/rule.js +9 -6
- package/cjs/S3923/generated-meta.js +3 -3
- package/cjs/S3923/index.js +3 -3
- package/cjs/S3923/meta.js +3 -3
- package/cjs/S3923/rule.js +12 -9
- package/cjs/S3972/generated-meta.js +3 -3
- package/cjs/S3972/index.js +3 -3
- package/cjs/S3972/meta.js +3 -3
- package/cjs/S3972/rule.js +8 -7
- package/cjs/S3973/generated-meta.js +3 -3
- package/cjs/S3973/index.js +3 -3
- package/cjs/S3973/meta.js +3 -3
- package/cjs/S3973/rule.js +10 -8
- package/cjs/S3981/generated-meta.js +3 -3
- package/cjs/S3981/index.js +3 -3
- package/cjs/S3981/meta.js +3 -3
- package/cjs/S3981/rule.js +7 -6
- package/cjs/S3984/generated-meta.js +3 -3
- package/cjs/S3984/index.js +3 -3
- package/cjs/S3984/meta.js +3 -3
- package/cjs/S3984/rule.js +7 -6
- package/cjs/S4030/generated-meta.js +3 -3
- package/cjs/S4030/index.js +3 -3
- package/cjs/S4030/meta.js +3 -3
- package/cjs/S4030/rule.js +15 -12
- package/cjs/S4036/generated-meta.js +3 -3
- package/cjs/S4036/index.js +3 -3
- package/cjs/S4036/meta.js +3 -3
- package/cjs/S4036/rule.js +11 -9
- package/cjs/S4043/generated-meta.js +3 -3
- package/cjs/S4043/index.js +3 -3
- package/cjs/S4043/meta.js +3 -3
- package/cjs/S4043/rule.js +15 -11
- package/cjs/S4139/generated-meta.js +3 -3
- package/cjs/S4139/index.js +3 -3
- package/cjs/S4139/meta.js +3 -3
- package/cjs/S4139/rule.js +10 -8
- package/cjs/S4143/generated-meta.js +3 -3
- package/cjs/S4143/index.js +3 -3
- package/cjs/S4143/meta.js +3 -3
- package/cjs/S4143/rule.js +15 -12
- package/cjs/S4144/config.js +3 -3
- package/cjs/S4144/generated-meta.js +3 -3
- package/cjs/S4144/index.js +3 -3
- package/cjs/S4144/meta.js +3 -3
- package/cjs/S4144/rule.js +15 -12
- package/cjs/S4158/generated-meta.js +3 -3
- package/cjs/S4158/index.js +3 -3
- package/cjs/S4158/meta.js +3 -3
- package/cjs/S4158/rule.js +15 -12
- package/cjs/S4165/generated-meta.js +3 -3
- package/cjs/S4165/index.js +3 -3
- package/cjs/S4165/meta.js +3 -3
- package/cjs/S4165/rule.js +17 -15
- package/cjs/S4322/generated-meta.js +3 -3
- package/cjs/S4322/index.js +3 -3
- package/cjs/S4322/meta.js +3 -3
- package/cjs/S4322/rule.js +11 -8
- package/cjs/S4323/generated-meta.js +3 -3
- package/cjs/S4323/index.js +3 -3
- package/cjs/S4323/meta.js +3 -3
- package/cjs/S4323/rule.js +7 -6
- package/cjs/S4324/generated-meta.js +3 -3
- package/cjs/S4324/index.js +3 -3
- package/cjs/S4324/meta.js +3 -3
- package/cjs/S4324/rule.js +10 -8
- package/cjs/S4328/config.js +3 -3
- package/cjs/S4328/generated-meta.js +3 -3
- package/cjs/S4328/index.js +3 -3
- package/cjs/S4328/meta.js +3 -3
- package/cjs/S4328/rule.js +5 -5
- package/cjs/S4335/generated-meta.js +3 -3
- package/cjs/S4335/index.js +3 -3
- package/cjs/S4335/meta.js +3 -3
- package/cjs/S4335/rule.js +9 -7
- package/cjs/S4423/generated-meta.js +3 -3
- package/cjs/S4423/index.js +3 -3
- package/cjs/S4423/meta.js +3 -3
- package/cjs/S4423/rule.aws.js +3 -3
- package/cjs/S4423/rule.js +7 -6
- package/cjs/S4423/rule.lib.js +11 -10
- package/cjs/S4426/generated-meta.js +3 -3
- package/cjs/S4426/index.js +3 -3
- package/cjs/S4426/meta.js +3 -3
- package/cjs/S4426/rule.js +14 -13
- package/cjs/S4502/generated-meta.js +3 -3
- package/cjs/S4502/index.js +3 -3
- package/cjs/S4502/meta.js +3 -3
- package/cjs/S4502/rule.js +19 -16
- package/cjs/S4507/generated-meta.js +3 -3
- package/cjs/S4507/index.js +3 -3
- package/cjs/S4507/meta.js +3 -3
- package/cjs/S4507/rule.js +11 -9
- package/cjs/S4524/generated-meta.js +3 -3
- package/cjs/S4524/index.js +3 -3
- package/cjs/S4524/meta.js +3 -3
- package/cjs/S4524/rule.js +5 -5
- package/cjs/S4619/generated-meta.js +3 -3
- package/cjs/S4619/index.js +3 -3
- package/cjs/S4619/meta.js +3 -3
- package/cjs/S4619/rule.js +9 -7
- package/cjs/S4621/generated-meta.js +3 -3
- package/cjs/S4621/index.js +3 -3
- package/cjs/S4621/meta.js +3 -3
- package/cjs/S4621/rule.js +8 -7
- package/cjs/S4622/config.js +3 -3
- package/cjs/S4622/generated-meta.js +3 -3
- package/cjs/S4622/index.js +3 -3
- package/cjs/S4622/meta.js +3 -3
- package/cjs/S4622/rule.js +8 -6
- package/cjs/S4623/generated-meta.js +3 -3
- package/cjs/S4623/index.js +3 -3
- package/cjs/S4623/meta.js +3 -3
- package/cjs/S4623/rule.js +11 -8
- package/cjs/S4624/generated-meta.js +5 -4
- package/cjs/S4624/index.js +3 -3
- package/cjs/S4624/meta.js +3 -3
- package/cjs/S4624/rule.js +9 -7
- package/cjs/S4634/generated-meta.js +5 -4
- package/cjs/S4634/index.js +3 -3
- package/cjs/S4634/meta.js +3 -3
- package/cjs/S4634/rule.js +7 -6
- package/cjs/S4721/generated-meta.js +3 -3
- package/cjs/S4721/index.js +3 -3
- package/cjs/S4721/meta.js +3 -3
- package/cjs/S4721/rule.js +10 -8
- package/cjs/S4782/generated-meta.js +3 -3
- package/cjs/S4782/index.js +3 -3
- package/cjs/S4782/meta.js +3 -3
- package/cjs/S4782/rule.js +10 -8
- package/cjs/S4784/generated-meta.js +3 -3
- package/cjs/S4784/index.js +3 -3
- package/cjs/S4784/meta.js +3 -3
- package/cjs/S4784/rule.js +8 -7
- package/cjs/S4787/generated-meta.js +3 -3
- package/cjs/S4787/index.js +3 -3
- package/cjs/S4787/meta.js +3 -3
- package/cjs/S4787/rule.js +12 -10
- package/cjs/S4790/generated-meta.js +3 -3
- package/cjs/S4790/index.js +3 -3
- package/cjs/S4790/meta.js +3 -3
- package/cjs/S4790/rule.js +10 -8
- package/cjs/S4798/generated-meta.js +3 -3
- package/cjs/S4798/index.js +3 -3
- package/cjs/S4798/meta.js +3 -3
- package/cjs/S4798/rule.js +5 -5
- package/cjs/S4817/generated-meta.js +3 -3
- package/cjs/S4817/index.js +3 -3
- package/cjs/S4817/meta.js +3 -3
- package/cjs/S4817/rule.js +13 -11
- package/cjs/S4818/generated-meta.js +3 -3
- package/cjs/S4818/index.js +3 -3
- package/cjs/S4818/meta.js +3 -3
- package/cjs/S4818/rule.js +7 -6
- package/cjs/S4822/generated-meta.js +5 -4
- package/cjs/S4822/index.js +3 -3
- package/cjs/S4822/meta.js +3 -3
- package/cjs/S4822/rule.js +16 -12
- package/cjs/S4823/generated-meta.js +3 -3
- package/cjs/S4823/index.js +3 -3
- package/cjs/S4823/meta.js +3 -3
- package/cjs/S4823/rule.js +7 -6
- package/cjs/S4829/generated-meta.js +3 -3
- package/cjs/S4829/index.js +3 -3
- package/cjs/S4829/meta.js +3 -3
- package/cjs/S4829/rule.js +7 -6
- package/cjs/S4830/generated-meta.js +3 -3
- package/cjs/S4830/index.js +3 -3
- package/cjs/S4830/meta.js +3 -3
- package/cjs/S4830/rule.js +14 -11
- package/cjs/S5042/generated-meta.js +7 -7
- package/cjs/S5042/index.js +3 -3
- package/cjs/S5042/meta.js +3 -3
- package/cjs/S5042/rule.js +12 -10
- package/cjs/S5122/generated-meta.js +4 -4
- package/cjs/S5122/index.js +3 -3
- package/cjs/S5122/meta.js +3 -3
- package/cjs/S5122/rule.js +43 -39
- package/cjs/S5148/generated-meta.js +4 -4
- package/cjs/S5148/index.js +3 -3
- package/cjs/S5148/meta.js +3 -3
- package/cjs/S5148/rule.js +12 -11
- package/cjs/S5247/generated-meta.js +3 -3
- package/cjs/S5247/index.js +3 -3
- package/cjs/S5247/meta.js +3 -3
- package/cjs/S5247/rule.js +25 -21
- package/cjs/S5256/generated-meta.js +3 -3
- package/cjs/S5256/index.js +3 -3
- package/cjs/S5256/meta.js +3 -3
- package/cjs/S5256/rule.js +8 -7
- package/cjs/S5257/generated-meta.js +3 -3
- package/cjs/S5257/index.js +3 -3
- package/cjs/S5257/meta.js +3 -3
- package/cjs/S5257/rule.js +7 -6
- package/cjs/S5260/generated-meta.js +3 -3
- package/cjs/S5260/index.js +3 -3
- package/cjs/S5260/meta.js +3 -3
- package/cjs/S5260/rule.js +7 -6
- package/cjs/S5264/generated-meta.js +3 -3
- package/cjs/S5264/index.js +3 -3
- package/cjs/S5264/meta.js +3 -3
- package/cjs/S5264/rule.js +7 -6
- package/cjs/S5332/generated-meta.js +3 -3
- package/cjs/S5332/index.js +3 -3
- package/cjs/S5332/meta.js +3 -3
- package/cjs/S5332/rule.aws.js +3 -3
- package/cjs/S5332/rule.js +7 -6
- package/cjs/S5332/rule.lib.js +22 -20
- package/cjs/S5443/generated-meta.js +4 -4
- package/cjs/S5443/index.js +3 -3
- package/cjs/S5443/meta.js +3 -3
- package/cjs/S5443/rule.js +5 -5
- package/cjs/S5527/generated-meta.js +3 -3
- package/cjs/S5527/index.js +3 -3
- package/cjs/S5527/meta.js +3 -3
- package/cjs/S5527/rule.js +21 -17
- package/cjs/S5542/generated-meta.js +3 -3
- package/cjs/S5542/index.js +3 -3
- package/cjs/S5542/meta.js +3 -3
- package/cjs/S5542/rule.js +9 -7
- package/cjs/S5547/generated-meta.js +3 -3
- package/cjs/S5547/index.js +3 -3
- package/cjs/S5547/meta.js +3 -3
- package/cjs/S5547/rule.js +9 -7
- package/cjs/S5604/config.js +3 -3
- package/cjs/S5604/generated-meta.js +3 -3
- package/cjs/S5604/index.js +3 -3
- package/cjs/S5604/meta.js +3 -3
- package/cjs/S5604/rule.js +18 -17
- package/cjs/S5659/generated-meta.js +3 -3
- package/cjs/S5659/index.js +3 -3
- package/cjs/S5659/meta.js +3 -3
- package/cjs/S5659/rule.js +18 -15
- package/cjs/S5689/generated-meta.js +4 -4
- package/cjs/S5689/index.js +3 -3
- package/cjs/S5689/meta.js +3 -3
- package/cjs/S5689/rule.js +14 -11
- package/cjs/S5691/generated-meta.js +3 -3
- package/cjs/S5691/index.js +3 -3
- package/cjs/S5691/meta.js +3 -3
- package/cjs/S5691/rule.js +10 -8
- package/cjs/S5693/config.js +3 -3
- package/cjs/S5693/generated-meta.js +4 -4
- package/cjs/S5693/index.js +3 -3
- package/cjs/S5693/meta.js +3 -3
- package/cjs/S5693/rule.js +17 -15
- package/cjs/S5725/generated-meta.js +3 -3
- package/cjs/S5725/index.js +3 -3
- package/cjs/S5725/meta.js +3 -3
- package/cjs/S5725/rule.js +12 -9
- package/cjs/S5728/generated-meta.js +3 -3
- package/cjs/S5728/index.js +3 -3
- package/cjs/S5728/meta.js +3 -3
- package/cjs/S5728/rule.js +10 -7
- package/cjs/S5730/generated-meta.js +3 -3
- package/cjs/S5730/index.js +3 -3
- package/cjs/S5730/meta.js +3 -3
- package/cjs/S5730/rule.js +12 -9
- package/cjs/S5732/generated-meta.js +3 -3
- package/cjs/S5732/index.js +3 -3
- package/cjs/S5732/meta.js +3 -3
- package/cjs/S5732/rule.js +11 -8
- package/cjs/S5734/generated-meta.js +3 -3
- package/cjs/S5734/index.js +3 -3
- package/cjs/S5734/meta.js +3 -3
- package/cjs/S5734/rule.js +10 -7
- package/cjs/S5736/generated-meta.js +3 -3
- package/cjs/S5736/index.js +3 -3
- package/cjs/S5736/meta.js +3 -3
- package/cjs/S5736/rule.js +11 -8
- package/cjs/S5739/generated-meta.js +3 -3
- package/cjs/S5739/index.js +3 -3
- package/cjs/S5739/meta.js +3 -3
- package/cjs/S5739/rule.js +14 -11
- package/cjs/S5742/generated-meta.js +3 -3
- package/cjs/S5742/index.js +3 -3
- package/cjs/S5742/meta.js +3 -3
- package/cjs/S5742/rule.js +10 -7
- package/cjs/S5743/generated-meta.js +3 -3
- package/cjs/S5743/index.js +3 -3
- package/cjs/S5743/meta.js +3 -3
- package/cjs/S5743/rule.js +11 -9
- package/cjs/S5757/generated-meta.js +3 -3
- package/cjs/S5757/index.js +3 -3
- package/cjs/S5757/meta.js +3 -3
- package/cjs/S5757/rule.js +16 -13
- package/cjs/S5759/generated-meta.js +3 -3
- package/cjs/S5759/index.js +3 -3
- package/cjs/S5759/meta.js +3 -3
- package/cjs/S5759/rule.js +13 -10
- package/cjs/S5842/generated-meta.js +3 -3
- package/cjs/S5842/index.js +3 -3
- package/cjs/S5842/meta.js +3 -3
- package/cjs/S5842/rule.js +5 -5
- package/cjs/S5843/config.js +3 -3
- package/cjs/S5843/generated-meta.js +3 -3
- package/cjs/S5843/index.js +3 -3
- package/cjs/S5843/meta.js +3 -3
- package/cjs/S5843/rule.js +25 -22
- package/cjs/S5850/generated-meta.js +3 -3
- package/cjs/S5850/index.js +3 -3
- package/cjs/S5850/meta.js +3 -3
- package/cjs/S5850/rule.js +7 -6
- package/cjs/S5852/generated-meta.js +3 -3
- package/cjs/S5852/index.js +3 -3
- package/cjs/S5852/meta.js +3 -3
- package/cjs/S5852/rule.js +5 -5
- package/cjs/S5856/generated-meta.js +3 -3
- package/cjs/S5856/index.js +3 -3
- package/cjs/S5856/meta.js +3 -3
- package/cjs/S5856/rule.js +13 -10
- package/cjs/S5860/generated-meta.js +3 -3
- package/cjs/S5860/index.js +3 -3
- package/cjs/S5860/meta.js +3 -3
- package/cjs/S5860/rule.js +33 -29
- package/cjs/S5863/generated-meta.js +3 -3
- package/cjs/S5863/index.js +3 -3
- package/cjs/S5863/meta.js +3 -3
- package/cjs/S5863/rule.js +18 -14
- package/cjs/S5867/generated-meta.js +3 -3
- package/cjs/S5867/index.js +3 -3
- package/cjs/S5867/meta.js +3 -3
- package/cjs/S5867/rule.js +11 -10
- package/cjs/S5868/generated-meta.js +3 -3
- package/cjs/S5868/index.js +3 -3
- package/cjs/S5868/meta.js +3 -3
- package/cjs/S5868/rule.js +10 -8
- package/cjs/S5869/generated-meta.js +3 -3
- package/cjs/S5869/index.js +3 -3
- package/cjs/S5869/meta.js +3 -3
- package/cjs/S5869/rule.js +9 -8
- package/cjs/S5876/generated-meta.js +3 -3
- package/cjs/S5876/index.js +3 -3
- package/cjs/S5876/meta.js +3 -3
- package/cjs/S5876/rule.js +15 -11
- package/cjs/S5958/generated-meta.js +3 -3
- package/cjs/S5958/index.js +3 -3
- package/cjs/S5958/meta.js +3 -3
- package/cjs/S5958/rule.js +15 -12
- package/cjs/S5973/generated-meta.js +3 -3
- package/cjs/S5973/index.js +3 -3
- package/cjs/S5973/meta.js +3 -3
- package/cjs/S5973/rule.js +13 -10
- package/cjs/S6019/generated-meta.js +3 -3
- package/cjs/S6019/index.js +3 -3
- package/cjs/S6019/meta.js +3 -3
- package/cjs/S6019/rule.js +7 -6
- package/cjs/S6035/generated-meta.js +3 -3
- package/cjs/S6035/index.js +3 -3
- package/cjs/S6035/meta.js +3 -3
- package/cjs/S6035/rule.js +5 -5
- package/cjs/S6079/generated-meta.js +3 -3
- package/cjs/S6079/index.js +3 -3
- package/cjs/S6079/meta.js +3 -3
- package/cjs/S6079/rule.js +12 -9
- package/cjs/S6080/generated-meta.js +3 -3
- package/cjs/S6080/index.js +3 -3
- package/cjs/S6080/meta.js +3 -3
- package/cjs/S6080/rule.js +16 -13
- package/cjs/S6092/generated-meta.js +3 -3
- package/cjs/S6092/index.js +3 -3
- package/cjs/S6092/meta.js +3 -3
- package/cjs/S6092/rule.js +12 -10
- package/cjs/S6245/generated-meta.js +3 -3
- package/cjs/S6245/index.js +3 -3
- package/cjs/S6245/meta.js +3 -3
- package/cjs/S6245/rule.js +17 -12
- package/cjs/S6249/generated-meta.js +3 -3
- package/cjs/S6249/index.js +3 -3
- package/cjs/S6249/meta.js +3 -3
- package/cjs/S6249/rule.js +10 -8
- package/cjs/S6252/generated-meta.js +3 -3
- package/cjs/S6252/index.js +3 -3
- package/cjs/S6252/meta.js +3 -3
- package/cjs/S6252/rule.js +15 -11
- package/cjs/S6265/generated-meta.js +4 -4
- package/cjs/S6265/index.js +3 -3
- package/cjs/S6265/meta.js +3 -3
- package/cjs/S6265/rule.js +30 -23
- package/cjs/S6268/generated-meta.js +3 -3
- package/cjs/S6268/index.js +3 -3
- package/cjs/S6268/meta.js +3 -3
- package/cjs/S6268/rule.js +8 -7
- package/cjs/S6270/generated-meta.js +4 -4
- package/cjs/S6270/index.js +3 -3
- package/cjs/S6270/meta.js +3 -3
- package/cjs/S6270/rule.js +15 -12
- package/cjs/S6275/generated-meta.js +4 -4
- package/cjs/S6275/index.js +3 -3
- package/cjs/S6275/meta.js +3 -3
- package/cjs/S6275/rule.js +5 -5
- package/cjs/S6281/generated-meta.js +3 -3
- package/cjs/S6281/index.js +3 -3
- package/cjs/S6281/meta.js +3 -3
- package/cjs/S6281/rule.js +25 -20
- package/cjs/S6299/generated-meta.js +3 -3
- package/cjs/S6299/index.js +3 -3
- package/cjs/S6299/meta.js +3 -3
- package/cjs/S6299/rule.js +5 -5
- package/cjs/S6302/generated-meta.js +4 -4
- package/cjs/S6302/index.js +3 -3
- package/cjs/S6302/meta.js +3 -3
- package/cjs/S6302/rule.js +9 -8
- package/cjs/S6303/generated-meta.js +4 -4
- package/cjs/S6303/index.js +3 -3
- package/cjs/S6303/meta.js +3 -3
- package/cjs/S6303/rule.js +15 -13
- package/cjs/S6304/generated-meta.js +3 -3
- package/cjs/S6304/index.js +3 -3
- package/cjs/S6304/meta.js +3 -3
- package/cjs/S6304/rule.js +9 -8
- package/cjs/S6308/generated-meta.js +4 -4
- package/cjs/S6308/index.js +3 -3
- package/cjs/S6308/meta.js +3 -3
- package/cjs/S6308/rule.js +10 -8
- package/cjs/S6317/generated-meta.js +3 -3
- package/cjs/S6317/index.js +3 -3
- package/cjs/S6317/meta.js +3 -3
- package/cjs/S6317/rule.js +8 -7
- package/cjs/S6319/generated-meta.js +3 -3
- package/cjs/S6319/index.js +3 -3
- package/cjs/S6319/meta.js +3 -3
- package/cjs/S6319/rule.js +5 -5
- package/cjs/S6321/generated-meta.js +3 -3
- package/cjs/S6321/index.js +3 -3
- package/cjs/S6321/meta.js +3 -3
- package/cjs/S6321/rule.js +28 -26
- package/cjs/S6323/generated-meta.js +3 -3
- package/cjs/S6323/index.js +3 -3
- package/cjs/S6323/meta.js +3 -3
- package/cjs/S6323/rule.js +7 -6
- package/cjs/S6324/generated-meta.js +3 -3
- package/cjs/S6324/index.js +3 -3
- package/cjs/S6324/meta.js +3 -3
- package/cjs/S6324/rule.js +5 -5
- package/cjs/S6326/generated-meta.js +3 -3
- package/cjs/S6326/index.js +3 -3
- package/cjs/S6326/meta.js +3 -3
- package/cjs/S6326/rule.js +5 -5
- package/cjs/S6327/generated-meta.js +3 -3
- package/cjs/S6327/index.js +3 -3
- package/cjs/S6327/meta.js +3 -3
- package/cjs/S6327/rule.js +5 -5
- package/cjs/S6328/generated-meta.js +3 -3
- package/cjs/S6328/index.js +3 -3
- package/cjs/S6328/meta.js +3 -3
- package/cjs/S6328/rule.js +7 -6
- package/cjs/S6329/generated-meta.js +3 -3
- package/cjs/S6329/index.js +3 -3
- package/cjs/S6329/meta.js +3 -3
- package/cjs/S6329/rule.js +10 -8
- package/cjs/S6330/generated-meta.js +4 -4
- package/cjs/S6330/index.js +3 -3
- package/cjs/S6330/meta.js +3 -3
- package/cjs/S6330/rule.js +5 -5
- package/cjs/S6331/generated-meta.js +3 -3
- package/cjs/S6331/index.js +3 -3
- package/cjs/S6331/meta.js +3 -3
- package/cjs/S6331/rule.js +3 -3
- package/cjs/S6332/generated-meta.js +3 -3
- package/cjs/S6332/index.js +3 -3
- package/cjs/S6332/meta.js +3 -3
- package/cjs/S6332/rule.js +5 -5
- package/cjs/S6333/generated-meta.js +3 -3
- package/cjs/S6333/index.js +3 -3
- package/cjs/S6333/meta.js +3 -3
- package/cjs/S6333/rule.js +11 -9
- package/cjs/S6351/generated-meta.js +3 -3
- package/cjs/S6351/index.js +3 -3
- package/cjs/S6351/meta.js +3 -3
- package/cjs/S6351/rule.js +25 -22
- package/cjs/S6353/generated-meta.js +3 -3
- package/cjs/S6353/index.js +3 -3
- package/cjs/S6353/meta.js +3 -3
- package/cjs/S6353/rule.js +5 -5
- package/cjs/S6397/generated-meta.js +3 -3
- package/cjs/S6397/index.js +3 -3
- package/cjs/S6397/meta.js +3 -3
- package/cjs/S6397/rule.js +5 -5
- package/cjs/S6418/config.js +3 -3
- package/cjs/S6418/generated-meta.js +3 -3
- package/cjs/S6418/index.js +3 -3
- package/cjs/S6418/meta.js +3 -3
- package/cjs/S6418/rule.js +12 -27
- package/cjs/S6426/generated-meta.js +3 -3
- package/cjs/S6426/index.js +3 -3
- package/cjs/S6426/meta.js +3 -3
- package/cjs/S6426/rule.js +8 -7
- package/cjs/S6437/generated-meta.js +3 -3
- package/cjs/S6437/index.js +3 -3
- package/cjs/S6437/meta.js +3 -3
- package/cjs/S6437/rule.js +18 -10
- package/cjs/S6439/generated-meta.js +4 -4
- package/cjs/S6439/index.js +3 -3
- package/cjs/S6439/meta.js +3 -3
- package/cjs/S6439/rule.js +12 -10
- package/cjs/S6442/generated-meta.js +4 -4
- package/cjs/S6442/index.js +3 -3
- package/cjs/S6442/meta.js +3 -3
- package/cjs/S6442/rule.js +14 -11
- package/cjs/S6443/generated-meta.js +4 -4
- package/cjs/S6443/index.js +3 -3
- package/cjs/S6443/meta.js +3 -3
- package/cjs/S6443/rule.js +12 -10
- package/cjs/S6486/generated-meta.js +3 -3
- package/cjs/S6486/index.js +3 -3
- package/cjs/S6486/meta.js +3 -3
- package/cjs/S6486/rule.js +9 -8
- package/cjs/S6564/generated-meta.js +3 -3
- package/cjs/S6564/index.js +3 -3
- package/cjs/S6564/meta.js +3 -3
- package/cjs/S6564/rule.js +7 -6
- package/cjs/S6594/generated-meta.js +3 -3
- package/cjs/S6594/index.js +3 -3
- package/cjs/S6594/meta.js +3 -3
- package/cjs/S6594/rule.js +15 -11
- package/cjs/S6627/generated-meta.js +3 -3
- package/cjs/S6627/index.js +3 -3
- package/cjs/S6627/meta.js +3 -3
- package/cjs/S6627/rule.js +9 -7
- package/cjs/S6759/generated-meta.js +3 -3
- package/cjs/S6759/index.js +3 -3
- package/cjs/S6759/meta.js +3 -3
- package/cjs/S6759/rule.js +13 -9
- package/cjs/S6958/generated-meta.js +3 -3
- package/cjs/S6958/index.js +3 -3
- package/cjs/S6958/meta.js +3 -3
- package/cjs/S6958/rule.js +2 -2
- package/cjs/S6959/generated-meta.js +3 -3
- package/cjs/S6959/index.js +3 -3
- package/cjs/S6959/meta.js +3 -3
- package/cjs/S6959/rule.js +12 -9
- package/cjs/S7059/generated-meta.js +5 -4
- package/cjs/S7059/index.js +3 -3
- package/cjs/S7059/meta.js +3 -3
- package/cjs/S7059/rule.js +11 -8
- package/cjs/S7639/generated-meta.js +3 -3
- package/cjs/S7639/index.js +3 -3
- package/cjs/S7639/meta.js +3 -3
- package/cjs/S7639/rule.js +8 -7
- package/cjs/S7790/generated-meta.js +3 -3
- package/cjs/S7790/index.js +3 -3
- package/cjs/S7790/meta.js +3 -3
- package/cjs/S7790/rule.js +10 -8
- package/cjs/S8441/generated-meta.js +3 -3
- package/cjs/S8441/index.js +3 -3
- package/cjs/S8441/meta.js +3 -3
- package/cjs/S8441/rule.js +16 -12
- package/cjs/{helpers/aws/index.js → S8479/generated-meta.js} +35 -19
- package/cjs/S8479/index.js +21 -0
- package/cjs/S8479/meta.js +22 -0
- package/cjs/S8479/rule.js +239 -0
- package/cjs/S881/generated-meta.js +3 -3
- package/cjs/S881/index.js +3 -3
- package/cjs/S881/meta.js +3 -3
- package/cjs/S881/rule.js +5 -5
- package/cjs/S888/generated-meta.js +3 -3
- package/cjs/S888/index.js +3 -3
- package/cjs/S888/meta.js +3 -3
- package/cjs/S888/rule.js +7 -6
- package/cjs/S930/generated-meta.js +3 -3
- package/cjs/S930/index.js +3 -3
- package/cjs/S930/meta.js +3 -3
- package/cjs/S930/rule.js +17 -15
- package/cjs/helpers/accessibility.js +3 -3
- package/cjs/helpers/ast.js +12 -9
- package/cjs/helpers/aws/s3.js +9 -6
- package/cjs/helpers/cache.js +3 -3
- package/cjs/helpers/chai.js +41 -43
- package/cjs/helpers/collection.js +3 -3
- package/cjs/helpers/configs.js +2 -2
- package/cjs/helpers/cookie-flag-check.js +19 -17
- package/cjs/helpers/entropy.js +33 -0
- package/cjs/helpers/express.js +127 -128
- package/cjs/helpers/files.js +4 -4
- package/cjs/helpers/find-up/closest.js +3 -3
- package/cjs/helpers/internal-metrics.js +27 -0
- package/cjs/helpers/mocha.js +50 -54
- package/cjs/helpers/module-ts.js +8 -3
- package/cjs/helpers/package-jsons/closest.js +3 -3
- package/cjs/helpers/package-jsons/dependencies.js +135 -1
- package/cjs/helpers/package-jsons/index.js +1 -0
- package/cjs/helpers/package-jsons/parse.js +3 -3
- package/cjs/helpers/recognizers/Detector.js +3 -3
- package/cjs/helpers/recognizers/detectors/CamelCaseDetector.js +3 -3
- package/cjs/helpers/recognizers/detectors/ContainsDetector.js +3 -3
- package/cjs/helpers/recognizers/detectors/EndWithDetector.js +3 -3
- package/cjs/helpers/recognizers/detectors/KeywordsDetector.js +3 -3
- package/cjs/helpers/regex/ast.js +7 -6
- package/cjs/helpers/regex/extract.js +11 -11
- package/cjs/helpers/regex/group.js +2 -2
- package/cjs/helpers/regex/location.js +2 -2
- package/cjs/helpers/regex/range.js +5 -4
- package/cjs/helpers/regex/rule-template.js +4 -3
- package/cjs/helpers/sinon.js +33 -36
- package/cjs/helpers/supertest.js +34 -37
- package/cjs/helpers/vitest.js +29 -32
- package/cjs/plugin-rules.js +5 -3
- package/docs/aws-ec2-unencrypted-ebs-volume.md +1 -1
- package/docs/aws-iam-all-privileges.md +1 -1
- package/docs/aws-iam-public-access.md +1 -1
- package/docs/aws-opensearchservice-domain.md +1 -1
- package/docs/aws-rds-unencrypted-databases.md +1 -1
- package/docs/aws-s3-bucket-granted-access.md +1 -1
- package/docs/aws-sqs-unencrypted-queue.md +1 -1
- package/docs/class-name.md +3 -3
- package/docs/content-length.md +1 -1
- package/docs/cors.md +1 -1
- package/docs/dompurify-unsafe-config.md +7 -0
- package/docs/file-permissions.md +1 -1
- package/docs/insecure-cookie.md +1 -1
- package/docs/link-with-target-blank.md +1 -1
- package/docs/no-hardcoded-ip.md +1 -1
- package/docs/no-unsafe-unzip.md +4 -2
- package/docs/publicly-writable-directories.md +1 -1
- package/docs/x-powered-by.md +1 -1
- package/package.json +39 -1
- package/types/S101/config.d.ts +1 -1
- package/types/S1128/generated-meta.d.ts +1 -0
- package/types/S1313/generated-meta.d.ts +1 -1
- package/types/S134/config.d.ts +1 -1
- package/types/S2208/generated-meta.d.ts +1 -0
- package/types/S3317/generated-meta.d.ts +1 -0
- package/types/S3499/generated-meta.d.ts +1 -0
- package/types/S3500/generated-meta.d.ts +1 -0
- package/types/S3513/generated-meta.d.ts +1 -0
- package/types/S3514/generated-meta.d.ts +1 -0
- package/types/S3524/generated-meta.d.ts +1 -0
- package/types/S3525/generated-meta.d.ts +1 -0
- package/types/S3531/generated-meta.d.ts +1 -0
- package/types/S3533/generated-meta.d.ts +1 -0
- package/types/S3776/meta.d.ts +2 -0
- package/types/S4624/generated-meta.d.ts +1 -0
- package/types/S4634/generated-meta.d.ts +1 -0
- package/types/S4822/generated-meta.d.ts +1 -0
- package/types/S5042/generated-meta.d.ts +2 -2
- package/types/S6439/generated-meta.d.ts +1 -1
- package/types/S6442/generated-meta.d.ts +1 -1
- package/types/S6443/generated-meta.d.ts +1 -1
- package/types/S7059/generated-meta.d.ts +1 -0
- package/types/S8479/generated-meta.d.ts +17 -0
- package/types/S8479/index.d.ts +1 -0
- package/types/S8479/meta.d.ts +2 -0
- package/types/S8479/rule.d.ts +2 -0
- package/types/helpers/ancestor.d.ts +1 -1
- package/types/helpers/aws/s3.d.ts +1 -1
- package/types/helpers/chai.d.ts +3 -5
- package/types/helpers/entropy.d.ts +1 -0
- package/types/helpers/express.d.ts +38 -43
- package/types/helpers/files.d.ts +6 -21
- package/types/helpers/internal-metrics.d.ts +5 -0
- package/types/helpers/mocha.d.ts +19 -21
- package/types/helpers/package-jsons/dependencies.d.ts +36 -0
- package/types/helpers/regex/ast.d.ts +1 -1
- package/types/helpers/regex/rule-template.d.ts +1 -1
- package/types/helpers/sinon.d.ts +3 -5
- package/types/helpers/supertest.d.ts +3 -5
- package/types/helpers/type.d.ts +1 -1
- package/types/helpers/vitest.d.ts +3 -5
- package/types/plugin-rules.d.ts +1 -0
- package/cjs/helpers/decorators/index.js +0 -34
- package/cjs/helpers/decorators/interceptor.js +0 -88
- package/cjs/helpers/index.js +0 -60
- package/cjs/helpers/recognizers/index.js +0 -37
- package/cjs/helpers/rule-detect-react.js +0 -29
- package/cjs/helpers/validate-version.js +0 -94
- package/types/helpers/aws/index.d.ts +0 -3
- package/types/helpers/decorators/index.d.ts +0 -2
- package/types/helpers/decorators/interceptor.d.ts +0 -16
- package/types/helpers/index.d.ts +0 -28
- package/types/helpers/recognizers/index.d.ts +0 -2
- package/types/helpers/rule-detect-react.d.ts +0 -2
- package/types/helpers/validate-version.d.ts +0 -13
package/cjs/helpers/aws/s3.js
CHANGED
|
@@ -5,7 +5,10 @@ exports.isS3BucketConstructor = isS3BucketConstructor;
|
|
|
5
5
|
exports.isS3BucketDeploymentConstructor = isS3BucketDeploymentConstructor;
|
|
6
6
|
exports.getBucketProperty = getBucketProperty;
|
|
7
7
|
exports.findPropagatedSetting = findPropagatedSetting;
|
|
8
|
-
const
|
|
8
|
+
const location_js_1 = require("../location.js");
|
|
9
|
+
const module_js_1 = require("../module.js");
|
|
10
|
+
const ancestor_js_1 = require("../ancestor.js");
|
|
11
|
+
const ast_js_1 = require("../ast.js");
|
|
9
12
|
const cdk_js_1 = require("./cdk.js");
|
|
10
13
|
/**
|
|
11
14
|
* A rule template for AWS S3 Buckets
|
|
@@ -40,7 +43,7 @@ function S3BucketTemplate(callback, meta = {}) {
|
|
|
40
43
|
* new s3.Bucket();
|
|
41
44
|
*/
|
|
42
45
|
function isS3BucketConstructor(context, node) {
|
|
43
|
-
return (0, cdk_js_1.normalizeFQN)((0,
|
|
46
|
+
return (0, cdk_js_1.normalizeFQN)((0, module_js_1.getFullyQualifiedName)(context, node)) === 'aws_cdk_lib.aws_s3.Bucket';
|
|
44
47
|
}
|
|
45
48
|
/**
|
|
46
49
|
* Detects S3 BucketDeployment's constructor invocation from 'aws-cdk-lib/aws-s3-deployment':
|
|
@@ -49,7 +52,7 @@ function isS3BucketConstructor(context, node) {
|
|
|
49
52
|
* new s3.BucketDeployment();
|
|
50
53
|
*/
|
|
51
54
|
function isS3BucketDeploymentConstructor(context, node) {
|
|
52
|
-
return ((0, cdk_js_1.normalizeFQN)((0,
|
|
55
|
+
return ((0, cdk_js_1.normalizeFQN)((0, module_js_1.getFullyQualifiedName)(context, node)) ===
|
|
53
56
|
'aws_cdk_lib.aws_s3_deployment.BucketDeployment');
|
|
54
57
|
}
|
|
55
58
|
/**
|
|
@@ -71,11 +74,11 @@ function isS3BucketDeploymentConstructor(context, node) {
|
|
|
71
74
|
function getBucketProperty(context, bucket, key) {
|
|
72
75
|
const args = bucket.arguments;
|
|
73
76
|
const optionsArg = args[2];
|
|
74
|
-
const options = (0,
|
|
77
|
+
const options = (0, ast_js_1.getValueOfExpression)(context, optionsArg, 'ObjectExpression');
|
|
75
78
|
if (options == null) {
|
|
76
79
|
return null;
|
|
77
80
|
}
|
|
78
|
-
return options.properties.find(property => (0,
|
|
81
|
+
return options.properties.find(property => (0, ast_js_1.isProperty)(property) && (0, ast_js_1.isIdentifier)(property.key, key));
|
|
79
82
|
}
|
|
80
83
|
/**
|
|
81
84
|
* Finds the propagated setting of a sensitive property
|
|
@@ -83,7 +86,7 @@ function getBucketProperty(context, bucket, key) {
|
|
|
83
86
|
function findPropagatedSetting(sensitiveProperty, propagatedValue) {
|
|
84
87
|
const isPropagatedProperty = sensitiveProperty.value !== propagatedValue;
|
|
85
88
|
if (isPropagatedProperty) {
|
|
86
|
-
return (0,
|
|
89
|
+
return (0, location_js_1.toSecondaryLocation)((0, ancestor_js_1.getNodeParent)(propagatedValue), 'Propagated setting.');
|
|
87
90
|
}
|
|
88
91
|
return undefined;
|
|
89
92
|
}
|
package/cjs/helpers/cache.js
CHANGED
|
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ComputedCache = void 0;
|
|
4
4
|
/*
|
|
5
5
|
* SonarQube JavaScript Plugin
|
|
6
|
-
* Copyright (C)
|
|
6
|
+
* Copyright (C) SonarSource Sàrl
|
|
7
7
|
* mailto:info AT sonarsource DOT com
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
9
|
+
* You can redistribute and/or modify this program under the terms of
|
|
10
|
+
* the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
|
|
11
11
|
*
|
|
12
12
|
* This program is distributed in the hope that it will be useful,
|
|
13
13
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
package/cjs/helpers/chai.js
CHANGED
|
@@ -3,51 +3,49 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
7
|
-
|
|
6
|
+
exports.isImported = isImported;
|
|
7
|
+
exports.isTSAssertion = isTSAssertion;
|
|
8
|
+
exports.isAssertion = isAssertion;
|
|
9
|
+
const module_js_1 = require("./module.js");
|
|
10
|
+
const module_ts_js_1 = require("./module-ts.js");
|
|
11
|
+
const ast_js_1 = require("./ast.js");
|
|
8
12
|
const typescript_1 = __importDefault(require("typescript"));
|
|
9
|
-
|
|
10
|
-
(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
+
function isImported(context) {
|
|
14
|
+
return ((0, module_js_1.getRequireCalls)(context).some(r => r.arguments[0].type === 'Literal' && r.arguments[0].value === 'chai') || (0, module_js_1.getImportDeclarations)(context).some(i => i.source.value === 'chai'));
|
|
15
|
+
}
|
|
16
|
+
function isTSAssertion(services, node) {
|
|
17
|
+
if (node.kind !== typescript_1.default.SyntaxKind.CallExpression) {
|
|
18
|
+
return false;
|
|
13
19
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return false;
|
|
18
|
-
}
|
|
19
|
-
const fqn = (0, index_js_1.getFullyQualifiedNameTS)(services, node);
|
|
20
|
-
if (!fqn) {
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
return fqn.startsWith('chai.assert') || fqn.startsWith('chai.expect') || fqn.includes('should');
|
|
20
|
+
const fqn = (0, module_ts_js_1.getFullyQualifiedNameTS)(services, node);
|
|
21
|
+
if (!fqn) {
|
|
22
|
+
return false;
|
|
24
23
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
return fqn.startsWith('chai.assert') || fqn.startsWith('chai.expect') || fqn.includes('should');
|
|
25
|
+
}
|
|
26
|
+
function isAssertion(context, node) {
|
|
27
|
+
return isAssertUsage(context, node) || isExpectUsage(context, node) || isShouldUsage(node);
|
|
28
|
+
}
|
|
29
|
+
function isAssertUsage(context, node) {
|
|
30
|
+
// assert(), assert.<expr>(), chai.assert(), chai.assert.<expr>()
|
|
31
|
+
const fqn = extractFQNforCallExpression(context, node);
|
|
32
|
+
if (!fqn) {
|
|
33
|
+
return false;
|
|
28
34
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
35
|
+
const names = fqn.split('.');
|
|
36
|
+
return names[0] === 'chai' && names[1] === 'assert';
|
|
37
|
+
}
|
|
38
|
+
function isExpectUsage(context, node) {
|
|
39
|
+
// expect(), chai.expect()
|
|
40
|
+
return extractFQNforCallExpression(context, node) === 'chai.expect';
|
|
41
|
+
}
|
|
42
|
+
function isShouldUsage(node) {
|
|
43
|
+
// <expr>.should.<expr>
|
|
44
|
+
return node.type === 'MemberExpression' && (0, ast_js_1.isIdentifier)(node.property, 'should');
|
|
45
|
+
}
|
|
46
|
+
function extractFQNforCallExpression(context, node) {
|
|
47
|
+
if (node.type !== 'CallExpression') {
|
|
48
|
+
return undefined;
|
|
38
49
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return extractFQNforCallExpression(context, node) === 'chai.expect';
|
|
42
|
-
}
|
|
43
|
-
function isShouldUsage(node) {
|
|
44
|
-
// <expr>.should.<expr>
|
|
45
|
-
return node.type === 'MemberExpression' && (0, index_js_1.isIdentifier)(node.property, 'should');
|
|
46
|
-
}
|
|
47
|
-
function extractFQNforCallExpression(context, node) {
|
|
48
|
-
if (node.type !== 'CallExpression') {
|
|
49
|
-
return undefined;
|
|
50
|
-
}
|
|
51
|
-
return (0, index_js_1.getFullyQualifiedName)(context, node);
|
|
52
|
-
}
|
|
53
|
-
})(Chai || (exports.Chai = Chai = {}));
|
|
50
|
+
return (0, module_js_1.getFullyQualifiedName)(context, node);
|
|
51
|
+
}
|
|
@@ -5,11 +5,11 @@ exports.flatMap = flatMap;
|
|
|
5
5
|
exports.last = last;
|
|
6
6
|
/*
|
|
7
7
|
* SonarQube JavaScript Plugin
|
|
8
|
-
* Copyright (C)
|
|
8
|
+
* Copyright (C) SonarSource Sàrl
|
|
9
9
|
* mailto:info AT sonarsource DOT com
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
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
13
|
*
|
|
14
14
|
* This program is distributed in the hope that it will be useful,
|
|
15
15
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
package/cjs/helpers/configs.js
CHANGED
|
@@ -93,8 +93,8 @@ function applyTransformations(fields, mergedValues) {
|
|
|
93
93
|
// fieldDefinition is a single property: { default, customForConfiguration, ... }
|
|
94
94
|
// mergedConfigEntry is a scalar value (string, number, boolean)
|
|
95
95
|
//
|
|
96
|
-
// Example — S1441 fieldDefinition = { default: 'single',
|
|
97
|
-
// mergedConfigEntry = true (
|
|
96
|
+
// Example — S1441 fieldDefinition = { default: 'single', customForConfiguration: (v) => ... }
|
|
97
|
+
// mergedConfigEntry = 'true' (string from SQ)
|
|
98
98
|
// After transform: 'single' (string expected by ESLint quotes rule)
|
|
99
99
|
return fieldDefinition.customForConfiguration(mergedConfigEntry);
|
|
100
100
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CookieFlagCheck = void 0;
|
|
4
|
-
const
|
|
4
|
+
const location_js_1 = require("./location.js");
|
|
5
|
+
const ast_js_1 = require("./ast.js");
|
|
6
|
+
const module_js_1 = require("./module.js");
|
|
5
7
|
class CookieFlagCheck {
|
|
6
8
|
constructor(context, flag) {
|
|
7
9
|
this.context = context;
|
|
@@ -13,7 +15,7 @@ class CookieFlagCheck {
|
|
|
13
15
|
this.checkSensitiveCookieArgument(callExpression, 0);
|
|
14
16
|
}
|
|
15
17
|
checkCookiesMethodCall(callExpression) {
|
|
16
|
-
if (!(0,
|
|
18
|
+
if (!(0, ast_js_1.isIdentifier)(callExpression.callee.property, 'set')) {
|
|
17
19
|
return;
|
|
18
20
|
}
|
|
19
21
|
// Sensitive argument is third argument for "cookies.set" calls
|
|
@@ -25,12 +27,12 @@ class CookieFlagCheck {
|
|
|
25
27
|
if (cookieProperty) {
|
|
26
28
|
// csurf cookie property can be passed as a boolean literal,
|
|
27
29
|
// in which case neither "secure" nor "httponly" are enabled by default
|
|
28
|
-
const cookiePropertyLiteral = (0,
|
|
30
|
+
const cookiePropertyLiteral = (0, ast_js_1.getValueOfExpression)(this.context, cookieProperty.value, 'Literal');
|
|
29
31
|
if (cookiePropertyLiteral?.value === true) {
|
|
30
|
-
(0,
|
|
32
|
+
(0, location_js_1.report)(this.context, {
|
|
31
33
|
node: callExpression.callee,
|
|
32
34
|
message: this.issueMessage,
|
|
33
|
-
}, [(0,
|
|
35
|
+
}, [(0, location_js_1.toSecondaryLocation)(cookiePropertyLiteral)]);
|
|
34
36
|
}
|
|
35
37
|
}
|
|
36
38
|
}
|
|
@@ -43,7 +45,7 @@ class CookieFlagCheck {
|
|
|
43
45
|
return;
|
|
44
46
|
}
|
|
45
47
|
const sensitiveArgument = callExpression.arguments[sensitiveArgumentIndex];
|
|
46
|
-
const cookieObjectExpression = (0,
|
|
48
|
+
const cookieObjectExpression = (0, ast_js_1.getValueOfExpression)(this.context, sensitiveArgument, 'ObjectExpression');
|
|
47
49
|
if (!cookieObjectExpression) {
|
|
48
50
|
return;
|
|
49
51
|
}
|
|
@@ -54,15 +56,15 @@ class CookieFlagCheck {
|
|
|
54
56
|
return;
|
|
55
57
|
}
|
|
56
58
|
const firstArgument = callExpression.arguments[argumentIndex];
|
|
57
|
-
const objectExpression = (0,
|
|
59
|
+
const objectExpression = (0, ast_js_1.getValueOfExpression)(this.context, firstArgument, 'ObjectExpression');
|
|
58
60
|
if (!objectExpression) {
|
|
59
61
|
return;
|
|
60
62
|
}
|
|
61
|
-
const cookieProperty = (0,
|
|
63
|
+
const cookieProperty = (0, ast_js_1.getProperty)(objectExpression, 'cookie', this.context);
|
|
62
64
|
if (!cookieProperty) {
|
|
63
65
|
return;
|
|
64
66
|
}
|
|
65
|
-
const cookiePropertyValue = (0,
|
|
67
|
+
const cookiePropertyValue = (0, ast_js_1.getValueOfExpression)(this.context, cookieProperty.value, 'ObjectExpression');
|
|
66
68
|
if (cookiePropertyValue) {
|
|
67
69
|
this.checkFlagOnCookieExpression(cookiePropertyValue, firstArgument, objectExpression, callExpression);
|
|
68
70
|
return;
|
|
@@ -70,15 +72,15 @@ class CookieFlagCheck {
|
|
|
70
72
|
return cookieProperty;
|
|
71
73
|
}
|
|
72
74
|
checkFlagOnCookieExpression(cookiePropertyValue, firstArgument, objectExpression, callExpression) {
|
|
73
|
-
const flagProperty = (0,
|
|
75
|
+
const flagProperty = (0, ast_js_1.getProperty)(cookiePropertyValue, this.flag, this.context);
|
|
74
76
|
if (flagProperty) {
|
|
75
|
-
const flagPropertyValue = (0,
|
|
77
|
+
const flagPropertyValue = (0, ast_js_1.getValueOfExpression)(this.context, flagProperty.value, 'Literal');
|
|
76
78
|
if (flagPropertyValue?.value === false) {
|
|
77
|
-
const secondaryLocations = [(0,
|
|
79
|
+
const secondaryLocations = [(0, location_js_1.toSecondaryLocation)(flagPropertyValue)];
|
|
78
80
|
if (firstArgument !== objectExpression) {
|
|
79
|
-
secondaryLocations.push((0,
|
|
81
|
+
secondaryLocations.push((0, location_js_1.toSecondaryLocation)(objectExpression));
|
|
80
82
|
}
|
|
81
|
-
(0,
|
|
83
|
+
(0, location_js_1.report)(this.context, {
|
|
82
84
|
node: callExpression.callee,
|
|
83
85
|
message: this.issueMessage,
|
|
84
86
|
}, secondaryLocations);
|
|
@@ -88,7 +90,7 @@ class CookieFlagCheck {
|
|
|
88
90
|
checkCookiesFromCallExpression(node) {
|
|
89
91
|
const callExpression = node;
|
|
90
92
|
const { callee } = callExpression;
|
|
91
|
-
const fqn = (0,
|
|
93
|
+
const fqn = (0, module_js_1.getFullyQualifiedName)(this.context, callee);
|
|
92
94
|
if (fqn === 'cookie-session') {
|
|
93
95
|
this.checkCookieSession(callExpression);
|
|
94
96
|
return;
|
|
@@ -102,8 +104,8 @@ class CookieFlagCheck {
|
|
|
102
104
|
return;
|
|
103
105
|
}
|
|
104
106
|
if (callee.type === 'MemberExpression') {
|
|
105
|
-
const objectValue = (0,
|
|
106
|
-
if (objectValue && (0,
|
|
107
|
+
const objectValue = (0, ast_js_1.getValueOfExpression)(this.context, callee.object, 'NewExpression');
|
|
108
|
+
if (objectValue && (0, module_js_1.getFullyQualifiedName)(this.context, objectValue.callee) === 'cookies') {
|
|
107
109
|
this.checkCookiesMethodCall(callExpression);
|
|
108
110
|
}
|
|
109
111
|
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.shannonEntropy = shannonEntropy;
|
|
4
|
+
/*
|
|
5
|
+
* SonarQube JavaScript Plugin
|
|
6
|
+
* Copyright (C) SonarSource Sàrl
|
|
7
|
+
* mailto:info AT sonarsource DOT com
|
|
8
|
+
*
|
|
9
|
+
* You can redistribute and/or modify this program under the terms of
|
|
10
|
+
* the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
|
|
11
|
+
*
|
|
12
|
+
* This program is distributed in the hope that it will be useful,
|
|
13
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
15
|
+
* See the Sonar Source-Available License for more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the Sonar Source-Available License
|
|
18
|
+
* along with this program; if not, see https://sonarsource.com/license/ssal/
|
|
19
|
+
*/
|
|
20
|
+
function shannonEntropy(str) {
|
|
21
|
+
if (!str) {
|
|
22
|
+
return 0;
|
|
23
|
+
}
|
|
24
|
+
const len = str.length;
|
|
25
|
+
const occurrences = {};
|
|
26
|
+
for (const ch of str) {
|
|
27
|
+
occurrences[ch] = (occurrences[ch] ?? 0) + 1;
|
|
28
|
+
}
|
|
29
|
+
return (Object.values(occurrences)
|
|
30
|
+
.map(count => count / len)
|
|
31
|
+
.map(freq => -freq * Math.log(freq))
|
|
32
|
+
.reduce((acc, e) => acc + e, 0) / Math.log(2));
|
|
33
|
+
}
|
package/cjs/helpers/express.js
CHANGED
|
@@ -1,144 +1,143 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
3
|
+
exports.attemptFindAppInstantiation = attemptFindAppInstantiation;
|
|
4
|
+
exports.attemptFindAppInjection = attemptFindAppInjection;
|
|
5
|
+
exports.isUsingMiddleware = isUsingMiddleware;
|
|
6
|
+
exports.isMiddlewareInstance = isMiddlewareInstance;
|
|
7
|
+
exports.SensitiveMiddlewarePropertyRule = SensitiveMiddlewarePropertyRule;
|
|
8
|
+
const module_js_1 = require("./module.js");
|
|
9
|
+
const ast_js_1 = require("./ast.js");
|
|
10
|
+
const ancestor_js_1 = require("./ancestor.js");
|
|
11
|
+
const location_js_1 = require("./location.js");
|
|
5
12
|
/**
|
|
6
13
|
* This modules provides utilities for writing rules about Express.js.
|
|
7
14
|
*/
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
const pattern = varDecl.id;
|
|
19
|
-
return pattern.type === 'Identifier' ? pattern : undefined;
|
|
20
|
-
}
|
|
21
|
-
return undefined;
|
|
15
|
+
const EXPRESS = 'express';
|
|
16
|
+
/**
|
|
17
|
+
* Checks whether the declaration looks somewhat like `<id> = express()`
|
|
18
|
+
* and returns `<id>` if it matches.
|
|
19
|
+
*/
|
|
20
|
+
function attemptFindAppInstantiation(varDecl, context) {
|
|
21
|
+
const rhs = varDecl.init;
|
|
22
|
+
if (rhs?.type === 'CallExpression' && (0, module_js_1.getFullyQualifiedName)(context, rhs) === EXPRESS) {
|
|
23
|
+
const pattern = varDecl.id;
|
|
24
|
+
return pattern.type === 'Identifier' ? pattern : undefined;
|
|
22
25
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Checks whether the function injects an instantiated app and is exported like `module.exports = function(app) {}`
|
|
30
|
+
* or `module.exports.property = function(app) {}`, and returns app if it matches.
|
|
31
|
+
*/
|
|
32
|
+
function attemptFindAppInjection(functionDef, context, node) {
|
|
33
|
+
const app = functionDef.params.find(param => param.type === 'Identifier' && param.name === 'app');
|
|
34
|
+
if (app) {
|
|
35
|
+
const parent = (0, ancestor_js_1.getParent)(context, node);
|
|
36
|
+
if (parent?.type === 'AssignmentExpression') {
|
|
37
|
+
const { left } = parent;
|
|
38
|
+
if (left.type === 'MemberExpression' &&
|
|
39
|
+
((0, ast_js_1.isModuleExports)(left) || (0, ast_js_1.isModuleExports)(left.object))) {
|
|
40
|
+
return app;
|
|
38
41
|
}
|
|
39
42
|
}
|
|
40
|
-
return undefined;
|
|
41
43
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
return false;
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Checks whether the expression looks somewhat like `app.use(m1, [m2, m3], ..., mN)`,
|
|
48
|
+
* where one of `mK`-nodes satisfies the given predicate.
|
|
49
|
+
*/
|
|
50
|
+
function isUsingMiddleware(context, callExpression, app, middlewareNodePredicate) {
|
|
51
|
+
if ((0, ast_js_1.isMethodInvocation)(callExpression, app.name, 'use', 1)) {
|
|
52
|
+
const flattenedArgs = (0, ast_js_1.flattenArgs)(context, callExpression.arguments);
|
|
53
|
+
return flattenedArgs.some(middlewareNodePredicate);
|
|
53
54
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
return false;
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Checks whether a node looks somewhat like `require('m')()` for
|
|
59
|
+
* some middleware `m` from the list of middlewares.
|
|
60
|
+
*/
|
|
61
|
+
function isMiddlewareInstance(context, middlewares, n) {
|
|
62
|
+
if (n.type === 'CallExpression') {
|
|
63
|
+
const fqn = (0, module_js_1.getFullyQualifiedName)(context, n);
|
|
64
|
+
return fqn !== null && middlewares.includes(fqn);
|
|
65
65
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
return [];
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Rule factory for detecting sensitive settings that are passed to
|
|
70
|
+
* middlewares eventually used by Express.js applications:
|
|
71
|
+
*
|
|
72
|
+
* app.use(
|
|
73
|
+
* middleware(settings)
|
|
74
|
+
* )
|
|
75
|
+
*
|
|
76
|
+
* or
|
|
77
|
+
*
|
|
78
|
+
* app.use(
|
|
79
|
+
* middleware.method(settings)
|
|
80
|
+
* )
|
|
81
|
+
*
|
|
82
|
+
* @param sensitivePropertyFinder - a function looking for a sensitive setting on a middleware call
|
|
83
|
+
* @param message - the reported message when an issue is raised
|
|
84
|
+
* @param meta - the rule metadata
|
|
85
|
+
* @returns a rule module that raises issues when a sensitive property is found
|
|
86
|
+
*/
|
|
87
|
+
function SensitiveMiddlewarePropertyRule(sensitivePropertyFinder, message, meta = {}) {
|
|
88
|
+
return {
|
|
89
|
+
meta,
|
|
90
|
+
create(context) {
|
|
91
|
+
let app;
|
|
92
|
+
let sensitiveProperties;
|
|
93
|
+
function isExposing(middlewareNode) {
|
|
94
|
+
return Boolean(sensitiveProperties.push(...findSensitiveProperty(middlewareNode)));
|
|
95
|
+
}
|
|
96
|
+
function findSensitiveProperty(middlewareNode) {
|
|
97
|
+
if (middlewareNode.type === 'CallExpression') {
|
|
98
|
+
return sensitivePropertyFinder(context, middlewareNode);
|
|
100
99
|
}
|
|
101
|
-
return
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
100
|
+
return [];
|
|
101
|
+
}
|
|
102
|
+
return {
|
|
103
|
+
Program: () => {
|
|
104
|
+
app = null;
|
|
105
|
+
sensitiveProperties = [];
|
|
106
|
+
},
|
|
107
|
+
CallExpression: (node) => {
|
|
108
|
+
if (app) {
|
|
109
|
+
const callExpr = node;
|
|
110
|
+
const isSafe = !isUsingMiddleware(context, callExpr, app, isExposing);
|
|
111
|
+
if (!isSafe) {
|
|
112
|
+
for (const sensitive of sensitiveProperties) {
|
|
113
|
+
(0, location_js_1.report)(context, {
|
|
114
|
+
node: callExpr,
|
|
115
|
+
message,
|
|
116
|
+
}, [(0, location_js_1.toSecondaryLocation)(sensitive)]);
|
|
118
117
|
}
|
|
118
|
+
sensitiveProperties = [];
|
|
119
119
|
}
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
VariableDeclarator: (node) => {
|
|
123
|
+
if (!app) {
|
|
124
|
+
const varDecl = node;
|
|
125
|
+
const instantiatedApp = attemptFindAppInstantiation(varDecl, context);
|
|
126
|
+
if (instantiatedApp) {
|
|
127
|
+
app = instantiatedApp;
|
|
128
128
|
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
':function': (node) => {
|
|
132
|
+
if (!app) {
|
|
133
|
+
const functionDef = node;
|
|
134
|
+
const injectedApp = attemptFindAppInjection(functionDef, context, node);
|
|
135
|
+
if (injectedApp) {
|
|
136
|
+
app = injectedApp;
|
|
137
137
|
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
})(Express || (exports.Express = Express = {}));
|
|
138
|
+
}
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
},
|
|
142
|
+
};
|
|
143
|
+
}
|
package/cjs/helpers/files.js
CHANGED
|
@@ -11,11 +11,11 @@ exports.joinPaths = joinPaths;
|
|
|
11
11
|
exports.basenamePath = basenamePath;
|
|
12
12
|
/*
|
|
13
13
|
* SonarQube JavaScript Plugin
|
|
14
|
-
* Copyright (C)
|
|
14
|
+
* Copyright (C) SonarSource Sàrl
|
|
15
15
|
* mailto:info AT sonarsource DOT com
|
|
16
16
|
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* You can redistribute and/or modify this program under the terms of
|
|
18
|
+
* the Sonar Source-Available License Version 1, as published by SonarSource Sàrl.
|
|
19
19
|
*
|
|
20
20
|
* This program is distributed in the hope that it will be useful,
|
|
21
21
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
@@ -35,6 +35,7 @@ exports.ROOT_PATH = '/';
|
|
|
35
35
|
* Byte Order Marker
|
|
36
36
|
*/
|
|
37
37
|
const BOM_BYTE = 0xfeff;
|
|
38
|
+
const isWindows = process.platform === 'win32';
|
|
38
39
|
/**
|
|
39
40
|
* Removes any Byte Order Marker (BOM) from a string's head
|
|
40
41
|
*
|
|
@@ -49,7 +50,6 @@ function stripBOM(str) {
|
|
|
49
50
|
}
|
|
50
51
|
return str;
|
|
51
52
|
}
|
|
52
|
-
const isWindows = process.platform === 'win32';
|
|
53
53
|
/**
|
|
54
54
|
* Normalizes a path to Unix format (forward slashes).
|
|
55
55
|
* For absolute paths on Windows, resolves them to ensure they have a drive letter.
|