@monorepolint/rules 0.6.0-alpha.2 → 0.6.0-alpha.4

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 (85) hide show
  1. package/.turbo/turbo-clean.log +1 -1
  2. package/.turbo/turbo-compile-typescript.log +1 -1
  3. package/.turbo/turbo-lint.log +1 -1
  4. package/.turbo/turbo-test.log +161 -102
  5. package/.turbo/turbo-transpile-typescript.log +4 -4
  6. package/CHANGELOG.md +19 -0
  7. package/build/js/index.js +429 -241
  8. package/build/js/index.js.map +1 -1
  9. package/build/tsconfig.tsbuildinfo +1 -1
  10. package/build/types/__tests__/utils.d.ts +0 -1
  11. package/build/types/__tests__/utils.d.ts.map +1 -1
  12. package/build/types/bannedDependencies.d.ts.map +1 -1
  13. package/build/types/fileContents.d.ts.map +1 -1
  14. package/build/types/forceError.d.ts +4 -0
  15. package/build/types/forceError.d.ts.map +1 -0
  16. package/build/types/index.d.ts +5 -3
  17. package/build/types/index.d.ts.map +1 -1
  18. package/build/types/mustSatisfyPeerDependencies.d.ts.map +1 -1
  19. package/build/types/nestedWorkspaces.d.ts.map +1 -1
  20. package/build/types/oncePerPackage.d.ts +11 -0
  21. package/build/types/oncePerPackage.d.ts.map +1 -0
  22. package/build/types/packageEntry.d.ts.map +1 -1
  23. package/build/types/packageOrder.d.ts.map +1 -1
  24. package/build/types/packageScript.d.ts.map +1 -1
  25. package/build/types/requireDependency.d.ts +12 -12
  26. package/build/types/requireDependency.d.ts.map +1 -1
  27. package/build/types/util/checkAlpha.d.ts.map +1 -1
  28. package/build/types/util/createRuleFactory.d.ts.map +1 -1
  29. package/build/types/util/packageDependencyGraphService.d.ts.map +1 -1
  30. package/coverage/clover.xml +1201 -813
  31. package/coverage/coverage-final.json +20 -18
  32. package/coverage/index.html +20 -20
  33. package/coverage/src/alphabeticalDependencies.ts.html +11 -11
  34. package/coverage/src/alphabeticalScripts.ts.html +5 -5
  35. package/coverage/src/bannedDependencies.ts.html +76 -28
  36. package/coverage/src/consistentDependencies.ts.html +51 -18
  37. package/coverage/src/consistentVersions.ts.html +144 -48
  38. package/coverage/src/fileContents.ts.html +47 -23
  39. package/coverage/src/forceError.ts.html +184 -0
  40. package/coverage/src/index.html +96 -66
  41. package/coverage/src/index.ts.html +39 -33
  42. package/coverage/src/mustSatisfyPeerDependencies.ts.html +323 -80
  43. package/coverage/src/nestedWorkspaces.ts.html +47 -20
  44. package/coverage/src/oncePerPackage.ts.html +181 -0
  45. package/coverage/src/packageEntry.ts.html +40 -19
  46. package/coverage/src/packageOrder.ts.html +30 -12
  47. package/coverage/src/packageScript.ts.html +81 -27
  48. package/coverage/src/requireDependency.ts.html +77 -32
  49. package/coverage/src/standardTsconfig.ts.html +84 -21
  50. package/coverage/src/util/checkAlpha.ts.html +18 -9
  51. package/coverage/src/util/createRuleFactory.ts.html +16 -4
  52. package/coverage/src/util/index.html +17 -17
  53. package/coverage/src/util/makeDirectory.ts.html +5 -5
  54. package/coverage/src/util/packageDependencyGraphService.ts.html +94 -19
  55. package/package.json +4 -5
  56. package/src/__tests__/alphabeticalScripts.spec.ts +12 -4
  57. package/src/__tests__/bannedDependencies.spec.ts +45 -16
  58. package/src/__tests__/consistentDependencies.spec.ts +11 -5
  59. package/src/__tests__/consistentVersions.spec.ts +72 -18
  60. package/src/__tests__/fileContents.spec.ts +5 -5
  61. package/src/__tests__/mustSatisfyPeerDependencies.spec.ts +191 -76
  62. package/src/__tests__/nestedWorkspaces.spec.ts +10 -7
  63. package/src/__tests__/packageEntry.spec.ts +48 -47
  64. package/src/__tests__/packageOrder.spec.ts +72 -71
  65. package/src/__tests__/packageScript.spec.ts +19 -10
  66. package/src/__tests__/requireDependency.spec.ts +12 -6
  67. package/src/__tests__/utils.ts +16 -7
  68. package/src/bannedDependencies.ts +32 -16
  69. package/src/consistentDependencies.ts +19 -8
  70. package/src/consistentVersions.ts +70 -38
  71. package/src/fileContents.ts +19 -11
  72. package/src/forceError.ts +33 -0
  73. package/src/index.ts +5 -3
  74. package/src/mustSatisfyPeerDependencies.ts +141 -60
  75. package/src/nestedWorkspaces.ts +19 -10
  76. package/src/oncePerPackage.ts +32 -0
  77. package/src/packageEntry.ts +18 -11
  78. package/src/packageOrder.ts +9 -3
  79. package/src/packageScript.ts +37 -19
  80. package/src/requireDependency.ts +26 -11
  81. package/src/standardTsconfig.ts +31 -10
  82. package/src/util/checkAlpha.ts +5 -2
  83. package/src/util/createRuleFactory.ts +6 -2
  84. package/src/util/packageDependencyGraphService.ts +38 -13
  85. package/vitest.config.mjs +6 -7
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">94.66% </span>
26
+ <span class="strong">94.25% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>479/506</span>
28
+ <span class='fraction'>558/592</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">94.66% </span>
47
+ <span class="strong">94.25% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>479/506</span>
49
+ <span class='fraction'>558/592</span>
50
50
  </div>
51
51
 
52
52
 
@@ -807,13 +807,88 @@
807
807
  <a name='L742'></a><a href='#L742'>742</a>
808
808
  <a name='L743'></a><a href='#L743'>743</a>
809
809
  <a name='L744'></a><a href='#L744'>744</a>
