@alexlit/lint-kit 183.1.0 → 183.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (631) hide show
  1. package/package.json +1 -1
  2. package/packages/config-commitlint/package.json +3 -3
  3. package/packages/config-eslint/package.json +2 -2
  4. package/packages/config-stylelint/index.js +1 -1
  5. package/packages/config-stylelint/package.json +2 -2
  6. package/packages/config-stylelint/plugins/bem.js +1 -5
  7. package/packages/config-eslint/node_modules/ajv/.tonic_example.js +0 -20
  8. package/packages/config-eslint/node_modules/ajv/LICENSE +0 -22
  9. package/packages/config-eslint/node_modules/ajv/README.md +0 -1505
  10. package/packages/config-eslint/node_modules/ajv/dist/ajv.bundle.js +0 -7201
  11. package/packages/config-eslint/node_modules/ajv/dist/ajv.min.js +0 -3
  12. package/packages/config-eslint/node_modules/ajv/dist/ajv.min.js.map +0 -1
  13. package/packages/config-eslint/node_modules/ajv/lib/ajv.d.ts +0 -402
  14. package/packages/config-eslint/node_modules/ajv/lib/ajv.js +0 -506
  15. package/packages/config-eslint/node_modules/ajv/lib/cache.js +0 -26
  16. package/packages/config-eslint/node_modules/ajv/lib/compile/async.js +0 -90
  17. package/packages/config-eslint/node_modules/ajv/lib/compile/equal.js +0 -5
  18. package/packages/config-eslint/node_modules/ajv/lib/compile/error_classes.js +0 -34
  19. package/packages/config-eslint/node_modules/ajv/lib/compile/formats.js +0 -142
  20. package/packages/config-eslint/node_modules/ajv/lib/compile/index.js +0 -389
  21. package/packages/config-eslint/node_modules/ajv/lib/compile/resolve.js +0 -270
  22. package/packages/config-eslint/node_modules/ajv/lib/compile/rules.js +0 -66
  23. package/packages/config-eslint/node_modules/ajv/lib/compile/schema_obj.js +0 -9
  24. package/packages/config-eslint/node_modules/ajv/lib/compile/ucs2length.js +0 -20
  25. package/packages/config-eslint/node_modules/ajv/lib/compile/util.js +0 -239
  26. package/packages/config-eslint/node_modules/ajv/lib/data.js +0 -49
  27. package/packages/config-eslint/node_modules/ajv/lib/definition_schema.js +0 -37
  28. package/packages/config-eslint/node_modules/ajv/lib/dot/_limit.jst +0 -113
  29. package/packages/config-eslint/node_modules/ajv/lib/dot/_limitItems.jst +0 -12
  30. package/packages/config-eslint/node_modules/ajv/lib/dot/_limitLength.jst +0 -12
  31. package/packages/config-eslint/node_modules/ajv/lib/dot/_limitProperties.jst +0 -12
  32. package/packages/config-eslint/node_modules/ajv/lib/dot/allOf.jst +0 -32
  33. package/packages/config-eslint/node_modules/ajv/lib/dot/anyOf.jst +0 -46
  34. package/packages/config-eslint/node_modules/ajv/lib/dot/coerce.def +0 -51
  35. package/packages/config-eslint/node_modules/ajv/lib/dot/comment.jst +0 -9
  36. package/packages/config-eslint/node_modules/ajv/lib/dot/const.jst +0 -11
  37. package/packages/config-eslint/node_modules/ajv/lib/dot/contains.jst +0 -55
  38. package/packages/config-eslint/node_modules/ajv/lib/dot/custom.jst +0 -191
  39. package/packages/config-eslint/node_modules/ajv/lib/dot/defaults.def +0 -47
  40. package/packages/config-eslint/node_modules/ajv/lib/dot/definitions.def +0 -203
  41. package/packages/config-eslint/node_modules/ajv/lib/dot/dependencies.jst +0 -79
  42. package/packages/config-eslint/node_modules/ajv/lib/dot/enum.jst +0 -30
  43. package/packages/config-eslint/node_modules/ajv/lib/dot/errors.def +0 -194
  44. package/packages/config-eslint/node_modules/ajv/lib/dot/format.jst +0 -106
  45. package/packages/config-eslint/node_modules/ajv/lib/dot/if.jst +0 -73
  46. package/packages/config-eslint/node_modules/ajv/lib/dot/items.jst +0 -98
  47. package/packages/config-eslint/node_modules/ajv/lib/dot/missing.def +0 -39
  48. package/packages/config-eslint/node_modules/ajv/lib/dot/multipleOf.jst +0 -22
  49. package/packages/config-eslint/node_modules/ajv/lib/dot/not.jst +0 -43
  50. package/packages/config-eslint/node_modules/ajv/lib/dot/oneOf.jst +0 -54
  51. package/packages/config-eslint/node_modules/ajv/lib/dot/pattern.jst +0 -25
  52. package/packages/config-eslint/node_modules/ajv/lib/dot/properties.jst +0 -245
  53. package/packages/config-eslint/node_modules/ajv/lib/dot/propertyNames.jst +0 -52
  54. package/packages/config-eslint/node_modules/ajv/lib/dot/ref.jst +0 -85
  55. package/packages/config-eslint/node_modules/ajv/lib/dot/required.jst +0 -108
  56. package/packages/config-eslint/node_modules/ajv/lib/dot/uniqueItems.jst +0 -62
  57. package/packages/config-eslint/node_modules/ajv/lib/dot/validate.jst +0 -276
  58. package/packages/config-eslint/node_modules/ajv/lib/dotjs/README.md +0 -3
  59. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limit.js +0 -163
  60. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limitItems.js +0 -80
  61. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limitLength.js +0 -85
  62. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limitProperties.js +0 -80
  63. package/packages/config-eslint/node_modules/ajv/lib/dotjs/allOf.js +0 -42
  64. package/packages/config-eslint/node_modules/ajv/lib/dotjs/anyOf.js +0 -73
  65. package/packages/config-eslint/node_modules/ajv/lib/dotjs/comment.js +0 -14
  66. package/packages/config-eslint/node_modules/ajv/lib/dotjs/const.js +0 -56
  67. package/packages/config-eslint/node_modules/ajv/lib/dotjs/contains.js +0 -81
  68. package/packages/config-eslint/node_modules/ajv/lib/dotjs/custom.js +0 -228
  69. package/packages/config-eslint/node_modules/ajv/lib/dotjs/dependencies.js +0 -168
  70. package/packages/config-eslint/node_modules/ajv/lib/dotjs/enum.js +0 -66
  71. package/packages/config-eslint/node_modules/ajv/lib/dotjs/format.js +0 -150
  72. package/packages/config-eslint/node_modules/ajv/lib/dotjs/if.js +0 -103
  73. package/packages/config-eslint/node_modules/ajv/lib/dotjs/index.js +0 -33
  74. package/packages/config-eslint/node_modules/ajv/lib/dotjs/items.js +0 -140
  75. package/packages/config-eslint/node_modules/ajv/lib/dotjs/multipleOf.js +0 -80
  76. package/packages/config-eslint/node_modules/ajv/lib/dotjs/not.js +0 -84
  77. package/packages/config-eslint/node_modules/ajv/lib/dotjs/oneOf.js +0 -73
  78. package/packages/config-eslint/node_modules/ajv/lib/dotjs/pattern.js +0 -85
  79. package/packages/config-eslint/node_modules/ajv/lib/dotjs/properties.js +0 -335
  80. package/packages/config-eslint/node_modules/ajv/lib/dotjs/propertyNames.js +0 -81
  81. package/packages/config-eslint/node_modules/ajv/lib/dotjs/ref.js +0 -124
  82. package/packages/config-eslint/node_modules/ajv/lib/dotjs/required.js +0 -270
  83. package/packages/config-eslint/node_modules/ajv/lib/dotjs/uniqueItems.js +0 -86
  84. package/packages/config-eslint/node_modules/ajv/lib/dotjs/validate.js +0 -482
  85. package/packages/config-eslint/node_modules/ajv/lib/keyword.js +0 -146
  86. package/packages/config-eslint/node_modules/ajv/lib/refs/data.json +0 -17
  87. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-draft-04.json +0 -149
  88. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-draft-06.json +0 -154
  89. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-draft-07.json +0 -168
  90. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-secure.json +0 -94
  91. package/packages/config-eslint/node_modules/ajv/package.json +0 -107
  92. package/packages/config-eslint/node_modules/ajv/scripts/.eslintrc.yml +0 -3
  93. package/packages/config-eslint/node_modules/ajv/scripts/bundle.js +0 -61
  94. package/packages/config-eslint/node_modules/ajv/scripts/compile-dots.js +0 -73
  95. package/packages/config-eslint/node_modules/ajv/scripts/info +0 -10
  96. package/packages/config-eslint/node_modules/ajv/scripts/prepare-tests +0 -12
  97. package/packages/config-eslint/node_modules/ajv/scripts/publish-built-version +0 -32
  98. package/packages/config-eslint/node_modules/ajv/scripts/travis-gh-pages +0 -23
  99. package/packages/config-eslint/node_modules/balanced-match/LICENSE.md +0 -23
  100. package/packages/config-eslint/node_modules/balanced-match/README.md +0 -57
  101. package/packages/config-eslint/node_modules/balanced-match/dist/commonjs/index.d.ts +0 -9
  102. package/packages/config-eslint/node_modules/balanced-match/dist/commonjs/index.d.ts.map +0 -1
  103. package/packages/config-eslint/node_modules/balanced-match/dist/commonjs/index.js +0 -59
  104. package/packages/config-eslint/node_modules/balanced-match/dist/commonjs/index.js.map +0 -1
  105. package/packages/config-eslint/node_modules/balanced-match/dist/commonjs/package.json +0 -3
  106. package/packages/config-eslint/node_modules/balanced-match/dist/esm/index.d.ts +0 -9
  107. package/packages/config-eslint/node_modules/balanced-match/dist/esm/index.d.ts.map +0 -1
  108. package/packages/config-eslint/node_modules/balanced-match/dist/esm/index.js +0 -54
  109. package/packages/config-eslint/node_modules/balanced-match/dist/esm/index.js.map +0 -1
  110. package/packages/config-eslint/node_modules/balanced-match/dist/esm/package.json +0 -3
  111. package/packages/config-eslint/node_modules/balanced-match/package.json +0 -68
  112. package/packages/config-eslint/node_modules/brace-expansion/LICENSE +0 -23
  113. package/packages/config-eslint/node_modules/brace-expansion/README.md +0 -94
  114. package/packages/config-eslint/node_modules/brace-expansion/dist/commonjs/index.d.ts +0 -6
  115. package/packages/config-eslint/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +0 -1
  116. package/packages/config-eslint/node_modules/brace-expansion/dist/commonjs/index.js +0 -199
  117. package/packages/config-eslint/node_modules/brace-expansion/dist/commonjs/index.js.map +0 -1
  118. package/packages/config-eslint/node_modules/brace-expansion/dist/commonjs/package.json +0 -3
  119. package/packages/config-eslint/node_modules/brace-expansion/dist/esm/index.d.ts +0 -6
  120. package/packages/config-eslint/node_modules/brace-expansion/dist/esm/index.d.ts.map +0 -1
  121. package/packages/config-eslint/node_modules/brace-expansion/dist/esm/index.js +0 -195
  122. package/packages/config-eslint/node_modules/brace-expansion/dist/esm/index.js.map +0 -1
  123. package/packages/config-eslint/node_modules/brace-expansion/dist/esm/package.json +0 -3
  124. package/packages/config-eslint/node_modules/brace-expansion/package.json +0 -64
  125. package/packages/config-eslint/node_modules/eslint/LICENSE +0 -19
  126. package/packages/config-eslint/node_modules/eslint/README.md +0 -369
  127. package/packages/config-eslint/node_modules/eslint/bin/eslint.js +0 -195
  128. package/packages/config-eslint/node_modules/eslint/conf/ecma-version.js +0 -16
  129. package/packages/config-eslint/node_modules/eslint/conf/globals.js +0 -169
  130. package/packages/config-eslint/node_modules/eslint/conf/replacements.json +0 -26
  131. package/packages/config-eslint/node_modules/eslint/conf/rule-type-list.json +0 -91
  132. package/packages/config-eslint/node_modules/eslint/lib/api.js +0 -39
  133. package/packages/config-eslint/node_modules/eslint/lib/cli-engine/formatters/formatters-meta.json +0 -18
  134. package/packages/config-eslint/node_modules/eslint/lib/cli-engine/formatters/html.js +0 -359
  135. package/packages/config-eslint/node_modules/eslint/lib/cli-engine/formatters/json-with-metadata.js +0 -16
  136. package/packages/config-eslint/node_modules/eslint/lib/cli-engine/formatters/json.js +0 -13
  137. package/packages/config-eslint/node_modules/eslint/lib/cli-engine/formatters/stylish.js +0 -153
  138. package/packages/config-eslint/node_modules/eslint/lib/cli-engine/hash.js +0 -35
  139. package/packages/config-eslint/node_modules/eslint/lib/cli-engine/lint-result-cache.js +0 -220
  140. package/packages/config-eslint/node_modules/eslint/lib/cli.js +0 -521
  141. package/packages/config-eslint/node_modules/eslint/lib/config/config-loader.js +0 -668
  142. package/packages/config-eslint/node_modules/eslint/lib/config/config.js +0 -674
  143. package/packages/config-eslint/node_modules/eslint/lib/config/default-config.js +0 -78
  144. package/packages/config-eslint/node_modules/eslint/lib/config/flat-config-array.js +0 -217
  145. package/packages/config-eslint/node_modules/eslint/lib/config/flat-config-schema.js +0 -598
  146. package/packages/config-eslint/node_modules/eslint/lib/config-api.js +0 -12
  147. package/packages/config-eslint/node_modules/eslint/lib/eslint/eslint-helpers.js +0 -1462
  148. package/packages/config-eslint/node_modules/eslint/lib/eslint/eslint.js +0 -1364
  149. package/packages/config-eslint/node_modules/eslint/lib/eslint/index.js +0 -7
  150. package/packages/config-eslint/node_modules/eslint/lib/eslint/worker.js +0 -173
  151. package/packages/config-eslint/node_modules/eslint/lib/languages/js/index.js +0 -336
  152. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/index.js +0 -7
  153. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/source-code.js +0 -1178
  154. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/backward-token-comment-cursor.js +0 -61
  155. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/backward-token-cursor.js +0 -57
  156. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/cursor.js +0 -76
  157. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/cursors.js +0 -120
  158. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/decorative-cursor.js +0 -38
  159. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/filter-cursor.js +0 -42
  160. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/forward-token-comment-cursor.js +0 -65
  161. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/forward-token-cursor.js +0 -62
  162. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/index.js +0 -695
  163. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/limit-cursor.js +0 -39
  164. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/padded-token-cursor.js +0 -45
  165. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/skip-cursor.js +0 -41
  166. package/packages/config-eslint/node_modules/eslint/lib/languages/js/source-code/token-store/utils.js +0 -131
  167. package/packages/config-eslint/node_modules/eslint/lib/languages/js/validate-language-options.js +0 -196
  168. package/packages/config-eslint/node_modules/eslint/lib/linter/apply-disable-directives.js +0 -583
  169. package/packages/config-eslint/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js +0 -828
  170. package/packages/config-eslint/node_modules/eslint/lib/linter/code-path-analysis/code-path-segment.js +0 -262
  171. package/packages/config-eslint/node_modules/eslint/lib/linter/code-path-analysis/code-path-state.js +0 -2370
  172. package/packages/config-eslint/node_modules/eslint/lib/linter/code-path-analysis/code-path.js +0 -332
  173. package/packages/config-eslint/node_modules/eslint/lib/linter/code-path-analysis/debug-helpers.js +0 -223
  174. package/packages/config-eslint/node_modules/eslint/lib/linter/code-path-analysis/fork-context.js +0 -374
  175. package/packages/config-eslint/node_modules/eslint/lib/linter/code-path-analysis/id-generator.js +0 -44
  176. package/packages/config-eslint/node_modules/eslint/lib/linter/esquery.js +0 -332
  177. package/packages/config-eslint/node_modules/eslint/lib/linter/file-context.js +0 -88
  178. package/packages/config-eslint/node_modules/eslint/lib/linter/file-report.js +0 -604
  179. package/packages/config-eslint/node_modules/eslint/lib/linter/index.js +0 -11
  180. package/packages/config-eslint/node_modules/eslint/lib/linter/interpolate.js +0 -50
  181. package/packages/config-eslint/node_modules/eslint/lib/linter/linter.js +0 -1614
  182. package/packages/config-eslint/node_modules/eslint/lib/linter/rule-fixer.js +0 -199
  183. package/packages/config-eslint/node_modules/eslint/lib/linter/source-code-fixer.js +0 -154
  184. package/packages/config-eslint/node_modules/eslint/lib/linter/source-code-traverser.js +0 -333
  185. package/packages/config-eslint/node_modules/eslint/lib/linter/source-code-visitor.js +0 -81
  186. package/packages/config-eslint/node_modules/eslint/lib/linter/timing.js +0 -209
  187. package/packages/config-eslint/node_modules/eslint/lib/linter/vfile.js +0 -115
  188. package/packages/config-eslint/node_modules/eslint/lib/options.js +0 -416
  189. package/packages/config-eslint/node_modules/eslint/lib/rule-tester/index.js +0 -7
  190. package/packages/config-eslint/node_modules/eslint/lib/rule-tester/rule-tester.js +0 -1996
  191. package/packages/config-eslint/node_modules/eslint/lib/rules/accessor-pairs.js +0 -420
  192. package/packages/config-eslint/node_modules/eslint/lib/rules/array-bracket-newline.js +0 -291
  193. package/packages/config-eslint/node_modules/eslint/lib/rules/array-bracket-spacing.js +0 -301
  194. package/packages/config-eslint/node_modules/eslint/lib/rules/array-callback-return.js +0 -510
  195. package/packages/config-eslint/node_modules/eslint/lib/rules/array-element-newline.js +0 -374
  196. package/packages/config-eslint/node_modules/eslint/lib/rules/arrow-body-style.js +0 -418
  197. package/packages/config-eslint/node_modules/eslint/lib/rules/arrow-parens.js +0 -237
  198. package/packages/config-eslint/node_modules/eslint/lib/rules/arrow-spacing.js +0 -188
  199. package/packages/config-eslint/node_modules/eslint/lib/rules/block-scoped-var.js +0 -144
  200. package/packages/config-eslint/node_modules/eslint/lib/rules/block-spacing.js +0 -202
  201. package/packages/config-eslint/node_modules/eslint/lib/rules/brace-style.js +0 -278
  202. package/packages/config-eslint/node_modules/eslint/lib/rules/callback-return.js +0 -216
  203. package/packages/config-eslint/node_modules/eslint/lib/rules/camelcase.js +0 -422
  204. package/packages/config-eslint/node_modules/eslint/lib/rules/capitalized-comments.js +0 -325
  205. package/packages/config-eslint/node_modules/eslint/lib/rules/class-methods-use-this.js +0 -250
  206. package/packages/config-eslint/node_modules/eslint/lib/rules/comma-dangle.js +0 -424
  207. package/packages/config-eslint/node_modules/eslint/lib/rules/comma-spacing.js +0 -205
  208. package/packages/config-eslint/node_modules/eslint/lib/rules/comma-style.js +0 -391
  209. package/packages/config-eslint/node_modules/eslint/lib/rules/complexity.js +0 -201
  210. package/packages/config-eslint/node_modules/eslint/lib/rules/computed-property-spacing.js +0 -251
  211. package/packages/config-eslint/node_modules/eslint/lib/rules/consistent-return.js +0 -221
  212. package/packages/config-eslint/node_modules/eslint/lib/rules/consistent-this.js +0 -179
  213. package/packages/config-eslint/node_modules/eslint/lib/rules/constructor-super.js +0 -453
  214. package/packages/config-eslint/node_modules/eslint/lib/rules/curly.js +0 -425
  215. package/packages/config-eslint/node_modules/eslint/lib/rules/default-case-last.js +0 -51
  216. package/packages/config-eslint/node_modules/eslint/lib/rules/default-case.js +0 -103
  217. package/packages/config-eslint/node_modules/eslint/lib/rules/default-param-last.js +0 -78
  218. package/packages/config-eslint/node_modules/eslint/lib/rules/dot-location.js +0 -138
  219. package/packages/config-eslint/node_modules/eslint/lib/rules/dot-notation.js +0 -216
  220. package/packages/config-eslint/node_modules/eslint/lib/rules/eol-last.js +0 -135
  221. package/packages/config-eslint/node_modules/eslint/lib/rules/eqeqeq.js +0 -210
  222. package/packages/config-eslint/node_modules/eslint/lib/rules/for-direction.js +0 -168
  223. package/packages/config-eslint/node_modules/eslint/lib/rules/func-call-spacing.js +0 -281
  224. package/packages/config-eslint/node_modules/eslint/lib/rules/func-name-matching.js +0 -338
  225. package/packages/config-eslint/node_modules/eslint/lib/rules/func-names.js +0 -204
  226. package/packages/config-eslint/node_modules/eslint/lib/rules/func-style.js +0 -221
  227. package/packages/config-eslint/node_modules/eslint/lib/rules/function-call-argument-newline.js +0 -166
  228. package/packages/config-eslint/node_modules/eslint/lib/rules/function-paren-newline.js +0 -368
  229. package/packages/config-eslint/node_modules/eslint/lib/rules/generator-star-spacing.js +0 -246
  230. package/packages/config-eslint/node_modules/eslint/lib/rules/getter-return.js +0 -242
  231. package/packages/config-eslint/node_modules/eslint/lib/rules/global-require.js +0 -117
  232. package/packages/config-eslint/node_modules/eslint/lib/rules/grouped-accessor-pairs.js +0 -268
  233. package/packages/config-eslint/node_modules/eslint/lib/rules/guard-for-in.js +0 -85
  234. package/packages/config-eslint/node_modules/eslint/lib/rules/handle-callback-err.js +0 -122
  235. package/packages/config-eslint/node_modules/eslint/lib/rules/id-blacklist.js +0 -241
  236. package/packages/config-eslint/node_modules/eslint/lib/rules/id-denylist.js +0 -223
  237. package/packages/config-eslint/node_modules/eslint/lib/rules/id-length.js +0 -217
  238. package/packages/config-eslint/node_modules/eslint/lib/rules/id-match.js +0 -363
  239. package/packages/config-eslint/node_modules/eslint/lib/rules/implicit-arrow-linebreak.js +0 -125
  240. package/packages/config-eslint/node_modules/eslint/lib/rules/indent-legacy.js +0 -1369
  241. package/packages/config-eslint/node_modules/eslint/lib/rules/indent.js +0 -2334
  242. package/packages/config-eslint/node_modules/eslint/lib/rules/index.js +0 -332
  243. package/packages/config-eslint/node_modules/eslint/lib/rules/init-declarations.js +0 -172
  244. package/packages/config-eslint/node_modules/eslint/lib/rules/jsx-quotes.js +0 -128
  245. package/packages/config-eslint/node_modules/eslint/lib/rules/key-spacing.js +0 -822
  246. package/packages/config-eslint/node_modules/eslint/lib/rules/keyword-spacing.js +0 -701
  247. package/packages/config-eslint/node_modules/eslint/lib/rules/line-comment-position.js +0 -157
  248. package/packages/config-eslint/node_modules/eslint/lib/rules/linebreak-style.js +0 -135
  249. package/packages/config-eslint/node_modules/eslint/lib/rules/lines-around-comment.js +0 -581
  250. package/packages/config-eslint/node_modules/eslint/lib/rules/lines-around-directive.js +0 -249
  251. package/packages/config-eslint/node_modules/eslint/lib/rules/lines-between-class-members.js +0 -358
  252. package/packages/config-eslint/node_modules/eslint/lib/rules/logical-assignment-operators.js +0 -688
  253. package/packages/config-eslint/node_modules/eslint/lib/rules/max-classes-per-file.js +0 -90
  254. package/packages/config-eslint/node_modules/eslint/lib/rules/max-depth.js +0 -159
  255. package/packages/config-eslint/node_modules/eslint/lib/rules/max-len.js +0 -497
  256. package/packages/config-eslint/node_modules/eslint/lib/rules/max-lines-per-function.js +0 -238
  257. package/packages/config-eslint/node_modules/eslint/lib/rules/max-lines.js +0 -189
  258. package/packages/config-eslint/node_modules/eslint/lib/rules/max-nested-callbacks.js +0 -115
  259. package/packages/config-eslint/node_modules/eslint/lib/rules/max-params.js +0 -148
  260. package/packages/config-eslint/node_modules/eslint/lib/rules/max-statements-per-line.js +0 -224
  261. package/packages/config-eslint/node_modules/eslint/lib/rules/max-statements.js +0 -188
  262. package/packages/config-eslint/node_modules/eslint/lib/rules/multiline-comment-style.js +0 -652
  263. package/packages/config-eslint/node_modules/eslint/lib/rules/multiline-ternary.js +0 -257
  264. package/packages/config-eslint/node_modules/eslint/lib/rules/new-cap.js +0 -277
  265. package/packages/config-eslint/node_modules/eslint/lib/rules/new-parens.js +0 -120
  266. package/packages/config-eslint/node_modules/eslint/lib/rules/newline-after-var.js +0 -307
  267. package/packages/config-eslint/node_modules/eslint/lib/rules/newline-before-return.js +0 -242
  268. package/packages/config-eslint/node_modules/eslint/lib/rules/newline-per-chained-call.js +0 -159
  269. package/packages/config-eslint/node_modules/eslint/lib/rules/no-alert.js +0 -149
  270. package/packages/config-eslint/node_modules/eslint/lib/rules/no-array-constructor.js +0 -195
  271. package/packages/config-eslint/node_modules/eslint/lib/rules/no-async-promise-executor.js +0 -45
  272. package/packages/config-eslint/node_modules/eslint/lib/rules/no-await-in-loop.js +0 -115
  273. package/packages/config-eslint/node_modules/eslint/lib/rules/no-bitwise.js +0 -145
  274. package/packages/config-eslint/node_modules/eslint/lib/rules/no-buffer-constructor.js +0 -74
  275. package/packages/config-eslint/node_modules/eslint/lib/rules/no-caller.js +0 -52
  276. package/packages/config-eslint/node_modules/eslint/lib/rules/no-case-declarations.js +0 -80
  277. package/packages/config-eslint/node_modules/eslint/lib/rules/no-catch-shadow.js +0 -96
  278. package/packages/config-eslint/node_modules/eslint/lib/rules/no-class-assign.js +0 -66
  279. package/packages/config-eslint/node_modules/eslint/lib/rules/no-compare-neg-zero.js +0 -74
  280. package/packages/config-eslint/node_modules/eslint/lib/rules/no-cond-assign.js +0 -175
  281. package/packages/config-eslint/node_modules/eslint/lib/rules/no-confusing-arrow.js +0 -127
  282. package/packages/config-eslint/node_modules/eslint/lib/rules/no-console.js +0 -227
  283. package/packages/config-eslint/node_modules/eslint/lib/rules/no-const-assign.js +0 -73
  284. package/packages/config-eslint/node_modules/eslint/lib/rules/no-constant-binary-expression.js +0 -603
  285. package/packages/config-eslint/node_modules/eslint/lib/rules/no-constant-condition.js +0 -177
  286. package/packages/config-eslint/node_modules/eslint/lib/rules/no-constructor-return.js +0 -62
  287. package/packages/config-eslint/node_modules/eslint/lib/rules/no-continue.js +0 -38
  288. package/packages/config-eslint/node_modules/eslint/lib/rules/no-control-regex.js +0 -142
  289. package/packages/config-eslint/node_modules/eslint/lib/rules/no-debugger.js +0 -41
  290. package/packages/config-eslint/node_modules/eslint/lib/rules/no-delete-var.js +0 -42
  291. package/packages/config-eslint/node_modules/eslint/lib/rules/no-div-regex.js +0 -60
  292. package/packages/config-eslint/node_modules/eslint/lib/rules/no-dupe-args.js +0 -98
  293. package/packages/config-eslint/node_modules/eslint/lib/rules/no-dupe-class-members.js +0 -117
  294. package/packages/config-eslint/node_modules/eslint/lib/rules/no-dupe-else-if.js +0 -145
  295. package/packages/config-eslint/node_modules/eslint/lib/rules/no-dupe-keys.js +0 -165
  296. package/packages/config-eslint/node_modules/eslint/lib/rules/no-duplicate-case.js +0 -78
  297. package/packages/config-eslint/node_modules/eslint/lib/rules/no-duplicate-imports.js +0 -368
  298. package/packages/config-eslint/node_modules/eslint/lib/rules/no-else-return.js +0 -456
  299. package/packages/config-eslint/node_modules/eslint/lib/rules/no-empty-character-class.js +0 -83
  300. package/packages/config-eslint/node_modules/eslint/lib/rules/no-empty-function.js +0 -236
  301. package/packages/config-eslint/node_modules/eslint/lib/rules/no-empty-pattern.js +0 -85
  302. package/packages/config-eslint/node_modules/eslint/lib/rules/no-empty-static-block.js +0 -73
  303. package/packages/config-eslint/node_modules/eslint/lib/rules/no-empty.js +0 -153
  304. package/packages/config-eslint/node_modules/eslint/lib/rules/no-eq-null.js +0 -51
  305. package/packages/config-eslint/node_modules/eslint/lib/rules/no-eval.js +0 -301
  306. package/packages/config-eslint/node_modules/eslint/lib/rules/no-ex-assign.js +0 -57
  307. package/packages/config-eslint/node_modules/eslint/lib/rules/no-extend-native.js +0 -180
  308. package/packages/config-eslint/node_modules/eslint/lib/rules/no-extra-bind.js +0 -224
  309. package/packages/config-eslint/node_modules/eslint/lib/rules/no-extra-boolean-cast.js +0 -420
  310. package/packages/config-eslint/node_modules/eslint/lib/rules/no-extra-label.js +0 -169
  311. package/packages/config-eslint/node_modules/eslint/lib/rules/no-extra-parens.js +0 -1669
  312. package/packages/config-eslint/node_modules/eslint/lib/rules/no-extra-semi.js +0 -167
  313. package/packages/config-eslint/node_modules/eslint/lib/rules/no-fallthrough.js +0 -260
  314. package/packages/config-eslint/node_modules/eslint/lib/rules/no-floating-decimal.js +0 -99
  315. package/packages/config-eslint/node_modules/eslint/lib/rules/no-func-assign.js +0 -77
  316. package/packages/config-eslint/node_modules/eslint/lib/rules/no-global-assign.js +0 -101
  317. package/packages/config-eslint/node_modules/eslint/lib/rules/no-implicit-coercion.js +0 -468
  318. package/packages/config-eslint/node_modules/eslint/lib/rules/no-implicit-globals.js +0 -187
  319. package/packages/config-eslint/node_modules/eslint/lib/rules/no-implied-eval.js +0 -171
  320. package/packages/config-eslint/node_modules/eslint/lib/rules/no-import-assign.js +0 -227
  321. package/packages/config-eslint/node_modules/eslint/lib/rules/no-inline-comments.js +0 -115
  322. package/packages/config-eslint/node_modules/eslint/lib/rules/no-inner-declarations.js +0 -147
  323. package/packages/config-eslint/node_modules/eslint/lib/rules/no-invalid-regexp.js +0 -244
  324. package/packages/config-eslint/node_modules/eslint/lib/rules/no-invalid-this.js +0 -178
  325. package/packages/config-eslint/node_modules/eslint/lib/rules/no-irregular-whitespace.js +0 -292
  326. package/packages/config-eslint/node_modules/eslint/lib/rules/no-iterator.js +0 -48
  327. package/packages/config-eslint/node_modules/eslint/lib/rules/no-label-var.js +0 -78
  328. package/packages/config-eslint/node_modules/eslint/lib/rules/no-labels.js +0 -156
  329. package/packages/config-eslint/node_modules/eslint/lib/rules/no-lone-blocks.js +0 -140
  330. package/packages/config-eslint/node_modules/eslint/lib/rules/no-lonely-if.js +0 -126
  331. package/packages/config-eslint/node_modules/eslint/lib/rules/no-loop-func.js +0 -273
  332. package/packages/config-eslint/node_modules/eslint/lib/rules/no-loss-of-precision.js +0 -249
  333. package/packages/config-eslint/node_modules/eslint/lib/rules/no-magic-numbers.js +0 -365
  334. package/packages/config-eslint/node_modules/eslint/lib/rules/no-misleading-character-class.js +0 -595
  335. package/packages/config-eslint/node_modules/eslint/lib/rules/no-mixed-operators.js +0 -253
  336. package/packages/config-eslint/node_modules/eslint/lib/rules/no-mixed-requires.js +0 -267
  337. package/packages/config-eslint/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +0 -148
  338. package/packages/config-eslint/node_modules/eslint/lib/rules/no-multi-assign.js +0 -66
  339. package/packages/config-eslint/node_modules/eslint/lib/rules/no-multi-spaces.js +0 -179
  340. package/packages/config-eslint/node_modules/eslint/lib/rules/no-multi-str.js +0 -67
  341. package/packages/config-eslint/node_modules/eslint/lib/rules/no-multiple-empty-lines.js +0 -210
  342. package/packages/config-eslint/node_modules/eslint/lib/rules/no-native-reassign.js +0 -114
  343. package/packages/config-eslint/node_modules/eslint/lib/rules/no-negated-condition.js +0 -100
  344. package/packages/config-eslint/node_modules/eslint/lib/rules/no-negated-in-lhs.js +0 -59
  345. package/packages/config-eslint/node_modules/eslint/lib/rules/no-nested-ternary.js +0 -46
  346. package/packages/config-eslint/node_modules/eslint/lib/rules/no-new-func.js +0 -96
  347. package/packages/config-eslint/node_modules/eslint/lib/rules/no-new-native-nonconstructor.js +0 -70
  348. package/packages/config-eslint/node_modules/eslint/lib/rules/no-new-object.js +0 -76
  349. package/packages/config-eslint/node_modules/eslint/lib/rules/no-new-require.js +0 -67
  350. package/packages/config-eslint/node_modules/eslint/lib/rules/no-new-symbol.js +0 -74
  351. package/packages/config-eslint/node_modules/eslint/lib/rules/no-new-wrappers.js +0 -62
  352. package/packages/config-eslint/node_modules/eslint/lib/rules/no-new.js +0 -42
  353. package/packages/config-eslint/node_modules/eslint/lib/rules/no-nonoctal-decimal-escape.js +0 -176
  354. package/packages/config-eslint/node_modules/eslint/lib/rules/no-obj-calls.js +0 -99
  355. package/packages/config-eslint/node_modules/eslint/lib/rules/no-object-constructor.js +0 -124
  356. package/packages/config-eslint/node_modules/eslint/lib/rules/no-octal-escape.js +0 -53
  357. package/packages/config-eslint/node_modules/eslint/lib/rules/no-octal.js +0 -42
  358. package/packages/config-eslint/node_modules/eslint/lib/rules/no-param-reassign.js +0 -248
  359. package/packages/config-eslint/node_modules/eslint/lib/rules/no-path-concat.js +0 -79
  360. package/packages/config-eslint/node_modules/eslint/lib/rules/no-plusplus.js +0 -102
  361. package/packages/config-eslint/node_modules/eslint/lib/rules/no-process-env.js +0 -68
  362. package/packages/config-eslint/node_modules/eslint/lib/rules/no-process-exit.js +0 -67
  363. package/packages/config-eslint/node_modules/eslint/lib/rules/no-promise-executor-return.js +0 -264
  364. package/packages/config-eslint/node_modules/eslint/lib/rules/no-proto.js +0 -45
  365. package/packages/config-eslint/node_modules/eslint/lib/rules/no-prototype-builtins.js +0 -181
  366. package/packages/config-eslint/node_modules/eslint/lib/rules/no-redeclare.js +0 -173
  367. package/packages/config-eslint/node_modules/eslint/lib/rules/no-regex-spaces.js +0 -219
  368. package/packages/config-eslint/node_modules/eslint/lib/rules/no-restricted-exports.js +0 -227
  369. package/packages/config-eslint/node_modules/eslint/lib/rules/no-restricted-globals.js +0 -266
  370. package/packages/config-eslint/node_modules/eslint/lib/rules/no-restricted-imports.js +0 -892
  371. package/packages/config-eslint/node_modules/eslint/lib/rules/no-restricted-modules.js +0 -249
  372. package/packages/config-eslint/node_modules/eslint/lib/rules/no-restricted-properties.js +0 -233
  373. package/packages/config-eslint/node_modules/eslint/lib/rules/no-restricted-syntax.js +0 -74
  374. package/packages/config-eslint/node_modules/eslint/lib/rules/no-return-assign.js +0 -87
  375. package/packages/config-eslint/node_modules/eslint/lib/rules/no-return-await.js +0 -162
  376. package/packages/config-eslint/node_modules/eslint/lib/rules/no-script-url.js +0 -68
  377. package/packages/config-eslint/node_modules/eslint/lib/rules/no-self-assign.js +0 -186
  378. package/packages/config-eslint/node_modules/eslint/lib/rules/no-self-compare.js +0 -77
  379. package/packages/config-eslint/node_modules/eslint/lib/rules/no-sequences.js +0 -158
  380. package/packages/config-eslint/node_modules/eslint/lib/rules/no-setter-return.js +0 -224
  381. package/packages/config-eslint/node_modules/eslint/lib/rules/no-shadow-restricted-names.js +0 -113
  382. package/packages/config-eslint/node_modules/eslint/lib/rules/no-shadow.js +0 -695
  383. package/packages/config-eslint/node_modules/eslint/lib/rules/no-spaced-func.js +0 -105
  384. package/packages/config-eslint/node_modules/eslint/lib/rules/no-sparse-arrays.js +0 -68
  385. package/packages/config-eslint/node_modules/eslint/lib/rules/no-sync.js +0 -81
  386. package/packages/config-eslint/node_modules/eslint/lib/rules/no-tabs.js +0 -110
  387. package/packages/config-eslint/node_modules/eslint/lib/rules/no-template-curly-in-string.js +0 -45
  388. package/packages/config-eslint/node_modules/eslint/lib/rules/no-ternary.js +0 -38
  389. package/packages/config-eslint/node_modules/eslint/lib/rules/no-this-before-super.js +0 -365
  390. package/packages/config-eslint/node_modules/eslint/lib/rules/no-throw-literal.js +0 -46
  391. package/packages/config-eslint/node_modules/eslint/lib/rules/no-trailing-spaces.js +0 -227
  392. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unassigned-vars.js +0 -80
  393. package/packages/config-eslint/node_modules/eslint/lib/rules/no-undef-init.js +0 -101
  394. package/packages/config-eslint/node_modules/eslint/lib/rules/no-undef.js +0 -84
  395. package/packages/config-eslint/node_modules/eslint/lib/rules/no-undefined.js +0 -91
  396. package/packages/config-eslint/node_modules/eslint/lib/rules/no-underscore-dangle.js +0 -383
  397. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unexpected-multiline.js +0 -130
  398. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +0 -367
  399. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unneeded-ternary.js +0 -232
  400. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unreachable-loop.js +0 -190
  401. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unreachable.js +0 -300
  402. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unsafe-finally.js +0 -119
  403. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unsafe-negation.js +0 -152
  404. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unsafe-optional-chaining.js +0 -221
  405. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unused-expressions.js +0 -227
  406. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unused-labels.js +0 -158
  407. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unused-private-class-members.js +0 -219
  408. package/packages/config-eslint/node_modules/eslint/lib/rules/no-unused-vars.js +0 -1746
  409. package/packages/config-eslint/node_modules/eslint/lib/rules/no-use-before-define.js +0 -453
  410. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-assignment.js +0 -658
  411. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-backreference.js +0 -263
  412. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-call.js +0 -95
  413. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-catch.js +0 -57
  414. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-computed-key.js +0 -204
  415. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-concat.js +0 -121
  416. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-constructor.js +0 -262
  417. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-escape.js +0 -406
  418. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-rename.js +0 -202
  419. package/packages/config-eslint/node_modules/eslint/lib/rules/no-useless-return.js +0 -401
  420. package/packages/config-eslint/node_modules/eslint/lib/rules/no-var.js +0 -375
  421. package/packages/config-eslint/node_modules/eslint/lib/rules/no-void.js +0 -69
  422. package/packages/config-eslint/node_modules/eslint/lib/rules/no-warning-comments.js +0 -209
  423. package/packages/config-eslint/node_modules/eslint/lib/rules/no-whitespace-before-property.js +0 -150
  424. package/packages/config-eslint/node_modules/eslint/lib/rules/no-with.js +0 -37
  425. package/packages/config-eslint/node_modules/eslint/lib/rules/nonblock-statement-body-position.js +0 -164
  426. package/packages/config-eslint/node_modules/eslint/lib/rules/object-curly-newline.js +0 -383
  427. package/packages/config-eslint/node_modules/eslint/lib/rules/object-curly-spacing.js +0 -369
  428. package/packages/config-eslint/node_modules/eslint/lib/rules/object-property-newline.js +0 -151
  429. package/packages/config-eslint/node_modules/eslint/lib/rules/object-shorthand.js +0 -652
  430. package/packages/config-eslint/node_modules/eslint/lib/rules/one-var-declaration-per-line.js +0 -117
  431. package/packages/config-eslint/node_modules/eslint/lib/rules/one-var.js +0 -717
  432. package/packages/config-eslint/node_modules/eslint/lib/rules/operator-assignment.js +0 -270
  433. package/packages/config-eslint/node_modules/eslint/lib/rules/operator-linebreak.js +0 -315
  434. package/packages/config-eslint/node_modules/eslint/lib/rules/padded-blocks.js +0 -366
  435. package/packages/config-eslint/node_modules/eslint/lib/rules/padding-line-between-statements.js +0 -612
  436. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-arrow-callback.js +0 -444
  437. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-const.js +0 -554
  438. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-destructuring.js +0 -332
  439. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-exponentiation-operator.js +0 -235
  440. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-named-capture-group.js +0 -197
  441. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-numeric-literals.js +0 -157
  442. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-object-has-own.js +0 -148
  443. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-object-spread.js +0 -319
  444. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-promise-reject-errors.js +0 -154
  445. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-reflect.js +0 -150
  446. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-regex-literals.js +0 -605
  447. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-rest-params.js +0 -125
  448. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-spread.js +0 -91
  449. package/packages/config-eslint/node_modules/eslint/lib/rules/prefer-template.js +0 -347
  450. package/packages/config-eslint/node_modules/eslint/lib/rules/preserve-caught-error.js +0 -535
  451. package/packages/config-eslint/node_modules/eslint/lib/rules/quote-props.js +0 -394
  452. package/packages/config-eslint/node_modules/eslint/lib/rules/quotes.js +0 -416
  453. package/packages/config-eslint/node_modules/eslint/lib/rules/radix.js +0 -199
  454. package/packages/config-eslint/node_modules/eslint/lib/rules/require-atomic-updates.js +0 -365
  455. package/packages/config-eslint/node_modules/eslint/lib/rules/require-await.js +0 -184
  456. package/packages/config-eslint/node_modules/eslint/lib/rules/require-unicode-regexp.js +0 -317
  457. package/packages/config-eslint/node_modules/eslint/lib/rules/require-yield.js +0 -86
  458. package/packages/config-eslint/node_modules/eslint/lib/rules/rest-spread-spacing.js +0 -150
  459. package/packages/config-eslint/node_modules/eslint/lib/rules/semi-spacing.js +0 -297
  460. package/packages/config-eslint/node_modules/eslint/lib/rules/semi-style.js +0 -218
  461. package/packages/config-eslint/node_modules/eslint/lib/rules/semi.js +0 -476
  462. package/packages/config-eslint/node_modules/eslint/lib/rules/sort-imports.js +0 -319
  463. package/packages/config-eslint/node_modules/eslint/lib/rules/sort-keys.js +0 -268
  464. package/packages/config-eslint/node_modules/eslint/lib/rules/sort-vars.js +0 -140
  465. package/packages/config-eslint/node_modules/eslint/lib/rules/space-before-blocks.js +0 -232
  466. package/packages/config-eslint/node_modules/eslint/lib/rules/space-before-function-paren.js +0 -202
  467. package/packages/config-eslint/node_modules/eslint/lib/rules/space-in-parens.js +0 -374
  468. package/packages/config-eslint/node_modules/eslint/lib/rules/space-infix-ops.js +0 -249
  469. package/packages/config-eslint/node_modules/eslint/lib/rules/space-unary-ops.js +0 -400
  470. package/packages/config-eslint/node_modules/eslint/lib/rules/spaced-comment.js +0 -447
  471. package/packages/config-eslint/node_modules/eslint/lib/rules/strict.js +0 -324
  472. package/packages/config-eslint/node_modules/eslint/lib/rules/switch-colon-spacing.js +0 -158
  473. package/packages/config-eslint/node_modules/eslint/lib/rules/symbol-description.js +0 -70
  474. package/packages/config-eslint/node_modules/eslint/lib/rules/template-curly-spacing.js +0 -168
  475. package/packages/config-eslint/node_modules/eslint/lib/rules/template-tag-spacing.js +0 -121
  476. package/packages/config-eslint/node_modules/eslint/lib/rules/unicode-bom.js +0 -73
  477. package/packages/config-eslint/node_modules/eslint/lib/rules/use-isnan.js +0 -268
  478. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/ast-utils.js +0 -2848
  479. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/char-source.js +0 -247
  480. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/fix-tracker.js +0 -125
  481. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/keywords.js +0 -67
  482. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/lazy-loading-rule-map.js +0 -118
  483. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/regular-expressions.js +0 -58
  484. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/unicode/index.js +0 -16
  485. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/unicode/is-combining-character.js +0 -13
  486. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/unicode/is-emoji-modifier.js +0 -13
  487. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/unicode/is-regional-indicator-symbol.js +0 -13
  488. package/packages/config-eslint/node_modules/eslint/lib/rules/utils/unicode/is-surrogate-pair.js +0 -14
  489. package/packages/config-eslint/node_modules/eslint/lib/rules/valid-typeof.js +0 -171
  490. package/packages/config-eslint/node_modules/eslint/lib/rules/vars-on-top.js +0 -165
  491. package/packages/config-eslint/node_modules/eslint/lib/rules/wrap-iife.js +0 -238
  492. package/packages/config-eslint/node_modules/eslint/lib/rules/wrap-regex.js +0 -91
  493. package/packages/config-eslint/node_modules/eslint/lib/rules/yield-star-spacing.js +0 -158
  494. package/packages/config-eslint/node_modules/eslint/lib/rules/yoda.js +0 -362
  495. package/packages/config-eslint/node_modules/eslint/lib/services/parser-service.js +0 -64
  496. package/packages/config-eslint/node_modules/eslint/lib/services/processor-service.js +0 -100
  497. package/packages/config-eslint/node_modules/eslint/lib/services/suppressions-service.js +0 -302
  498. package/packages/config-eslint/node_modules/eslint/lib/services/warning-service.js +0 -87
  499. package/packages/config-eslint/node_modules/eslint/lib/shared/ajv.js +0 -34
  500. package/packages/config-eslint/node_modules/eslint/lib/shared/assert.js +0 -21
  501. package/packages/config-eslint/node_modules/eslint/lib/shared/ast-utils.js +0 -30
  502. package/packages/config-eslint/node_modules/eslint/lib/shared/deep-merge-arrays.js +0 -62
  503. package/packages/config-eslint/node_modules/eslint/lib/shared/directives.js +0 -16
  504. package/packages/config-eslint/node_modules/eslint/lib/shared/flags.js +0 -89
  505. package/packages/config-eslint/node_modules/eslint/lib/shared/logging.js +0 -38
  506. package/packages/config-eslint/node_modules/eslint/lib/shared/naming.js +0 -109
  507. package/packages/config-eslint/node_modules/eslint/lib/shared/option-utils.js +0 -63
  508. package/packages/config-eslint/node_modules/eslint/lib/shared/relative-module-resolver.js +0 -28
  509. package/packages/config-eslint/node_modules/eslint/lib/shared/runtime-info.js +0 -177
  510. package/packages/config-eslint/node_modules/eslint/lib/shared/serialization.js +0 -78
  511. package/packages/config-eslint/node_modules/eslint/lib/shared/severity.js +0 -49
  512. package/packages/config-eslint/node_modules/eslint/lib/shared/stats.js +0 -30
  513. package/packages/config-eslint/node_modules/eslint/lib/shared/string-utils.js +0 -58
  514. package/packages/config-eslint/node_modules/eslint/lib/shared/text-table.js +0 -68
  515. package/packages/config-eslint/node_modules/eslint/lib/shared/translate-cli-options.js +0 -223
  516. package/packages/config-eslint/node_modules/eslint/lib/shared/traverser.js +0 -202
  517. package/packages/config-eslint/node_modules/eslint/lib/types/config-api.d.ts +0 -12
  518. package/packages/config-eslint/node_modules/eslint/lib/types/index.d.ts +0 -1475
  519. package/packages/config-eslint/node_modules/eslint/lib/types/rules.d.ts +0 -5603
  520. package/packages/config-eslint/node_modules/eslint/lib/types/universal.d.ts +0 -6
  521. package/packages/config-eslint/node_modules/eslint/lib/types/use-at-your-own-risk.d.ts +0 -34
  522. package/packages/config-eslint/node_modules/eslint/lib/universal.js +0 -10
  523. package/packages/config-eslint/node_modules/eslint/lib/unsupported-api.js +0 -21
  524. package/packages/config-eslint/node_modules/eslint/messages/all-matched-files-ignored.js +0 -21
  525. package/packages/config-eslint/node_modules/eslint/messages/config-file-missing.js +0 -16
  526. package/packages/config-eslint/node_modules/eslint/messages/config-plugin-missing.js +0 -14
  527. package/packages/config-eslint/node_modules/eslint/messages/config-serialize-function.js +0 -30
  528. package/packages/config-eslint/node_modules/eslint/messages/eslintrc-incompat.js +0 -117
  529. package/packages/config-eslint/node_modules/eslint/messages/eslintrc-plugins.js +0 -27
  530. package/packages/config-eslint/node_modules/eslint/messages/extend-config-missing.js +0 -13
  531. package/packages/config-eslint/node_modules/eslint/messages/failed-to-read-json.js +0 -11
  532. package/packages/config-eslint/node_modules/eslint/messages/file-not-found.js +0 -10
  533. package/packages/config-eslint/node_modules/eslint/messages/invalid-rule-options.js +0 -17
  534. package/packages/config-eslint/node_modules/eslint/messages/invalid-rule-severity.js +0 -13
  535. package/packages/config-eslint/node_modules/eslint/messages/no-config-found.js +0 -15
  536. package/packages/config-eslint/node_modules/eslint/messages/plugin-conflict.js +0 -22
  537. package/packages/config-eslint/node_modules/eslint/messages/plugin-invalid.js +0 -16
  538. package/packages/config-eslint/node_modules/eslint/messages/plugin-missing.js +0 -19
  539. package/packages/config-eslint/node_modules/eslint/messages/shared.js +0 -23
  540. package/packages/config-eslint/node_modules/eslint/messages/whitespace-found.js +0 -11
  541. package/packages/config-eslint/node_modules/eslint/package.json +0 -220
  542. package/packages/config-eslint/node_modules/eslint-visitor-keys/LICENSE +0 -201
  543. package/packages/config-eslint/node_modules/eslint-visitor-keys/README.md +0 -123
  544. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.cjs +0 -187
  545. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.d.cts +0 -28
  546. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/index.d.ts +0 -16
  547. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/visitor-keys.d.ts +0 -12
  548. package/packages/config-eslint/node_modules/eslint-visitor-keys/lib/index.js +0 -67
  549. package/packages/config-eslint/node_modules/eslint-visitor-keys/lib/visitor-keys.js +0 -118
  550. package/packages/config-eslint/node_modules/eslint-visitor-keys/package.json +0 -57
  551. package/packages/config-eslint/node_modules/espree/LICENSE +0 -25
  552. package/packages/config-eslint/node_modules/espree/README.md +0 -261
  553. package/packages/config-eslint/node_modules/espree/dist/espree.cjs +0 -1284
  554. package/packages/config-eslint/node_modules/espree/dist/espree.d.cts +0 -3
  555. package/packages/config-eslint/node_modules/espree/dist/espree.d.cts.map +0 -1
  556. package/packages/config-eslint/node_modules/espree/dist/espree.d.ts +0 -67
  557. package/packages/config-eslint/node_modules/espree/dist/espree.d.ts.map +0 -1
  558. package/packages/config-eslint/node_modules/espree/espree.js +0 -287
  559. package/packages/config-eslint/node_modules/espree/lib/espree.js +0 -493
  560. package/packages/config-eslint/node_modules/espree/lib/options.js +0 -176
  561. package/packages/config-eslint/node_modules/espree/lib/token-translator.js +0 -306
  562. package/packages/config-eslint/node_modules/espree/lib/types.js +0 -118
  563. package/packages/config-eslint/node_modules/espree/package.json +0 -70
  564. package/packages/config-eslint/node_modules/ignore/LICENSE-MIT +0 -21
  565. package/packages/config-eslint/node_modules/ignore/README.md +0 -412
  566. package/packages/config-eslint/node_modules/ignore/index.d.ts +0 -61
  567. package/packages/config-eslint/node_modules/ignore/index.js +0 -636
  568. package/packages/config-eslint/node_modules/ignore/legacy.js +0 -559
  569. package/packages/config-eslint/node_modules/ignore/package.json +0 -74
  570. package/packages/config-eslint/node_modules/json-schema-traverse/.eslintrc.yml +0 -27
  571. package/packages/config-eslint/node_modules/json-schema-traverse/.travis.yml +0 -8
  572. package/packages/config-eslint/node_modules/json-schema-traverse/LICENSE +0 -21
  573. package/packages/config-eslint/node_modules/json-schema-traverse/README.md +0 -83
  574. package/packages/config-eslint/node_modules/json-schema-traverse/index.js +0 -89
  575. package/packages/config-eslint/node_modules/json-schema-traverse/package.json +0 -43
  576. package/packages/config-eslint/node_modules/json-schema-traverse/spec/.eslintrc.yml +0 -6
  577. package/packages/config-eslint/node_modules/json-schema-traverse/spec/fixtures/schema.js +0 -125
  578. package/packages/config-eslint/node_modules/json-schema-traverse/spec/index.spec.js +0 -171
  579. package/packages/config-eslint/node_modules/minimatch/LICENSE.md +0 -55
  580. package/packages/config-eslint/node_modules/minimatch/README.md +0 -528
  581. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +0 -2
  582. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +0 -1
  583. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +0 -14
  584. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +0 -1
  585. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/ast.d.ts +0 -22
  586. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/ast.d.ts.map +0 -1
  587. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/ast.js +0 -846
  588. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/ast.js.map +0 -1
  589. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +0 -8
  590. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +0 -1
  591. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/brace-expressions.js +0 -150
  592. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +0 -1
  593. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/escape.d.ts +0 -15
  594. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/escape.d.ts.map +0 -1
  595. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/escape.js +0 -30
  596. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/escape.js.map +0 -1
  597. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/index.d.ts +0 -174
  598. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/index.d.ts.map +0 -1
  599. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/index.js +0 -1121
  600. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/index.js.map +0 -1
  601. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/package.json +0 -3
  602. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/unescape.d.ts +0 -22
  603. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +0 -1
  604. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/unescape.js +0 -38
  605. package/packages/config-eslint/node_modules/minimatch/dist/commonjs/unescape.js.map +0 -1
  606. package/packages/config-eslint/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +0 -2
  607. package/packages/config-eslint/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +0 -1
  608. package/packages/config-eslint/node_modules/minimatch/dist/esm/assert-valid-pattern.js +0 -10
  609. package/packages/config-eslint/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +0 -1
  610. package/packages/config-eslint/node_modules/minimatch/dist/esm/ast.d.ts +0 -22
  611. package/packages/config-eslint/node_modules/minimatch/dist/esm/ast.d.ts.map +0 -1
  612. package/packages/config-eslint/node_modules/minimatch/dist/esm/ast.js +0 -842
  613. package/packages/config-eslint/node_modules/minimatch/dist/esm/ast.js.map +0 -1
  614. package/packages/config-eslint/node_modules/minimatch/dist/esm/brace-expressions.d.ts +0 -8
  615. package/packages/config-eslint/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +0 -1
  616. package/packages/config-eslint/node_modules/minimatch/dist/esm/brace-expressions.js +0 -146
  617. package/packages/config-eslint/node_modules/minimatch/dist/esm/brace-expressions.js.map +0 -1
  618. package/packages/config-eslint/node_modules/minimatch/dist/esm/escape.d.ts +0 -15
  619. package/packages/config-eslint/node_modules/minimatch/dist/esm/escape.d.ts.map +0 -1
  620. package/packages/config-eslint/node_modules/minimatch/dist/esm/escape.js +0 -26
  621. package/packages/config-eslint/node_modules/minimatch/dist/esm/escape.js.map +0 -1
  622. package/packages/config-eslint/node_modules/minimatch/dist/esm/index.d.ts +0 -174
  623. package/packages/config-eslint/node_modules/minimatch/dist/esm/index.d.ts.map +0 -1
  624. package/packages/config-eslint/node_modules/minimatch/dist/esm/index.js +0 -1108
  625. package/packages/config-eslint/node_modules/minimatch/dist/esm/index.js.map +0 -1
  626. package/packages/config-eslint/node_modules/minimatch/dist/esm/package.json +0 -3
  627. package/packages/config-eslint/node_modules/minimatch/dist/esm/unescape.d.ts +0 -22
  628. package/packages/config-eslint/node_modules/minimatch/dist/esm/unescape.d.ts.map +0 -1
  629. package/packages/config-eslint/node_modules/minimatch/dist/esm/unescape.js +0 -34
  630. package/packages/config-eslint/node_modules/minimatch/dist/esm/unescape.js.map +0 -1
  631. package/packages/config-eslint/node_modules/minimatch/package.json +0 -67
