repoburg 1.1.0 → 1.1.1

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 (1261) hide show
  1. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  2. package/backend/node_modules/@typescript-eslint/eslint-plugin/LICENSE +21 -0
  3. package/backend/node_modules/@typescript-eslint/eslint-plugin/README.md +12 -0
  4. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js +156 -0
  5. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map +1 -0
  6. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js +13 -0
  7. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js.map +1 -0
  8. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/disable-type-checked.js +64 -0
  9. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/disable-type-checked.js.map +1 -0
  10. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js +31 -0
  11. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js.map +1 -0
  12. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-type-checked.js +54 -0
  13. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-type-checked.js.map +1 -0
  14. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js +33 -0
  15. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js.map +1 -0
  16. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict-type-checked.js +79 -0
  17. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict-type-checked.js.map +1 -0
  18. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict.js +43 -0
  19. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict.js.map +1 -0
  20. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic-type-checked.js +35 -0
  21. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic-type-checked.js.map +1 -0
  22. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic.js +29 -0
  23. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic.js.map +1 -0
  24. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +39 -0
  25. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/index.js.map +1 -0
  26. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js +140 -0
  27. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js.map +1 -0
  28. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js +222 -0
  29. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map +1 -0
  30. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js +76 -0
  31. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js.map +1 -0
  32. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js +156 -0
  33. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map +1 -0
  34. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js +56 -0
  35. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js.map +1 -0
  36. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js +240 -0
  37. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js.map +1 -0
  38. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/block-spacing.js +140 -0
  39. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/block-spacing.js.map +1 -0
  40. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/brace-style.js +99 -0
  41. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/brace-style.js.map +1 -0
  42. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js +123 -0
  43. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js.map +1 -0
  44. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js +211 -0
  45. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js.map +1 -0
  46. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js +166 -0
  47. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js.map +1 -0
  48. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js +152 -0
  49. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map +1 -0
  50. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js +109 -0
  51. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js.map +1 -0
  52. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-indexed-object-style.js +128 -0
  53. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-indexed-object-style.js.map +1 -0
  54. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js +222 -0
  55. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js.map +1 -0
  56. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js +98 -0
  57. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js.map +1 -0
  58. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js +245 -0
  59. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js.map +1 -0
  60. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js +635 -0
  61. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map +1 -0
  62. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/default-param-last.js +63 -0
  63. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/default-param-last.js.map +1 -0
  64. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js +120 -0
  65. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js.map +1 -0
  66. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.js +112 -0
  67. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.js.map +1 -0
  68. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js +164 -0
  69. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map +1 -0
  70. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js +283 -0
  71. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map +1 -0
  72. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js +366 -0
  73. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map +1 -0
  74. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js +147 -0
  75. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js.map +1 -0
  76. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js +415 -0
  77. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js.map +1 -0
  78. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js +288 -0
  79. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map +1 -0
  80. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js +48 -0
  81. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js.map +1 -0
  82. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/key-spacing.js +322 -0
  83. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/key-spacing.js.map +1 -0
  84. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js +95 -0
  85. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js.map +1 -0
  86. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-around-comment.js +357 -0
  87. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-around-comment.js.map +1 -0
  88. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js +57 -0
  89. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js.map +1 -0
  90. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/max-params.js +67 -0
  91. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/max-params.js.map +1 -0
  92. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js +258 -0
  93. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js.map +1 -0
  94. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js +747 -0
  95. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map +1 -0
  96. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js +181 -0
  97. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map +1 -0
  98. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js +101 -0
  99. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js.map +1 -0
  100. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/format.js +91 -0
  101. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/format.js.map +1 -0
  102. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/index.js +12 -0
  103. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/index.js.map +1 -0
  104. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/parse-options.js +75 -0
  105. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/parse-options.js.map +1 -0
  106. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/schema.js +291 -0
  107. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/schema.js.map +1 -0
  108. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js +18 -0
  109. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js.map +1 -0
  110. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/types.js +3 -0
  111. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/types.js.map +1 -0
  112. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js +351 -0
  113. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js.map +1 -0
  114. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js +488 -0
  115. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js.map +1 -0
  116. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js +53 -0
  117. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js.map +1 -0
  118. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js +83 -0
  119. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js.map +1 -0
  120. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js +164 -0
  121. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js.map +1 -0
  122. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js +78 -0
  123. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js.map +1 -0
  124. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js +293 -0
  125. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js.map +1 -0
  126. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js +51 -0
  127. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js.map +1 -0
  128. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js +62 -0
  129. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js.map +1 -0
  130. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-type-constituents.js +139 -0
  131. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-type-constituents.js.map +1 -0
  132. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js +95 -0
  133. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js.map +1 -0
  134. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js +132 -0
  135. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js.map +1 -0
  136. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js +94 -0
  137. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map +1 -0
  138. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js +170 -0
  139. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map +1 -0
  140. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js +36 -0
  141. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js.map +1 -0
  142. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js +297 -0
  143. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map +1 -0
  144. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js +43 -0
  145. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js.map +1 -0
  146. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js +112 -0
  147. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map +1 -0
  148. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js +342 -0
  149. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map +1 -0
  150. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js +60 -0
  151. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map +1 -0
  152. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js +160 -0
  153. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js.map +1 -0
  154. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js +56 -0
  155. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js.map +1 -0
  156. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js +185 -0
  157. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map +1 -0
  158. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js +76 -0
  159. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js.map +1 -0
  160. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js +182 -0
  161. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js.map +1 -0
  162. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js +169 -0
  163. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js.map +1 -0
  164. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js +39 -0
  165. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js.map +1 -0
  166. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js +213 -0
  167. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js.map +1 -0
  168. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js +96 -0
  169. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js.map +1 -0
  170. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js +82 -0
  171. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js.map +1 -0
  172. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js +523 -0
  173. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map +1 -0
  174. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-mixed-enums.js +193 -0
  175. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-mixed-enums.js.map +1 -0
  176. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js +63 -0
  177. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map +1 -0
  178. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-nullish-coalescing.js +76 -0
  179. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-nullish-coalescing.js.map +1 -0
  180. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js +66 -0
  181. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map +1 -0
  182. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js +104 -0
  183. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map +1 -0
  184. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js +201 -0
  185. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map +1 -0
  186. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redundant-type-constituents.js +372 -0
  187. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redundant-type-constituents.js.map +1 -0
  188. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js +90 -0
  189. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js.map +1 -0
  190. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js +237 -0
  191. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js.map +1 -0
  192. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js +482 -0
  193. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js.map +1 -0
  194. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js +65 -0
  195. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map +1 -0
  196. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js +96 -0
  197. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js.map +1 -0
  198. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js +260 -0
  199. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map +1 -0
  200. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js +234 -0
  201. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map +1 -0
  202. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js +540 -0
  203. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map +1 -0
  204. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js +149 -0
  205. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js.map +1 -0
  206. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js +150 -0
  207. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js.map +1 -0
  208. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js +252 -0
  209. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map +1 -0
  210. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js +112 -0
  211. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js.map +1 -0
  212. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js +226 -0
  213. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js.map +1 -0
  214. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js +282 -0
  215. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js.map +1 -0
  216. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js +83 -0
  217. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js.map +1 -0
  218. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-declaration-merging.js +56 -0
  219. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-declaration-merging.js.map +1 -0
  220. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-enum-comparison.js +168 -0
  221. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-enum-comparison.js.map +1 -0
  222. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js +123 -0
  223. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js.map +1 -0
  224. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js +161 -0
  225. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js.map +1 -0
  226. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js +68 -0
  227. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js.map +1 -0
  228. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js +58 -0
  229. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map +1 -0
  230. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js +490 -0
  231. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map +1 -0
  232. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js +297 -0
  233. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map +1 -0
  234. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js +59 -0
  235. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map +1 -0
  236. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js +72 -0
  237. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js.map +1 -0
  238. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-template-literals.js +138 -0
  239. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-template-literals.js.map +1 -0
  240. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js +67 -0
  241. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js.map +1 -0
  242. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js +125 -0
  243. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map +1 -0
  244. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js +226 -0
  245. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map +1 -0
  246. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js +634 -0
  247. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js.map +1 -0
  248. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js +171 -0
  249. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js.map +1 -0
  250. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js +73 -0
  251. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map +1 -0
  252. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-destructuring.js +200 -0
  253. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-destructuring.js.map +1 -0
  254. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js +65 -0
  255. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js.map +1 -0
  256. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js +235 -0
  257. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js.map +1 -0
  258. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js +156 -0
  259. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js.map +1 -0
  260. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js +186 -0
  261. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map +1 -0
  262. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js +231 -0
  263. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js.map +1 -0
  264. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js +72 -0
  265. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js.map +1 -0
  266. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js +46 -0
  267. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js.map +1 -0
  268. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js +348 -0
  269. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map +1 -0
  270. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js +3 -0
  271. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js.map +1 -0
  272. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/analyzeChain.js +417 -0
  273. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/analyzeChain.js.map +1 -0
  274. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/compareNodes.js +318 -0
  275. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/compareNodes.js.map +1 -0
  276. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js +279 -0
  277. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js.map +1 -0
  278. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js +175 -0
  279. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map +1 -0
  280. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-promise-reject-errors.js +107 -0
  281. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-promise-reject-errors.js.map +1 -0
  282. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js +82 -0
  283. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js.map +1 -0
  284. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js +315 -0
  285. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js.map +1 -0
  286. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js +74 -0
  287. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js.map +1 -0
  288. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js +159 -0
  289. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map +1 -0
  290. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js +137 -0
  291. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js.map +1 -0
  292. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js +508 -0
  293. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js.map +1 -0
  294. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js +62 -0
  295. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js.map +1 -0
  296. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js +182 -0
  297. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map +1 -0
  298. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js +63 -0
  299. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js.map +1 -0
  300. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js +62 -0
  301. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map +1 -0
  302. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js +212 -0
  303. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map +1 -0
  304. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js +211 -0
  305. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map +1 -0
  306. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js +145 -0
  307. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map +1 -0
  308. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js +268 -0
  309. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map +1 -0
  310. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js +64 -0
  311. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js.map +1 -0
  312. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js +228 -0
  313. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js.map +1 -0
  314. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-blocks.js +80 -0
  315. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-blocks.js.map +1 -0
  316. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js +143 -0
  317. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js.map +1 -0
  318. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-infix-ops.js +133 -0
  319. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-infix-ops.js.map +1 -0
  320. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js +800 -0
  321. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js.map +1 -0
  322. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js +242 -0
  323. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map +1 -0
  324. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js +110 -0
  325. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js.map +1 -0
  326. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js +228 -0
  327. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js.map +1 -0
  328. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js +200 -0
  329. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map +1 -0
  330. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js +245 -0
  331. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map +1 -0
  332. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js +398 -0
  333. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map +1 -0
  334. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js +89 -0
  335. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map +1 -0
  336. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js +562 -0
  337. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js.map +1 -0
  338. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js +6 -0
  339. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js.map +1 -0
  340. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/escapeRegExp.js +16 -0
  341. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/escapeRegExp.js.map +1 -0
  342. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js +241 -0
  343. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js.map +1 -0
  344. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getESLintCoreRule.js +45 -0
  345. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getESLintCoreRule.js.map +1 -0
  346. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFunctionHeadLoc.js +163 -0
  347. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFunctionHeadLoc.js.map +1 -0
  348. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getOperatorPrecedence.js +418 -0
  349. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getOperatorPrecedence.js.map +1 -0
  350. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStaticStringValue.js +46 -0
  351. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStaticStringValue.js.map +1 -0
  352. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStringLength.js +20 -0
  353. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStringLength.js.map +1 -0
  354. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getThisExpression.js +26 -0
  355. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getThisExpression.js.map +1 -0
  356. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappedCode.js +8 -0
  357. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappedCode.js.map +1 -0
  358. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappingFixer.js +155 -0
  359. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappingFixer.js.map +1 -0
  360. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js +42 -0
  361. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map +1 -0
  362. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js +27 -0
  363. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js.map +1 -0
  364. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js +9 -0
  365. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js.map +1 -0
  366. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js +9 -0
  367. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js.map +1 -0
  368. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js +189 -0
  369. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js.map +1 -0
  370. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js +27 -0
  371. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js.map +1 -0
  372. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/README.md +60 -0
  373. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/TEMPLATE.md +30 -0
  374. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/adjacent-overload-signatures.md +99 -0
  375. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/array-type.md +111 -0
  376. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/await-thenable.md +42 -0
  377. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md +151 -0
  378. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md +39 -0
  379. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md +132 -0
  380. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/block-spacing.md +10 -0
  381. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md +10 -0
  382. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md +13 -0
  383. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md +105 -0
  384. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-methods-use-this.md +96 -0
  385. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md +20 -0
  386. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md +10 -0
  387. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-generic-constructors.md +76 -0
  388. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-indexed-object-style.md +80 -0
  389. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md +113 -0
  390. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md +81 -0
  391. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-exports.md +105 -0
  392. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md +108 -0
  393. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md +58 -0
  394. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md +82 -0
  395. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md +320 -0
  396. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md +344 -0
  397. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md +249 -0
  398. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md +10 -0
  399. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md +18 -0
  400. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md +10 -0
  401. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/key-spacing.md +10 -0
  402. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md +10 -0
  403. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-around-comment.md +25 -0
  404. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md +55 -0
  405. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/max-params.md +10 -0
  406. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-delimiter-style.md +164 -0
  407. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md +1438 -0
  408. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md +113 -0
  409. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md +721 -0
  410. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md +29 -0
  411. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-delete.md +40 -0
  412. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md +88 -0
  413. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md +56 -0
  414. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-void-expression.md +116 -0
  415. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md +14 -0
  416. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-enum-values.md +58 -0
  417. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-imports.md +13 -0
  418. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-type-constituents.md +66 -0
  419. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dynamic-delete.md +53 -0
  420. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md +92 -0
  421. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-interface.md +59 -0
  422. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md +168 -0
  423. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-non-null-assertion.md +54 -0
  424. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md +10 -0
  425. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md +12 -0
  426. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md +295 -0
  427. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md +124 -0
  428. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-for-in-array.md +61 -0
  429. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md +102 -0
  430. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-import-type-side-effects.md +74 -0
  431. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-inferrable-types.md +103 -0
  432. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md +14 -0
  433. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md +112 -0
  434. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md +10 -0
  435. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md +10 -0
  436. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md +119 -0
  437. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-meaningless-void-operator.md +53 -0
  438. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-new.md +47 -0
  439. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-promises.md +246 -0
  440. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-mixed-enums.md +88 -0
  441. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md +131 -0
  442. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md +54 -0
  443. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md +40 -0
  444. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md +42 -0
  445. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-parameter-properties.md +12 -0
  446. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md +75 -0
  447. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redundant-type-constituents.md +92 -0
  448. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-require-imports.md +60 -0
  449. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-restricted-imports.md +71 -0
  450. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md +105 -0
  451. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md +108 -0
  452. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md +109 -0
  453. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md +623 -0
  454. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md +133 -0
  455. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md +119 -0
  456. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-qualifier.md +51 -0
  457. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md +79 -0
  458. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md +77 -0
  459. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md +55 -0
  460. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-argument.md +93 -0
  461. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md +96 -0
  462. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md +68 -0
  463. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-declaration-merging.md +59 -0
  464. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-enum-comparison.md +82 -0
  465. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md +74 -0
  466. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md +113 -0
  467. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-unary-minus.md +52 -0
  468. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md +10 -0
  469. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md +27 -0
  470. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md +87 -0
  471. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md +19 -0
  472. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-empty-export.md +47 -0
  473. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-template-literals.md +57 -0
  474. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-var-requires.md +60 -0
  475. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md +41 -0
  476. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md +10 -0
  477. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/padding-line-between-statements.md +33 -0
  478. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/parameter-properties.md +488 -0
  479. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md +47 -0
  480. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-destructuring.md +91 -0
  481. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md +62 -0
  482. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-find.md +39 -0
  483. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-for-of.md +44 -0
  484. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md +92 -0
  485. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-includes.md +75 -0
  486. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md +103 -0
  487. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-namespace-keyword.md +47 -0
  488. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md +187 -0
  489. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md +263 -0
  490. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-promise-reject-errors.md +50 -0
  491. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md +389 -0
  492. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md +102 -0
  493. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md +60 -0
  494. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-regexp-exec.md +46 -0
  495. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-return-this-type.md +87 -0
  496. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md +58 -0
  497. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md +70 -0
  498. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/promise-function-async.md +132 -0
  499. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md +10 -0
  500. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md +78 -0
  501. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md +22 -0
  502. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-plus-operands.md +208 -0
  503. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md +121 -0
  504. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md +216 -0
  505. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md +12 -0
  506. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-constituents.md +163 -0
  507. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-blocks.md +43 -0
  508. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md +10 -0
  509. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-infix-ops.md +16 -0
  510. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md +190 -0
  511. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/switch-exhaustiveness-check.md +225 -0
  512. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/triple-slash-reference.md +110 -0
  513. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md +317 -0
  514. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md +320 -0
  515. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unbound-method.md +105 -0
  516. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unified-signatures.md +77 -0
  517. package/backend/node_modules/@typescript-eslint/eslint-plugin/index.d.ts +9 -0
  518. package/backend/node_modules/@typescript-eslint/eslint-plugin/package.json +106 -0
  519. package/backend/node_modules/@typescript-eslint/eslint-plugin/rules.d.ts +45 -0
  520. package/backend/node_modules/@typescript-eslint/parser/LICENSE +22 -0
  521. package/backend/node_modules/@typescript-eslint/parser/README.md +12 -0
  522. package/backend/node_modules/@typescript-eslint/parser/dist/index.d.ts +8 -0
  523. package/backend/node_modules/@typescript-eslint/parser/dist/index.d.ts.map +1 -0
  524. package/backend/node_modules/@typescript-eslint/parser/dist/index.js +17 -0
  525. package/backend/node_modules/@typescript-eslint/parser/dist/index.js.map +1 -0
  526. package/backend/node_modules/@typescript-eslint/parser/dist/parser.d.ts +20 -0
  527. package/backend/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map +1 -0
  528. package/backend/node_modules/@typescript-eslint/parser/dist/parser.js +130 -0
  529. package/backend/node_modules/@typescript-eslint/parser/dist/parser.js.map +1 -0
  530. package/backend/node_modules/@typescript-eslint/parser/package.json +85 -0
  531. package/backend/node_modules/@typescript-eslint/type-utils/LICENSE +21 -0
  532. package/backend/node_modules/@typescript-eslint/type-utils/README.md +14 -0
  533. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.d.ts +21 -0
  534. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.d.ts.map +1 -0
  535. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.js +188 -0
  536. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.js.map +1 -0
  537. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.d.ts +39 -0
  538. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.d.ts.map +1 -0
  539. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.js +130 -0
  540. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.js.map +1 -0
  541. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.d.ts +10 -0
  542. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.d.ts.map +1 -0
  543. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.js +61 -0
  544. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.js.map +1 -0
  545. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.d.ts +7 -0
  546. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.d.ts.map +1 -0
  547. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.js +15 -0
  548. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.js.map +1 -0
  549. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.d.ts +8 -0
  550. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.d.ts.map +1 -0
  551. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.js +66 -0
  552. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.js.map +1 -0
  553. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.d.ts +7 -0
  554. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.d.ts.map +1 -0
  555. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.js +16 -0
  556. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.js.map +1 -0
  557. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.d.ts +6 -0
  558. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.d.ts.map +1 -0
  559. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.js +38 -0
  560. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.js.map +1 -0
  561. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.d.ts +3 -0
  562. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.d.ts.map +1 -0
  563. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.js +51 -0
  564. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.js.map +1 -0
  565. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.d.ts +6 -0
  566. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.d.ts.map +1 -0
  567. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.js +16 -0
  568. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.js.map +1 -0
  569. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.d.ts +8 -0
  570. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.d.ts.map +1 -0
  571. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.js +74 -0
  572. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.js.map +1 -0
  573. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.d.ts +19 -0
  574. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.d.ts.map +1 -0
  575. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.js +39 -0
  576. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.js.map +1 -0
  577. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.d.ts +3 -0
  578. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.d.ts.map +1 -0
  579. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.js +18 -0
  580. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.js.map +1 -0
  581. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.d.ts +27 -0
  582. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.d.ts.map +1 -0
  583. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.js +226 -0
  584. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.js.map +1 -0
  585. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.d.ts +17 -0
  586. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.d.ts.map +1 -0
  587. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.js +106 -0
  588. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.js.map +1 -0
  589. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.d.ts +58 -0
  590. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.d.ts.map +1 -0
  591. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.js +169 -0
  592. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.js.map +1 -0
  593. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.d.ts +4 -0
  594. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.d.ts.map +1 -0
  595. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.js +37 -0
  596. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.js.map +1 -0
  597. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.d.ts +4 -0
  598. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.d.ts.map +1 -0
  599. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.js +43 -0
  600. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.js.map +1 -0
  601. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.d.ts +16 -0
  602. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.d.ts.map +1 -0
  603. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.js +59 -0
  604. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.js.map +1 -0
  605. package/backend/node_modules/@typescript-eslint/type-utils/package.json +81 -0
  606. package/backend/node_modules/@typescript-eslint/utils/LICENSE +21 -0
  607. package/backend/node_modules/@typescript-eslint/utils/README.md +12 -0
  608. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts +48 -0
  609. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts.map +1 -0
  610. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.js +36 -0
  611. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.js.map +1 -0
  612. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts +76 -0
  613. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts.map +1 -0
  614. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.js +40 -0
  615. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.js.map +1 -0
  616. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.d.ts +76 -0
  617. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.d.ts.map +1 -0
  618. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.js +99 -0
  619. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.js.map +1 -0
  620. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.d.ts +6 -0
  621. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.d.ts.map +1 -0
  622. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.js +22 -0
  623. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.js.map +1 -0
  624. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts +32 -0
  625. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts.map +1 -0
  626. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.js +72 -0
  627. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.js.map +1 -0
  628. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts +18 -0
  629. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts.map +1 -0
  630. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.js +44 -0
  631. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.js.map +1 -0
  632. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.d.ts +1231 -0
  633. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.d.ts.map +1 -0
  634. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.js +22 -0
  635. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.js.map +1 -0
  636. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.d.ts +5 -0
  637. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.d.ts.map +1 -0
  638. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.js +21 -0
  639. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.js.map +1 -0
  640. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.d.ts +8 -0
  641. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.d.ts.map +1 -0
  642. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js +13 -0
  643. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js.map +1 -0
  644. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts +70 -0
  645. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts.map +1 -0
  646. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.js +135 -0
  647. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.js.map +1 -0
  648. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.d.ts +11 -0
  649. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.d.ts.map +1 -0
  650. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js +3 -0
  651. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js.map +1 -0
  652. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts +35 -0
  653. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts.map +1 -0
  654. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js +45 -0
  655. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js.map +1 -0
  656. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.d.ts +10 -0
  657. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.d.ts.map +1 -0
  658. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.js +34 -0
  659. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.js.map +1 -0
  660. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.d.ts +10 -0
  661. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.d.ts.map +1 -0
  662. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.js +32 -0
  663. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.js.map +1 -0
  664. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.d.ts +17 -0
  665. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.d.ts.map +1 -0
  666. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.js +48 -0
  667. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.js.map +1 -0
  668. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts +24 -0
  669. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts.map +1 -0
  670. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js +46 -0
  671. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js.map +1 -0
  672. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.d.ts +8 -0
  673. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.d.ts.map +1 -0
  674. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.js +24 -0
  675. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.js.map +1 -0
  676. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts +14 -0
  677. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts.map +1 -0
  678. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js +28 -0
  679. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js.map +1 -0
  680. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.d.ts +2 -0
  681. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.d.ts.map +1 -0
  682. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.js +8 -0
  683. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.js.map +1 -0
  684. package/backend/node_modules/@typescript-eslint/utils/dist/index.d.ts +8 -0
  685. package/backend/node_modules/@typescript-eslint/utils/dist/index.d.ts.map +1 -0
  686. package/backend/node_modules/@typescript-eslint/utils/dist/index.js +41 -0
  687. package/backend/node_modules/@typescript-eslint/utils/dist/index.js.map +1 -0
  688. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.d.ts +388 -0
  689. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.d.ts.map +1 -0
  690. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.js +9 -0
  691. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.js.map +1 -0
  692. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.d.ts +9 -0
  693. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.d.ts.map +1 -0
  694. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.js +4 -0
  695. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.js.map +1 -0
  696. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.d.ts +131 -0
  697. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.d.ts.map +1 -0
  698. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.js +18 -0
  699. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.js.map +1 -0
  700. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.d.ts +260 -0
  701. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.d.ts.map +1 -0
  702. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.js +4 -0
  703. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.js.map +1 -0
  704. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.d.ts +374 -0
  705. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.d.ts.map +1 -0
  706. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.js +24 -0
  707. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.js.map +1 -0
  708. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.d.ts +247 -0
  709. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.d.ts.map +1 -0
  710. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js +14 -0
  711. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js.map +1 -0
  712. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.d.ts +89 -0
  713. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.d.ts.map +1 -0
  714. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js +4 -0
  715. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js.map +1 -0
  716. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.d.ts +2 -0
  717. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.d.ts.map +1 -0
  718. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.js +3 -0
  719. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.js.map +1 -0
  720. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.d.ts +37 -0
  721. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.d.ts.map +1 -0
  722. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.js +4 -0
  723. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.js.map +1 -0
  724. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +514 -0
  725. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map +1 -0
  726. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.js +3 -0
  727. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.js.map +1 -0
  728. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.d.ts +162 -0
  729. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.d.ts.map +1 -0
  730. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.js +8 -0
  731. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.js.map +1 -0
  732. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.d.ts +44 -0
  733. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.d.ts.map +1 -0
  734. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.js +34 -0
  735. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.js.map +1 -0
  736. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.d.ts +362 -0
  737. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.d.ts.map +1 -0
  738. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.js +9 -0
  739. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.js.map +1 -0
  740. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.d.ts +13 -0
  741. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.d.ts.map +1 -0
  742. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.js +29 -0
  743. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.js.map +1 -0
  744. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.d.ts +3 -0
  745. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.d.ts.map +1 -0
  746. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.js +10 -0
  747. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.js.map +1 -0
  748. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.d.ts +2 -0
  749. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.d.ts.map +1 -0
  750. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.js +18 -0
  751. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.js.map +1 -0
  752. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.d.ts +2 -0
  753. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.d.ts.map +1 -0
  754. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.js +9 -0
  755. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.js.map +1 -0
  756. package/backend/node_modules/@typescript-eslint/utils/package.json +98 -0
  757. package/backend/node_modules/chalk/index.d.ts +415 -0
  758. package/backend/node_modules/chalk/license +9 -0
  759. package/backend/node_modules/chalk/package.json +68 -0
  760. package/backend/node_modules/chalk/readme.md +341 -0
  761. package/backend/node_modules/chalk/source/index.js +229 -0
  762. package/backend/node_modules/chalk/source/templates.js +134 -0
  763. package/backend/node_modules/chalk/source/util.js +39 -0
  764. package/backend/node_modules/debug/LICENSE +20 -0
  765. package/backend/node_modules/debug/README.md +481 -0
  766. package/backend/node_modules/debug/package.json +64 -0
  767. package/backend/node_modules/debug/src/browser.js +272 -0
  768. package/backend/node_modules/debug/src/common.js +292 -0
  769. package/backend/node_modules/debug/src/index.js +10 -0
  770. package/backend/node_modules/debug/src/node.js +263 -0
  771. package/backend/node_modules/eslint/LICENSE +19 -0
  772. package/backend/node_modules/eslint/README.md +304 -0
  773. package/backend/node_modules/eslint/bin/eslint.js +173 -0
  774. package/backend/node_modules/eslint/conf/config-schema.js +93 -0
  775. package/backend/node_modules/eslint/conf/default-cli-options.js +32 -0
  776. package/backend/node_modules/eslint/conf/globals.js +154 -0
  777. package/backend/node_modules/eslint/conf/replacements.json +22 -0
  778. package/backend/node_modules/eslint/conf/rule-type-list.json +28 -0
  779. package/backend/node_modules/eslint/lib/api.js +54 -0
  780. package/backend/node_modules/eslint/lib/cli-engine/cli-engine.js +1078 -0
  781. package/backend/node_modules/eslint/lib/cli-engine/file-enumerator.js +547 -0
  782. package/backend/node_modules/eslint/lib/cli-engine/formatters/checkstyle.js +60 -0
  783. package/backend/node_modules/eslint/lib/cli-engine/formatters/compact.js +60 -0
  784. package/backend/node_modules/eslint/lib/cli-engine/formatters/formatters-meta.json +46 -0
  785. package/backend/node_modules/eslint/lib/cli-engine/formatters/html.js +351 -0
  786. package/backend/node_modules/eslint/lib/cli-engine/formatters/jslint-xml.js +41 -0
  787. package/backend/node_modules/eslint/lib/cli-engine/formatters/json-with-metadata.js +16 -0
  788. package/backend/node_modules/eslint/lib/cli-engine/formatters/json.js +13 -0
  789. package/backend/node_modules/eslint/lib/cli-engine/formatters/junit.js +82 -0
  790. package/backend/node_modules/eslint/lib/cli-engine/formatters/stylish.js +101 -0
  791. package/backend/node_modules/eslint/lib/cli-engine/formatters/tap.js +95 -0
  792. package/backend/node_modules/eslint/lib/cli-engine/formatters/unix.js +58 -0
  793. package/backend/node_modules/eslint/lib/cli-engine/formatters/visualstudio.js +63 -0
  794. package/backend/node_modules/eslint/lib/cli-engine/hash.js +35 -0
  795. package/backend/node_modules/eslint/lib/cli-engine/index.js +7 -0
  796. package/backend/node_modules/eslint/lib/cli-engine/lint-result-cache.js +203 -0
  797. package/backend/node_modules/eslint/lib/cli-engine/load-rules.js +46 -0
  798. package/backend/node_modules/eslint/lib/cli-engine/xml-escape.js +34 -0
  799. package/backend/node_modules/eslint/lib/cli.js +471 -0
  800. package/backend/node_modules/eslint/lib/config/default-config.js +67 -0
  801. package/backend/node_modules/eslint/lib/config/flat-config-array.js +380 -0
  802. package/backend/node_modules/eslint/lib/config/flat-config-helpers.js +111 -0
  803. package/backend/node_modules/eslint/lib/config/flat-config-schema.js +598 -0
  804. package/backend/node_modules/eslint/lib/config/rule-validator.js +158 -0
  805. package/backend/node_modules/eslint/lib/eslint/eslint-helpers.js +932 -0
  806. package/backend/node_modules/eslint/lib/eslint/eslint.js +707 -0
  807. package/backend/node_modules/eslint/lib/eslint/flat-eslint.js +1159 -0
  808. package/backend/node_modules/eslint/lib/eslint/index.js +9 -0
  809. package/backend/node_modules/eslint/lib/linter/apply-disable-directives.js +465 -0
  810. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js +852 -0
  811. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-segment.js +263 -0
  812. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-state.js +2348 -0
  813. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path.js +342 -0
  814. package/backend/node_modules/eslint/lib/linter/code-path-analysis/debug-helpers.js +203 -0
  815. package/backend/node_modules/eslint/lib/linter/code-path-analysis/fork-context.js +349 -0
  816. package/backend/node_modules/eslint/lib/linter/code-path-analysis/id-generator.js +45 -0
  817. package/backend/node_modules/eslint/lib/linter/config-comment-parser.js +185 -0
  818. package/backend/node_modules/eslint/lib/linter/index.js +13 -0
  819. package/backend/node_modules/eslint/lib/linter/interpolate.js +28 -0
  820. package/backend/node_modules/eslint/lib/linter/linter.js +2119 -0
  821. package/backend/node_modules/eslint/lib/linter/node-event-generator.js +354 -0
  822. package/backend/node_modules/eslint/lib/linter/report-translator.js +369 -0
  823. package/backend/node_modules/eslint/lib/linter/rule-fixer.js +140 -0
  824. package/backend/node_modules/eslint/lib/linter/rules.js +80 -0
  825. package/backend/node_modules/eslint/lib/linter/safe-emitter.js +52 -0
  826. package/backend/node_modules/eslint/lib/linter/source-code-fixer.js +152 -0
  827. package/backend/node_modules/eslint/lib/linter/timing.js +161 -0
  828. package/backend/node_modules/eslint/lib/options.js +398 -0
  829. package/backend/node_modules/eslint/lib/rule-tester/flat-rule-tester.js +1131 -0
  830. package/backend/node_modules/eslint/lib/rule-tester/index.js +5 -0
  831. package/backend/node_modules/eslint/lib/rule-tester/rule-tester.js +1206 -0
  832. package/backend/node_modules/eslint/lib/rules/accessor-pairs.js +346 -0
  833. package/backend/node_modules/eslint/lib/rules/array-bracket-newline.js +261 -0
  834. package/backend/node_modules/eslint/lib/rules/array-bracket-spacing.js +244 -0
  835. package/backend/node_modules/eslint/lib/rules/array-callback-return.js +446 -0
  836. package/backend/node_modules/eslint/lib/rules/array-element-newline.js +311 -0
  837. package/backend/node_modules/eslint/lib/rules/arrow-body-style.js +296 -0
  838. package/backend/node_modules/eslint/lib/rules/arrow-parens.js +186 -0
  839. package/backend/node_modules/eslint/lib/rules/arrow-spacing.js +164 -0
  840. package/backend/node_modules/eslint/lib/rules/block-scoped-var.js +135 -0
  841. package/backend/node_modules/eslint/lib/rules/block-spacing.js +174 -0
  842. package/backend/node_modules/eslint/lib/rules/brace-style.js +197 -0
  843. package/backend/node_modules/eslint/lib/rules/callback-return.js +187 -0
  844. package/backend/node_modules/eslint/lib/rules/camelcase.js +399 -0
  845. package/backend/node_modules/eslint/lib/rules/capitalized-comments.js +300 -0
  846. package/backend/node_modules/eslint/lib/rules/class-methods-use-this.js +187 -0
  847. package/backend/node_modules/eslint/lib/rules/comma-dangle.js +373 -0
  848. package/backend/node_modules/eslint/lib/rules/comma-spacing.js +192 -0
  849. package/backend/node_modules/eslint/lib/rules/comma-style.js +314 -0
  850. package/backend/node_modules/eslint/lib/rules/complexity.js +165 -0
  851. package/backend/node_modules/eslint/lib/rules/computed-property-spacing.js +208 -0
  852. package/backend/node_modules/eslint/lib/rules/consistent-return.js +210 -0
  853. package/backend/node_modules/eslint/lib/rules/consistent-this.js +153 -0
  854. package/backend/node_modules/eslint/lib/rules/constructor-super.js +446 -0
  855. package/backend/node_modules/eslint/lib/rules/curly.js +486 -0
  856. package/backend/node_modules/eslint/lib/rules/default-case-last.js +44 -0
  857. package/backend/node_modules/eslint/lib/rules/default-case.js +97 -0
  858. package/backend/node_modules/eslint/lib/rules/default-param-last.js +62 -0
  859. package/backend/node_modules/eslint/lib/rules/dot-location.js +108 -0
  860. package/backend/node_modules/eslint/lib/rules/dot-notation.js +176 -0
  861. package/backend/node_modules/eslint/lib/rules/eol-last.js +115 -0
  862. package/backend/node_modules/eslint/lib/rules/eqeqeq.js +174 -0
  863. package/backend/node_modules/eslint/lib/rules/for-direction.js +140 -0
  864. package/backend/node_modules/eslint/lib/rules/func-call-spacing.js +233 -0
  865. package/backend/node_modules/eslint/lib/rules/func-name-matching.js +253 -0
  866. package/backend/node_modules/eslint/lib/rules/func-names.js +191 -0
  867. package/backend/node_modules/eslint/lib/rules/func-style.js +98 -0
  868. package/backend/node_modules/eslint/lib/rules/function-call-argument-newline.js +125 -0
  869. package/backend/node_modules/eslint/lib/rules/function-paren-newline.js +292 -0
  870. package/backend/node_modules/eslint/lib/rules/generator-star-spacing.js +209 -0
  871. package/backend/node_modules/eslint/lib/rules/getter-return.js +204 -0
  872. package/backend/node_modules/eslint/lib/rules/global-require.js +90 -0
  873. package/backend/node_modules/eslint/lib/rules/grouped-accessor-pairs.js +215 -0
  874. package/backend/node_modules/eslint/lib/rules/guard-for-in.js +76 -0
  875. package/backend/node_modules/eslint/lib/rules/handle-callback-err.js +101 -0
  876. package/backend/node_modules/eslint/lib/rules/id-blacklist.js +246 -0
  877. package/backend/node_modules/eslint/lib/rules/id-denylist.js +228 -0
  878. package/backend/node_modules/eslint/lib/rules/id-length.js +177 -0
  879. package/backend/node_modules/eslint/lib/rules/id-match.js +299 -0
  880. package/backend/node_modules/eslint/lib/rules/implicit-arrow-linebreak.js +84 -0
  881. package/backend/node_modules/eslint/lib/rules/indent-legacy.js +1126 -0
  882. package/backend/node_modules/eslint/lib/rules/indent.js +1803 -0
  883. package/backend/node_modules/eslint/lib/rules/index.js +306 -0
  884. package/backend/node_modules/eslint/lib/rules/init-declarations.js +139 -0
  885. package/backend/node_modules/eslint/lib/rules/jsx-quotes.js +98 -0
  886. package/backend/node_modules/eslint/lib/rules/key-spacing.js +687 -0
  887. package/backend/node_modules/eslint/lib/rules/keyword-spacing.js +640 -0
  888. package/backend/node_modules/eslint/lib/rules/line-comment-position.js +122 -0
  889. package/backend/node_modules/eslint/lib/rules/linebreak-style.js +108 -0
  890. package/backend/node_modules/eslint/lib/rules/lines-around-comment.js +471 -0
  891. package/backend/node_modules/eslint/lib/rules/lines-around-directive.js +201 -0
  892. package/backend/node_modules/eslint/lib/rules/lines-between-class-members.js +269 -0
  893. package/backend/node_modules/eslint/lib/rules/logical-assignment-operators.js +504 -0
  894. package/backend/node_modules/eslint/lib/rules/max-classes-per-file.js +89 -0
  895. package/backend/node_modules/eslint/lib/rules/max-depth.js +156 -0
  896. package/backend/node_modules/eslint/lib/rules/max-len.js +440 -0
  897. package/backend/node_modules/eslint/lib/rules/max-lines-per-function.js +213 -0
  898. package/backend/node_modules/eslint/lib/rules/max-lines.js +193 -0
  899. package/backend/node_modules/eslint/lib/rules/max-nested-callbacks.js +117 -0
  900. package/backend/node_modules/eslint/lib/rules/max-params.js +102 -0
  901. package/backend/node_modules/eslint/lib/rules/max-statements-per-line.js +199 -0
  902. package/backend/node_modules/eslint/lib/rules/max-statements.js +184 -0
  903. package/backend/node_modules/eslint/lib/rules/multiline-comment-style.js +474 -0
  904. package/backend/node_modules/eslint/lib/rules/multiline-ternary.js +174 -0
  905. package/backend/node_modules/eslint/lib/rules/new-cap.js +276 -0
  906. package/backend/node_modules/eslint/lib/rules/new-parens.js +93 -0
  907. package/backend/node_modules/eslint/lib/rules/newline-after-var.js +253 -0
  908. package/backend/node_modules/eslint/lib/rules/newline-before-return.js +217 -0
  909. package/backend/node_modules/eslint/lib/rules/newline-per-chained-call.js +126 -0
  910. package/backend/node_modules/eslint/lib/rules/no-alert.js +138 -0
  911. package/backend/node_modules/eslint/lib/rules/no-array-constructor.js +133 -0
  912. package/backend/node_modules/eslint/lib/rules/no-async-promise-executor.js +39 -0
  913. package/backend/node_modules/eslint/lib/rules/no-await-in-loop.js +106 -0
  914. package/backend/node_modules/eslint/lib/rules/no-bitwise.js +119 -0
  915. package/backend/node_modules/eslint/lib/rules/no-buffer-constructor.js +50 -0
  916. package/backend/node_modules/eslint/lib/rules/no-caller.js +46 -0
  917. package/backend/node_modules/eslint/lib/rules/no-case-declarations.js +64 -0
  918. package/backend/node_modules/eslint/lib/rules/no-catch-shadow.js +82 -0
  919. package/backend/node_modules/eslint/lib/rules/no-class-assign.js +63 -0
  920. package/backend/node_modules/eslint/lib/rules/no-compare-neg-zero.js +60 -0
  921. package/backend/node_modules/eslint/lib/rules/no-cond-assign.js +159 -0
  922. package/backend/node_modules/eslint/lib/rules/no-confusing-arrow.js +92 -0
  923. package/backend/node_modules/eslint/lib/rules/no-console.js +207 -0
  924. package/backend/node_modules/eslint/lib/rules/no-const-assign.js +56 -0
  925. package/backend/node_modules/eslint/lib/rules/no-constant-binary-expression.js +509 -0
  926. package/backend/node_modules/eslint/lib/rules/no-constant-condition.js +150 -0
  927. package/backend/node_modules/eslint/lib/rules/no-constructor-return.js +62 -0
  928. package/backend/node_modules/eslint/lib/rules/no-continue.js +39 -0
  929. package/backend/node_modules/eslint/lib/rules/no-control-regex.js +138 -0
  930. package/backend/node_modules/eslint/lib/rules/no-debugger.js +43 -0
  931. package/backend/node_modules/eslint/lib/rules/no-delete-var.js +42 -0
  932. package/backend/node_modules/eslint/lib/rules/no-div-regex.js +53 -0
  933. package/backend/node_modules/eslint/lib/rules/no-dupe-args.js +82 -0
  934. package/backend/node_modules/eslint/lib/rules/no-dupe-class-members.js +104 -0
  935. package/backend/node_modules/eslint/lib/rules/no-dupe-else-if.js +122 -0
  936. package/backend/node_modules/eslint/lib/rules/no-dupe-keys.js +142 -0
  937. package/backend/node_modules/eslint/lib/rules/no-duplicate-case.js +71 -0
  938. package/backend/node_modules/eslint/lib/rules/no-duplicate-imports.js +290 -0
  939. package/backend/node_modules/eslint/lib/rules/no-else-return.js +405 -0
  940. package/backend/node_modules/eslint/lib/rules/no-empty-character-class.js +76 -0
  941. package/backend/node_modules/eslint/lib/rules/no-empty-function.js +167 -0
  942. package/backend/node_modules/eslint/lib/rules/no-empty-pattern.js +78 -0
  943. package/backend/node_modules/eslint/lib/rules/no-empty-static-block.js +47 -0
  944. package/backend/node_modules/eslint/lib/rules/no-empty.js +103 -0
  945. package/backend/node_modules/eslint/lib/rules/no-eq-null.js +46 -0
  946. package/backend/node_modules/eslint/lib/rules/no-eval.js +286 -0
  947. package/backend/node_modules/eslint/lib/rules/no-ex-assign.js +54 -0
  948. package/backend/node_modules/eslint/lib/rules/no-extend-native.js +179 -0
  949. package/backend/node_modules/eslint/lib/rules/no-extra-bind.js +213 -0
  950. package/backend/node_modules/eslint/lib/rules/no-extra-boolean-cast.js +317 -0
  951. package/backend/node_modules/eslint/lib/rules/no-extra-label.js +149 -0
  952. package/backend/node_modules/eslint/lib/rules/no-extra-parens.js +1322 -0
  953. package/backend/node_modules/eslint/lib/rules/no-extra-semi.js +147 -0
  954. package/backend/node_modules/eslint/lib/rules/no-fallthrough.js +196 -0
  955. package/backend/node_modules/eslint/lib/rules/no-floating-decimal.js +73 -0
  956. package/backend/node_modules/eslint/lib/rules/no-func-assign.js +78 -0
  957. package/backend/node_modules/eslint/lib/rules/no-global-assign.js +95 -0
  958. package/backend/node_modules/eslint/lib/rules/no-implicit-coercion.js +380 -0
  959. package/backend/node_modules/eslint/lib/rules/no-implicit-globals.js +146 -0
  960. package/backend/node_modules/eslint/lib/rules/no-implied-eval.js +132 -0
  961. package/backend/node_modules/eslint/lib/rules/no-import-assign.js +241 -0
  962. package/backend/node_modules/eslint/lib/rules/no-inline-comments.js +110 -0
  963. package/backend/node_modules/eslint/lib/rules/no-inner-declarations.js +110 -0
  964. package/backend/node_modules/eslint/lib/rules/no-invalid-regexp.js +194 -0
  965. package/backend/node_modules/eslint/lib/rules/no-invalid-this.js +150 -0
  966. package/backend/node_modules/eslint/lib/rules/no-irregular-whitespace.js +276 -0
  967. package/backend/node_modules/eslint/lib/rules/no-iterator.js +52 -0
  968. package/backend/node_modules/eslint/lib/rules/no-label-var.js +80 -0
  969. package/backend/node_modules/eslint/lib/rules/no-labels.js +149 -0
  970. package/backend/node_modules/eslint/lib/rules/no-lone-blocks.js +136 -0
  971. package/backend/node_modules/eslint/lib/rules/no-lonely-if.js +88 -0
  972. package/backend/node_modules/eslint/lib/rules/no-loop-func.js +206 -0
  973. package/backend/node_modules/eslint/lib/rules/no-loss-of-precision.js +214 -0
  974. package/backend/node_modules/eslint/lib/rules/no-magic-numbers.js +243 -0
  975. package/backend/node_modules/eslint/lib/rules/no-misleading-character-class.js +300 -0
  976. package/backend/node_modules/eslint/lib/rules/no-mixed-operators.js +229 -0
  977. package/backend/node_modules/eslint/lib/rules/no-mixed-requires.js +238 -0
  978. package/backend/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +116 -0
  979. package/backend/node_modules/eslint/lib/rules/no-multi-assign.js +67 -0
  980. package/backend/node_modules/eslint/lib/rules/no-multi-spaces.js +141 -0
  981. package/backend/node_modules/eslint/lib/rules/no-multi-str.js +65 -0
  982. package/backend/node_modules/eslint/lib/rules/no-multiple-empty-lines.js +154 -0
  983. package/backend/node_modules/eslint/lib/rules/no-native-reassign.js +98 -0
  984. package/backend/node_modules/eslint/lib/rules/no-negated-condition.js +95 -0
  985. package/backend/node_modules/eslint/lib/rules/no-negated-in-lhs.js +46 -0
  986. package/backend/node_modules/eslint/lib/rules/no-nested-ternary.js +44 -0
  987. package/backend/node_modules/eslint/lib/rules/no-new-func.js +87 -0
  988. package/backend/node_modules/eslint/lib/rules/no-new-native-nonconstructor.js +66 -0
  989. package/backend/node_modules/eslint/lib/rules/no-new-object.js +67 -0
  990. package/backend/node_modules/eslint/lib/rules/no-new-require.js +50 -0
  991. package/backend/node_modules/eslint/lib/rules/no-new-symbol.js +56 -0
  992. package/backend/node_modules/eslint/lib/rules/no-new-wrappers.js +60 -0
  993. package/backend/node_modules/eslint/lib/rules/no-new.js +43 -0
  994. package/backend/node_modules/eslint/lib/rules/no-nonoctal-decimal-escape.js +148 -0
  995. package/backend/node_modules/eslint/lib/rules/no-obj-calls.js +86 -0
  996. package/backend/node_modules/eslint/lib/rules/no-object-constructor.js +117 -0
  997. package/backend/node_modules/eslint/lib/rules/no-octal-escape.js +56 -0
  998. package/backend/node_modules/eslint/lib/rules/no-octal.js +45 -0
  999. package/backend/node_modules/eslint/lib/rules/no-param-reassign.js +230 -0
  1000. package/backend/node_modules/eslint/lib/rules/no-path-concat.js +64 -0
  1001. package/backend/node_modules/eslint/lib/rules/no-plusplus.js +105 -0
  1002. package/backend/node_modules/eslint/lib/rules/no-process-env.js +51 -0
  1003. package/backend/node_modules/eslint/lib/rules/no-process-exit.js +47 -0
  1004. package/backend/node_modules/eslint/lib/rules/no-promise-executor-return.js +263 -0
  1005. package/backend/node_modules/eslint/lib/rules/no-proto.js +48 -0
  1006. package/backend/node_modules/eslint/lib/rules/no-prototype-builtins.js +159 -0
  1007. package/backend/node_modules/eslint/lib/rules/no-redeclare.js +174 -0
  1008. package/backend/node_modules/eslint/lib/rules/no-regex-spaces.js +197 -0
  1009. package/backend/node_modules/eslint/lib/rules/no-restricted-exports.js +193 -0
  1010. package/backend/node_modules/eslint/lib/rules/no-restricted-globals.js +124 -0
  1011. package/backend/node_modules/eslint/lib/rules/no-restricted-imports.js +410 -0
  1012. package/backend/node_modules/eslint/lib/rules/no-restricted-modules.js +213 -0
  1013. package/backend/node_modules/eslint/lib/rules/no-restricted-properties.js +168 -0
  1014. package/backend/node_modules/eslint/lib/rules/no-restricted-syntax.js +70 -0
  1015. package/backend/node_modules/eslint/lib/rules/no-return-assign.js +80 -0
  1016. package/backend/node_modules/eslint/lib/rules/no-return-await.js +135 -0
  1017. package/backend/node_modules/eslint/lib/rules/no-script-url.js +61 -0
  1018. package/backend/node_modules/eslint/lib/rules/no-self-assign.js +183 -0
  1019. package/backend/node_modules/eslint/lib/rules/no-self-compare.js +60 -0
  1020. package/backend/node_modules/eslint/lib/rules/no-sequences.js +138 -0
  1021. package/backend/node_modules/eslint/lib/rules/no-setter-return.js +226 -0
  1022. package/backend/node_modules/eslint/lib/rules/no-shadow-restricted-names.js +65 -0
  1023. package/backend/node_modules/eslint/lib/rules/no-shadow.js +336 -0
  1024. package/backend/node_modules/eslint/lib/rules/no-spaced-func.js +83 -0
  1025. package/backend/node_modules/eslint/lib/rules/no-sparse-arrays.js +50 -0
  1026. package/backend/node_modules/eslint/lib/rules/no-sync.js +64 -0
  1027. package/backend/node_modules/eslint/lib/rules/no-tabs.js +81 -0
  1028. package/backend/node_modules/eslint/lib/rules/no-template-curly-in-string.js +44 -0
  1029. package/backend/node_modules/eslint/lib/rules/no-ternary.js +41 -0
  1030. package/backend/node_modules/eslint/lib/rules/no-this-before-super.js +331 -0
  1031. package/backend/node_modules/eslint/lib/rules/no-throw-literal.js +51 -0
  1032. package/backend/node_modules/eslint/lib/rules/no-trailing-spaces.js +193 -0
  1033. package/backend/node_modules/eslint/lib/rules/no-undef-init.js +75 -0
  1034. package/backend/node_modules/eslint/lib/rules/no-undef.js +79 -0
  1035. package/backend/node_modules/eslint/lib/rules/no-undefined.js +86 -0
  1036. package/backend/node_modules/eslint/lib/rules/no-underscore-dangle.js +335 -0
  1037. package/backend/node_modules/eslint/lib/rules/no-unexpected-multiline.js +120 -0
  1038. package/backend/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +360 -0
  1039. package/backend/node_modules/eslint/lib/rules/no-unneeded-ternary.js +166 -0
  1040. package/backend/node_modules/eslint/lib/rules/no-unreachable-loop.js +185 -0
  1041. package/backend/node_modules/eslint/lib/rules/no-unreachable.js +293 -0
  1042. package/backend/node_modules/eslint/lib/rules/no-unsafe-finally.js +111 -0
  1043. package/backend/node_modules/eslint/lib/rules/no-unsafe-negation.js +128 -0
  1044. package/backend/node_modules/eslint/lib/rules/no-unsafe-optional-chaining.js +205 -0
  1045. package/backend/node_modules/eslint/lib/rules/no-unused-expressions.js +186 -0
  1046. package/backend/node_modules/eslint/lib/rules/no-unused-labels.js +143 -0
  1047. package/backend/node_modules/eslint/lib/rules/no-unused-private-class-members.js +195 -0
  1048. package/backend/node_modules/eslint/lib/rules/no-unused-vars.js +718 -0
  1049. package/backend/node_modules/eslint/lib/rules/no-use-before-define.js +348 -0
  1050. package/backend/node_modules/eslint/lib/rules/no-useless-backreference.js +194 -0
  1051. package/backend/node_modules/eslint/lib/rules/no-useless-call.js +90 -0
  1052. package/backend/node_modules/eslint/lib/rules/no-useless-catch.js +57 -0
  1053. package/backend/node_modules/eslint/lib/rules/no-useless-computed-key.js +168 -0
  1054. package/backend/node_modules/eslint/lib/rules/no-useless-concat.js +115 -0
  1055. package/backend/node_modules/eslint/lib/rules/no-useless-constructor.js +189 -0
  1056. package/backend/node_modules/eslint/lib/rules/no-useless-escape.js +333 -0
  1057. package/backend/node_modules/eslint/lib/rules/no-useless-rename.js +172 -0
  1058. package/backend/node_modules/eslint/lib/rules/no-useless-return.js +364 -0
  1059. package/backend/node_modules/eslint/lib/rules/no-var.js +334 -0
  1060. package/backend/node_modules/eslint/lib/rules/no-void.js +64 -0
  1061. package/backend/node_modules/eslint/lib/rules/no-warning-comments.js +201 -0
  1062. package/backend/node_modules/eslint/lib/rules/no-whitespace-before-property.js +116 -0
  1063. package/backend/node_modules/eslint/lib/rules/no-with.js +39 -0
  1064. package/backend/node_modules/eslint/lib/rules/nonblock-statement-body-position.js +127 -0
  1065. package/backend/node_modules/eslint/lib/rules/object-curly-newline.js +324 -0
  1066. package/backend/node_modules/eslint/lib/rules/object-curly-spacing.js +311 -0
  1067. package/backend/node_modules/eslint/lib/rules/object-property-newline.js +102 -0
  1068. package/backend/node_modules/eslint/lib/rules/object-shorthand.js +520 -0
  1069. package/backend/node_modules/eslint/lib/rules/one-var-declaration-per-line.js +95 -0
  1070. package/backend/node_modules/eslint/lib/rules/one-var.js +567 -0
  1071. package/backend/node_modules/eslint/lib/rules/operator-assignment.js +209 -0
  1072. package/backend/node_modules/eslint/lib/rules/operator-linebreak.js +253 -0
  1073. package/backend/node_modules/eslint/lib/rules/padded-blocks.js +310 -0
  1074. package/backend/node_modules/eslint/lib/rules/padding-line-between-statements.js +590 -0
  1075. package/backend/node_modules/eslint/lib/rules/prefer-arrow-callback.js +381 -0
  1076. package/backend/node_modules/eslint/lib/rules/prefer-const.js +501 -0
  1077. package/backend/node_modules/eslint/lib/rules/prefer-destructuring.js +301 -0
  1078. package/backend/node_modules/eslint/lib/rules/prefer-exponentiation-operator.js +191 -0
  1079. package/backend/node_modules/eslint/lib/rules/prefer-named-capture-group.js +178 -0
  1080. package/backend/node_modules/eslint/lib/rules/prefer-numeric-literals.js +148 -0
  1081. package/backend/node_modules/eslint/lib/rules/prefer-object-has-own.js +114 -0
  1082. package/backend/node_modules/eslint/lib/rules/prefer-object-spread.js +298 -0
  1083. package/backend/node_modules/eslint/lib/rules/prefer-promise-reject-errors.js +132 -0
  1084. package/backend/node_modules/eslint/lib/rules/prefer-reflect.js +127 -0
  1085. package/backend/node_modules/eslint/lib/rules/prefer-regex-literals.js +507 -0
  1086. package/backend/node_modules/eslint/lib/rules/prefer-rest-params.js +118 -0
  1087. package/backend/node_modules/eslint/lib/rules/prefer-spread.js +87 -0
  1088. package/backend/node_modules/eslint/lib/rules/prefer-template.js +275 -0
  1089. package/backend/node_modules/eslint/lib/rules/quote-props.js +310 -0
  1090. package/backend/node_modules/eslint/lib/rules/quotes.js +350 -0
  1091. package/backend/node_modules/eslint/lib/rules/radix.js +198 -0
  1092. package/backend/node_modules/eslint/lib/rules/require-atomic-updates.js +331 -0
  1093. package/backend/node_modules/eslint/lib/rules/require-await.js +113 -0
  1094. package/backend/node_modules/eslint/lib/rules/require-jsdoc.js +122 -0
  1095. package/backend/node_modules/eslint/lib/rules/require-unicode-regexp.js +129 -0
  1096. package/backend/node_modules/eslint/lib/rules/require-yield.js +77 -0
  1097. package/backend/node_modules/eslint/lib/rules/rest-spread-spacing.js +123 -0
  1098. package/backend/node_modules/eslint/lib/rules/semi-spacing.js +248 -0
  1099. package/backend/node_modules/eslint/lib/rules/semi-style.js +158 -0
  1100. package/backend/node_modules/eslint/lib/rules/semi.js +438 -0
  1101. package/backend/node_modules/eslint/lib/rules/sort-imports.js +241 -0
  1102. package/backend/node_modules/eslint/lib/rules/sort-keys.js +230 -0
  1103. package/backend/node_modules/eslint/lib/rules/sort-vars.js +104 -0
  1104. package/backend/node_modules/eslint/lib/rules/space-before-blocks.js +204 -0
  1105. package/backend/node_modules/eslint/lib/rules/space-before-function-paren.js +167 -0
  1106. package/backend/node_modules/eslint/lib/rules/space-in-parens.js +285 -0
  1107. package/backend/node_modules/eslint/lib/rules/space-infix-ops.js +198 -0
  1108. package/backend/node_modules/eslint/lib/rules/space-unary-ops.js +324 -0
  1109. package/backend/node_modules/eslint/lib/rules/spaced-comment.js +385 -0
  1110. package/backend/node_modules/eslint/lib/rules/strict.js +277 -0
  1111. package/backend/node_modules/eslint/lib/rules/switch-colon-spacing.js +132 -0
  1112. package/backend/node_modules/eslint/lib/rules/symbol-description.js +73 -0
  1113. package/backend/node_modules/eslint/lib/rules/template-curly-spacing.js +144 -0
  1114. package/backend/node_modules/eslint/lib/rules/template-tag-spacing.js +93 -0
  1115. package/backend/node_modules/eslint/lib/rules/unicode-bom.js +73 -0
  1116. package/backend/node_modules/eslint/lib/rules/use-isnan.js +141 -0
  1117. package/backend/node_modules/eslint/lib/rules/utils/ast-utils.js +2282 -0
  1118. package/backend/node_modules/eslint/lib/rules/utils/fix-tracker.js +114 -0
  1119. package/backend/node_modules/eslint/lib/rules/utils/keywords.js +67 -0
  1120. package/backend/node_modules/eslint/lib/rules/utils/lazy-loading-rule-map.js +115 -0
  1121. package/backend/node_modules/eslint/lib/rules/utils/patterns/letters.js +36 -0
  1122. package/backend/node_modules/eslint/lib/rules/utils/regular-expressions.js +42 -0
  1123. package/backend/node_modules/eslint/lib/rules/utils/unicode/index.js +11 -0
  1124. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-combining-character.js +13 -0
  1125. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-emoji-modifier.js +13 -0
  1126. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-regional-indicator-symbol.js +13 -0
  1127. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-surrogate-pair.js +14 -0
  1128. package/backend/node_modules/eslint/lib/rules/valid-jsdoc.js +516 -0
  1129. package/backend/node_modules/eslint/lib/rules/valid-typeof.js +127 -0
  1130. package/backend/node_modules/eslint/lib/rules/vars-on-top.js +157 -0
  1131. package/backend/node_modules/eslint/lib/rules/wrap-iife.js +207 -0
  1132. package/backend/node_modules/eslint/lib/rules/wrap-regex.js +61 -0
  1133. package/backend/node_modules/eslint/lib/rules/yield-star-spacing.js +130 -0
  1134. package/backend/node_modules/eslint/lib/rules/yoda.js +353 -0
  1135. package/backend/node_modules/eslint/lib/shared/ajv.js +34 -0
  1136. package/backend/node_modules/eslint/lib/shared/ast-utils.js +29 -0
  1137. package/backend/node_modules/eslint/lib/shared/config-validator.js +347 -0
  1138. package/backend/node_modules/eslint/lib/shared/deprecation-warnings.js +58 -0
  1139. package/backend/node_modules/eslint/lib/shared/directives.js +15 -0
  1140. package/backend/node_modules/eslint/lib/shared/logging.js +30 -0
  1141. package/backend/node_modules/eslint/lib/shared/relative-module-resolver.js +50 -0
  1142. package/backend/node_modules/eslint/lib/shared/runtime-info.js +167 -0
  1143. package/backend/node_modules/eslint/lib/shared/severity.js +49 -0
  1144. package/backend/node_modules/eslint/lib/shared/string-utils.js +60 -0
  1145. package/backend/node_modules/eslint/lib/shared/traverser.js +195 -0
  1146. package/backend/node_modules/eslint/lib/shared/types.js +216 -0
  1147. package/backend/node_modules/eslint/lib/source-code/index.js +5 -0
  1148. package/backend/node_modules/eslint/lib/source-code/source-code.js +1055 -0
  1149. package/backend/node_modules/eslint/lib/source-code/token-store/backward-token-comment-cursor.js +57 -0
  1150. package/backend/node_modules/eslint/lib/source-code/token-store/backward-token-cursor.js +58 -0
  1151. package/backend/node_modules/eslint/lib/source-code/token-store/cursor.js +76 -0
  1152. package/backend/node_modules/eslint/lib/source-code/token-store/cursors.js +90 -0
  1153. package/backend/node_modules/eslint/lib/source-code/token-store/decorative-cursor.js +39 -0
  1154. package/backend/node_modules/eslint/lib/source-code/token-store/filter-cursor.js +43 -0
  1155. package/backend/node_modules/eslint/lib/source-code/token-store/forward-token-comment-cursor.js +57 -0
  1156. package/backend/node_modules/eslint/lib/source-code/token-store/forward-token-cursor.js +63 -0
  1157. package/backend/node_modules/eslint/lib/source-code/token-store/index.js +627 -0
  1158. package/backend/node_modules/eslint/lib/source-code/token-store/limit-cursor.js +40 -0
  1159. package/backend/node_modules/eslint/lib/source-code/token-store/padded-token-cursor.js +38 -0
  1160. package/backend/node_modules/eslint/lib/source-code/token-store/skip-cursor.js +42 -0
  1161. package/backend/node_modules/eslint/lib/source-code/token-store/utils.js +107 -0
  1162. package/backend/node_modules/eslint/lib/unsupported-api.js +30 -0
  1163. package/backend/node_modules/eslint/messages/all-files-ignored.js +16 -0
  1164. package/backend/node_modules/eslint/messages/eslintrc-incompat.js +98 -0
  1165. package/backend/node_modules/eslint/messages/eslintrc-plugins.js +24 -0
  1166. package/backend/node_modules/eslint/messages/extend-config-missing.js +13 -0
  1167. package/backend/node_modules/eslint/messages/failed-to-read-json.js +11 -0
  1168. package/backend/node_modules/eslint/messages/file-not-found.js +10 -0
  1169. package/backend/node_modules/eslint/messages/invalid-rule-options.js +17 -0
  1170. package/backend/node_modules/eslint/messages/invalid-rule-severity.js +13 -0
  1171. package/backend/node_modules/eslint/messages/no-config-found.js +15 -0
  1172. package/backend/node_modules/eslint/messages/plugin-conflict.js +22 -0
  1173. package/backend/node_modules/eslint/messages/plugin-invalid.js +16 -0
  1174. package/backend/node_modules/eslint/messages/plugin-missing.js +19 -0
  1175. package/backend/node_modules/eslint/messages/print-config-with-directory-path.js +8 -0
  1176. package/backend/node_modules/eslint/messages/shared.js +18 -0
  1177. package/backend/node_modules/eslint/messages/whitespace-found.js +11 -0
  1178. package/backend/node_modules/eslint/package.json +181 -0
  1179. package/backend/node_modules/undici-types/LICENSE +21 -0
  1180. package/backend/node_modules/undici-types/README.md +6 -0
  1181. package/backend/node_modules/undici-types/agent.d.ts +31 -0
  1182. package/backend/node_modules/undici-types/api.d.ts +43 -0
  1183. package/backend/node_modules/undici-types/balanced-pool.d.ts +29 -0
  1184. package/backend/node_modules/undici-types/cache.d.ts +36 -0
  1185. package/backend/node_modules/undici-types/client.d.ts +108 -0
  1186. package/backend/node_modules/undici-types/connector.d.ts +34 -0
  1187. package/backend/node_modules/undici-types/content-type.d.ts +21 -0
  1188. package/backend/node_modules/undici-types/cookies.d.ts +28 -0
  1189. package/backend/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
  1190. package/backend/node_modules/undici-types/dispatcher.d.ts +256 -0
  1191. package/backend/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
  1192. package/backend/node_modules/undici-types/errors.d.ts +149 -0
  1193. package/backend/node_modules/undici-types/eventsource.d.ts +61 -0
  1194. package/backend/node_modules/undici-types/fetch.d.ts +209 -0
  1195. package/backend/node_modules/undici-types/file.d.ts +39 -0
  1196. package/backend/node_modules/undici-types/filereader.d.ts +54 -0
  1197. package/backend/node_modules/undici-types/formdata.d.ts +108 -0
  1198. package/backend/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  1199. package/backend/node_modules/undici-types/global-origin.d.ts +7 -0
  1200. package/backend/node_modules/undici-types/handlers.d.ts +15 -0
  1201. package/backend/node_modules/undici-types/header.d.ts +4 -0
  1202. package/backend/node_modules/undici-types/index.d.ts +71 -0
  1203. package/backend/node_modules/undici-types/interceptors.d.ts +17 -0
  1204. package/backend/node_modules/undici-types/mock-agent.d.ts +50 -0
  1205. package/backend/node_modules/undici-types/mock-client.d.ts +25 -0
  1206. package/backend/node_modules/undici-types/mock-errors.d.ts +12 -0
  1207. package/backend/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  1208. package/backend/node_modules/undici-types/mock-pool.d.ts +25 -0
  1209. package/backend/node_modules/undici-types/package.json +55 -0
  1210. package/backend/node_modules/undici-types/patch.d.ts +33 -0
  1211. package/backend/node_modules/undici-types/pool-stats.d.ts +19 -0
  1212. package/backend/node_modules/undici-types/pool.d.ts +39 -0
  1213. package/backend/node_modules/undici-types/proxy-agent.d.ts +28 -0
  1214. package/backend/node_modules/undici-types/readable.d.ts +65 -0
  1215. package/backend/node_modules/undici-types/retry-agent.d.ts +8 -0
  1216. package/backend/node_modules/undici-types/retry-handler.d.ts +116 -0
  1217. package/backend/node_modules/undici-types/util.d.ts +18 -0
  1218. package/backend/node_modules/undici-types/webidl.d.ts +228 -0
  1219. package/backend/node_modules/undici-types/websocket.d.ts +150 -0
  1220. package/daemon/node_modules/undici-types/LICENSE +21 -0
  1221. package/daemon/node_modules/undici-types/README.md +6 -0
  1222. package/daemon/node_modules/undici-types/agent.d.ts +31 -0
  1223. package/daemon/node_modules/undici-types/api.d.ts +43 -0
  1224. package/daemon/node_modules/undici-types/balanced-pool.d.ts +29 -0
  1225. package/daemon/node_modules/undici-types/cache.d.ts +36 -0
  1226. package/daemon/node_modules/undici-types/client.d.ts +108 -0
  1227. package/daemon/node_modules/undici-types/connector.d.ts +34 -0
  1228. package/daemon/node_modules/undici-types/content-type.d.ts +21 -0
  1229. package/daemon/node_modules/undici-types/cookies.d.ts +28 -0
  1230. package/daemon/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
  1231. package/daemon/node_modules/undici-types/dispatcher.d.ts +256 -0
  1232. package/daemon/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
  1233. package/daemon/node_modules/undici-types/errors.d.ts +149 -0
  1234. package/daemon/node_modules/undici-types/eventsource.d.ts +61 -0
  1235. package/daemon/node_modules/undici-types/fetch.d.ts +209 -0
  1236. package/daemon/node_modules/undici-types/file.d.ts +39 -0
  1237. package/daemon/node_modules/undici-types/filereader.d.ts +54 -0
  1238. package/daemon/node_modules/undici-types/formdata.d.ts +108 -0
  1239. package/daemon/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  1240. package/daemon/node_modules/undici-types/global-origin.d.ts +7 -0
  1241. package/daemon/node_modules/undici-types/handlers.d.ts +15 -0
  1242. package/daemon/node_modules/undici-types/header.d.ts +4 -0
  1243. package/daemon/node_modules/undici-types/index.d.ts +71 -0
  1244. package/daemon/node_modules/undici-types/interceptors.d.ts +17 -0
  1245. package/daemon/node_modules/undici-types/mock-agent.d.ts +50 -0
  1246. package/daemon/node_modules/undici-types/mock-client.d.ts +25 -0
  1247. package/daemon/node_modules/undici-types/mock-errors.d.ts +12 -0
  1248. package/daemon/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  1249. package/daemon/node_modules/undici-types/mock-pool.d.ts +25 -0
  1250. package/daemon/node_modules/undici-types/package.json +55 -0
  1251. package/daemon/node_modules/undici-types/patch.d.ts +33 -0
  1252. package/daemon/node_modules/undici-types/pool-stats.d.ts +19 -0
  1253. package/daemon/node_modules/undici-types/pool.d.ts +39 -0
  1254. package/daemon/node_modules/undici-types/proxy-agent.d.ts +28 -0
  1255. package/daemon/node_modules/undici-types/readable.d.ts +65 -0
  1256. package/daemon/node_modules/undici-types/retry-agent.d.ts +8 -0
  1257. package/daemon/node_modules/undici-types/retry-handler.d.ts +116 -0
  1258. package/daemon/node_modules/undici-types/util.d.ts +18 -0
  1259. package/daemon/node_modules/undici-types/webidl.d.ts +228 -0
  1260. package/daemon/node_modules/undici-types/websocket.d.ts +150 -0
  1261. package/package.json +1 -1