810
- <a name='L745'></a><a href='#L745'>745</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
811
- <span class="cline-any cline-neutral">&nbsp;</span>
812
- <span class="cline-any cline-neutral">&nbsp;</span>
813
- <span class="cline-any cline-neutral">&nbsp;</span>
814
- <span class="cline-any cline-neutral">&nbsp;</span>
815
- <span class="cline-any cline-neutral">&nbsp;</span>
816
- <span class="cline-any cline-neutral">&nbsp;</span>
810
+ <a name='L745'></a><a href='#L745'>745</a>
811
+ <a name='L746'></a><a href='#L746'>746</a>
812
+ <a name='L747'></a><a href='#L747'>747</a>
813
+ <a name='L748'></a><a href='#L748'>748</a>
814
+ <a name='L749'></a><a href='#L749'>749</a>
815
+ <a name='L750'></a><a href='#L750'>750</a>
816
+ <a name='L751'></a><a href='#L751'>751</a>
817
+ <a name='L752'></a><a href='#L752'>752</a>
818
+ <a name='L753'></a><a href='#L753'>753</a>
819
+ <a name='L754'></a><a href='#L754'>754</a>
820
+ <a name='L755'></a><a href='#L755'>755</a>
821
+ <a name='L756'></a><a href='#L756'>756</a>
822
+ <a name='L757'></a><a href='#L757'>757</a>
823
+ <a name='L758'></a><a href='#L758'>758</a>
824
+ <a name='L759'></a><a href='#L759'>759</a>
825
+ <a name='L760'></a><a href='#L760'>760</a>
826
+ <a name='L761'></a><a href='#L761'>761</a>
827
+ <a name='L762'></a><a href='#L762'>762</a>
828
+ <a name='L763'></a><a href='#L763'>763</a>
829
+ <a name='L764'></a><a href='#L764'>764</a>
830
+ <a name='L765'></a><a href='#L765'>765</a>
831
+ <a name='L766'></a><a href='#L766'>766</a>
832
+ <a name='L767'></a><a href='#L767'>767</a>
833
+ <a name='L768'></a><a href='#L768'>768</a>
834
+ <a name='L769'></a><a href='#L769'>769</a>
835
+ <a name='L770'></a><a href='#L770'>770</a>
836
+ <a name='L771'></a><a href='#L771'>771</a>
837
+ <a name='L772'></a><a href='#L772'>772</a>
838
+ <a name='L773'></a><a href='#L773'>773</a>
839
+ <a name='L774'></a><a href='#L774'>774</a>
840
+ <a name='L775'></a><a href='#L775'>775</a>
841
+ <a name='L776'></a><a href='#L776'>776</a>
842
+ <a name='L777'></a><a href='#L777'>777</a>
843
+ <a name='L778'></a><a href='#L778'>778</a>
844
+ <a name='L779'></a><a href='#L779'>779</a>
845
+ <a name='L780'></a><a href='#L780'>780</a>
846
+ <a name='L781'></a><a href='#L781'>781</a>
847
+ <a name='L782'></a><a href='#L782'>782</a>
848
+ <a name='L783'></a><a href='#L783'>783</a>
849
+ <a name='L784'></a><a href='#L784'>784</a>
850
+ <a name='L785'></a><a href='#L785'>785</a>
851
+ <a name='L786'></a><a href='#L786'>786</a>
852
+ <a name='L787'></a><a href='#L787'>787</a>
853
+ <a name='L788'></a><a href='#L788'>788</a>
854
+ <a name='L789'></a><a href='#L789'>789</a>
855
+ <a name='L790'></a><a href='#L790'>790</a>
856
+ <a name='L791'></a><a href='#L791'>791</a>
857
+ <a name='L792'></a><a href='#L792'>792</a>
858
+ <a name='L793'></a><a href='#L793'>793</a>
859
+ <a name='L794'></a><a href='#L794'>794</a>
860
+ <a name='L795'></a><a href='#L795'>795</a>
861
+ <a name='L796'></a><a href='#L796'>796</a>
862
+ <a name='L797'></a><a href='#L797'>797</a>
863
+ <a name='L798'></a><a href='#L798'>798</a>
864
+ <a name='L799'></a><a href='#L799'>799</a>
865
+ <a name='L800'></a><a href='#L800'>800</a>
866
+ <a name='L801'></a><a href='#L801'>801</a>
867
+ <a name='L802'></a><a href='#L802'>802</a>
868
+ <a name='L803'></a><a href='#L803'>803</a>
869
+ <a name='L804'></a><a href='#L804'>804</a>
870
+ <a name='L805'></a><a href='#L805'>805</a>
871
+ <a name='L806'></a><a href='#L806'>806</a>
872
+ <a name='L807'></a><a href='#L807'>807</a>
873
+ <a name='L808'></a><a href='#L808'>808</a>
874
+ <a name='L809'></a><a href='#L809'>809</a>
875
+ <a name='L810'></a><a href='#L810'>810</a>
876
+ <a name='L811'></a><a href='#L811'>811</a>
877
+ <a name='L812'></a><a href='#L812'>812</a>
878
+ <a name='L813'></a><a href='#L813'>813</a>
879
+ <a name='L814'></a><a href='#L814'>814</a>
880
+ <a name='L815'></a><a href='#L815'>815</a>
881
+ <a name='L816'></a><a href='#L816'>816</a>
882
+ <a name='L817'></a><a href='#L817'>817</a>
883
+ <a name='L818'></a><a href='#L818'>818</a>
884
+ <a name='L819'></a><a href='#L819'>819</a>
885
+ <a name='L820'></a><a href='#L820'>820</a>
886
+ <a name='L821'></a><a href='#L821'>821</a>
887
+ <a name='L822'></a><a href='#L822'>822</a>
888
+ <a name='L823'></a><a href='#L823'>823</a>
889
+ <a name='L824'></a><a href='#L824'>824</a>
890
+ <a name='L825'></a><a href='#L825'>825</a>
891
+ <a name='L826'></a><a href='#L826'>826</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
817
892
  <span class="cline-any cline-neutral">&nbsp;</span>
818
893
  <span class="cline-any cline-neutral">&nbsp;</span>
819
894
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -821,6 +896,12 @@
821
896
  <span class="cline-any cline-neutral">&nbsp;</span>
822
897
  <span class="cline-any cline-neutral">&nbsp;</span>
823
898
  <span class="cline-any cline-neutral">&nbsp;</span>
899
+ <span class="cline-any cline-yes">1x</span>
900
+ <span class="cline-any cline-yes">1x</span>
901
+ <span class="cline-any cline-yes">1x</span>
902
+ <span class="cline-any cline-yes">1x</span>
903
+ <span class="cline-any cline-yes">1x</span>
904
+ <span class="cline-any cline-yes">1x</span>
824
905
  <span class="cline-any cline-neutral">&nbsp;</span>
825
906
  <span class="cline-any cline-yes">1x</span>
826
907
  <span class="cline-any cline-yes">1x</span>
@@ -1086,9 +1167,24 @@
1086
1167
  <span class="cline-any cline-yes">14x</span>
1087
1168
  <span class="cline-any cline-yes">14x</span>
1088
1169
  <span class="cline-any cline-yes">14x</span>
1170
+ <span class="cline-any cline-yes">14x</span>
1171
+ <span class="cline-any cline-yes">14x</span>
1172
+ <span class="cline-any cline-yes">14x</span>
1173
+ <span class="cline-any cline-yes">14x</span>
1174
+ <span class="cline-any cline-yes">14x</span>
1089
1175
  <span class="cline-any cline-neutral">&nbsp;</span>
