@alexlit/lint-kit 176.0.1 → 177.0.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 (293) hide show
  1. package/package.json +1 -1
  2. package/packages/config-stylelint/package.json +5 -5
  3. package/packages/config-stylelint/plugins/color-format.js +1 -5
  4. package/packages/config-stylelint/plugins/logical-css.js +1 -4
  5. package/packages/config-eslint/node_modules/@eslint/core/LICENSE +0 -201
  6. package/packages/config-eslint/node_modules/@eslint/core/README.md +0 -29
  7. package/packages/config-eslint/node_modules/@eslint/core/dist/cjs/types.d.cts +0 -1179
  8. package/packages/config-eslint/node_modules/@eslint/core/dist/esm/types.d.ts +0 -1179
  9. package/packages/config-eslint/node_modules/@eslint/core/package.json +0 -49
  10. package/packages/config-eslint/node_modules/@eslint/plugin-kit/LICENSE +0 -201
  11. package/packages/config-eslint/node_modules/@eslint/plugin-kit/README.md +0 -273
  12. package/packages/config-eslint/node_modules/@eslint/plugin-kit/dist/cjs/index.cjs +0 -884
  13. package/packages/config-eslint/node_modules/@eslint/plugin-kit/dist/cjs/index.d.cts +0 -328
  14. package/packages/config-eslint/node_modules/@eslint/plugin-kit/dist/cjs/types.cts +0 -7
  15. package/packages/config-eslint/node_modules/@eslint/plugin-kit/dist/esm/index.d.ts +0 -328
  16. package/packages/config-eslint/node_modules/@eslint/plugin-kit/dist/esm/index.js +0 -879
  17. package/packages/config-eslint/node_modules/@eslint/plugin-kit/dist/esm/types.d.ts +0 -6
  18. package/packages/config-eslint/node_modules/@eslint/plugin-kit/dist/esm/types.ts +0 -7
  19. package/packages/config-eslint/node_modules/@eslint/plugin-kit/package.json +0 -61
  20. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/configs/flat-config-base.js +0 -9
  21. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/index.d.ts +0 -17
  22. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/index.js +0 -91
  23. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/license +0 -9
  24. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/node_modules/globals/globals.json +0 -3345
  25. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/node_modules/globals/index.d.ts +0 -3452
  26. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/node_modules/globals/index.js +0 -2
  27. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/node_modules/globals/license +0 -9
  28. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/node_modules/globals/package.json +0 -117
  29. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/node_modules/globals/readme.md +0 -42
  30. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/package.json +0 -128
  31. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/readme.md +0 -261
  32. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/call-or-new-expression.js +0 -120
  33. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/function-types.js +0 -7
  34. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/index.js +0 -30
  35. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-arrow-function-body.js +0 -3
  36. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-directive.js +0 -4
  37. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-empty-array-expression.js +0 -5
  38. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-empty-node.js +0 -17
  39. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-expression-statement.js +0 -7
  40. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-function.js +0 -5
  41. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-member-expression.js +0 -98
  42. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-method-call.js +0 -62
  43. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-negative-one.js +0 -8
  44. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-reference-identifier.js +0 -159
  45. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-static-require.js +0 -10
  46. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-tagged-template-literal.js +0 -24
  47. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/is-undefined.js +0 -3
  48. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/ast/literal.js +0 -24
  49. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/better-regex.js +0 -146
  50. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/catch-error-name.js +0 -138
  51. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/consistent-assert.js +0 -98
  52. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/consistent-date-clone.js +0 -54
  53. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/consistent-destructuring.js +0 -168
  54. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/consistent-empty-array-spread.js +0 -127
  55. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/consistent-existence-index-check.js +0 -137
  56. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/consistent-function-scoping.js +0 -265
  57. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/custom-error-definition.js +0 -218
  58. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/empty-brace-spaces.js +0 -62
  59. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/error-message.js +0 -98
  60. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/escape-case.js +0 -86
  61. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/expiring-todo-comments.js +0 -584
  62. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/explicit-length-check.js +0 -236
  63. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/filename-case.js +0 -276
  64. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/add-parenthesizes-to-return-or-throw-expression.js +0 -29
  65. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/append-argument.js +0 -30
  66. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/extend-fix-range.js +0 -11
  67. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/fix-space-around-keywords.js +0 -43
  68. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/index.js +0 -23
  69. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/remove-argument.js +0 -40
  70. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/remove-expression-statement.js +0 -34
  71. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/remove-method-call.js +0 -28
  72. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/remove-object-property.js +0 -21
  73. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/remove-parentheses.js +0 -19
  74. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/remove-spaces-after.js +0 -22
  75. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/remove-specifier.js +0 -59
  76. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/rename-variable.js +0 -8
  77. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/replace-argument.js +0 -17
  78. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/replace-member-expression-property.js +0 -25
  79. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/replace-node-or-token-and-spaces-before.js +0 -31
  80. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/replace-reference-identifier.js +0 -32
  81. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/replace-string-raw.js +0 -12
  82. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/replace-template-element.js +0 -10
  83. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/switch-call-expression-to-new-expression.js +0 -29
  84. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/fix/switch-new-expression-to-call-expression.js +0 -42
  85. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/import-style.js +0 -375
  86. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/index.js +0 -143
  87. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/new-for-builtins.js +0 -112
  88. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-abusive-eslint-disable.js +0 -63
  89. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-accessor-recursion.js +0 -160
  90. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-anonymous-default-export.js +0 -210
  91. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-array-callback-reference.js +0 -285
  92. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-array-for-each.js +0 -496
  93. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-array-method-this-argument.js +0 -223
  94. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-array-reduce.js +0 -128
  95. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-array-reverse.js +0 -6
  96. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-array-sort.js +0 -6
  97. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-await-expression-member.js +0 -85
  98. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-await-in-promise-methods.js +0 -69
  99. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-console-spaces.js +0 -89
  100. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-document-cookie.js +0 -27
  101. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-empty-file.js +0 -58
  102. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-for-loop.js +0 -419
  103. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-hex-escape.js +0 -54
  104. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-immediate-mutation.js +0 -778
  105. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-instanceof-builtins.js +0 -216
  106. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-invalid-fetch-options.js +0 -112
  107. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-invalid-remove-event-listener.js +0 -61
  108. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-keyword-prefix.js +0 -202
  109. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-lonely-if.js +0 -155
  110. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-magic-array-flat-depth.js +0 -55
  111. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-named-default.js +0 -101
  112. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-negated-condition.js +0 -145
  113. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-negation-in-equality-check.js +0 -99
  114. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-nested-ternary.js +0 -60
  115. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-new-array.js +0 -106
  116. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-new-buffer.js +0 -100
  117. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-null.js +0 -153
  118. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-object-as-default-parameter.js +0 -52
  119. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-process-exit.js +0 -106
  120. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-single-promise-in-promise-methods.js +0 -179
  121. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-static-only-class.js +0 -226
  122. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-thenable.js +0 -194
  123. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-this-assignment.js +0 -40
  124. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-typeof-undefined.js +0 -146
  125. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unnecessary-array-flat-depth.js +0 -49
  126. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unnecessary-array-splice-count.js +0 -23
  127. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unnecessary-await.js +0 -110
  128. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unnecessary-polyfills.js +0 -174
  129. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unnecessary-slice-end.js +0 -22
  130. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unreadable-array-destructuring.js +0 -85
  131. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unreadable-iife.js +0 -43
  132. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-unused-properties.js +0 -240
  133. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-collection-argument.js +0 -101
  134. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-error-capture-stack-trace.js +0 -146
  135. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-fallback-in-spread.js +0 -66
  136. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-length-check.js +0 -150
  137. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-promise-resolve-reject.js +0 -210
  138. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-spread.js +0 -389
  139. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-switch-case.js +0 -59
  140. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-useless-undefined.js +0 -275
  141. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/no-zero-fractions.js +0 -81
  142. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/number-literal-case.js +0 -82
  143. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/numeric-separators-style.js +0 -189
  144. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-add-event-listener.js +0 -191
  145. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-array-find.js +0 -458
  146. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-array-flat-map.js +0 -86
  147. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-array-flat.js +0 -279
  148. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-array-index-of.js +0 -34
  149. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-array-some.js +0 -219
  150. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-at.js +0 -380
  151. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-bigint-literals.js +0 -129
  152. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-blob-reading-methods.js +0 -47
  153. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-class-fields.js +0 -158
  154. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-classlist-toggle.js +0 -255
  155. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-code-point.js +0 -56
  156. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-date-now.js +0 -133
  157. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-default-parameters.js +0 -218
  158. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-dom-node-append.js +0 -50
  159. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-dom-node-dataset.js +0 -135
  160. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-dom-node-remove.js +0 -124
  161. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-dom-node-text-content.js +0 -77
  162. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-event-target.js +0 -119
  163. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-export-from.js +0 -367
  164. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-global-this.js +0 -222
  165. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-import-meta-properties.js +0 -320
  166. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-includes.js +0 -111
  167. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-json-parse-buffer.js +0 -161
  168. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-keyboard-event-key.js +0 -188
  169. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-logical-operator-over-ternary.js +0 -162
  170. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-math-min-max.js +0 -205
  171. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-math-trunc.js +0 -111
  172. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-modern-dom-apis.js +0 -145
  173. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-modern-math-apis.js +0 -210
  174. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-module.js +0 -377
  175. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-native-coercion-functions.js +0 -187
  176. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-negative-index.js +0 -211
  177. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-node-protocol.js +0 -86
  178. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-number-properties.js +0 -142
  179. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-object-from-entries.js +0 -256
  180. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-optional-catch-binding.js +0 -77
  181. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-prototype-methods.js +0 -162
  182. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-query-selector.js +0 -170
  183. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-reflect-apply.js +0 -99
  184. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-regexp-test.js +0 -155
  185. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-response-static-json.js +0 -85
  186. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-set-has.js +0 -181
  187. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-set-size.js +0 -106
  188. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-single-call.js +0 -188
  189. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-spread.js +0 -521
  190. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-string-raw.js +0 -149
  191. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-string-replace-all.js +0 -180
  192. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-string-slice.js +0 -180
  193. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-string-starts-ends-with.js +0 -201
  194. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-string-trim-start-end.js +0 -46
  195. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-structured-clone.js +0 -149
  196. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-switch.js +0 -357
  197. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-ternary.js +0 -288
  198. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-top-level-await.js +0 -154
  199. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prefer-type-error.js +0 -169
  200. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/prevent-abbreviations.js +0 -655
  201. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/relative-url-style.js +0 -171
  202. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/require-array-join-separator.js +0 -65
  203. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/require-module-attributes.js +0 -120
  204. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/require-module-specifiers.js +0 -158
  205. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/require-number-to-fixed-digits-argument.js +0 -55
  206. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/require-post-message-target-origin.js +0 -74
  207. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/get-documentation-url.js +0 -9
  208. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/index.js +0 -9
  209. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/to-eslint-create.js +0 -51
  210. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/to-eslint-listener.js +0 -40
  211. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/to-eslint-problem.js +0 -38
  212. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/to-eslint-rule-fixer.js +0 -49
  213. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/to-eslint-rule.js +0 -38
  214. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/to-eslint-rules.js +0 -13
  215. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/unicorn-context.js +0 -36
  216. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/unicorn-listeners.js +0 -65
  217. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/rule/utilities.js +0 -27
  218. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/abbreviations.js +0 -270
  219. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/builtin-errors.js +0 -14
  220. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/dom-events.js +0 -275
  221. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/event-keys.js +0 -54
  222. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/negative-index.js +0 -52
  223. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/no-array-mutate-rule.js +0 -139
  224. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/no-unnecessary-length-or-infinity-rule.js +0 -80
  225. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/package-json.js +0 -42
  226. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/simple-array-search-rule.js +0 -126
  227. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/shared/typed-array.js +0 -17
  228. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/string-content.js +0 -192
  229. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/switch-case-braces.js +0 -114
  230. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/template-indent.js +0 -219
  231. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/text-encoding-identifier-case.js +0 -130
  232. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/throw-new-error.js +0 -60
  233. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/array-or-object-prototype-property.js +0 -57
  234. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/assert-token.js +0 -29
  235. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/boolean.js +0 -88
  236. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/builtins.js +0 -30
  237. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/cartesian-product-samples.js +0 -22
  238. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/create-deprecated-rules.js +0 -29
  239. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/escape-string.js +0 -24
  240. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/escape-template-element-raw.js +0 -6
  241. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-ancestor.js +0 -15
  242. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-available-variable-name.js +0 -147
  243. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-builtin-rule.js +0 -5
  244. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-call-expression-arguments-text.js +0 -36
  245. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-call-or-new-expression-tokens.js +0 -67
  246. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-class-head-location.js +0 -22
  247. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-documentation-url.js +0 -9
  248. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-indent-string.js +0 -18
  249. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-references.js +0 -5
  250. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-scopes.js +0 -12
  251. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-sibling-node.js +0 -38
  252. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-switch-case-head-location.js +0 -22
  253. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-token-store.js +0 -24
  254. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/get-variable-identifiers.js +0 -7
  255. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/global-reference-tracker.js +0 -68
  256. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/has-optional-chain-element.js +0 -17
  257. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/has-same-range.js +0 -7
  258. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/index.js +0 -59
  259. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-function-self-used-inside.js +0 -39
  260. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-left-hand-side.js +0 -20
  261. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-logical-expression.js +0 -14
  262. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-method-named.js +0 -7
  263. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-new-expression-with-parentheses.js +0 -28
  264. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-node-matches.js +0 -58
  265. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-node-value-not-dom-node.js +0 -20
  266. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-node-value-not-function.js +0 -40
  267. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-number.js +0 -224
  268. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-object-method.js +0 -10
  269. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-on-same-line.js +0 -7
  270. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-same-identifier.js +0 -5
  271. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-same-reference.js +0 -170
  272. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-shorthand-export-local.js +0 -8
  273. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-shorthand-import-local.js +0 -8
  274. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-shorthand-property-assignment-pattern-left.js +0 -8
  275. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-shorthand-property-value.js +0 -6
  276. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-unresolved-variable.js +0 -14
  277. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/is-value-not-usable.js +0 -5
  278. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/needs-semicolon.js +0 -118
  279. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/numeric.js +0 -49
  280. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/parentheses.js +0 -71
  281. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/resolve-variable-name.js +0 -18
  282. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/rule.js +0 -27
  283. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-await-expression-argument.js +0 -17
  284. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-call-expression-callee.js +0 -18
  285. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-conditional-expression-child.js +0 -13
  286. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-expression-statement-expression.js +0 -22
  287. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-logical-expression-child.js +0 -43
  288. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-member-expression-object.js +0 -47
  289. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-new-expression-callee.js +0 -28
  290. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/should-add-parentheses-to-unary-expression.js +0 -24
  291. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/singular.js +0 -16
  292. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/string-cases.js +0 -2
  293. package/packages/config-eslint/node_modules/eslint-plugin-unicorn/rules/utils/to-location.js +0 -25