@@ -0,0 +1,1131 @@
1
+ /**
2
+ * @fileoverview Mocha/Jest test wrapper
3
+ * @author Ilya Volodin
4
+ */
5
+ "use strict";
6
+
7
+ /* globals describe, it -- Mocha globals */
8
+
9
+ //------------------------------------------------------------------------------
10
+ // Requirements
11
+ //------------------------------------------------------------------------------
12
+
13
+ const
14
+ assert = require("assert"),
15
+ util = require("util"),
16
+ path = require("path"),
17
+ equal = require("fast-deep-equal"),
18
+ Traverser = require("../shared/traverser"),
19
+ { getRuleOptionsSchema } = require("../config/flat-config-helpers"),
20
+ { Linter, SourceCodeFixer, interpolate } = require("../linter"),
21
+ CodePath = require("../linter/code-path-analysis/code-path");
22
+
23
+ const { FlatConfigArray } = require("../config/flat-config-array");
24
+ const { defaultConfig } = require("../config/default-config");
25
+
26
+ const ajv = require("../shared/ajv")({ strictDefaults: true });
27
+
28
+ const parserSymbol = Symbol.for("eslint.RuleTester.parser");
29
+ const { SourceCode } = require("../source-code");
30
+ const { ConfigArraySymbol } = require("@humanwhocodes/config-array");
31
+
32
+ //------------------------------------------------------------------------------
33
+ // Typedefs
34
+ //------------------------------------------------------------------------------
35
+
36
+ /** @typedef {import("../shared/types").Parser} Parser */
37
+ /** @typedef {import("../shared/types").LanguageOptions} LanguageOptions */
38
+ /** @typedef {import("../shared/types").Rule} Rule */
39
+
40
+
41
+ /**
42
+ * A test case that is expected to pass lint.
43
+ * @typedef {Object} ValidTestCase
44
+ * @property {string} [name] Name for the test case.
45
+ * @property {string} code Code for the test case.
46
+ * @property {any[]} [options] Options for the test case.
47
+ * @property {LanguageOptions} [languageOptions] The language options to use in the test case.
48
+ * @property {{ [name: string]: any }} [settings] Settings for the test case.
49
+ * @property {string} [filename] The fake filename for the test case. Useful for rules that make assertion about filenames.
50
+ * @property {boolean} [only] Run only this test case or the subset of test cases with this property.
51
+ */
52
+
53
+ /**
54
+ * A test case that is expected to fail lint.
55
+ * @typedef {Object} InvalidTestCase
56
+ * @property {string} [name] Name for the test case.
57
+ * @property {string} code Code for the test case.
58
+ * @property {number | Array<TestCaseError | string | RegExp>} errors Expected errors.
59
+ * @property {string | null} [output] The expected code after autofixes are applied. If set to `null`, the test runner will assert that no autofix is suggested.
60
+ * @property {any[]} [options] Options for the test case.
61
+ * @property {{ [name: string]: any }} [settings] Settings for the test case.
62
+ * @property {string} [filename] The fake filename for the test case. Useful for rules that make assertion about filenames.
63
+ * @property {LanguageOptions} [languageOptions] The language options to use in the test case.
64
+ * @property {boolean} [only] Run only this test case or the subset of test cases with this property.
65
+ */
66
+
67
+ /**
68
+ * A description of a reported error used in a rule tester test.
69
+ * @typedef {Object} TestCaseError
70
+ * @property {string | RegExp} [message] Message.
71
+ * @property {string} [messageId] Message ID.
72
+ * @property {string} [type] The type of the reported AST node.
73
+ * @property {{ [name: string]: string }} [data] The data used to fill the message template.
74
+ * @property {number} [line] The 1-based line number of the reported start location.
75
+ * @property {number} [column] The 1-based column number of the reported start location.
76
+ * @property {number} [endLine] The 1-based line number of the reported end location.
77
+ * @property {number} [endColumn] The 1-based column number of the reported end location.
78
+ */
79
+
80
+ //------------------------------------------------------------------------------
81
+ // Private Members
82
+ //------------------------------------------------------------------------------
83
+
84
+ /*
85
+ * testerDefaultConfig must not be modified as it allows to reset the tester to
86
+ * the initial default configuration
87
+ */
88
+ const testerDefaultConfig = { rules: {} };
89
+
90
+ /*
91
+ * RuleTester uses this config as its default. This can be overwritten via
92
+ * setDefaultConfig().
93
+ */
94
+ let sharedDefaultConfig = { rules: {} };
95
+
96
+ /*
97
+ * List every parameters possible on a test case that are not related to eslint
98
+ * configuration
99
+ */
100
+ const RuleTesterParameters = [
101
+ "name",
102
+ "code",
103
+ "filename",
104
+ "options",
105
+ "errors",
106
+ "output",
107
+ "only"
108
+ ];
109
+
110
+ /*
111
+ * All allowed property names in error objects.
112
+ */
113
+ const errorObjectParameters = new Set([
114
+ "message",
115
+ "messageId",
116
+ "data",
117
+ "type",
118
+ "line",
119
+ "column",
120
+ "endLine",
121
+ "endColumn",
122
+ "suggestions"
123
+ ]);
124
+ const friendlyErrorObjectParameterList = `[${[...errorObjectParameters].map(key => `'${key}'`).join(", ")}]`;
125
+
126
+ /*
127
+ * All allowed property names in suggestion objects.
128
+ */
129
+ const suggestionObjectParameters = new Set([
130
+ "desc",
131
+ "messageId",
132
+ "data",
133
+ "output"
134
+ ]);
135
+ const friendlySuggestionObjectParameterList = `[${[...suggestionObjectParameters].map(key => `'${key}'`).join(", ")}]`;
136
+
137
+ const forbiddenMethods = [
138
+ "applyInlineConfig",
139
+ "applyLanguageOptions",
140
+ "finalize"
141
+ ];
142
+
143
+ /** @type {Map<string,WeakSet>} */
144
+ const forbiddenMethodCalls = new Map(forbiddenMethods.map(methodName => ([methodName, new WeakSet()])));
145
+
146
+ const hasOwnProperty = Function.call.bind(Object.hasOwnProperty);
147
+
148
+ /**
149
+ * Clones a given value deeply.
150
+ * Note: This ignores `parent` property.
151
+ * @param {any} x A value to clone.
152
+ * @returns {any} A cloned value.
153
+ */
154
+ function cloneDeeplyExcludesParent(x) {
155
+ if (typeof x === "object" && x !== null) {
156
+ if (Array.isArray(x)) {
157
+ return x.map(cloneDeeplyExcludesParent);
158
+ }
159
+
160
+ const retv = {};
161
+
162
+ for (const key in x) {
163
+ if (key !== "parent" && hasOwnProperty(x, key)) {
164
+ retv[key] = cloneDeeplyExcludesParent(x[key]);
165
+ }
166
+ }
167
+
168
+ return retv;
169
+ }
170
+
171
+ return x;
172
+ }
173
+
174
+ /**
175
+ * Freezes a given value deeply.
176
+ * @param {any} x A value to freeze.
177
+ * @returns {void}
178
+ */
179
+ function freezeDeeply(x) {
180
+ if (typeof x === "object" && x !== null) {
181
+ if (Array.isArray(x)) {
182
+ x.forEach(freezeDeeply);
183
+ } else {
184
+ for (const key in x) {
185
+ if (key !== "parent" && hasOwnProperty(x, key)) {
186
+ freezeDeeply(x[key]);
187
+ }
188
+ }
189
+ }
190
+ Object.freeze(x);
191
+ }
192
+ }
193
+
194
+ /**
195
+ * Replace control characters by `\u00xx` form.
196
+ * @param {string} text The text to sanitize.
197
+ * @returns {string} The sanitized text.
198
+ */
199
+ function sanitize(text) {
200
+ if (typeof text !== "string") {
201
+ return "";
202
+ }
203
+ return text.replace(
204
+ /[\u0000-\u0009\u000b-\u001a]/gu, // eslint-disable-line no-control-regex -- Escaping controls
205
+ c => `\\u${c.codePointAt(0).toString(16).padStart(4, "0")}`
206
+ );
207
+ }
208
+
209
+ /**
210
+ * Define `start`/`end` properties as throwing error.
211
+ * @param {string} objName Object name used for error messages.
212
+ * @param {ASTNode} node The node to define.
213
+ * @returns {void}
214
+ */
215
+ function defineStartEndAsError(objName, node) {
216
+ Object.defineProperties(node, {
217
+ start: {
218
+ get() {
219
+ throw new Error(`Use ${objName}.range[0] instead of ${objName}.start`);
220
+ },
221
+ configurable: true,
222
+ enumerable: false
223
+ },
224
+ end: {
225
+ get() {
226
+ throw new Error(`Use ${objName}.range[1] instead of ${objName}.end`);
227
+ },
228
+ configurable: true,
229
+ enumerable: false
230
+ }
231
+ });
232
+ }
233
+
234
+
235
+ /**
236
+ * Define `start`/`end` properties of all nodes of the given AST as throwing error.
237
+ * @param {ASTNode} ast The root node to errorize `start`/`end` properties.
238
+ * @param {Object} [visitorKeys] Visitor keys to be used for traversing the given ast.
239
+ * @returns {void}
240
+ */
241
+ function defineStartEndAsErrorInTree(ast, visitorKeys) {
242
+ Traverser.traverse(ast, { visitorKeys, enter: defineStartEndAsError.bind(null, "node") });
243
+ ast.tokens.forEach(defineStartEndAsError.bind(null, "token"));
244
+ ast.comments.forEach(defineStartEndAsError.bind(null, "token"));
245
+ }
246
+
247
+ /**
248
+ * Wraps the given parser in order to intercept and modify return values from the `parse` and `parseForESLint` methods, for test purposes.
249
+ * In particular, to modify ast nodes, tokens and comments to throw on access to their `start` and `end` properties.
250
+ * @param {Parser} parser Parser object.
251
+ * @returns {Parser} Wrapped parser object.
252
+ */
253
+ function wrapParser(parser) {
254
+
255
+ if (typeof parser.parseForESLint === "function") {
256
+ return {
257
+ [parserSymbol]: parser,
258
+ parseForESLint(...args) {
259
+ const ret = parser.parseForESLint(...args);
260
+
261
+ defineStartEndAsErrorInTree(ret.ast, ret.visitorKeys);
262
+ return ret;
263
+ }
264
+ };
265
+ }
266
+
267
+ return {
268
+ [parserSymbol]: parser,
269
+ parse(...args) {
270
+ const ast = parser.parse(...args);
271
+
272
+ defineStartEndAsErrorInTree(ast);
273
+ return ast;
274
+ }
275
+ };
276
+ }
277
+
278
+ /**
279
+ * Function to replace `SourceCode.prototype.getComments`.
280
+ * @returns {void}
281
+ * @throws {Error} Deprecation message.
282
+ */
283
+ function getCommentsDeprecation() {
284
+ throw new Error(
285
+ "`SourceCode#getComments()` is deprecated and will be removed in a future major version. Use `getCommentsBefore()`, `getCommentsAfter()`, and `getCommentsInside()` instead."
286
+ );
287
+ }
288
+
289
+ /**
290
+ * Emit a deprecation warning if rule uses CodePath#currentSegments.
291
+ * @param {string} ruleName Name of the rule.
292
+ * @returns {void}
293
+ */
294
+ function emitCodePathCurrentSegmentsWarning(ruleName) {
295
+ if (!emitCodePathCurrentSegmentsWarning[`warned-${ruleName}`]) {
296
+ emitCodePathCurrentSegmentsWarning[`warned-${ruleName}`] = true;
297
+ process.emitWarning(
298
+ `"${ruleName}" rule uses CodePath#currentSegments and will stop working in ESLint v9. Please read the documentation for how to update your code: https://eslint.org/docs/latest/extend/code-path-analysis#usage-examples`,
299
+ "DeprecationWarning"
300
+ );
301
+ }
302
+ }
303
+
304
+ /**
305
+ * Function to replace forbidden `SourceCode` methods. Allows just one call per method.
306
+ * @param {string} methodName The name of the method to forbid.
307
+ * @param {Function} prototype The prototype with the original method to call.
308
+ * @returns {Function} The function that throws the error.
309
+ */
310
+ function throwForbiddenMethodError(methodName, prototype) {
311
+
312
+ const original = prototype[methodName];
313
+
314
+ return function(...args) {
315
+
316
+ const called = forbiddenMethodCalls.get(methodName);
317
+
318
+ /* eslint-disable no-invalid-this -- needed to operate as a method. */
319
+ if (!called.has(this)) {
320
+ called.add(this);
321
+
322
+ return original.apply(this, args);
323
+ }
324
+ /* eslint-enable no-invalid-this -- not needed past this point */
325
+
326
+ throw new Error(
327
+ `\`SourceCode#${methodName}()\` cannot be called inside a rule.`
328
+ );
329
+ };
330
+ }
331
+
332
+ //------------------------------------------------------------------------------
333
+ // Public Interface
334
+ //------------------------------------------------------------------------------
335
+
336
+ // default separators for testing
337
+ const DESCRIBE = Symbol("describe");
338
+ const IT = Symbol("it");
339
+ const IT_ONLY = Symbol("itOnly");
340
+
341
+ /**
342
+ * This is `it` default handler if `it` don't exist.
343
+ * @this {Mocha}
344
+ * @param {string} text The description of the test case.
345
+ * @param {Function} method The logic of the test case.
346
+ * @throws {Error} Any error upon execution of `method`.
347
+ * @returns {any} Returned value of `method`.
348
+ */
349
+ function itDefaultHandler(text, method) {
350
+ try {
351
+ return method.call(this);
352
+ } catch (err) {
353
+ if (err instanceof assert.AssertionError) {
354
+ err.message += ` (${util.inspect(err.actual)} ${err.operator} ${util.inspect(err.expected)})`;
355
+ }
356
+ throw err;
357
+ }
358
+ }
359
+
360
+ /**
361
+ * This is `describe` default handler if `describe` don't exist.
362
+ * @this {Mocha}
363
+ * @param {string} text The description of the test case.
364
+ * @param {Function} method The logic of the test case.
365
+ * @returns {any} Returned value of `method`.
366
+ */
367
+ function describeDefaultHandler(text, method) {
368
+ return method.call(this);
369
+ }
370
+
371
+ /**
372
+ * Mocha test wrapper.
373
+ */
374
+ class FlatRuleTester {
375
+
376
+ /**
377
+ * Creates a new instance of RuleTester.
378
+ * @param {Object} [testerConfig] Optional, extra configuration for the tester
379
+ */
380
+ constructor(testerConfig = {}) {
381
+
382
+ /**
383
+ * The configuration to use for this tester. Combination of the tester
384
+ * configuration and the default configuration.
385
+ * @type {Object}
386
+ */
387
+ this.testerConfig = [
388
+ sharedDefaultConfig,
389
+ testerConfig,
390
+ { rules: { "rule-tester/validate-ast": "error" } }
391
+ ];
392
+
393
+ this.linter = new Linter({ configType: "flat" });
394
+ }
395
+
396
+ /**
397
+ * Set the configuration to use for all future tests
398
+ * @param {Object} config the configuration to use.
399
+ * @throws {TypeError} If non-object config.
400
+ * @returns {void}
401
+ */
402
+ static setDefaultConfig(config) {
403
+ if (typeof config !== "object" || config === null) {
404
+ throw new TypeError("FlatRuleTester.setDefaultConfig: config must be an object");
405
+ }
406
+ sharedDefaultConfig = config;
407
+
408
+ // Make sure the rules object exists since it is assumed to exist later
409
+ sharedDefaultConfig.rules = sharedDefaultConfig.rules || {};
410
+ }
411
+
412
+ /**
413
+ * Get the current configuration used for all tests
414
+ * @returns {Object} the current configuration
415
+ */
416
+ static getDefaultConfig() {
417
+ return sharedDefaultConfig;
418
+ }
419
+
420
+ /**
421
+ * Reset the configuration to the initial configuration of the tester removing
422
+ * any changes made until now.
423
+ * @returns {void}
424
+ */
425
+ static resetDefaultConfig() {
426
+ sharedDefaultConfig = {
427
+ rules: {
428
+ ...testerDefaultConfig.rules
429
+ }
430
+ };
431
+ }
432
+
433
+
434
+ /*
435
+ * If people use `mocha test.js --watch` command, `describe` and `it` function
436
+ * instances are different for each execution. So `describe` and `it` should get fresh instance
437
+ * always.
438
+ */
439
+ static get describe() {
440
+ return (
441
+ this[DESCRIBE] ||
442
+ (typeof describe === "function" ? describe : describeDefaultHandler)
443
+ );
444
+ }
445
+
446
+ static set describe(value) {
447
+ this[DESCRIBE] = value;
448
+ }
449
+
450
+ static get it() {
451
+ return (
452
+ this[IT] ||
453
+ (typeof it === "function" ? it : itDefaultHandler)
454
+ );
455
+ }
456
+
457
+ static set it(value) {
458
+ this[IT] = value;
459
+ }
460
+
461
+ /**
462
+ * Adds the `only` property to a test to run it in isolation.
463
+ * @param {string | ValidTestCase | InvalidTestCase} item A single test to run by itself.
464
+ * @returns {ValidTestCase | InvalidTestCase} The test with `only` set.
465
+ */
466
+ static only(item) {
467
+ if (typeof item === "string") {
468
+ return { code: item, only: true };
469
+ }
470
+
471
+ return { ...item, only: true };
472
+ }
473
+
474
+ static get itOnly() {
475
+ if (typeof this[IT_ONLY] === "function") {
476
+ return this[IT_ONLY];
477
+ }
478
+ if (typeof this[IT] === "function" && typeof this[IT].only === "function") {
479
+ return Function.bind.call(this[IT].only, this[IT]);
480
+ }
481
+ if (typeof it === "function" && typeof it.only === "function") {
482
+ return Function.bind.call(it.only, it);
483
+ }
484
+
485
+ if (typeof this[DESCRIBE] === "function" || typeof this[IT] === "function") {
486
+ throw new Error(
487
+ "Set `RuleTester.itOnly` to use `only` with a custom test framework.\n" +
488
+ "See https://eslint.org/docs/latest/integrate/nodejs-api#customizing-ruletester for more."
489
+ );
490
+ }
491
+ if (typeof it === "function") {
492
+ throw new Error("The current test framework does not support exclusive tests with `only`.");
493
+ }
494
+ throw new Error("To use `only`, use RuleTester with a test framework that provides `it.only()` like Mocha.");
495
+ }
496
+
497
+ static set itOnly(value) {
498
+ this[IT_ONLY] = value;
499
+ }
500
+
501
+
502
+ /**
503
+ * Adds a new rule test to execute.
504
+ * @param {string} ruleName The name of the rule to run.
505
+ * @param {Function | Rule} rule The rule to test.
506
+ * @param {{
507
+ * valid: (ValidTestCase | string)[],
508
+ * invalid: InvalidTestCase[]
509
+ * }} test The collection of tests to run.
510
+ * @throws {TypeError|Error} If non-object `test`, or if a required
511
+ * scenario of the given type is missing.
512
+ * @returns {void}
513
+ */
514
+ run(ruleName, rule, test) {
515
+
516
+ const testerConfig = this.testerConfig,
517
+ requiredScenarios = ["valid", "invalid"],
518
+ scenarioErrors = [],
519
+ linter = this.linter,
520
+ ruleId = `rule-to-test/${ruleName}`;
521
+
522
+ if (!test || typeof test !== "object") {
523
+ throw new TypeError(`Test Scenarios for rule ${ruleName} : Could not find test scenario object`);
524
+ }
525
+
526
+ requiredScenarios.forEach(scenarioType => {
527
+ if (!test[scenarioType]) {
528
+ scenarioErrors.push(`Could not find any ${scenarioType} test scenarios`);
529
+ }
530
+ });
531
+
532
+ if (scenarioErrors.length > 0) {
533
+ throw new Error([
534
+ `Test Scenarios for rule ${ruleName} is invalid:`
535
+ ].concat(scenarioErrors).join("\n"));
536
+ }
537
+
538
+ const baseConfig = [
539
+ { files: ["**"] }, // Make sure the default config matches for all files
540
+ {
541
+ plugins: {
542
+
543
+ // copy root plugin over
544
+ "@": {
545
+
546
+ /*
547
+ * Parsers are wrapped to detect more errors, so this needs
548
+ * to be a new object for each call to run(), otherwise the
549
+ * parsers will be wrapped multiple times.
550
+ */
551
+ parsers: {
552
+ ...defaultConfig[0].plugins["@"].parsers
553
+ },
554
+
555
+ /*
556
+ * The rules key on the default plugin is a proxy to lazy-load
557
+ * just the rules that are needed. So, don't create a new object
558
+ * here, just use the default one to keep that performance
559
+ * enhancement.
560
+ */
561
+ rules: defaultConfig[0].plugins["@"].rules
562
+ },
563
+ "rule-to-test": {
564
+ rules: {
565
+ [ruleName]: Object.assign({}, rule, {
566
+
567
+ // Create a wrapper rule that freezes the `context` properties.
568
+ create(context) {
569
+ freezeDeeply(context.options);
570
+ freezeDeeply(context.settings);
571
+ freezeDeeply(context.parserOptions);
572
+
573
+ // freezeDeeply(context.languageOptions);
574
+
575
+ return (typeof rule === "function" ? rule : rule.create)(context);
576
+ }
577
+ })
578
+ }
579
+ }
580
+ },
581
+ languageOptions: {
582
+ ...defaultConfig[0].languageOptions
583
+ }
584
+ },
585
+ ...defaultConfig.slice(1)
586
+ ];
587
+
588
+ /**
589
+ * Run the rule for the given item
590
+ * @param {string|Object} item Item to run the rule against
591
+ * @throws {Error} If an invalid schema.
592
+ * @returns {Object} Eslint run result
593
+ * @private
594
+ */
595
+ function runRuleForItem(item) {
596
+ const flatConfigArrayOptions = {
597
+ baseConfig
598
+ };
599
+
600
+ if (item.filename) {
601
+ flatConfigArrayOptions.basePath = path.parse(item.filename).root;
602
+ }
603
+
604
+ const configs = new FlatConfigArray(testerConfig, flatConfigArrayOptions);
605
+
606
+ /*
607
+ * Modify the returned config so that the parser is wrapped to catch
608
+ * access of the start/end properties. This method is called just
609
+ * once per code snippet being tested, so each test case gets a clean
610
+ * parser.
611
+ */
612
+ configs[ConfigArraySymbol.finalizeConfig] = function(...args) {
613
+
614
+ // can't do super here :(
615
+ const proto = Object.getPrototypeOf(this);
616
+ const calculatedConfig = proto[ConfigArraySymbol.finalizeConfig].apply(this, args);
617
+
618
+ // wrap the parser to catch start/end property access
619
+ calculatedConfig.languageOptions.parser = wrapParser(calculatedConfig.languageOptions.parser);
620
+ return calculatedConfig;
621
+ };
622
+
623
+ let code, filename, output, beforeAST, afterAST;
624
+
625
+ if (typeof item === "string") {
626
+ code = item;
627
+ } else {
628
+ code = item.code;
629
+
630
+ /*
631
+ * Assumes everything on the item is a config except for the
632
+ * parameters used by this tester
633
+ */
634
+ const itemConfig = { ...item };
635
+
636
+ for (const parameter of RuleTesterParameters) {
637
+ delete itemConfig[parameter];
638
+ }
639
+
640
+ // wrap any parsers
641
+ if (itemConfig.languageOptions && itemConfig.languageOptions.parser) {
642
+
643
+ const parser = itemConfig.languageOptions.parser;
644
+
645
+ if (parser && typeof parser !== "object") {
646
+ throw new Error("Parser must be an object with a parse() or parseForESLint() method.");
647
+ }
648
+
649
+ }
650
+
651
+ /*
652
+ * Create the config object from the tester config and this item
653
+ * specific configurations.
654
+ */
655
+ configs.push(itemConfig);
656
+ }
657
+
658
+ if (item.filename) {
659
+ filename = item.filename;
660
+ }
661
+
662
+ let ruleConfig = 1;
663
+
664
+ if (hasOwnProperty(item, "options")) {
665
+ assert(Array.isArray(item.options), "options must be an array");
666
+ ruleConfig = [1, ...item.options];
667
+ }
668
+
669
+ configs.push({
670
+ rules: {
671
+ [ruleId]: ruleConfig
672
+ }
673
+ });
674
+
675
+ const schema = getRuleOptionsSchema(rule);
676
+
677
+ /*
678
+ * Setup AST getters.
679
+ * The goal is to check whether or not AST was modified when
680
+ * running the rule under test.
681
+ */
682
+ configs.push({
683
+ plugins: {
684
+ "rule-tester": {
685
+ rules: {
686
+ "validate-ast": {
687
+ create() {
688
+ return {
689
+ Program(node) {
690
+ beforeAST = cloneDeeplyExcludesParent(node);
691
+ },
692
+ "Program:exit"(node) {
693
+ afterAST = node;
694
+ }
695
+ };
696
+ }
697
+ }
698
+ }
699
+ }
700
+ }
701
+ });
702
+
703
+ if (schema) {
704
+ ajv.validateSchema(schema);
705
+
706
+ if (ajv.errors) {
707
+ const errors = ajv.errors.map(error => {
708
+ const field = error.dataPath[0] === "." ? error.dataPath.slice(1) : error.dataPath;
709
+
710
+ return `\t${field}: ${error.message}`;
711
+ }).join("\n");
712
+
713
+ throw new Error([`Schema for rule ${ruleName} is invalid:`, errors]);
714
+ }
715
+
716
+ /*
717
+ * `ajv.validateSchema` checks for errors in the structure of the schema (by comparing the schema against a "meta-schema"),
718
+ * and it reports those errors individually. However, there are other types of schema errors that only occur when compiling
719
+ * the schema (e.g. using invalid defaults in a schema), and only one of these errors can be reported at a time. As a result,
720
+ * the schema is compiled here separately from checking for `validateSchema` errors.
721
+ */
722
+ try {
723
+ ajv.compile(schema);
724
+ } catch (err) {
725
+ throw new Error(`Schema for rule ${ruleName} is invalid: ${err.message}`);
726
+ }
727
+ }
728
+
729
+ // check for validation errors
730
+ try {
731
+ configs.normalizeSync();
732
+ configs.getConfig("test.js");
733
+ } catch (error) {
734
+ error.message = `ESLint configuration in rule-tester is invalid: ${error.message}`;
735
+ throw error;
736
+ }
737
+
738
+ // Verify the code.
739
+ const { getComments, applyLanguageOptions, applyInlineConfig, finalize } = SourceCode.prototype;
740
+ const originalCurrentSegments = Object.getOwnPropertyDescriptor(CodePath.prototype, "currentSegments");
741
+ let messages;
742
+
743
+ try {
744
+ SourceCode.prototype.getComments = getCommentsDeprecation;
745
+ Object.defineProperty(CodePath.prototype, "currentSegments", {
746
+ get() {
747
+ emitCodePathCurrentSegmentsWarning(ruleName);
748
+ return originalCurrentSegments.get.call(this);
749
+ }
750
+ });
751
+
752
+ forbiddenMethods.forEach(methodName => {
753
+ SourceCode.prototype[methodName] = throwForbiddenMethodError(methodName, SourceCode.prototype);
754
+ });
755
+
756
+ messages = linter.verify(code, configs, filename);
757
+ } finally {
758
+ SourceCode.prototype.getComments = getComments;
759
+ Object.defineProperty(CodePath.prototype, "currentSegments", originalCurrentSegments);
760
+ SourceCode.prototype.applyInlineConfig = applyInlineConfig;
761
+ SourceCode.prototype.applyLanguageOptions = applyLanguageOptions;
762
+ SourceCode.prototype.finalize = finalize;
763
+ }
764
+
765
+
766
+ const fatalErrorMessage = messages.find(m => m.fatal);
767
+
768
+ assert(!fatalErrorMessage, `A fatal parsing error occurred: ${fatalErrorMessage && fatalErrorMessage.message}`);
769
+
770
+ // Verify if autofix makes a syntax error or not.
771
+ if (messages.some(m => m.fix)) {
772
+ output = SourceCodeFixer.applyFixes(code, messages).output;
773
+ const errorMessageInFix = linter.verify(output, configs, filename).find(m => m.fatal);
774
+
775
+ assert(!errorMessageInFix, [
776
+ "A fatal parsing error occurred in autofix.",
777
+ `Error: ${errorMessageInFix && errorMessageInFix.message}`,
778
+ "Autofix output:",
779
+ output
780
+ ].join("\n"));
781
+ } else {
782
+ output = code;
783
+ }
784
+
785
+ return {
786
+ messages,
787
+ output,
788
+ beforeAST,
789
+ afterAST: cloneDeeplyExcludesParent(afterAST)
790
+ };
791
+ }
792
+
793
+ /**
794
+ * Check if the AST was changed
795
+ * @param {ASTNode} beforeAST AST node before running
796
+ * @param {ASTNode} afterAST AST node after running
797
+ * @returns {void}
798
+ * @private
799
+ */
800
+ function assertASTDidntChange(beforeAST, afterAST) {
801
+ if (!equal(beforeAST, afterAST)) {
802
+ assert.fail("Rule should not modify AST.");
803
+ }
804
+ }
805
+
806
+ /**
807
+ * Check if the template is valid or not
808
+ * all valid cases go through this
809
+ * @param {string|Object} item Item to run the rule against
810
+ * @returns {void}
811
+ * @private
812
+ */
813
+ function testValidTemplate(item) {
814
+ const code = typeof item === "object" ? item.code : item;
815
+
816
+ assert.ok(typeof code === "string", "Test case must specify a string value for 'code'");
817
+ if (item.name) {
818
+ assert.ok(typeof item.name === "string", "Optional test case property 'name' must be a string");
819
+ }
820
+
821
+ const result = runRuleForItem(item);
822
+ const messages = result.messages;
823
+
824
+ assert.strictEqual(messages.length, 0, util.format("Should have no errors but had %d: %s",
825
+ messages.length,
826
+ util.inspect(messages)));
827
+
828
+ assertASTDidntChange(result.beforeAST, result.afterAST);
829
+ }
830
+
831
+ /**
832
+ * Asserts that the message matches its expected value. If the expected
833
+ * value is a regular expression, it is checked against the actual
834
+ * value.
835
+ * @param {string} actual Actual value
836
+ * @param {string|RegExp} expected Expected value
837
+ * @returns {void}
838
+ * @private
839
+ */
840
+ function assertMessageMatches(actual, expected) {
841
+ if (expected instanceof RegExp) {
842
+
843
+ // assert.js doesn't have a built-in RegExp match function
844
+ assert.ok(
845
+ expected.test(actual),
846
+ `Expected '${actual}' to match ${expected}`
847
+ );
848
+ } else {
849
+ assert.strictEqual(actual, expected);
850
+ }
851
+ }
852
+
853
+ /**
854
+ * Check if the template is invalid or not
855
+ * all invalid cases go through this.
856
+ * @param {string|Object} item Item to run the rule against
857
+ * @returns {void}
858
+ * @private
859
+ */
860
+ function testInvalidTemplate(item) {
861
+ assert.ok(typeof item.code === "string", "Test case must specify a string value for 'code'");
862
+ if (item.name) {
863
+ assert.ok(typeof item.name === "string", "Optional test case property 'name' must be a string");
864
+ }
865
+ assert.ok(item.errors || item.errors === 0,
866
+ `Did not specify errors for an invalid test of ${ruleName}`);
867
+
868
+ if (Array.isArray(item.errors) && item.errors.length === 0) {
869
+ assert.fail("Invalid cases must have at least one error");
870
+ }
871
+
872
+ const ruleHasMetaMessages = hasOwnProperty(rule, "meta") && hasOwnProperty(rule.meta, "messages");
873
+ const friendlyIDList = ruleHasMetaMessages ? `[${Object.keys(rule.meta.messages).map(key => `'${key}'`).join(", ")}]` : null;
874
+
875
+ const result = runRuleForItem(item);
876
+ const messages = result.messages;
877
+
878
+ if (typeof item.errors === "number") {
879
+
880
+ if (item.errors === 0) {
881
+ assert.fail("Invalid cases must have 'error' value greater than 0");
882
+ }
883
+
884
+ assert.strictEqual(messages.length, item.errors, util.format("Should have %d error%s but had %d: %s",
885
+ item.errors,
886
+ item.errors === 1 ? "" : "s",
887
+ messages.length,
888
+ util.inspect(messages)));
889
+ } else {
890
+ assert.strictEqual(
891
+ messages.length, item.errors.length, util.format(
892
+ "Should have %d error%s but had %d: %s",
893
+ item.errors.length,
894
+ item.errors.length === 1 ? "" : "s",
895
+ messages.length,
896
+ util.inspect(messages)
897
+ )
898
+ );
899
+
900
+ const hasMessageOfThisRule = messages.some(m => m.ruleId === ruleId);
901
+
902
+ for (let i = 0, l = item.errors.length; i < l; i++) {
903
+ const error = item.errors[i];
904
+ const message = messages[i];
905
+
906
+ assert(hasMessageOfThisRule, "Error rule name should be the same as the name of the rule being tested");
907
+
908
+ if (typeof error === "string" || error instanceof RegExp) {
909
+
910
+ // Just an error message.
911
+ assertMessageMatches(message.message, error);
912
+ } else if (typeof error === "object" && error !== null) {
913
+
914
+ /*
915
+ * Error object.
916
+ * This may have a message, messageId, data, node type, line, and/or
917
+ * column.
918
+ */
919
+
920
+ Object.keys(error).forEach(propertyName => {
921
+ assert.ok(
922
+ errorObjectParameters.has(propertyName),
923
+ `Invalid error property name '${propertyName}'. Expected one of ${friendlyErrorObjectParameterList}.`
924
+ );
925
+ });
926
+
927
+ if (hasOwnProperty(error, "message")) {
928
+ assert.ok(!hasOwnProperty(error, "messageId"), "Error should not specify both 'message' and a 'messageId'.");
929
+ assert.ok(!hasOwnProperty(error, "data"), "Error should not specify both 'data' and 'message'.");
930
+ assertMessageMatches(message.message, error.message);
931
+ } else if (hasOwnProperty(error, "messageId")) {
932
+ assert.ok(
933
+ ruleHasMetaMessages,
934
+ "Error can not use 'messageId' if rule under test doesn't define 'meta.messages'."
935
+ );
936
+ if (!hasOwnProperty(rule.meta.messages, error.messageId)) {
937
+ assert(false, `Invalid messageId '${error.messageId}'. Expected one of ${friendlyIDList}.`);
938
+ }
939
+ assert.strictEqual(
940
+ message.messageId,
941
+ error.messageId,
942
+ `messageId '${message.messageId}' does not match expected messageId '${error.messageId}'.`
943
+ );
944
+ if (hasOwnProperty(error, "data")) {
945
+
946
+ /*
947
+ * if data was provided, then directly compare the returned message to a synthetic
948
+ * interpolated message using the same message ID and data provided in the test.
949
+ * See https://github.com/eslint/eslint/issues/9890 for context.
950
+ */
951
+ const unformattedOriginalMessage = rule.meta.messages[error.messageId];
952
+ const rehydratedMessage = interpolate(unformattedOriginalMessage, error.data);
953
+
954
+ assert.strictEqual(
955
+ message.message,
956
+ rehydratedMessage,
957
+ `Hydrated message "${rehydratedMessage}" does not match "${message.message}"`
958
+ );
959
+ }
960
+ }
961
+
962
+ assert.ok(
963
+ hasOwnProperty(error, "data") ? hasOwnProperty(error, "messageId") : true,
964
+ "Error must specify 'messageId' if 'data' is used."
965
+ );
966
+
967
+ if (error.type) {
968
+ assert.strictEqual(message.nodeType, error.type, `Error type should be ${error.type}, found ${message.nodeType}`);
969
+ }
970
+
971
+ if (hasOwnProperty(error, "line")) {
972
+ assert.strictEqual(message.line, error.line, `Error line should be ${error.line}`);
973
+ }
974
+
975
+ if (hasOwnProperty(error, "column")) {
976
+ assert.strictEqual(message.column, error.column, `Error column should be ${error.column}`);
977
+ }
978
+
979
+ if (hasOwnProperty(error, "endLine")) {
980
+ assert.strictEqual(message.endLine, error.endLine, `Error endLine should be ${error.endLine}`);
981
+ }
982
+
983
+ if (hasOwnProperty(error, "endColumn")) {
984
+ assert.strictEqual(message.endColumn, error.endColumn, `Error endColumn should be ${error.endColumn}`);
985
+ }
986
+
987
+ if (hasOwnProperty(error, "suggestions")) {
988
+
989
+ // Support asserting there are no suggestions
990
+ if (!error.suggestions || (Array.isArray(error.suggestions) && error.suggestions.length === 0)) {
991
+ if (Array.isArray(message.suggestions) && message.suggestions.length > 0) {
992
+ assert.fail(`Error should have no suggestions on error with message: "${message.message}"`);
993
+ }
994
+ } else {
995
+ assert.strictEqual(Array.isArray(message.suggestions), true, `Error should have an array of suggestions. Instead received "${message.suggestions}" on error with message: "${message.message}"`);
996
+ assert.strictEqual(message.suggestions.length, error.suggestions.length, `Error should have ${error.suggestions.length} suggestions. Instead found ${message.suggestions.length} suggestions`);
997
+
998
+ error.suggestions.forEach((expectedSuggestion, index) => {
999
+ assert.ok(
1000
+ typeof expectedSuggestion === "object" && expectedSuggestion !== null,
1001
+ "Test suggestion in 'suggestions' array must be an object."
1002
+ );
1003
+ Object.keys(expectedSuggestion).forEach(propertyName => {
1004
+ assert.ok(
1005
+ suggestionObjectParameters.has(propertyName),
1006
+ `Invalid suggestion property name '${propertyName}'. Expected one of ${friendlySuggestionObjectParameterList}.`
1007
+ );
1008
+ });
1009
+
1010
+ const actualSuggestion = message.suggestions[index];
1011
+ const suggestionPrefix = `Error Suggestion at index ${index} :`;
1012
+
1013
+ if (hasOwnProperty(expectedSuggestion, "desc")) {
1014
+ assert.ok(
1015
+ !hasOwnProperty(expectedSuggestion, "data"),
1016
+ `${suggestionPrefix} Test should not specify both 'desc' and 'data'.`
1017
+ );
1018
+ assert.strictEqual(
1019
+ actualSuggestion.desc,
1020
+ expectedSuggestion.desc,
1021
+ `${suggestionPrefix} desc should be "${expectedSuggestion.desc}" but got "${actualSuggestion.desc}" instead.`
1022
+ );
1023
+ }
1024
+
1025
+ if (hasOwnProperty(expectedSuggestion, "messageId")) {
1026
+ assert.ok(
1027
+ ruleHasMetaMessages,
1028
+ `${suggestionPrefix} Test can not use 'messageId' if rule under test doesn't define 'meta.messages'.`
1029
+ );
1030
+ assert.ok(
1031
+ hasOwnProperty(rule.meta.messages, expectedSuggestion.messageId),
1032
+ `${suggestionPrefix} Test has invalid messageId '${expectedSuggestion.messageId}', the rule under test allows only one of ${friendlyIDList}.`
1033
+ );
1034
+ assert.strictEqual(
1035
+ actualSuggestion.messageId,
1036
+ expectedSuggestion.messageId,
1037
+ `${suggestionPrefix} messageId should be '${expectedSuggestion.messageId}' but got '${actualSuggestion.messageId}' instead.`
1038
+ );
1039
+ if (hasOwnProperty(expectedSuggestion, "data")) {
1040
+ const unformattedMetaMessage = rule.meta.messages[expectedSuggestion.messageId];
1041
+ const rehydratedDesc = interpolate(unformattedMetaMessage, expectedSuggestion.data);
1042
+
1043
+ assert.strictEqual(
1044
+ actualSuggestion.desc,
1045
+ rehydratedDesc,
1046
+ `${suggestionPrefix} Hydrated test desc "${rehydratedDesc}" does not match received desc "${actualSuggestion.desc}".`
1047
+ );
1048
+ }
1049
+ } else {
1050
+ assert.ok(
1051
+ !hasOwnProperty(expectedSuggestion, "data"),
1052
+ `${suggestionPrefix} Test must specify 'messageId' if 'data' is used.`
1053
+ );
1054
+ }
1055
+
1056
+ if (hasOwnProperty(expectedSuggestion, "output")) {
1057
+ const codeWithAppliedSuggestion = SourceCodeFixer.applyFixes(item.code, [actualSuggestion]).output;
1058
+
1059
+ assert.strictEqual(codeWithAppliedSuggestion, expectedSuggestion.output, `Expected the applied suggestion fix to match the test suggestion output for suggestion at index: ${index} on error with message: "${message.message}"`);
1060
+ }
1061
+ });
1062
+ }
1063
+ }
1064
+ } else {
1065
+
1066
+ // Message was an unexpected type
1067
+ assert.fail(`Error should be a string, object, or RegExp, but found (${util.inspect(message)})`);
1068
+ }
1069
+ }
1070
+ }
1071
+
1072
+ if (hasOwnProperty(item, "output")) {
1073
+ if (item.output === null) {
1074
+ assert.strictEqual(
1075
+ result.output,
1076
+ item.code,
1077
+ "Expected no autofixes to be suggested"
1078
+ );
1079
+ } else {
1080
+ assert.strictEqual(result.output, item.output, "Output is incorrect.");
1081
+ }
1082
+ } else {
1083
+ assert.strictEqual(
1084
+ result.output,
1085
+ item.code,
1086
+ "The rule fixed the code. Please add 'output' property."
1087
+ );
1088
+ }
1089
+
1090
+ assertASTDidntChange(result.beforeAST, result.afterAST);
1091
+ }
1092
+
1093
+ /*
1094
+ * This creates a mocha test suite and pipes all supplied info through
1095
+ * one of the templates above.
1096
+ * The test suites for valid/invalid are created conditionally as
1097
+ * test runners (eg. vitest) fail for empty test suites.
1098
+ */
1099
+ this.constructor.describe(ruleName, () => {
1100
+ if (test.valid.length > 0) {
1101
+ this.constructor.describe("valid", () => {
1102
+ test.valid.forEach(valid => {
1103
+ this.constructor[valid.only ? "itOnly" : "it"](
1104
+ sanitize(typeof valid === "object" ? valid.name || valid.code : valid),
1105
+ () => {
1106
+ testValidTemplate(valid);
1107
+ }
1108
+ );
1109
+ });
1110
+ });
1111
+ }
1112
+
1113
+ if (test.invalid.length > 0) {
1114
+ this.constructor.describe("invalid", () => {
1115
+ test.invalid.forEach(invalid => {
1116
+ this.constructor[invalid.only ? "itOnly" : "it"](
1117
+ sanitize(invalid.name || invalid.code),
1118
+ () => {
1119
+ testInvalidTemplate(invalid);
1120
+ }
1121
+ );
1122
+ });
1123
+ });
1124
+ }
1125
+ });
1126
+ }
1127
+ }
1128
+
1129
+ FlatRuleTester[DESCRIBE] = FlatRuleTester[IT] = FlatRuleTester[IT_ONLY] = null;
1130
+
1131
+ module.exports = FlatRuleTester;