1090
1176
  <span class="cline-any cline-neutral">&nbsp;</span>
1091
1177
  <span class="cline-any cline-yes">14x</span>
1178
+ <span class="cline-any cline-yes">14x</span>
1179
+ <span class="cline-any cline-yes">14x</span>
1180
+ <span class="cline-any cline-yes">14x</span>
1181
+ <span class="cline-any cline-yes">14x</span>
1182
+ <span class="cline-any cline-yes">18x</span>
1183
+ <span class="cline-any cline-yes">18x</span>
1184
+ <span class="cline-any cline-yes">18x</span>
1185
+ <span class="cline-any cline-yes">18x</span>
1186
+ <span class="cline-any cline-yes">18x</span>
1187
+ <span class="cline-any cline-yes">18x</span>
1092
1188
  <span class="cline-any cline-yes">18x</span>
1093
1189
  <span class="cline-any cline-yes">4x</span>
1094
1190
  <span class="cline-any cline-yes">4x</span>
@@ -1101,28 +1197,49 @@
1101
1197
  <span class="cline-any cline-yes">3x</span>
1102
1198
  <span class="cline-any cline-yes">3x</span>
1103
1199
  <span class="cline-any cline-yes">3x</span>
1104
- <span class="cline-any cline-yes">3x</span>
1105
1200
  <span class="cline-any cline-yes">18x</span>
1106
1201
  <span class="cline-any cline-neutral">&nbsp;</span>
1107
1202
  <span class="cline-any cline-neutral">&nbsp;</span>
1108
1203
  <span class="cline-any cline-yes">14x</span>
1109
1204
  <span class="cline-any cline-neutral">&nbsp;</span>
1205
+ <span class="cline-any cline-yes">14x</span>
1206
+ <span class="cline-any cline-neutral">&nbsp;</span>
1110
1207
  <span class="cline-any cline-neutral">&nbsp;</span>
1111
1208
  <span class="cline-any cline-yes">14x</span>
1112
1209
  <span class="cline-any cline-yes">4x</span>
1210
+ <span class="cline-any cline-yes">4x</span>
1211
+ <span class="cline-any cline-yes">4x</span>
1212
+ <span class="cline-any cline-yes">4x</span>
1113
1213
  <span class="cline-any cline-yes">10x</span>
1114
1214
  <span class="cline-any cline-yes">14x</span>
1115
1215
  <span class="cline-any cline-yes">38x</span>
1116
1216
  <span class="cline-any cline-yes">38x</span>
1217
+ <span class="cline-any cline-yes">38x</span>
1218
+ <span class="cline-any cline-yes">38x</span>
1219
+ <span class="cline-any cline-yes">38x</span>
1220
+ <span class="cline-any cline-no">&nbsp;</span>
1117
1221
  <span class="cline-any cline-no">&nbsp;</span>
1118
1222
  <span class="cline-any cline-no">&nbsp;</span>
1223
+ <span class="cline-any cline-no">&nbsp;</span>
1224
+ <span class="cline-any cline-yes">38x</span>
1225
+ <span class="cline-any cline-yes">38x</span>
1119
1226
  <span class="cline-any cline-yes">38x</span>
1120
1227
  <span class="cline-any cline-yes">38x</span>
1121
1228
  <span class="cline-any cline-yes">38x</span>
1122
1229
  <span class="cline-any cline-yes">8x</span>
1123
1230
  <span class="cline-any cline-yes">8x</span>
1231
+ <span class="cline-any cline-yes">30x</span>
1232
+ <span class="cline-any cline-yes">30x</span>
1233
+ <span class="cline-any cline-yes">30x</span>
1234
+ <span class="cline-any cline-yes">30x</span>
1124
1235
  <span class="cline-any cline-yes">38x</span>
1125
1236
  <span class="cline-any cline-yes">32x</span>
1237
+ <span class="cline-any cline-yes">32x</span>
1238
+ <span class="cline-any cline-yes">32x</span>
1239
+ <span class="cline-any cline-yes">32x</span>
1240
+ <span class="cline-any cline-yes">32x</span>
1241
+ <span class="cline-any cline-yes">32x</span>
1242
+ <span class="cline-any cline-yes">32x</span>
1126
1243
  <span class="cline-any cline-yes">6x</span>
1127
1244
  <span class="cline-any cline-yes">6x</span>
1128
1245
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1134,14 +1251,22 @@
1134
1251
  <span class="cline-any cline-no">&nbsp;</span>
1135
1252
  <span class="cline-any cline-no">&nbsp;</span>
1136
1253
  <span class="cline-any cline-no">&nbsp;</span>
1254
+ <span class="cline-any cline-no">&nbsp;</span>
1137
1255
  <span class="cline-any cline-yes">32x</span>
1138
1256
  <span class="cline-any cline-yes">13x</span>
1139
1257
  <span class="cline-any cline-yes">13x</span>
1140
1258
  <span class="cline-any cline-yes">26x</span>
1141
1259
  <span class="cline-any cline-yes">26x</span>
1260
+ <span class="cline-any cline-yes">26x</span>
1261
+ <span class="cline-any cline-yes">26x</span>
1262
+ <span class="cline-any cline-yes">26x</span>
1142
1263
  <span class="cline-any cline-yes">30x</span>
1143
1264
  <span class="cline-any cline-neutral">&nbsp;</span>
1144
1265
  <span class="cline-any cline-yes">14x</span>
1266
+ <span class="cline-any cline-yes">14x</span>
1267
+ <span class="cline-any cline-yes">14x</span>
1268
+ <span class="cline-any cline-yes">14x</span>
1269
+ <span class="cline-any cline-yes">14x</span>
1145
1270
  <span class="cline-any cline-neutral">&nbsp;</span>
1146
1271
  <span class="cline-any cline-yes">13x</span>
1147
1272
  <span class="cline-any cline-yes">13x</span>
@@ -1149,6 +1274,10 @@
1149
1274
  <span class="cline-any cline-yes">13x</span>
1150
1275
  <span class="cline-any cline-yes">13x</span>
1151
1276
  <span class="cline-any cline-yes">26x</span>
1277
+ <span class="cline-any cline-yes">26x</span>
1278
+ <span class="cline-any cline-yes">26x</span>
1279
+ <span class="cline-any cline-yes">13x</span>
1280
+ <span class="cline-any cline-yes">13x</span>
1152
1281
  <span class="cline-any cline-yes">13x</span>
1153
1282
  <span class="cline-any cline-yes">13x</span>
1154
1283
  <span class="cline-any cline-yes">6x</span>
@@ -1158,6 +1287,9 @@
1158
1287
  <span class="cline-any cline-yes">13x</span>
1159
1288
  <span class="cline-any cline-yes">7x</span>