@@ -1,688 +0,0 @@
1
- /**
2
- * @fileoverview Rule to replace assignment expressions with logical operator assignment
3
- * @author Daniel Martens
4
- */
5
- "use strict";
6
-
7
- //------------------------------------------------------------------------------
8
- // Requirements
9
- //------------------------------------------------------------------------------
10
- const astUtils = require("./utils/ast-utils.js");
11
-
12
- //------------------------------------------------------------------------------
13
- // Helpers
14
- //------------------------------------------------------------------------------
15
-
16
- const baseTypes = new Set(["Identifier", "Super", "ThisExpression"]);
17
-
18
- /**
19
- * Returns true iff either "undefined" or a void expression (eg. "void 0")
20
- * @param {ASTNode} expression Expression to check
21
- * @param {import('eslint-scope').Scope} scope Scope of the expression
22
- * @returns {boolean} True iff "undefined" or "void ..."
23
- */
24
- function isUndefined(expression, scope) {
25
- if (expression.type === "Identifier" && expression.name === "undefined") {
26
- return astUtils.isReferenceToGlobalVariable(scope, expression);
27
- }
28
-
29
- return (
30
- expression.type === "UnaryExpression" &&
31
- expression.operator === "void" &&
32
- expression.argument.type === "Literal" &&
33
- expression.argument.value === 0
34
- );
35
- }
36
-
37
- /**
38
- * Returns true iff the reference is either an identifier or member expression
39
- * @param {ASTNode} expression Expression to check
40
- * @returns {boolean} True for identifiers and member expressions
41
- */
42
- function isReference(expression) {
43
- return (
44
- (expression.type === "Identifier" && expression.name !== "undefined") ||
45
- expression.type === "MemberExpression"
46
- );
47
- }
48
-
49
- /**
50
- * Returns true iff the expression checks for nullish with loose equals.
51
- * Examples: value == null, value == void 0
52
- * @param {ASTNode} expression Test condition
53
- * @param {import('eslint-scope').Scope} scope Scope of the expression
54
- * @returns {boolean} True iff implicit nullish comparison
55
- */
56
- function isImplicitNullishComparison(expression, scope) {
57
- if (
58
- expression.type !== "BinaryExpression" ||
59
- expression.operator !== "=="
60
- ) {
61
- return false;
62
- }
63
-
64
- const reference = isReference(expression.left) ? "left" : "right";
65
- const nullish = reference === "left" ? "right" : "left";
66
-
67
- return (
68
- isReference(expression[reference]) &&
69
- (astUtils.isNullLiteral(expression[nullish]) ||
70
- isUndefined(expression[nullish], scope))
71
- );
72
- }
73
-
74
- /**
75
- * Condition with two equal comparisons.
76
- * @param {ASTNode} expression Condition
77
- * @returns {boolean} True iff matches ? === ? || ? === ?
78
- */
79
- function isDoubleComparison(expression) {
80
- return (
81
- expression.type === "LogicalExpression" &&
82
- expression.operator === "||" &&
83
- expression.left.type === "BinaryExpression" &&
84
- expression.left.operator === "===" &&
85
- expression.right.type === "BinaryExpression" &&
86
- expression.right.operator === "==="
87
- );
88
- }
89
-
90
- /**
91
- * Returns true iff the expression checks for undefined and null.
92
- * Example: value === null || value === undefined
93
- * @param {ASTNode} expression Test condition
94
- * @param {import('eslint-scope').Scope} scope Scope of the expression
95
- * @returns {boolean} True iff explicit nullish comparison
96
- */
97
- function isExplicitNullishComparison(expression, scope) {
98
- if (!isDoubleComparison(expression)) {
99
- return false;
100
- }
101
- const leftReference = isReference(expression.left.left) ? "left" : "right";
102
- const leftNullish = leftReference === "left" ? "right" : "left";
103
- const rightReference = isReference(expression.right.left)
104
- ? "left"
105
- : "right";
106
- const rightNullish = rightReference === "left" ? "right" : "left";
107
-
108
- return (
109
- astUtils.isSameReference(
110
- expression.left[leftReference],
111
- expression.right[rightReference],
112
- ) &&
113
- ((astUtils.isNullLiteral(expression.left[leftNullish]) &&
114
- isUndefined(expression.right[rightNullish], scope)) ||
115
- (isUndefined(expression.left[leftNullish], scope) &&
116
- astUtils.isNullLiteral(expression.right[rightNullish])))
117
- );
118
- }
119
-
120
- /**
121
- * Returns true for Boolean(arg) calls
122
- * @param {ASTNode} expression Test condition
123
- * @param {import('eslint-scope').Scope} scope Scope of the expression
124
- * @returns {boolean} Whether the expression is a boolean cast
125
- */
126
- function isBooleanCast(expression, scope) {
127
- return (
128
- expression.type === "CallExpression" &&
129
- expression.callee.name === "Boolean" &&
130
- expression.arguments.length === 1 &&
131
- astUtils.isReferenceToGlobalVariable(scope, expression.callee)
132
- );
133
- }
134
-
135
- /**
136
- * Returns true for:
137
- * truthiness checks: value, Boolean(value), !!value
138
- * falsiness checks: !value, !Boolean(value)
139
- * nullish checks: value == null, value === undefined || value === null
140
- * @param {ASTNode} expression Test condition
141
- * @param {import('eslint-scope').Scope} scope Scope of the expression
142
- * @returns {?{ reference: ASTNode, operator: '??'|'||'|'&&'}} Null if not a known existence
143
- */
144
- function getExistence(expression, scope) {
145
- const isNegated =
146
- expression.type === "UnaryExpression" && expression.operator === "!";
147
- const base = isNegated ? expression.argument : expression;
148
-
149
- switch (true) {
150
- case isReference(base):
151
- return { reference: base, operator: isNegated ? "||" : "&&" };
152
- case base.type === "UnaryExpression" &&
153
- base.operator === "!" &&
154
- isReference(base.argument):
155
- return { reference: base.argument, operator: "&&" };
156
- case isBooleanCast(base, scope) && isReference(base.arguments[0]):
157
- return {
158
- reference: base.arguments[0],
159
- operator: isNegated ? "||" : "&&",
160
- };
161
- case isImplicitNullishComparison(expression, scope):
162
- return {
163
- reference: isReference(expression.left)
164
- ? expression.left
165
- : expression.right,
166
- operator: "??",
167
- };
168
- case isExplicitNullishComparison(expression, scope):
169
- return {
170
- reference: isReference(expression.left.left)
171
- ? expression.left.left
172
- : expression.left.right,
173
- operator: "??",
174
- };
175
- default:
176
- return null;
177
- }
178
- }
179
-
180
- /**
181
- * Returns true iff the node is inside a with block
182
- * @param {ASTNode} node Node to check
183
- * @returns {boolean} True iff passed node is inside a with block
184
- */
185
- function isInsideWithBlock(node) {
186
- if (node.type === "Program") {
187
- return false;
188
- }
189
-
190
- return node.parent.type === "WithStatement" && node.parent.body === node
191
- ? true
192
- : isInsideWithBlock(node.parent);
193
- }
194
-
195
- /**
196
- * Gets the leftmost operand of a consecutive logical expression.
197
- * @param {SourceCode} sourceCode The ESLint source code object
198
- * @param {LogicalExpression} node LogicalExpression
199
- * @returns {Expression} Leftmost operand
200
- */
201
- function getLeftmostOperand(sourceCode, node) {
202
- let left = node.left;
203
-
204
- while (
205
- left.type === "LogicalExpression" &&
206
- left.operator === node.operator
207
- ) {
208
- if (astUtils.isParenthesised(sourceCode, left)) {
209
- /*
210
- * It should have associativity,
211
- * but ignore it if use parentheses to make the evaluation order clear.
212
- */
213
- return left;
214
- }
215
- left = left.left;
216
- }
217
- return left;
218
- }
219
-
220
- //------------------------------------------------------------------------------
221
- // Rule Definition
222
- //------------------------------------------------------------------------------
223
- /** @type {import('../types').Rule.RuleModule} */
224
- module.exports = {
225
- meta: {
226
- type: "suggestion",
227
-
228
- docs: {
229
- description:
230
- "Require or disallow logical assignment operator shorthand",
231
- recommended: false,
232
- frozen: true,
233
- url: "https://eslint.org/docs/latest/rules/logical-assignment-operators",
234
- },
235
-
236
- schema: {
237
- type: "array",
238
- oneOf: [
239
- {
240
- items: [
241
- { const: "always" },
242
- {
243
- type: "object",
244
- properties: {
245
- enforceForIfStatements: {
246
- type: "boolean",
247
- },
248
- },
249
- additionalProperties: false,
250
- },
251
- ],
252
- minItems: 0, // 0 for allowing passing no options
253
- maxItems: 2,
254
- },
255
- {
256
- items: [{ const: "never" }],
257
- minItems: 1,
258
- maxItems: 1,
259
- },
260
- ],
261
- },
262
- fixable: "code",
263
- hasSuggestions: true,
264
- messages: {
265
- assignment:
266
- "Assignment (=) can be replaced with operator assignment ({{operator}}).",
267
- useLogicalOperator:
268
- "Convert this assignment to use the operator {{ operator }}.",
269
- logical:
270
- "Logical expression can be replaced with an assignment ({{ operator }}).",
271
- convertLogical:
272
- "Replace this logical expression with an assignment with the operator {{ operator }}.",
273
- if: "'if' statement can be replaced with a logical operator assignment with operator {{ operator }}.",
274
- convertIf:
275
- "Replace this 'if' statement with a logical assignment with operator {{ operator }}.",
276
- unexpected:
277
- "Unexpected logical operator assignment ({{operator}}) shorthand.",
278
- separate:
279
- "Separate the logical assignment into an assignment with a logical operator.",
280
- },
281
- },
282
-
283
- create(context) {
284
- const mode = context.options[0] === "never" ? "never" : "always";
285
- const checkIf =
286
- mode === "always" &&
287
- context.options.length > 1 &&
288
- context.options[1].enforceForIfStatements;
289
- const sourceCode = context.sourceCode;
290
- const isStrict = sourceCode.getScope(sourceCode.ast).isStrict;
291
-
292
- /**
293
- * Returns false if the access could be a getter
294
- * @param {ASTNode} node Assignment expression
295
- * @returns {boolean} True iff the fix is safe
296
- */
297
- function cannotBeGetter(node) {
298
- return (
299
- node.type === "Identifier" &&
300
- (isStrict || !isInsideWithBlock(node))
301
- );
302
- }
303
-
304
- /**
305
- * Check whether only a single property is accessed
306
- * @param {ASTNode} node reference
307
- * @returns {boolean} True iff a single property is accessed
308
- */
309
- function accessesSingleProperty(node) {
310
- if (!isStrict && isInsideWithBlock(node)) {
311
- return node.type === "Identifier";
312
- }
313
-
314
- return (
315
- node.type === "MemberExpression" &&
316
- baseTypes.has(node.object.type) &&
317
- (!node.computed ||
318
- (node.property.type !== "MemberExpression" &&
319
- node.property.type !== "ChainExpression"))
320
- );
321
- }
322
-
323
- /**
324
- * Adds a fixer or suggestion whether on the fix is safe.
325
- * @param {{ messageId: string, node: ASTNode }} descriptor Report descriptor without fix or suggest
326
- * @param {{ messageId: string, fix: Function }} suggestion Adds the fix or the whole suggestion as only element in "suggest" to suggestion
327
- * @param {boolean} shouldBeFixed Fix iff the condition is true
328
- * @returns {Object} Descriptor with either an added fix or suggestion
329
- */
330
- function createConditionalFixer(descriptor, suggestion, shouldBeFixed) {
331
- if (shouldBeFixed) {
332
- return {
333
- ...descriptor,
334
- fix: suggestion.fix,
335
- };
336
- }
337
-
338
- return {
339
- ...descriptor,
340
- suggest: [suggestion],
341
- };
342
- }
343
-
344
- /**
345
- * Returns the operator token for assignments and binary expressions
346
- * @param {ASTNode} node AssignmentExpression or BinaryExpression
347
- * @returns {import('eslint').AST.Token} Operator token between the left and right expression
348
- */
349
- function getOperatorToken(node) {
350
- return sourceCode.getFirstTokenBetween(
351
- node.left,
352
- node.right,
353
- token => token.value === node.operator,
354
- );
355
- }
356
-
357
- if (mode === "never") {
358
- return {
359
- // foo ||= bar
360
- AssignmentExpression(assignment) {
361
- if (
362
- !astUtils.isLogicalAssignmentOperator(
363
- assignment.operator,
364
- )
365
- ) {
366
- return;
367
- }
368
-
369
- const descriptor = {
370
- messageId: "unexpected",
371
- node: assignment,
372
- data: { operator: assignment.operator },
373
- };
374
- const suggestion = {
375
- messageId: "separate",
376
- *fix(ruleFixer) {
377
- if (
378
- sourceCode.getCommentsInside(assignment)
379
- .length > 0
380
- ) {
381
- return;
382
- }
383
-
384
- const operatorToken = getOperatorToken(assignment);
385
-
386
- // -> foo = bar
387
- yield ruleFixer.replaceText(operatorToken, "=");
388
-
389
- const assignmentText = sourceCode.getText(
390
- assignment.left,
391
- );
392
- const operator = assignment.operator.slice(0, -1);
393
-
394
- // -> foo = foo || bar
395
- yield ruleFixer.insertTextAfter(
396
- operatorToken,
397
- ` ${assignmentText} ${operator}`,
398
- );
399
-
400
- const precedence =
401
- astUtils.getPrecedence(assignment.right) <=
402
- astUtils.getPrecedence({
403
- type: "LogicalExpression",
404
- operator,
405
- });
406
-
407
- // ?? and || / && cannot be mixed but have same precedence
408
- const mixed =
409
- assignment.operator === "??=" &&
410
- astUtils.isLogicalExpression(assignment.right);
411
-
412
- if (
413
- !astUtils.isParenthesised(
414
- sourceCode,
415
- assignment.right,
416
- ) &&
417
- (precedence || mixed)
418
- ) {
419
- // -> foo = foo || (bar)
420
- yield ruleFixer.insertTextBefore(
421
- assignment.right,
422
- "(",
423
- );
424
- yield ruleFixer.insertTextAfter(
425
- assignment.right,
426
- ")",
427
- );
428
- }
429
- },
430
- };
431
-
432
- context.report(
433
- createConditionalFixer(
434
- descriptor,
435
- suggestion,
436
- cannotBeGetter(assignment.left),
437
- ),
438
- );
439
- },
440
- };
441
- }
442
-
443
- return {
444
- // foo = foo || bar
445
- "AssignmentExpression[operator='='][right.type='LogicalExpression']"(
446
- assignment,
447
- ) {
448
- const leftOperand = getLeftmostOperand(
449
- sourceCode,
450
- assignment.right,
451
- );
452
-
453
- if (!astUtils.isSameReference(assignment.left, leftOperand)) {
454
- return;
455
- }
456
-
457
- const descriptor = {
458
- messageId: "assignment",
459
- node: assignment,
460
- data: { operator: `${assignment.right.operator}=` },
461
- };
462
- const suggestion = {
463
- messageId: "useLogicalOperator",
464
- data: { operator: `${assignment.right.operator}=` },
465
- *fix(ruleFixer) {
466
- if (
467
- sourceCode.getCommentsInside(assignment).length > 0
468
- ) {
469
- return;
470
- }
471
-
472
- // No need for parenthesis around the assignment based on precedence as the precedence stays the same even with changed operator
473
- const assignmentOperatorToken =
474
- getOperatorToken(assignment);
475
-
476
- // -> foo ||= foo || bar
477
- yield ruleFixer.insertTextBefore(
478
- assignmentOperatorToken,
479
- assignment.right.operator,
480
- );
481
-
482
- // -> foo ||= bar
483
- const logicalOperatorToken = getOperatorToken(
484
- leftOperand.parent,
485
- );
486
- const firstRightOperandToken =
487
- sourceCode.getTokenAfter(logicalOperatorToken);
488
-
489
- yield ruleFixer.removeRange([
490
- leftOperand.parent.range[0],
491
- firstRightOperandToken.range[0],
492
- ]);
493
- },
494
- };
495
-
496
- context.report(
497
- createConditionalFixer(
498
- descriptor,
499
- suggestion,
500
- cannotBeGetter(assignment.left),
501
- ),
502
- );
503
- },
504
-
505
- // foo || (foo = bar)
506
- 'LogicalExpression[right.type="AssignmentExpression"][right.operator="="]'(
507
- logical,
508
- ) {
509
- // Right side has to be parenthesized, otherwise would be parsed as (foo || foo) = bar which is illegal
510
- if (
511
- isReference(logical.left) &&
512
- astUtils.isSameReference(logical.left, logical.right.left)
513
- ) {
514
- const descriptor = {
515
- messageId: "logical",
516
- node: logical,
517
- data: { operator: `${logical.operator}=` },
518
- };
519
- const suggestion = {
520
- messageId: "convertLogical",
521
- data: { operator: `${logical.operator}=` },
522
- *fix(ruleFixer) {
523
- if (
524
- sourceCode.getCommentsInside(logical).length > 0
525
- ) {
526
- return;
527
- }
528
-
529
- const parentPrecedence = astUtils.getPrecedence(
530
- logical.parent,
531
- );
532
- const requiresOuterParenthesis =
533
- logical.parent.type !== "ExpressionStatement" &&
534
- (parentPrecedence === -1 ||
535
- astUtils.getPrecedence({
536
- type: "AssignmentExpression",
537
- }) < parentPrecedence);
538
-
539
- if (
540
- !astUtils.isParenthesised(
541
- sourceCode,
542
- logical,
543
- ) &&
544
- requiresOuterParenthesis
545
- ) {
546
- yield ruleFixer.insertTextBefore(logical, "(");
547
- yield ruleFixer.insertTextAfter(logical, ")");
548
- }
549
-
550
- // Also removes all opening parenthesis
551
- yield ruleFixer.removeRange([
552
- logical.range[0],
553
- logical.right.range[0],
554
- ]); // -> foo = bar)
555
-
556
- // Also removes all ending parenthesis
557
- yield ruleFixer.removeRange([
558
- logical.right.range[1],
559
- logical.range[1],
560
- ]); // -> foo = bar
561
-
562
- const operatorToken = getOperatorToken(
563
- logical.right,
564
- );
565
-
566
- yield ruleFixer.insertTextBefore(
567
- operatorToken,
568
- logical.operator,
569
- ); // -> foo ||= bar
570
- },
571
- };
572
- const fix =
573
- cannotBeGetter(logical.left) ||
574
- accessesSingleProperty(logical.left);
575
-
576
- context.report(
577
- createConditionalFixer(descriptor, suggestion, fix),
578
- );
579
- }
580
- },
581
-
582
- // if (foo) foo = bar
583
- "IfStatement[alternate=null]"(ifNode) {
584
- if (!checkIf) {
585
- return;
586
- }
587
-
588
- const hasBody = ifNode.consequent.type === "BlockStatement";
589
-
590
- if (hasBody && ifNode.consequent.body.length !== 1) {
591
- return;
592
- }
593
-
594
- const body = hasBody
595
- ? ifNode.consequent.body[0]
596
- : ifNode.consequent;
597
- const scope = sourceCode.getScope(ifNode);
598
- const existence = getExistence(ifNode.test, scope);
599
-
600
- if (
601
- body.type === "ExpressionStatement" &&
602
- body.expression.type === "AssignmentExpression" &&
603
- body.expression.operator === "=" &&
604
- existence !== null &&
605
- astUtils.isSameReference(
606
- existence.reference,
607
- body.expression.left,
608
- )
609
- ) {
610
- const descriptor = {
611
- messageId: "if",
612
- node: ifNode,
613
- data: { operator: `${existence.operator}=` },
614
- };
615
- const suggestion = {
616
- messageId: "convertIf",
617
- data: { operator: `${existence.operator}=` },
618
- *fix(ruleFixer) {
619
- if (
620
- sourceCode.getCommentsInside(ifNode).length > 0
621
- ) {
622
- return;
623
- }
624
-
625
- const firstBodyToken =
626
- sourceCode.getFirstToken(body);
627
- const prevToken = sourceCode.getTokenBefore(ifNode);
628
-
629
- if (
630
- prevToken !== null &&
631
- prevToken.value !== ";" &&
632
- prevToken.value !== "{" &&
633
- firstBodyToken.type !== "Identifier" &&
634
- firstBodyToken.type !== "Keyword"
635
- ) {
636
- // Do not fix if the fixed statement could be part of the previous statement (eg. fn() if (a == null) (a) = b --> fn()(a) ??= b)
637
- return;
638
- }
639
-
640
- const operatorToken = getOperatorToken(
641
- body.expression,
642
- );
643
-
644
- yield ruleFixer.insertTextBefore(
645
- operatorToken,
646
- existence.operator,
647
- ); // -> if (foo) foo ||= bar
648
-
649
- yield ruleFixer.removeRange([
650
- ifNode.range[0],
651
- body.range[0],
652
- ]); // -> foo ||= bar
653
-
654
- yield ruleFixer.removeRange([
655
- body.range[1],
656
- ifNode.range[1],
657
- ]); // -> foo ||= bar, only present if "if" had a body
658
-
659
- const nextToken = sourceCode.getTokenAfter(
660
- body.expression,
661
- );
662
-
663
- if (
664
- hasBody &&
665
- nextToken !== null &&
666
- nextToken.value !== ";"
667
- ) {
668
- yield ruleFixer.insertTextAfter(ifNode, ";");
669
- }
670
- },
671
- };
672
- const shouldBeFixed =
673
- cannotBeGetter(existence.reference) ||
674
- (ifNode.test.type !== "LogicalExpression" &&
675
- accessesSingleProperty(existence.reference));
676
-
677
- context.report(
678
- createConditionalFixer(
679
- descriptor,
680
- suggestion,
681
- shouldBeFixed,
682
- ),
683
- );
684
- }
685
- },
686
- };
687
- },
688
- };