@@ -1,130 +0,0 @@
1
- import {replaceStringRaw} from './fix/index.js';
2
- import {isMethodCall, isNewExpression} from './ast/index.js';
3
-
4
- const MESSAGE_ID_ERROR = 'text-encoding-identifier/error';
5
- const MESSAGE_ID_SUGGESTION = 'text-encoding-identifier/suggestion';
6
- const messages = {
7
- [MESSAGE_ID_ERROR]: 'Prefer `{{replacement}}` over `{{value}}`.',
8
- [MESSAGE_ID_SUGGESTION]: 'Replace `{{value}}` with `{{replacement}}`.',
9
- };
10
-
11
- const getReplacement = (encoding, withDash) => {
12
- switch (encoding.toLowerCase()) {
13
- // eslint-disable-next-line unicorn/text-encoding-identifier-case
14
- case 'utf-8':
15
- case 'utf8': {
16
- // eslint-disable-next-line unicorn/text-encoding-identifier-case
17
- return withDash ? 'utf-8' : 'utf8';
18
- }
19
-
20
- case 'ascii': {
21
- return 'ascii';
22
- }
23
- // No default
24
- }
25
- };
26
-
27
- // `fs.{readFile,readFileSync}()`
28
- const isFsReadFileEncoding = node =>
29
- isMethodCall(node.parent, {
30
- methods: ['readFile', 'readFileSync'],
31
- optionalCall: false,
32
- optionalMember: false,
33
- })
34
- && node.parent.arguments[1] === node
35
- && node.parent.arguments[0].type !== 'SpreadElement';
36
-
37
- const isJsxElementAttributes = (node, {element, attributes}) =>
38
- node.parent.type === 'JSXAttribute'
39
- && node.parent.value === node
40
- && node.parent.name.type === 'JSXIdentifier'
41
- && attributes.includes(node.parent.name.name.toLowerCase())
42
- && node.parent.parent.type === 'JSXOpeningElement'
43
- && node.parent.parent.attributes.includes(node.parent)
44
- && node.parent.parent.name.type === 'JSXIdentifier'
45
- && node.parent.parent.name.name.toLowerCase() === element;
46
-
47
- const shouldEnforceDash = node =>
48
- isJsxElementAttributes(node, {element: 'meta', attributes: ['charset']})
49
- || isJsxElementAttributes(node, {element: 'form', attributes: ['acceptCharset', 'accept-charset'].map(attribute => attribute.toLowerCase())})
50
- || (isNewExpression(node.parent, {name: 'TextDecoder'}) && node.parent.arguments[0] === node);
51
-
52
- /** @param {import('eslint').Rule.RuleContext} context */
53
- const create = context => {
54
- const options = context.options[0];
55
-
56
- context.on('Literal', node => {
57
- if (typeof node.value !== 'string') {
58
- return;
59
- }
60
-
61
- const withDash = options.withDash || shouldEnforceDash(node);
62
-
63
- const {raw} = node;
64
- const value = raw.slice(1, -1);
65
-
66
- const replacement = getReplacement(value, withDash);
67
- if (!replacement || replacement === value) {
68
- return;
69
- }
70
-
71
- /** @param {import('eslint').Rule.RuleFixer} fixer */
72
- const fix = fixer => replaceStringRaw(node, replacement, context, fixer);
73
-
74
- const problem = {
75
- node,
76
- messageId: MESSAGE_ID_ERROR,
77
- data: {
78
- value,
79
- replacement,
80
- },
81
- };
82
-
83
- if (isFsReadFileEncoding(node)) {
84
- problem.fix = fix;
85
- return problem;
86
- }
87
-
88
- problem.suggest = [
89
- {
90
- messageId: MESSAGE_ID_SUGGESTION,
91
- fix: fixer => replaceStringRaw(node, replacement, context, fixer),
92
- },
93
- ];
94
-
95
- return problem;
96
- });
97
- };
98
-
99
- const schema = [
100
- {
101
- type: 'object',
102
- additionalProperties: false,
103
- properties: {
104
- withDash: {
105
- type: 'boolean',
106
- },
107
- },
108
- },
109
- ];
110
-
111
- /** @type {import('eslint').Rule.RuleModule} */
112
- const config = {
113
- create,
114
- meta: {
115
- type: 'suggestion',
116
- docs: {
117
- description: 'Enforce consistent case for text encoding identifiers.',
118
- recommended: 'unopinionated',
119
- },
120
- fixable: 'code',
121
- hasSuggestions: true,
122
- schema,
123
- defaultOptions: [{
124
- withDash: false,
125
- }],
126
- messages,
127
- },
128
- };
129
-
130
- export default config;
@@ -1,60 +0,0 @@
1
- import {isMemberExpression} from './ast/index.js';
2
- import {switchCallExpressionToNewExpression} from './fix/index.js';
3
-
4
- const messageId = 'throw-new-error';
5
- const messages = {
6
- [messageId]: 'Use `new` when creating an error.',
7
- };
8
-
9
- const customError = /^(?:[A-Z][\da-z]*)*Error$/;
10
-
11
- /** @param {import('eslint').Rule.RuleContext} context */
12
- const create = context => ({
13
- CallExpression(node) {
14
- const {callee} = node;
15
- if (!(
16
- (callee.type === 'Identifier' && customError.test(callee.name))
17
- || (
18
- callee.type === 'MemberExpression'
19
- && !callee.computed
20
- && callee.property.type === 'Identifier'
21
- && customError.test(callee.property.name)
22
- )
23
- )) {
24
- return;
25
- }
26
-
27
- // https://github.com/sindresorhus/eslint-plugin-unicorn/issues/2654 (Effect library)
28
- if (
29
- isMemberExpression(callee, {
30
- object: 'Data',
31
- property: 'TaggedError',
32
- computed: false,
33
- })
34
- ) {
35
- return;
36
- }
37
-
38
- return {
39
- node,
40
- messageId,
41
- fix: fixer => switchCallExpressionToNewExpression(node, context, fixer),
42
- };
43
- },
44
- });
45
-
46
- /** @type {import('eslint').Rule.RuleModule} */
47
- const config = {
48
- create,
49
- meta: {
50
- type: 'suggestion',
51
- docs: {
52
- description: 'Require `new` when creating an error.',
53
- recommended: 'unopinionated',
54
- },
55
- fixable: 'code',
56
- messages,
57
- },
58
- };
59
-
60
- export default config;
@@ -1,57 +0,0 @@
1
- import {isMemberExpression} from '../ast/index.js';
2
-
3
- /**
4
- @param {
5
- {
6
- object?: string,
7
- method?: string,
8
- methods?: string[],
9
- }
10
- } [options]
11
- @returns {string}
12
- */
13
- function isPrototypeProperty(node, options) {
14
- const {
15
- object,
16
- property,
17
- properties,
18
- } = {
19
- property: '',
20
- properties: [],
21
- ...options,
22
- };
23
-
24
- if (!isMemberExpression(node, {
25
- property,
26
- properties,
27
- optional: false,
28
- })) {
29
- return;
30
- }
31
-
32
- const objectNode = node.object;
33
-
34
- return (
35
- // `Object.prototype.method` or `Array.prototype.method`
36
- isMemberExpression(objectNode, {
37
- object,
38
- property: 'prototype',
39
- optional: false,
40
- })
41
- // `[].method`
42
- || (
43
- object === 'Array'
44
- && objectNode.type === 'ArrayExpression'
45
- && objectNode.elements.length === 0
46
- )
47
- // `{}.method`
48
- || (
49
- object === 'Object'
50
- && objectNode.type === 'ObjectExpression'
51
- && objectNode.properties.length === 0
52
- )
53
- );
54
- }
55
-
56
- export const isArrayPrototypeProperty = (node, options) => isPrototypeProperty(node, {...options, object: 'Array'});
57
- export const isObjectPrototypeProperty = (node, options) => isPrototypeProperty(node, {...options, object: 'Object'});
@@ -1,29 +0,0 @@
1
- const ISSUE_LINK_PREFIX = 'https://github.com/sindresorhus/eslint-plugin-unicorn/issues/new?';
2
-
3
- export default function assertToken(token, {test, expected, ruleId}) {
4
- if (test?.(token)) {
5
- return;
6
- }
7
-
8
- expected = Array.isArray(expected) ? expected : [expected];
9
- expected = expected.map(expectedToken => typeof expectedToken === 'string' ? {value: expectedToken} : expectedToken);
10
-
11
- if (
12
- !test
13
- && expected.some(
14
- expectedToken =>
15
- Object.entries(expectedToken)
16
- .every(([key, value]) => token[key] === value),
17
- )
18
- ) {
19
- return;
20
- }
21
-
22
- const actual = `'${JSON.stringify({value: token.value, type: token.type})}'`;
23
- expected = expected.map(expectedToken => `'${JSON.stringify(expectedToken)}'`).join(' or ');
24
- const title = `\`${ruleId}\`: Unexpected token ${actual}`;
25
- const issueLink = `${ISSUE_LINK_PREFIX}title=${encodeURIComponent(title)}`;
26
- const message = `Expected token ${expected}, got ${actual}.\nPlease open an issue at ${issueLink}.`;
27
-
28
- throw new Error(message);
29
- }
@@ -1,88 +0,0 @@
1
- import isLogicalExpression from './is-logical-expression.js';
2
-
3
- const isLogicNot = node => node?.type === 'UnaryExpression' && node.operator === '!';
4
- const isLogicNotArgument = node => isLogicNot(node.parent) && node.parent.argument === node;
5
- const isBooleanCallArgument = node => isBooleanCall(node.parent) && node.parent.arguments[0] === node;
6
- const isBooleanCall = node =>
7
- node?.type === 'CallExpression'
8
- && node.callee.type === 'Identifier'
9
- && node.callee.name === 'Boolean'
10
- && node.arguments.length === 1;
11
- const isVueBooleanAttributeValue = node =>
12
- node?.type === 'VExpressionContainer'
13
- && node.parent.type === 'VAttribute'
14
- && node.parent.directive
15
- && node.parent.value === node
16
- && node.parent.key.type === 'VDirectiveKey'
17
- && node.parent.key.name.type === 'VIdentifier'
18
- && (
19
- node.parent.key.name.rawName === 'if'
20
- || node.parent.key.name.rawName === 'else-if'
21
- || node.parent.key.name.rawName === 'show'
22
- );
23
-
24
- /**
25
- Check if the value of node is a `boolean`.
26
-
27
- @param {Node} node
28
- @returns {boolean}
29
- */
30
- export function isBooleanNode(node) {
31
- if (
32
- isLogicNot(node)
33
- || isLogicNotArgument(node)
34
- || isBooleanCall(node)
35
- || isBooleanCallArgument(node)
36
- ) {
37
- return true;
38
- }
39
-
40
- const {parent} = node;
41
- if (isVueBooleanAttributeValue(parent)) {
42
- return true;
43
- }
44
-
45
- if (
46
- (
47
- parent.type === 'IfStatement'
48
- || parent.type === 'ConditionalExpression'
49
- || parent.type === 'WhileStatement'
50
- || parent.type === 'DoWhileStatement'
51
- || parent.type === 'ForStatement'
52
- )
53
- && parent.test === node
54
- ) {
55
- return true;
56
- }
57
-
58
- if (isLogicalExpression(parent)) {
59
- return isBooleanNode(parent);
60
- }
61
-
62
- return false;
63
- }
64
-
65
- /**
66
- Get the boolean type-casting ancestor.
67
-
68
- @typedef {{ node: Node, isNegative: boolean }} Result
69
-
70
- @param {Node} node
71
- @returns {Result}
72
- */
73
- export function getBooleanAncestor(node) {
74
- let isNegative = false;
75
-
76
- while (true) {
77
- if (isLogicNotArgument(node)) {
78
- isNegative = !isNegative;
79
- node = node.parent;
80
- } else if (isBooleanCallArgument(node)) {
81
- node = node.parent;
82
- } else {
83
- break;
84
- }
85
- }
86
-
87
- return {node, isNegative};
88
- }
@@ -1,30 +0,0 @@
1
- import typedArray from '../shared/typed-array.js';
2
-
3
- export const enforceNew = [
4
- 'Object',
5
- 'Array',
6
- 'ArrayBuffer',
7
- 'DataView',
8
- 'Date',
9
- 'Error',
10
- 'Function',
11
- 'Map',
12
- 'WeakMap',
13
- 'Set',
14
- 'WeakSet',
15
- 'Promise',
16
- 'RegExp',
17
- 'SharedArrayBuffer',
18
- 'Proxy',
19
- 'WeakRef',
20
- 'FinalizationRegistry',
21
- ...typedArray,
22
- ];
23
-
24
- export const disallowNew = [
25
- 'BigInt',
26
- 'Boolean',
27
- 'Number',
28
- 'String',
29
- 'Symbol',
30
- ];
@@ -1,22 +0,0 @@
1
- export default function cartesianProductSamples(combinations, length = Number.POSITIVE_INFINITY) {
2
- const total = combinations.reduce((total, {length}) => total * length, 1);
3
-
4
- const samples = Array.from({length: Math.min(total, length)}, (_, sampleIndex) => {
5
- let indexRemaining = sampleIndex;
6
- const combination = [];
7
- for (let combinationIndex = combinations.length - 1; combinationIndex >= 0; combinationIndex--) {
8
- const items = combinations[combinationIndex];
9
- const {length} = items;
10
- const index = indexRemaining % length;
11
- indexRemaining = (indexRemaining - index) / length;
12
- combination.unshift(items[index]);
13
- }
14
-
15
- return combination;
16
- });
17
-
18
- return {
19
- total,
20
- samples,
21
- };
22
- }
@@ -1,29 +0,0 @@
1
- import packageJson from '../../package.json' with {type: 'json'};
2
-
3
- const repoUrl = 'https://github.com/sindresorhus/eslint-plugin-unicorn';
4
-
5
- /** @returns {{ [ruleName: string]: import('eslint').Rule.RuleModule }} */
6
- export default function createDeprecatedRules(rules) {
7
- return Object.fromEntries(
8
- Object.entries(rules).map(([ruleId, deprecatedInfo]) => {
9
- const url = `${repoUrl}/blob/v${packageJson.version}/docs/deprecated-rules.md#${ruleId}`;
10
- return [
11
- ruleId,
12
- {
13
- create: () => ({}),
14
- meta: {
15
- docs: {
16
- description: deprecatedInfo.message,
17
- url,
18
- },
19
- deprecated: {
20
- message: deprecatedInfo.message,
21
- url,
22
- replacedBy: deprecatedInfo.replacedBy,
23
- },
24
- },
25
- },
26
- ];
27
- }),
28
- );
29
- }
@@ -1,24 +0,0 @@
1
- import jsesc from 'jsesc';
2
-
3
- /**
4
- Escape string and wrap the result in quotes.
5
-
6
- @param {string} string - The string to be quoted.
7
- @param {string} [quote] - The quote character.
8
- @returns {string} - The quoted and escaped string.
9
- */
10
- export default function escapeString(string, quote = '\'') {
11
- /* c8 ignore start */
12
- if (typeof string !== 'string') {
13
- throw new TypeError('Unexpected string.');
14
- }
15
- /* c8 ignore end */
16
-
17
- return jsesc(string, {
18
- quotes: quote === '"' ? 'double' : 'single',
19
- wrap: true,
20
- es6: true,
21
- minimal: true,
22
- lowercaseHex: false,
23
- });
24
- }
@@ -1,6 +0,0 @@
1
- const escapeTemplateElementRaw = string => string.replaceAll(
2
- /(?<=(?:^|[^\\])(?:\\\\)*)(?<symbol>(?:`|\$(?={)))/g,
3
- String.raw`\$<symbol>`,
4
- );
5
-
6
- export default escapeTemplateElementRaw;
@@ -1,15 +0,0 @@
1
- // TODO: Support more types
2
- function getPredicate(options) {
3
- if (typeof options === 'string') {
4
- return node => node.type === options;
5
- }
6
- }
7
-
8
- export default function getAncestor(node, options) {
9
- const predicate = getPredicate(options);
10
- for (; node.parent; node = node.parent) {
11
- if (predicate(node)) {
12
- return node;
13
- }
14
- }
15
- }
@@ -1,147 +0,0 @@
1
- import helperValidatorIdentifier from '@babel/helper-validator-identifier';
2
- import resolveVariableName from './resolve-variable-name.js';
3
- import getReferences from './get-references.js';
4
-
5
- const {
6
- isIdentifierName,
7
- isStrictReservedWord,
8
- isKeyword,
9
- } = helperValidatorIdentifier;
10
-
11
- // https://github.com/microsoft/TypeScript/issues/2536#issuecomment-87194347
12
- const typescriptReservedWords = new Set([
13
- 'break',
14
- 'case',
15
- 'catch',
16
- 'class',
17
- 'const',
18
- 'continue',
19
- 'debugger',
20
- 'default',
21
- 'delete',
22
- 'do',
23
- 'else',
24
- 'enum',
25
- 'export',
26
- 'extends',
27
- 'false',
28
- 'finally',
29
- 'for',
30
- 'function',
31
- 'if',
32
- 'import',
33
- 'in',
34
- 'instanceof',
35
- 'new',
36
- 'null',
37
- 'return',
38
- 'super',
39
- 'switch',
40
- 'this',
41
- 'throw',
42
- 'true',
43
- 'try',
44
- 'typeof',
45
- 'var',
46
- 'void',
47
- 'while',
48
- 'with',
49
- 'as',
50
- 'implements',
51
- 'interface',
52
- 'let',
53
- 'package',
54
- 'private',
55
- 'protected',
56
- 'public',
57
- 'static',
58
- 'yield',
59
- 'any',
60
- 'boolean',
61
- 'constructor',
62
- 'declare',
63
- 'get',
64
- 'module',
65
- 'require',
66
- 'number',
67
- 'set',
68
- 'string',
69
- 'symbol',
70
- 'type',
71
- 'from',
72
- 'of',
73
- ]);
74
-
75
- // Copied from https://github.com/babel/babel/blob/fce35af69101c6b316557e28abf60bdbf77d6a36/packages/babel-types/src/validators/isValidIdentifier.ts#L7
76
- // Use this function instead of `require('@babel/types').isIdentifier`, since `@babel/helper-validator-identifier` package is much smaller
77
- const isValidIdentifier = name =>
78
- typeof name === 'string'
79
- && !isKeyword(name)
80
- && !isStrictReservedWord(name, true)
81
- && isIdentifierName(name)
82
- && name !== 'arguments'
83
- && !typescriptReservedWords.has(name);
84
-
85
- /*
86
- Unresolved reference is probably from the global scope. We should avoid using that name.
87
-
88
- For example, like `foo` and `bar` below.
89
-
90
- ```
91
- function unicorn() {
92
- return foo;
93
- }
94
-
95
- function unicorn() {
96
- return function() {
97
- return bar;
98
- };
99
- }
100
- ```
101
- */
102
- const isUnresolvedName = (name, scope) =>
103
- getReferences(scope).some(({identifier, resolved}) => identifier?.name === name && !resolved);
104
-
105
- const isSafeName = (name, scopes) =>
106
- !scopes.some(scope => resolveVariableName(name, scope) || isUnresolvedName(name, scope));
107
-
108
- const alwaysTrue = () => true;
109
-
110
- /**
111
- Rule-specific name check function.
112
-
113
- @callback isSafe
114
- @param {string} name - The generated candidate name.
115
- @param {Scope[]} scopes - The same list of scopes you pass to `getAvailableVariableName`.
116
- @returns {boolean} - `true` if the `name` is ok.
117
- */
118
-
119
- /**
120
- Generates a unique name prefixed with `name` such that:
121
- - it is not defined in any of the `scopes`,
122
- - it is not a reserved word,
123
- - it is not `arguments` in strict scopes (where `arguments` is not allowed),
124
- - it does not collide with the actual `arguments` (which is always defined in function scopes).
125
-
126
- Useful when you want to rename a variable (or create a new variable) while being sure not to shadow any other variables in the code.
127
-
128
- @param {string} name - The desired name for a new variable.
129
- @param {Scope[]} scopes - The list of scopes the new variable will be referenced in.
130
- @param {isSafe} [isSafe] - Rule-specific name check function.
131
- @returns {string} - Either `name` as is, or a string like `${name}_` suffixed with underscores to make the name unique.
132
- */
133
- export default function getAvailableVariableName(name, scopes, isSafe = alwaysTrue) {
134
- if (!isValidIdentifier(name)) {
135
- name += '_';
136
-
137
- if (!isValidIdentifier(name)) {
138
- return;
139
- }
140
- }
141
-
142
- while (!isSafeName(name, scopes) || !isSafe(name, scopes)) {
143
- name += '_';
144
- }
145
-
146
- return name;
147
- }
@@ -1,5 +0,0 @@
1
- import {builtinRules} from 'eslint/use-at-your-own-risk';
2
-
3
- export default function getBuiltinRule(id) {
4
- return builtinRules.get(id);
5
- }
@@ -1,36 +0,0 @@
1
- import {getCallExpressionTokens} from './get-call-or-new-expression-tokens.js';
2
-
3
- /**
4
- @import {TSESTree as ESTree} from '@typescript-eslint/types';
5
- @import * as ESLint from 'eslint';
6
- */
7
-
8
- /**
9
- Get the text of the arguments list of `CallExpression`.
10
-
11
- @param {ESTree.CallExpression} callExpression - The `CallExpression` node.
12
- @param {ESLint.Rule.RuleContext} context - The ESLint rule context object.
13
- @param {boolean} [includeTrailingComma = true] - Whether the trailing comma should be included.
14
- @returns {string}
15
- */
16
- export default function getCallExpressionArgumentsText(
17
- context,
18
- callExpression,
19
- includeTrailingComma = true,
20
- ) {
21
- const {sourceCode} = context;
22
- const {
23
- openingParenthesisToken,
24
- closingParenthesisToken,
25
- trailingCommaToken,
26
- } = getCallExpressionTokens(callExpression, context);
27
-
28
- const [, start] = sourceCode.getRange(openingParenthesisToken);
29
- const [end] = sourceCode.getRange(
30
- includeTrailingComma
31
- ? closingParenthesisToken
32
- : (trailingCommaToken ?? closingParenthesisToken),
33
- );
34
-
35
- return sourceCode.text.slice(start, end);
36
- }