1160
1289
  <span class="cline-any cline-yes">7x</span>
1290
+ <span class="cline-any cline-yes">7x</span>
1291
+ <span class="cline-any cline-yes">7x</span>
1292
+ <span class="cline-any cline-yes">7x</span>
1161
1293
  <span class="cline-any cline-yes">2x</span>
1162
1294
  <span class="cline-any cline-yes">2x</span>
1163
1295
  <span class="cline-any cline-yes">2x</span>
@@ -1188,6 +1320,9 @@
1188
1320
  <span class="cline-any cline-no">&nbsp;</span>
1189
1321
  <span class="cline-any cline-no">&nbsp;</span>
1190
1322
  <span class="cline-any cline-no">&nbsp;</span>
1323
+ <span class="cline-any cline-no">&nbsp;</span>
1324
+ <span class="cline-any cline-no">&nbsp;</span>
1325
+ <span class="cline-any cline-yes">4x</span>
1191
1326
  <span class="cline-any cline-yes">4x</span>
1192
1327
  <span class="cline-any cline-yes">2x</span>
1193
1328
  <span class="cline-any cline-yes">2x</span>
@@ -1227,6 +1362,12 @@
1227
1362
  <span class="cline-any cline-no">&nbsp;</span>
1228
1363
  <span class="cline-any cline-no">&nbsp;</span>
1229
1364
  <span class="cline-any cline-no">&nbsp;</span>
1365
+ <span class="cline-any cline-no">&nbsp;</span>
1366
+ <span class="cline-any cline-no">&nbsp;</span>
1367
+ <span class="cline-any cline-yes">9x</span>
1368
+ <span class="cline-any cline-yes">9x</span>
1369
+ <span class="cline-any cline-yes">9x</span>
1370
+ <span class="cline-any cline-yes">9x</span>
1230
1371
  <span class="cline-any cline-yes">9x</span>
1231
1372
  <span class="cline-any cline-yes">2x</span>
1232
1373
  <span class="cline-any cline-yes">2x</span>
@@ -1259,6 +1400,7 @@
1259
1400
  <span class="cline-any cline-yes">50x</span>
1260
1401
  <span class="cline-any cline-yes">50x</span>
1261
1402
  <span class="cline-any cline-yes">44x</span>
1403
+ <span class="cline-any cline-yes">9x</span>
1262
1404
  <span class="cline-any cline-yes">50x</span>
1263
1405
  <span class="cline-any cline-yes">10x</span>
1264
1406
  <span class="cline-any cline-yes">10x</span>
@@ -1267,6 +1409,9 @@
1267
1409
  <span class="cline-any cline-neutral">&nbsp;</span>
1268
1410
  <span class="cline-any cline-yes">11x</span>
1269
1411
  <span class="cline-any cline-yes">11x</span>
1412
+ <span class="cline-any cline-yes">11x</span>
1413
+ <span class="cline-any cline-yes">11x</span>
1414
+ <span class="cline-any cline-yes">10x</span>
1270
1415
  <span class="cline-any cline-yes">10x</span>
1271
1416
  <span class="cline-any cline-yes">10x</span>
1272
1417
  <span class="cline-any cline-yes">11x</span>
@@ -1279,6 +1424,8 @@
1279
1424
  <span class="cline-any cline-yes">1x</span>
1280
1425
  <span class="cline-any cline-yes">1x</span>
1281
1426
  <span class="cline-any cline-yes">1x</span>
1427
+ <span class="cline-any cline-yes">1x</span>
1428
+ <span class="cline-any cline-yes">1x</span>
1282
1429
  <span class="cline-any cline-neutral">&nbsp;</span>
1283
1430
  <span class="cline-any cline-yes">1x</span>
1284
1431
  <span class="cline-any cline-yes">11x</span>
@@ -1314,6 +1461,9 @@
1314
1461
  <span class="cline-any cline-neutral">&nbsp;</span>
1315
1462
  <span class="cline-any cline-yes">1x</span>
1316
1463
  <span class="cline-any cline-yes">69x</span>
1464
+ <span class="cline-any cline-yes">69x</span>
1465
+ <span class="cline-any cline-yes">69x</span>
1466
+ <span class="cline-any cline-yes">69x</span>
1317
1467
  <span class="cline-any cline-yes">22x</span>
1318
1468
  <span class="cline-any cline-yes">69x</span>
1319
1469
  <span class="cline-any cline-yes">16x</span>
@@ -1383,9 +1533,19 @@
1383
1533
  <span class="cline-any cline-neutral">&nbsp;</span>
1384
1534
  <span class="cline-any cline-yes">25x</span>
1385
1535
  <span class="cline-any cline-yes">25x</span>
1536
+ <span class="cline-any cline-yes">10x</span>
1537
+ <span class="cline-any cline-yes">10x</span>
1538
+ <span class="cline-any cline-yes">10x</span>
1539
+ <span class="cline-any cline-yes">10x</span>
1540
+ <span class="cline-any cline-yes">10x</span>
1386
1541
  <span class="cline-any cline-yes">35x</span>
1387
1542
  <span class="cline-any cline-yes">4x</span>
1388
- <span class="cline-any cline-yes">35x</span>
1543
+ <span class="cline-any cline-yes">4x</span>
1544
+ <span class="cline-any cline-yes">6x</span>
1545
+ <span class="cline-any cline-yes">6x</span>
1546
+ <span class="cline-any cline-yes">6x</span>
1547
+ <span class="cline-any cline-yes">6x</span>
1548
+ <span class="cline-any cline-yes">6x</span>
1389
1549
  <span class="cline-any cline-yes">6x</span>
1390
1550
  <span class="cline-any cline-yes">6x</span>
1391
1551
  <span class="cline-any cline-no">&nbsp;</span>
@@ -1483,6 +1643,8 @@
1483
1643
  <span class="cline-any cline-yes">172x</span>
1484
1644
  <span class="cline-any cline-yes">172x</span>
1485
1645
  <span class="cline-any cline-yes">172x</span>
1646
+ <span class="cline-any cline-yes">172x</span>
1647
+ <span class="cline-any cline-yes">172x</span>
1486
1648
  <span class="cline-any cline-neutral">&nbsp;</span>
1487
1649
  <span class="cline-any cline-yes">253x</span>
1488
1650
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1542,14 +1704,14 @@
1542
1704
  <span class="cline-any cline-neutral">&nbsp;</span>
1543
1705
  <span class="cline-any cline-yes">4x</span>
1544
1706
  <span class="cline-any cline-yes">4x</span>
1545
- <span class="cline-any cline-yes">2x</span>
1546
- <span class="cline-any cline-yes">2x</span>
1707
+ <span class="cline-any cline-yes">4x</span>
1708
+ <span class="cline-any cline-yes">4x</span>
1547
1709
  <span class="cline-any cline-yes">1x</span>
1548
1710
  <span class="cline-any cline-yes">1x</span>
1549
- <span class="cline-any cline-yes">2x</span>
1550
- <span class="cline-any cline-yes">2x</span>
1551
- <span class="cline-any cline-yes">2x</span>
1552
- <span class="cline-any cline-yes">2x</span>
1711
+ <span class="cline-any cline-yes">4x</span>
1712
+ <span class="cline-any cline-yes">4x</span>
1713
+ <span class="cline-any cline-yes">4x</span>
1714
+ <span class="cline-any cline-yes">4x</span>
1553
1715
  <span class="cline-any cline-yes">4x</span>
1554
1716
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/*!
1555
1717
  * Copyright 2020 Palantir Technologies, Inc.
@@ -1561,9 +1723,9 @@
1561
1723
  import { Context } from "@monorepolint/config";
1562
1724
  import { Host, mutateJson, PackageJson } from "@monorepolint/utils";
1563
1725
  import * as path from "node:path";
1726
+ import resolvePackagePath from "resolve-package-path";
1564
1727
  import * as r from "runtypes";
1565
1728
  import { coerce } from "semver";
1566
- import resolvePackagePath from "resolve-package-path";
1567
1729
  import { createRuleFactory } from "./util/createRuleFactory.js";
1568
1730
  &nbsp;
1569
1731
  const Options = r.Union(
@@ -1582,7 +1744,7 @@ const Options = r.Union(
1582
1744
  dependencyWhitelist: r.Undefined,
1583
1745
  dependencyBlacklist: r.Undefined,
1584
1746
  enforceForDevDependencies: r.Undefined,
1585
- })
1747
+ }),
1586
1748
  ),
1587
1749
  r
1588
1750
  .Record({
@@ -1593,7 +1755,7 @@ const Options = r.Union(
1593
1755
  skipUnparseableRanges: r.Undefined,
1594
1756
  dependencyBlacklist: r.Undefined,
1595
1757
  enforceForDevDependencies: r.Undefined,
1596
- })
1758
+ }),
1597
1759
  ),
1598
1760
  r
1599
1761
  .Record({
@@ -1604,7 +1766,7 @@ const Options = r.Union(
1604
1766
  skipUnparseableRanges: r.Undefined,
1605
1767
  dependencyWhitelist: r.Undefined,
1606
1768
  enforceForDevDependencies: r.Undefined,
1607
- })
1769
+ }),
1608
1770
  ),
1609
1771
  r
1610
1772
  .Record({
@@ -1615,7 +1777,7 @@ const Options = r.Union(
1615
1777
  skipUnparseableRanges: r.Undefined,
1616
1778
  dependencyWhitelist: r.Undefined,
1617
1779
  dependencyBlacklist: r.Undefined,
1618
- })
1780
+ }),
1619
1781
  ),
1620
1782
  r
1621
1783
  .Record({
@@ -1626,7 +1788,7 @@ const Options = r.Union(
1626
1788
  r.Partial({
1627
1789
  dependencyBlacklist: r.Undefined,
1628
1790
  enforceForDevDependencies: r.Undefined,
1629
- })
1791
+ }),
1630
1792
  ),
1631
1793
  r
1632
1794
  .Record({
@@ -1637,7 +1799,7 @@ const Options = r.Union(
1637
1799
  r.Partial({
1638
1800
  dependencyWhitelist: r.Undefined,
1639
1801
  enforceForDevDependencies: r.Undefined,
1640
- })
1802
+ }),
1641
1803
  ),
1642
1804
  r
1643
1805
  .Record({
@@ -1648,7 +1810,7 @@ const Options = r.Union(
1648
1810
  r.Partial({
1649
1811
  dependencyWhitelist: r.Undefined,
1650
1812
  dependencyBlacklist: r.Undefined,
1651
- })
1813
+ }),
1652
1814
  ),
1653
1815
  r
1654
1816
  .Record({
@@ -1659,7 +1821,7 @@ const Options = r.Union(
1659
1821
  r.Partial({
1660
1822
  skipUnparseableRanges: r.Undefined,
1661
1823
  enforceForDevDependencies: r.Undefined,
1662
- })
1824
+ }),
1663
1825
  ),
1664
1826
  r
1665
1827
  .Record({
@@ -1670,7 +1832,7 @@ const Options = r.Union(
1670
1832
  r.Partial({
1671
1833
  skipUnparseableRanges: r.Undefined,
1672
1834
  dependencyBlacklist: r.Undefined,
1673
- })
1835
+ }),
1674
1836
  ),
1675
1837
  r
1676
1838
  .Record({
@@ -1681,7 +1843,7 @@ const Options = r.Union(
1681
1843
  r.Partial({
1682
1844
  skipUnparseableRanges: r.Undefined,
1683
1845
  dependencyWhitelist: r.Undefined,
1684
- })
1846
+ }),
1685
1847
  ),
1686
1848
  r
1687
1849
  .Record({
@@ -1692,7 +1854,7 @@ const Options = r.Union(
1692
1854
  .And(
1693
1855
  r.Partial({
1694
1856
  enforceForDevDependencies: r.Undefined,
1695
- })
1857
+ }),
1696
1858
  ),
1697
1859
  r
1698
1860
  .Record({
@@ -1703,7 +1865,7 @@ const Options = r.Union(
1703
1865
  .And(
1704
1866
  r.Partial({
1705
1867
  dependencyBlacklist: r.Undefined,
1706
- })
1868
+ }),
1707
1869
  ),
1708
1870
  r
1709
1871
  .Record({
@@ -1714,7 +1876,7 @@ const Options = r.Union(
1714
1876
  .And(
1715
1877
  r.Partial({
1716
1878
  dependencyWhitelist: r.Undefined,
1717
- })
1879
+ }),
1718
1880
  ),
1719
1881
  r
1720
1882
  .Record({
@@ -1725,14 +1887,14 @@ const Options = r.Union(
1725
1887
  .And(
1726
1888
  r.Partial({
1727
1889
  skipUnparseableRanges: r.Undefined,
1728
- })
1890
+ }),
1729
1891
  ),
1730
1892
  r.Record({
1731
1893
  skipUnparseableRanges: r.Boolean,
1732
1894
  dependencyWhitelist: r.Array(r.String),
1733
1895
  dependencyBlacklist: r.Array(r.String),
1734
1896
  enforceForDevDependencies: r.Boolean,
1735
- })
1897
+ }),
1736
1898
  );
1737
1899
  &nbsp;
1738
1900
  export type Options = r.Static&lt;typeof Options&gt;;
@@ -1823,7 +1985,12 @@ interface IResolvedPeerDependencyRequirement {
1823
1985
  }
1824
1986
  &nbsp;
1825
1987
  function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1826
- const { dependencyBlacklist, dependencyWhitelist, enforceForDevDependencies, skipUnparseableRanges } = opts;
1988
+ const {
1989
+ dependencyBlacklist,
1990
+ dependencyWhitelist,
1991
+ enforceForDevDependencies,
1992
+ skipUnparseableRanges,
1993
+ } = opts;
1827
1994
  const packageJsonPath = path.resolve(context.getPackageJsonPath());
1828
1995
  const packageJson = context.host.readJson(packageJsonPath) as PackageJson;
1829
1996
  const packageDependencies = packageJson.<span class="branch-0 cbranch-no" title="branch not covered" >dependencies || {};</span>
@@ -1832,8 +1999,18 @@ function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1832
1999
  const packageName = packageJson.<span class="branch-0 cbranch-no" title="branch not covered" >name || packageJsonPath;</span>
1833
2000
  &nbsp;
1834
2001
  // check that no peer dependencies are also declared as regular dependencies
1835
- for (const [peerDependencyName, peerDependencyRange] of Object.entries(packagePeerDependencies)) {
1836
- if (shouldSkipPackage({ dependencyBlacklist, dependencyWhitelist, packageName: peerDependencyName })) {
2002
+ for (
2003
+ const [peerDependencyName, peerDependencyRange] of Object.entries(
2004
+ packagePeerDependencies,
2005
+ )
2006
+ ) {
2007
+ if (
2008
+ shouldSkipPackage({
2009
+ dependencyBlacklist,
2010
+ dependencyWhitelist,
2011
+ packageName: peerDependencyName,
2012
+ })
2013
+ ) {
1837
2014
  continue;
1838
2015
  }
1839
2016
  &nbsp;
@@ -1841,37 +2018,59 @@ function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1841
2018
  if (dependencyRange != null) {
1842
2019
  context.addError({
1843
2020
  file: packageJsonPath,
1844
- message:
1845
- `[0] Package ${packageName} has overloaded ${peerDependencyName} dependencies.\n\t` +
1846
- `Peer dependency '${peerDependencyRange}' and regular dependency '${dependencyRange}'.`,
2021
+ message: `[0] Package ${packageName} has overloaded ${peerDependencyName} dependencies.\n\t`
2022
+ + `Peer dependency '${peerDependencyRange}' and regular dependency '${dependencyRange}'.`,
1847
2023
  });
1848
2024
  }
1849
2025
  }
1850
2026
  &nbsp;
1851
2027
  // map of all inherited peer dependency requirements
1852
- const allRequiredPeerDependencies: { [peerDependencyName: string]: IPeerDependencyRequirement[] } = {};
2028
+ const allRequiredPeerDependencies: {
2029
+ [peerDependencyName: string]: IPeerDependencyRequirement[];
2030
+ } = {};
1853
2031
  &nbsp;
1854
2032
  // for each of this package's dependencies, add the dependency's peer requirements into `allRequiredPeerDependencies`
1855
2033
  const allDependencies = enforceForDevDependencies
1856
- ? [...Object.keys(packageDependencies), ...Object.keys(packageDevDependencies)]
2034
+ ? [
2035
+ ...Object.keys(packageDependencies),
2036
+ ...Object.keys(packageDevDependencies),
2037
+ ]
1857
2038
  : Object.keys(packageDependencies);
1858
2039
  for (const dependency of allDependencies) {
1859
- const dependencyPackageJsonPath = resolvePackagePath(dependency, path.dirname(packageJsonPath));
2040
+ const dependencyPackageJsonPath = resolvePackagePath(
2041
+ dependency,
2042
+ path.dirname(packageJsonPath),
2043
+ );
1860
2044
  if (dependencyPackageJsonPath == null) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1861
- <span class="cstat-no" title="statement not covered" > throw new Error(`Could not resolve ${dependency} from ${path.dirname(packageJsonPath)}`);</span>
2045
+ <span class="cstat-no" title="statement not covered" > throw new Error(</span>
2046
+ <span class="cstat-no" title="statement not covered" > `Could not resolve ${dependency} from ${path.dirname(packageJsonPath)}`,</span>
2047
+ <span class="cstat-no" title="statement not covered" > );</span>
1862
2048
  <span class="cstat-no" title="statement not covered" > }</span>
1863
- const dependencyPackageJson = context.host.readJson(dependencyPackageJsonPath) as PackageJson;
2049
+ const dependencyPackageJson = context.host.readJson(
2050
+ dependencyPackageJsonPath,
2051
+ ) as PackageJson;
1864
2052
  const requiredPeerDependencies = dependencyPackageJson.peerDependencies;
1865
2053
  if (requiredPeerDependencies == null) {
1866
2054
  continue;
1867
2055
  }
1868
- for (const [peerDependencyName, range] of Object.entries(requiredPeerDependencies)) {
1869
- if (shouldSkipPackage({ dependencyBlacklist, dependencyWhitelist, packageName: peerDependencyName })) {
2056
+ for (
2057
+ const [peerDependencyName, range] of Object.entries(
2058
+ requiredPeerDependencies,
2059
+ )
2060
+ ) {
2061
+ if (
2062
+ shouldSkipPackage({
2063
+ dependencyBlacklist,
2064
+ dependencyWhitelist,
2065
+ packageName: peerDependencyName,
2066
+ })
2067
+ ) {
1870
2068
  continue;
1871
2069
  }
1872
2070
  &nbsp;
1873
2071
  if (!isValidRange(range)) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1874
- <span class="cstat-no" title="statement not covered" > const message = `Unable to parse ${dependencyPackageJson.name}'s ${peerDependencyName} peer dependency range '${range}'.`;</span>
2072
+ <span class="cstat-no" title="statement not covered" > const message =</span>
2073
+ <span class="cstat-no" title="statement not covered" > `Unable to parse ${dependencyPackageJson.name}'s ${peerDependencyName} peer dependency range '${range}'.`;</span>
1875
2074
  <span class="cstat-no" title="statement not covered" > if (skipUnparseableRanges) {</span>
1876
2075
  <span class="cstat-no" title="statement not covered" > context.addWarning({ file: dependencyPackageJsonPath, message });</span>
1877
2076
  <span class="cstat-no" title="statement not covered" > continue;</span>
@@ -1881,26 +2080,40 @@ function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1881
2080
  if (allRequiredPeerDependencies[peerDependencyName] == null) {
1882
2081
  allRequiredPeerDependencies[peerDependencyName] = [];
1883
2082
  }
1884
- allRequiredPeerDependencies[peerDependencyName].push({ fromPackageName: dependencyPackageJson.name!, range });
2083
+ allRequiredPeerDependencies[peerDependencyName].push({
2084
+ fromPackageName: dependencyPackageJson.name!,
2085
+ range,
2086
+ });
1885
2087
  }
1886
2088
  }
1887
2089
  &nbsp;
1888
- for (const [peerDependencyName, peerDependencyRequirements] of Object.entries(allRequiredPeerDependencies)) {
2090
+ for (
2091
+ const [peerDependencyName, peerDependencyRequirements] of Object.entries(
2092
+ allRequiredPeerDependencies,
2093
+ )
2094
+ ) {
1889
2095
  // for each inherited peer dependency, determine the strictest range
1890
2096
  let mostStrictPeerRequirement: IResolvedPeerDependencyRequirement = {
1891
2097
  fromPeerDependencyRequirements: [peerDependencyRequirements[0]],
1892
2098
  range: peerDependencyRequirements[0].range,
1893
2099
  };
1894
2100
  for (const peerRequirement of peerDependencyRequirements) {
1895
- if (doesASatisfyB(mostStrictPeerRequirement.range, peerRequirement.range)) {
2101
+ if (
2102
+ doesASatisfyB(mostStrictPeerRequirement.range, peerRequirement.range)
2103
+ ) {
1896
2104
  continue;
1897
- } else if (doesASatisfyB(peerRequirement.range, mostStrictPeerRequirement.range)) {
2105
+ } else if (
2106
+ doesASatisfyB(peerRequirement.range, mostStrictPeerRequirement.range)
2107
+ ) {
1898
2108
  mostStrictPeerRequirement = {
1899
2109
  fromPeerDependencyRequirements: [peerRequirement],
1900
2110
  range: peerRequirement.range,
1901
2111
  };
1902
2112
  } else {
1903
- const maybeIntersection = findIntersection(peerRequirement.range, mostStrictPeerRequirement.range);
2113
+ const maybeIntersection = findIntersection(
2114
+ peerRequirement.range,
2115
+ mostStrictPeerRequirement.range,
2116
+ );
1904
2117
  if (maybeIntersection !== undefined) {
1905
2118
  mostStrictPeerRequirement = {
1906
2119
  fromPeerDependencyRequirements: [
@@ -1913,9 +2126,9 @@ function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1913
2126
  context.addError({
1914
2127
  file: packageJsonPath,
1915
2128
  message:
1916
- `[1] Package ${packageName} has conflicting inherited ${peerDependencyName} peer dependencies.\n\t` +
1917
- `Dependency ${peerRequirement.fromPackageName} requires '${peerRequirement.range}' but\n\t` +
1918
- getMostStrictStatement(mostStrictPeerRequirement),
2129
+ `[1] Package ${packageName} has conflicting inherited ${peerDependencyName} peer dependencies.\n\t`
2130
+ + `Dependency ${peerRequirement.fromPackageName} requires '${peerRequirement.range}' but\n\t`
2131
+ + getMostStrictStatement(mostStrictPeerRequirement),
1919
2132
  });
1920
2133
  }
1921
2134
  }
@@ -1926,18 +2139,21 @@ function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1926
2139
  const packageDependencyRange = packageDependencies[peerDependencyName];
1927
2140
  if (packageDependencyRange != null) {
1928
2141
  if (!isValidRange(packageDependencyRange)) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1929
- <span class="cstat-no" title="statement not covered" > const message = `Unable to parse ${packageName}'s ${peerDependencyName} dependency range '${packageDependencyRange}'.`;</span>
2142
+ <span class="cstat-no" title="statement not covered" > const message =</span>
2143
+ <span class="cstat-no" title="statement not covered" > `Unable to parse ${packageName}'s ${peerDependencyName} dependency range '${packageDependencyRange}'.`;</span>
1930
2144
  <span class="cstat-no" title="statement not covered" > if (skipUnparseableRanges) {</span>
1931
2145
  <span class="cstat-no" title="statement not covered" > context.addWarning({ file: packageJsonPath, message });</span>
1932
2146
  <span class="cstat-no" title="statement not covered" > } else {</span>
1933
2147
  <span class="cstat-no" title="statement not covered" > throw new Error(message);</span>
1934
2148
  <span class="cstat-no" title="statement not covered" > }</span>
1935
- } else if (!doesASatisfyB(packageDependencyRange, mostStrictPeerRequirement.range)) {
2149
+ <span class="cstat-no" title="statement not covered" > } else if (</span>
2150
+ !doesASatisfyB(packageDependencyRange, mostStrictPeerRequirement.range)
2151
+ ) {
1936
2152
  context.addError({
1937
2153
  file: packageJsonPath,
1938
2154
  message:
1939
- `[2] Package ${packageName} dependency on ${peerDependencyName} '${packageDependencyRange}' does not satisfy inherited peer dependencies.\n\t` +
1940
- getMostStrictStatement(mostStrictPeerRequirement),
2155
+ `[2] Package ${packageName} dependency on ${peerDependencyName} '${packageDependencyRange}' does not satisfy inherited peer dependencies.\n\t`
2156
+ + getMostStrictStatement(mostStrictPeerRequirement),
1941
2157
  });
1942
2158
  }
1943
2159
  }
@@ -1949,8 +2165,8 @@ function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1949
2165
  context.addError({
1950
2166
  file: packageJsonPath,
1951
2167
  message:
1952
- `[3] Package ${packageName} is missing required ${peerDependencyName} dependency.\n\t` +
1953
- getMostStrictStatement(mostStrictPeerRequirement),
2168
+ `[3] Package ${packageName} is missing required ${peerDependencyName} dependency.\n\t`
2169
+ + getMostStrictStatement(mostStrictPeerRequirement),
1954
2170
  fixer: getAddDependencyTypeFixer({
1955
2171
  packageJsonPath,
1956
2172
  dependencyType: "peerDependencies",
@@ -1965,18 +2181,24 @@ function checkSatisfyPeerDependencies(context: Context, opts: Options) {
1965
2181
  // the range must be equal to or stricter than `mostStrictPeerRequirement`
1966
2182
  if (packagePeerDependencyRange != null) {
1967
2183
  if (!isValidRange(packagePeerDependencyRange)) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1968
- <span class="cstat-no" title="statement not covered" > const message = `Unable to parse ${packageName}'s ${peerDependencyName} peer dependency range '${packagePeerDependencyRange}'.`;</span>
2184
+ <span class="cstat-no" title="statement not covered" > const message =</span>
2185
+ <span class="cstat-no" title="statement not covered" > `Unable to parse ${packageName}'s ${peerDependencyName} peer dependency range '${packagePeerDependencyRange}'.`;</span>
1969
2186
  <span class="cstat-no" title="statement not covered" > if (skipUnparseableRanges) {</span>
1970
2187
  <span class="cstat-no" title="statement not covered" > context.addWarning({ file: packageJsonPath, message });</span>
1971
2188
  <span class="cstat-no" title="statement not covered" > } else {</span>
1972
2189
  <span class="cstat-no" title="statement not covered" > throw new Error(message);</span>
1973
2190
  <span class="cstat-no" title="statement not covered" > }</span>
1974
- } else if (!doesASatisfyB(packagePeerDependencyRange, mostStrictPeerRequirement.range)) {
2191
+ <span class="cstat-no" title="statement not covered" > } else if (</span>
2192
+ !doesASatisfyB(
2193
+ packagePeerDependencyRange,
2194
+ mostStrictPeerRequirement.range,
2195
+ )
2196
+ ) {
1975
2197
  context.addError({
1976
2198
  file: packageJsonPath,
1977
2199
  message:
1978
- `[4] Package ${packageName} peer dependency on ${peerDependencyName} '${packagePeerDependencyRange}' is not strict enough.\n\t` +
1979
- getMostStrictStatement(mostStrictPeerRequirement),
2200
+ `[4] Package ${packageName} peer dependency on ${peerDependencyName} '${packagePeerDependencyRange}' is not strict enough.\n\t`
2201
+ + getMostStrictStatement(mostStrictPeerRequirement),
1980
2202
  fixer: getAddDependencyTypeFixer({
1981
2203
  packageJsonPath,
1982
2204
  dependencyType: "peerDependencies",
@@ -2001,28 +2223,34 @@ function shouldSkipPackage({
2001
2223
  }) {
2002
2224
  // blacklist should take precedance
2003
2225
  if (
2004
- (dependencyBlacklist != null &amp;&amp; dependencyBlacklist.includes(packageName)) ||
2005
- (dependencyWhitelist != null &amp;&amp; !dependencyWhitelist.includes(packageName))
2226
+ (dependencyBlacklist != null &amp;&amp; dependencyBlacklist.includes(packageName))
2227
+ || (dependencyWhitelist != null
2228
+ &amp;&amp; !dependencyWhitelist.includes(packageName))
2006
2229
  ) {
2007
2230
  return true;
2008
2231
  }
2009
2232
  return false;
2010
2233
  }
2011
2234
  &nbsp;
2012
- function getMostStrictStatement(mostStrictPeerRequirement: IResolvedPeerDependencyRequirement) {
2235
+ function getMostStrictStatement(
2236
+ mostStrictPeerRequirement: IResolvedPeerDependencyRequirement,
2237
+ ) {
2013
2238
  if (mostStrictPeerRequirement.fromPeerDependencyRequirements.length === 1) {
2014
- const dependencyName = mostStrictPeerRequirement.fromPeerDependencyRequirements[0].fromPackageName;
2239
+ const dependencyName = mostStrictPeerRequirement.fromPeerDependencyRequirements[0]
2240
+ .fromPackageName;
2015
2241
  return `Dependency ${dependencyName} requires '${mostStrictPeerRequirement.range}'.`;
2016
2242
  } else {
2017
- const dependencyNames = mostStrictPeerRequirement.fromPeerDependencyRequirements
2243
+ const dependencyNames = mostStrictPeerRequirement
2244
+ .fromPeerDependencyRequirements
2018
2245
  .map((peerDependencyRequirement) =&gt; peerDependencyRequirement.fromPackageName)
2019
2246
  .join(", ");
2020
- const dependencyRequirements = mostStrictPeerRequirement.fromPeerDependencyRequirements
2247
+ const dependencyRequirements = mostStrictPeerRequirement
2248
+ .fromPeerDependencyRequirements
2021
2249
  .map((peerDependencyRequirement) =&gt; `'${peerDependencyRequirement.range}'`)
2022
2250
  .join(", ");
2023
2251
  return (
2024
- `Dependencies [${dependencyNames}] require [${dependencyRequirements}] respectively, ` +
2025
- `resolving to '${mostStrictPeerRequirement.range}'.`
2252
+ `Dependencies [${dependencyNames}] require [${dependencyRequirements}] respectively, `
2253
+ + `resolving to '${mostStrictPeerRequirement.range}'.`
2026
2254
  );
2027
2255
  }
2028
2256
  }
@@ -2056,7 +2284,10 @@ function getMostStrictStatement(mostStrictPeerRequirement: IResolvedPeerDependen
2056
2284
  * @param b version range that matches `RANGE_REGEX`
2057
2285
  * @returns the maximum intersecting `ValidRange`, or `undefined` if there is no intersection
2058
2286
  */
2059
- export function findIntersection(a: ValidRange, b: ValidRange): ValidRange | undefined {
2287
+ export function findIntersection(
2288
+ a: ValidRange,
2289
+ b: ValidRange,
2290
+ ): ValidRange | undefined {
2060
2291
  if (doesASatisfyB(a, b)) {
2061
2292
  return a;
2062
2293
  } else if (doesASatisfyB(b, a)) {
@@ -2127,9 +2358,19 @@ export function findIntersection(a: ValidRange, b: ValidRange): ValidRange | und
2127
2358
  // there is no intersecting `b` major version for this `a` major version
2128
2359
  return undefined;
2129
2360
  }
2130
- if (doesASatisfyB(aVersion as ValidRange, majorMatchingBVersion as ValidRange)) {
2361
+ if (
2362
+ doesASatisfyB(
2363
+ aVersion as ValidRange,
2364
+ majorMatchingBVersion as ValidRange,
2365
+ )
2366
+ ) {
2131
2367
  return aVersion;
2132
- } else if (doesASatisfyB(majorMatchingBVersion as ValidRange, aVersion as ValidRange)) {
2368
+ } else if (
2369
+ doesASatisfyB(
2370
+ majorMatchingBVersion as ValidRange,
2371
+ aVersion as ValidRange,
2372
+ )
2373
+ ) {
2133
2374
  return majorMatchingBVersion;
2134
2375
  <span class="branch-0 cbranch-no" title="branch not covered" > } else {</span>
2135
2376
  <span class="cstat-no" title="statement not covered" > return undefined;</span>
@@ -2226,7 +2467,9 @@ export function doesASatisfyB(a: ValidRange, b: ValidRange): boolean {
2226
2467
  &nbsp;
2227
2468
  const aVersionIsRange = isMajorVersionRange(aVersion);
2228
2469
  const majorMatchingBSemVer = coerce(majorMatchingBVersion)!;
2229
- const majorMatchingBVersionIsRange = isMajorVersionRange(majorMatchingBVersion);
2470
+ const majorMatchingBVersionIsRange = isMajorVersionRange(
2471
+ majorMatchingBVersion,
2472
+ );
2230
2473
  &nbsp;
2231
2474
  if (majorMatchingBVersionIsRange) {
2232
2475
  // `a` satisfies `b` so long as `aSemVer` is greater than or equal to `majorMatchingBSemVer`
@@ -2302,7 +2545,7 @@ function getAddDependencyTypeFixer({
2302
2545
  <div class='footer quiet pad2 space-top1 center small'>
2303
2546
  Code coverage generated by
2304
2547
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
2305
- at 2025-01-17T16:18:41.406Z
2548
+ at 2025-01-31T21:00:08.068Z
2306
2549
  </div>
2307
2550
  <script src="../prettify.js"></script>
2308
2551
  <script>