repoburg 1.0.31 → 1.0.33

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 (1254) hide show
  1. package/backend/.env +2 -2
  2. package/backend/dist/app.module.js +3 -0
  3. package/backend/dist/app.module.js.map +1 -1
  4. package/backend/dist/context-generation/context-generation.service.d.ts +1 -0
  5. package/backend/dist/context-generation/context-generation.service.js +27 -0
  6. package/backend/dist/context-generation/context-generation.service.js.map +1 -1
  7. package/backend/dist/context-snippets/context-snippets.controller.d.ts +13 -0
  8. package/backend/dist/context-snippets/context-snippets.controller.js +91 -0
  9. package/backend/dist/context-snippets/context-snippets.controller.js.map +1 -0
  10. package/backend/dist/context-snippets/context-snippets.module.d.ts +2 -0
  11. package/backend/dist/context-snippets/context-snippets.module.js +30 -0
  12. package/backend/dist/context-snippets/context-snippets.module.js.map +1 -0
  13. package/backend/dist/context-snippets/context-snippets.service.d.ts +17 -0
  14. package/backend/dist/context-snippets/context-snippets.service.js +93 -0
  15. package/backend/dist/context-snippets/context-snippets.service.js.map +1 -0
  16. package/backend/dist/context-snippets/dto/context-snippet.dto.d.ts +17 -0
  17. package/backend/dist/context-snippets/dto/context-snippet.dto.js +60 -0
  18. package/backend/dist/context-snippets/dto/context-snippet.dto.js.map +1 -0
  19. package/backend/dist/core-entities/context-snippet.entity.d.ts +6 -0
  20. package/backend/dist/core-entities/context-snippet.entity.js +34 -0
  21. package/backend/dist/core-entities/context-snippet.entity.js.map +1 -0
  22. package/backend/dist/core-entities/index.d.ts +1 -0
  23. package/backend/dist/core-entities/index.js +1 -0
  24. package/backend/dist/core-entities/index.js.map +1 -1
  25. package/backend/dist/seeding/data/context-templates/default-followup_ad-hoc-focused-context.d.ts +1 -1
  26. package/backend/dist/seeding/data/context-templates/default-followup_ad-hoc-focused-context.js +2 -0
  27. package/backend/dist/seeding/data/context-templates/default-followup_ad-hoc-focused-context.js.map +1 -1
  28. package/backend/dist/seeding/data/context-templates/default-initial_condensed-project-context.d.ts +1 -1
  29. package/backend/dist/seeding/data/context-templates/default-initial_condensed-project-context.js +2 -0
  30. package/backend/dist/seeding/data/context-templates/default-initial_condensed-project-context.js.map +1 -1
  31. package/backend/dist/seeding/data/context-templates/default-initial_full-project-context.d.ts +1 -1
  32. package/backend/dist/seeding/data/context-templates/default-initial_full-project-context.js +3 -1
  33. package/backend/dist/seeding/data/context-templates/default-initial_full-project-context.js.map +1 -1
  34. package/backend/dist/seeding/data/custom-snippets/run-command.d.ts +3 -0
  35. package/backend/dist/seeding/data/custom-snippets/run-command.js +7 -0
  36. package/backend/dist/seeding/data/custom-snippets/run-command.js.map +1 -0
  37. package/backend/dist/session-inputs/session-input-context.service.d.ts +4 -1
  38. package/backend/dist/session-inputs/session-input-context.service.js +35 -3
  39. package/backend/dist/session-inputs/session-input-context.service.js.map +1 -1
  40. package/backend/dist/session-inputs/session-inputs.module.js +2 -0
  41. package/backend/dist/session-inputs/session-inputs.module.js.map +1 -1
  42. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  43. package/package.json +7 -22
  44. package/backend/.webcoder/data.sqlite +0 -0
  45. package/backend/node_modules/@eslint/eslintrc/LICENSE +0 -19
  46. package/backend/node_modules/@eslint/eslintrc/README.md +0 -115
  47. package/backend/node_modules/@eslint/eslintrc/conf/config-schema.js +0 -79
  48. package/backend/node_modules/@eslint/eslintrc/conf/environments.js +0 -215
  49. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs +0 -1104
  50. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs.map +0 -1
  51. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc.cjs +0 -4344
  52. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc.cjs.map +0 -1
  53. package/backend/node_modules/@eslint/eslintrc/lib/cascading-config-array-factory.js +0 -532
  54. package/backend/node_modules/@eslint/eslintrc/lib/config-array/config-array.js +0 -523
  55. package/backend/node_modules/@eslint/eslintrc/lib/config-array/config-dependency.js +0 -124
  56. package/backend/node_modules/@eslint/eslintrc/lib/config-array/extracted-config.js +0 -145
  57. package/backend/node_modules/@eslint/eslintrc/lib/config-array/ignore-pattern.js +0 -238
  58. package/backend/node_modules/@eslint/eslintrc/lib/config-array/index.js +0 -19
  59. package/backend/node_modules/@eslint/eslintrc/lib/config-array/override-tester.js +0 -225
  60. package/backend/node_modules/@eslint/eslintrc/lib/config-array-factory.js +0 -1151
  61. package/backend/node_modules/@eslint/eslintrc/lib/flat-compat.js +0 -318
  62. package/backend/node_modules/@eslint/eslintrc/lib/index-universal.js +0 -29
  63. package/backend/node_modules/@eslint/eslintrc/lib/index.js +0 -56
  64. package/backend/node_modules/@eslint/eslintrc/lib/shared/ajv.js +0 -191
  65. package/backend/node_modules/@eslint/eslintrc/lib/shared/config-ops.js +0 -135
  66. package/backend/node_modules/@eslint/eslintrc/lib/shared/config-validator.js +0 -325
  67. package/backend/node_modules/@eslint/eslintrc/lib/shared/deprecation-warnings.js +0 -63
  68. package/backend/node_modules/@eslint/eslintrc/lib/shared/naming.js +0 -96
  69. package/backend/node_modules/@eslint/eslintrc/lib/shared/relative-module-resolver.js +0 -42
  70. package/backend/node_modules/@eslint/eslintrc/lib/shared/types.js +0 -149
  71. package/backend/node_modules/@eslint/eslintrc/package.json +0 -82
  72. package/backend/node_modules/@eslint/eslintrc/universal.js +0 -9
  73. package/backend/node_modules/@typescript-eslint/eslint-plugin/LICENSE +0 -21
  74. package/backend/node_modules/@typescript-eslint/eslint-plugin/README.md +0 -12
  75. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js +0 -156
  76. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map +0 -1
  77. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js +0 -13
  78. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js.map +0 -1
  79. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/disable-type-checked.js +0 -64
  80. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/disable-type-checked.js.map +0 -1
  81. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js +0 -31
  82. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js.map +0 -1
  83. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-type-checked.js +0 -54
  84. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-type-checked.js.map +0 -1
  85. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js +0 -33
  86. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js.map +0 -1
  87. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict-type-checked.js +0 -79
  88. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict-type-checked.js.map +0 -1
  89. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict.js +0 -43
  90. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict.js.map +0 -1
  91. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic-type-checked.js +0 -35
  92. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic-type-checked.js.map +0 -1
  93. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic.js +0 -29
  94. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic.js.map +0 -1
  95. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +0 -39
  96. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/index.js.map +0 -1
  97. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js +0 -140
  98. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js.map +0 -1
  99. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js +0 -222
  100. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map +0 -1
  101. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js +0 -76
  102. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js.map +0 -1
  103. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js +0 -156
  104. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map +0 -1
  105. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js +0 -56
  106. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js.map +0 -1
  107. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js +0 -240
  108. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js.map +0 -1
  109. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/block-spacing.js +0 -140
  110. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/block-spacing.js.map +0 -1
  111. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/brace-style.js +0 -99
  112. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/brace-style.js.map +0 -1
  113. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js +0 -123
  114. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js.map +0 -1
  115. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js +0 -211
  116. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js.map +0 -1
  117. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js +0 -166
  118. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js.map +0 -1
  119. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js +0 -152
  120. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map +0 -1
  121. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js +0 -109
  122. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js.map +0 -1
  123. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-indexed-object-style.js +0 -128
  124. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-indexed-object-style.js.map +0 -1
  125. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js +0 -222
  126. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js.map +0 -1
  127. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js +0 -98
  128. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js.map +0 -1
  129. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js +0 -245
  130. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js.map +0 -1
  131. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js +0 -635
  132. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map +0 -1
  133. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/default-param-last.js +0 -63
  134. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/default-param-last.js.map +0 -1
  135. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js +0 -120
  136. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js.map +0 -1
  137. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.js +0 -112
  138. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.js.map +0 -1
  139. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js +0 -164
  140. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map +0 -1
  141. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js +0 -283
  142. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map +0 -1
  143. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js +0 -366
  144. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map +0 -1
  145. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js +0 -147
  146. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js.map +0 -1
  147. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js +0 -415
  148. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js.map +0 -1
  149. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js +0 -288
  150. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map +0 -1
  151. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js +0 -48
  152. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js.map +0 -1
  153. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/key-spacing.js +0 -322
  154. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/key-spacing.js.map +0 -1
  155. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js +0 -95
  156. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js.map +0 -1
  157. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-around-comment.js +0 -357
  158. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-around-comment.js.map +0 -1
  159. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js +0 -57
  160. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js.map +0 -1
  161. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/max-params.js +0 -67
  162. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/max-params.js.map +0 -1
  163. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js +0 -258
  164. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js.map +0 -1
  165. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js +0 -747
  166. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map +0 -1
  167. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js +0 -181
  168. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map +0 -1
  169. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js +0 -101
  170. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js.map +0 -1
  171. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/format.js +0 -91
  172. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/format.js.map +0 -1
  173. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/index.js +0 -12
  174. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/index.js.map +0 -1
  175. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/parse-options.js +0 -75
  176. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/parse-options.js.map +0 -1
  177. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/schema.js +0 -291
  178. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/schema.js.map +0 -1
  179. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js +0 -18
  180. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js.map +0 -1
  181. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/types.js +0 -3
  182. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/types.js.map +0 -1
  183. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js +0 -351
  184. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js.map +0 -1
  185. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js +0 -488
  186. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js.map +0 -1
  187. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js +0 -53
  188. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js.map +0 -1
  189. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js +0 -83
  190. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js.map +0 -1
  191. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js +0 -164
  192. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js.map +0 -1
  193. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js +0 -78
  194. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js.map +0 -1
  195. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js +0 -293
  196. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js.map +0 -1
  197. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js +0 -51
  198. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js.map +0 -1
  199. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js +0 -62
  200. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js.map +0 -1
  201. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-type-constituents.js +0 -139
  202. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-type-constituents.js.map +0 -1
  203. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js +0 -95
  204. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js.map +0 -1
  205. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js +0 -132
  206. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js.map +0 -1
  207. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js +0 -94
  208. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map +0 -1
  209. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js +0 -170
  210. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map +0 -1
  211. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js +0 -36
  212. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js.map +0 -1
  213. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js +0 -297
  214. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map +0 -1
  215. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js +0 -43
  216. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js.map +0 -1
  217. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js +0 -112
  218. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map +0 -1
  219. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js +0 -342
  220. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map +0 -1
  221. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js +0 -60
  222. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map +0 -1
  223. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js +0 -160
  224. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js.map +0 -1
  225. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js +0 -56
  226. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js.map +0 -1
  227. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js +0 -185
  228. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map +0 -1
  229. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js +0 -76
  230. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js.map +0 -1
  231. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js +0 -182
  232. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js.map +0 -1
  233. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js +0 -169
  234. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js.map +0 -1
  235. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js +0 -39
  236. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js.map +0 -1
  237. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js +0 -213
  238. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js.map +0 -1
  239. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js +0 -96
  240. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js.map +0 -1
  241. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js +0 -82
  242. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js.map +0 -1
  243. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js +0 -523
  244. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map +0 -1
  245. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-mixed-enums.js +0 -193
  246. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-mixed-enums.js.map +0 -1
  247. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js +0 -63
  248. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map +0 -1
  249. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-nullish-coalescing.js +0 -76
  250. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-nullish-coalescing.js.map +0 -1
  251. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js +0 -66
  252. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map +0 -1
  253. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js +0 -104
  254. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map +0 -1
  255. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js +0 -201
  256. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map +0 -1
  257. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redundant-type-constituents.js +0 -372
  258. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redundant-type-constituents.js.map +0 -1
  259. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js +0 -90
  260. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js.map +0 -1
  261. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js +0 -237
  262. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js.map +0 -1
  263. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js +0 -482
  264. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js.map +0 -1
  265. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js +0 -65
  266. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map +0 -1
  267. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js +0 -96
  268. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js.map +0 -1
  269. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js +0 -260
  270. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map +0 -1
  271. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js +0 -234
  272. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map +0 -1
  273. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js +0 -540
  274. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map +0 -1
  275. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js +0 -149
  276. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js.map +0 -1
  277. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js +0 -150
  278. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js.map +0 -1
  279. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js +0 -252
  280. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map +0 -1
  281. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js +0 -112
  282. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js.map +0 -1
  283. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js +0 -226
  284. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js.map +0 -1
  285. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js +0 -282
  286. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js.map +0 -1
  287. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js +0 -83
  288. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js.map +0 -1
  289. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-declaration-merging.js +0 -56
  290. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-declaration-merging.js.map +0 -1
  291. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-enum-comparison.js +0 -168
  292. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-enum-comparison.js.map +0 -1
  293. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js +0 -123
  294. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js.map +0 -1
  295. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js +0 -161
  296. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js.map +0 -1
  297. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js +0 -68
  298. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js.map +0 -1
  299. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js +0 -58
  300. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map +0 -1
  301. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js +0 -490
  302. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map +0 -1
  303. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js +0 -297
  304. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map +0 -1
  305. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js +0 -59
  306. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map +0 -1
  307. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js +0 -72
  308. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js.map +0 -1
  309. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-template-literals.js +0 -138
  310. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-template-literals.js.map +0 -1
  311. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js +0 -67
  312. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js.map +0 -1
  313. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js +0 -125
  314. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map +0 -1
  315. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js +0 -226
  316. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map +0 -1
  317. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js +0 -634
  318. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js.map +0 -1
  319. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js +0 -171
  320. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js.map +0 -1
  321. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js +0 -73
  322. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map +0 -1
  323. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-destructuring.js +0 -200
  324. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-destructuring.js.map +0 -1
  325. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js +0 -65
  326. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js.map +0 -1
  327. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js +0 -235
  328. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js.map +0 -1
  329. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js +0 -156
  330. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js.map +0 -1
  331. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js +0 -186
  332. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map +0 -1
  333. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js +0 -231
  334. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js.map +0 -1
  335. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js +0 -72
  336. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js.map +0 -1
  337. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js +0 -46
  338. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js.map +0 -1
  339. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js +0 -348
  340. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map +0 -1
  341. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js +0 -3
  342. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js.map +0 -1
  343. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/analyzeChain.js +0 -417
  344. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/analyzeChain.js.map +0 -1
  345. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/compareNodes.js +0 -318
  346. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/compareNodes.js.map +0 -1
  347. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js +0 -279
  348. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js.map +0 -1
  349. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js +0 -175
  350. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map +0 -1
  351. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-promise-reject-errors.js +0 -107
  352. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-promise-reject-errors.js.map +0 -1
  353. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js +0 -82
  354. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js.map +0 -1
  355. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js +0 -315
  356. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js.map +0 -1
  357. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js +0 -74
  358. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js.map +0 -1
  359. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js +0 -159
  360. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map +0 -1
  361. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js +0 -137
  362. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js.map +0 -1
  363. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js +0 -508
  364. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js.map +0 -1
  365. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js +0 -62
  366. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js.map +0 -1
  367. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js +0 -182
  368. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map +0 -1
  369. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js +0 -63
  370. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js.map +0 -1
  371. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js +0 -62
  372. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map +0 -1
  373. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js +0 -212
  374. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map +0 -1
  375. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js +0 -211
  376. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map +0 -1
  377. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js +0 -145
  378. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map +0 -1
  379. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js +0 -268
  380. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map +0 -1
  381. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js +0 -64
  382. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js.map +0 -1
  383. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js +0 -228
  384. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js.map +0 -1
  385. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-blocks.js +0 -80
  386. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-blocks.js.map +0 -1
  387. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js +0 -143
  388. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js.map +0 -1
  389. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-infix-ops.js +0 -133
  390. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-infix-ops.js.map +0 -1
  391. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js +0 -800
  392. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js.map +0 -1
  393. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js +0 -242
  394. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map +0 -1
  395. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js +0 -110
  396. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js.map +0 -1
  397. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js +0 -228
  398. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js.map +0 -1
  399. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js +0 -200
  400. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map +0 -1
  401. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js +0 -245
  402. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map +0 -1
  403. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js +0 -398
  404. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map +0 -1
  405. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js +0 -89
  406. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map +0 -1
  407. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js +0 -562
  408. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js.map +0 -1
  409. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js +0 -6
  410. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js.map +0 -1
  411. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/escapeRegExp.js +0 -16
  412. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/escapeRegExp.js.map +0 -1
  413. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js +0 -241
  414. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js.map +0 -1
  415. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getESLintCoreRule.js +0 -45
  416. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getESLintCoreRule.js.map +0 -1
  417. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFunctionHeadLoc.js +0 -163
  418. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFunctionHeadLoc.js.map +0 -1
  419. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getOperatorPrecedence.js +0 -418
  420. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getOperatorPrecedence.js.map +0 -1
  421. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStaticStringValue.js +0 -46
  422. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStaticStringValue.js.map +0 -1
  423. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStringLength.js +0 -20
  424. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStringLength.js.map +0 -1
  425. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getThisExpression.js +0 -26
  426. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getThisExpression.js.map +0 -1
  427. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappedCode.js +0 -8
  428. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappedCode.js.map +0 -1
  429. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappingFixer.js +0 -155
  430. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappingFixer.js.map +0 -1
  431. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js +0 -42
  432. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map +0 -1
  433. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js +0 -27
  434. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js.map +0 -1
  435. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js +0 -9
  436. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js.map +0 -1
  437. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js +0 -9
  438. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js.map +0 -1
  439. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js +0 -189
  440. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js.map +0 -1
  441. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js +0 -27
  442. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js.map +0 -1
  443. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/README.md +0 -60
  444. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/TEMPLATE.md +0 -30
  445. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/adjacent-overload-signatures.md +0 -99
  446. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/array-type.md +0 -111
  447. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/await-thenable.md +0 -42
  448. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md +0 -151
  449. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md +0 -39
  450. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md +0 -132
  451. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/block-spacing.md +0 -10
  452. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md +0 -10
  453. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md +0 -13
  454. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md +0 -105
  455. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-methods-use-this.md +0 -96
  456. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md +0 -20
  457. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md +0 -10
  458. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-generic-constructors.md +0 -76
  459. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-indexed-object-style.md +0 -80
  460. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md +0 -113
  461. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md +0 -81
  462. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-exports.md +0 -105
  463. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md +0 -108
  464. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md +0 -58
  465. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md +0 -82
  466. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md +0 -320
  467. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md +0 -344
  468. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md +0 -249
  469. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md +0 -10
  470. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md +0 -18
  471. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md +0 -10
  472. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/key-spacing.md +0 -10
  473. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md +0 -10
  474. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-around-comment.md +0 -25
  475. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md +0 -55
  476. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/max-params.md +0 -10
  477. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-delimiter-style.md +0 -164
  478. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md +0 -1438
  479. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md +0 -113
  480. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md +0 -721
  481. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md +0 -29
  482. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-delete.md +0 -40
  483. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md +0 -88
  484. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md +0 -56
  485. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-void-expression.md +0 -116
  486. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md +0 -14
  487. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-enum-values.md +0 -58
  488. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-imports.md +0 -13
  489. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-type-constituents.md +0 -66
  490. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dynamic-delete.md +0 -53
  491. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md +0 -92
  492. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-interface.md +0 -59
  493. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md +0 -168
  494. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-non-null-assertion.md +0 -54
  495. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md +0 -10
  496. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md +0 -12
  497. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md +0 -295
  498. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md +0 -124
  499. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-for-in-array.md +0 -61
  500. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md +0 -102
  501. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-import-type-side-effects.md +0 -74
  502. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-inferrable-types.md +0 -103
  503. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md +0 -14
  504. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md +0 -112
  505. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md +0 -10
  506. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md +0 -10
  507. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md +0 -119
  508. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-meaningless-void-operator.md +0 -53
  509. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-new.md +0 -47
  510. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-promises.md +0 -246
  511. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-mixed-enums.md +0 -88
  512. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md +0 -131
  513. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md +0 -54
  514. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md +0 -40
  515. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md +0 -42
  516. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-parameter-properties.md +0 -12
  517. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md +0 -75
  518. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redundant-type-constituents.md +0 -92
  519. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-require-imports.md +0 -60
  520. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-restricted-imports.md +0 -71
  521. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md +0 -105
  522. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md +0 -108
  523. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md +0 -109
  524. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md +0 -623
  525. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md +0 -133
  526. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md +0 -119
  527. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-qualifier.md +0 -51
  528. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md +0 -79
  529. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md +0 -77
  530. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md +0 -55
  531. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-argument.md +0 -93
  532. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md +0 -96
  533. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md +0 -68
  534. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-declaration-merging.md +0 -59
  535. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-enum-comparison.md +0 -82
  536. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md +0 -74
  537. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md +0 -113
  538. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-unary-minus.md +0 -52
  539. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md +0 -10
  540. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md +0 -27
  541. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md +0 -87
  542. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md +0 -19
  543. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-empty-export.md +0 -47
  544. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-template-literals.md +0 -57
  545. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-var-requires.md +0 -60
  546. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md +0 -41
  547. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md +0 -10
  548. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/padding-line-between-statements.md +0 -33
  549. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/parameter-properties.md +0 -488
  550. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md +0 -47
  551. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-destructuring.md +0 -91
  552. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md +0 -62
  553. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-find.md +0 -39
  554. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-for-of.md +0 -44
  555. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md +0 -92
  556. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-includes.md +0 -75
  557. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md +0 -103
  558. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-namespace-keyword.md +0 -47
  559. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md +0 -187
  560. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md +0 -263
  561. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-promise-reject-errors.md +0 -50
  562. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md +0 -389
  563. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md +0 -102
  564. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md +0 -60
  565. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-regexp-exec.md +0 -46
  566. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-return-this-type.md +0 -87
  567. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md +0 -58
  568. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md +0 -70
  569. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/promise-function-async.md +0 -132
  570. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md +0 -10
  571. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md +0 -78
  572. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md +0 -22
  573. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-plus-operands.md +0 -208
  574. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md +0 -121
  575. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md +0 -216
  576. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md +0 -12
  577. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-constituents.md +0 -163
  578. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-blocks.md +0 -43
  579. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md +0 -10
  580. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-infix-ops.md +0 -16
  581. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md +0 -190
  582. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/switch-exhaustiveness-check.md +0 -225
  583. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/triple-slash-reference.md +0 -110
  584. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md +0 -317
  585. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md +0 -320
  586. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unbound-method.md +0 -105
  587. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unified-signatures.md +0 -77
  588. package/backend/node_modules/@typescript-eslint/eslint-plugin/index.d.ts +0 -9
  589. package/backend/node_modules/@typescript-eslint/eslint-plugin/package.json +0 -106
  590. package/backend/node_modules/@typescript-eslint/eslint-plugin/rules.d.ts +0 -45
  591. package/backend/node_modules/@typescript-eslint/parser/LICENSE +0 -22
  592. package/backend/node_modules/@typescript-eslint/parser/README.md +0 -12
  593. package/backend/node_modules/@typescript-eslint/parser/dist/index.d.ts +0 -8
  594. package/backend/node_modules/@typescript-eslint/parser/dist/index.d.ts.map +0 -1
  595. package/backend/node_modules/@typescript-eslint/parser/dist/index.js +0 -17
  596. package/backend/node_modules/@typescript-eslint/parser/dist/index.js.map +0 -1
  597. package/backend/node_modules/@typescript-eslint/parser/dist/parser.d.ts +0 -20
  598. package/backend/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map +0 -1
  599. package/backend/node_modules/@typescript-eslint/parser/dist/parser.js +0 -130
  600. package/backend/node_modules/@typescript-eslint/parser/dist/parser.js.map +0 -1
  601. package/backend/node_modules/@typescript-eslint/parser/package.json +0 -85
  602. package/backend/node_modules/@typescript-eslint/type-utils/LICENSE +0 -21
  603. package/backend/node_modules/@typescript-eslint/type-utils/README.md +0 -14
  604. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.d.ts +0 -21
  605. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.d.ts.map +0 -1
  606. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.js +0 -188
  607. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.js.map +0 -1
  608. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.d.ts +0 -39
  609. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.d.ts.map +0 -1
  610. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.js +0 -130
  611. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.js.map +0 -1
  612. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.d.ts +0 -10
  613. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.d.ts.map +0 -1
  614. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.js +0 -61
  615. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.js.map +0 -1
  616. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.d.ts +0 -7
  617. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.d.ts.map +0 -1
  618. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.js +0 -15
  619. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.js.map +0 -1
  620. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.d.ts +0 -8
  621. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.d.ts.map +0 -1
  622. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.js +0 -66
  623. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.js.map +0 -1
  624. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.d.ts +0 -7
  625. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.d.ts.map +0 -1
  626. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.js +0 -16
  627. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.js.map +0 -1
  628. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.d.ts +0 -6
  629. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.d.ts.map +0 -1
  630. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.js +0 -38
  631. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.js.map +0 -1
  632. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.d.ts +0 -3
  633. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.d.ts.map +0 -1
  634. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.js +0 -51
  635. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.js.map +0 -1
  636. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.d.ts +0 -6
  637. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.d.ts.map +0 -1
  638. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.js +0 -16
  639. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.js.map +0 -1
  640. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.d.ts +0 -8
  641. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.d.ts.map +0 -1
  642. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.js +0 -74
  643. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.js.map +0 -1
  644. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.d.ts +0 -19
  645. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.d.ts.map +0 -1
  646. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.js +0 -39
  647. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.js.map +0 -1
  648. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.d.ts +0 -3
  649. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.d.ts.map +0 -1
  650. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.js +0 -18
  651. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.js.map +0 -1
  652. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.d.ts +0 -27
  653. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.d.ts.map +0 -1
  654. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.js +0 -226
  655. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.js.map +0 -1
  656. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.d.ts +0 -17
  657. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.d.ts.map +0 -1
  658. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.js +0 -106
  659. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.js.map +0 -1
  660. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.d.ts +0 -58
  661. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.d.ts.map +0 -1
  662. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.js +0 -169
  663. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.js.map +0 -1
  664. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.d.ts +0 -4
  665. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.d.ts.map +0 -1
  666. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.js +0 -37
  667. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.js.map +0 -1
  668. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.d.ts +0 -4
  669. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.d.ts.map +0 -1
  670. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.js +0 -43
  671. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.js.map +0 -1
  672. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.d.ts +0 -16
  673. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.d.ts.map +0 -1
  674. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.js +0 -59
  675. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.js.map +0 -1
  676. package/backend/node_modules/@typescript-eslint/type-utils/package.json +0 -81
  677. package/backend/node_modules/@typescript-eslint/utils/LICENSE +0 -21
  678. package/backend/node_modules/@typescript-eslint/utils/README.md +0 -12
  679. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts +0 -48
  680. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts.map +0 -1
  681. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.js +0 -36
  682. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.js.map +0 -1
  683. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts +0 -76
  684. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts.map +0 -1
  685. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.js +0 -40
  686. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.js.map +0 -1
  687. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.d.ts +0 -76
  688. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.d.ts.map +0 -1
  689. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.js +0 -99
  690. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.js.map +0 -1
  691. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.d.ts +0 -6
  692. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.d.ts.map +0 -1
  693. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.js +0 -22
  694. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.js.map +0 -1
  695. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts +0 -32
  696. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts.map +0 -1
  697. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.js +0 -72
  698. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.js.map +0 -1
  699. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts +0 -18
  700. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts.map +0 -1
  701. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.js +0 -44
  702. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.js.map +0 -1
  703. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.d.ts +0 -1231
  704. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.d.ts.map +0 -1
  705. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.js +0 -22
  706. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.js.map +0 -1
  707. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.d.ts +0 -5
  708. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.d.ts.map +0 -1
  709. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.js +0 -21
  710. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.js.map +0 -1
  711. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.d.ts +0 -8
  712. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.d.ts.map +0 -1
  713. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js +0 -13
  714. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js.map +0 -1
  715. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts +0 -70
  716. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts.map +0 -1
  717. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.js +0 -135
  718. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.js.map +0 -1
  719. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.d.ts +0 -11
  720. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.d.ts.map +0 -1
  721. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js +0 -3
  722. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js.map +0 -1
  723. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts +0 -35
  724. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts.map +0 -1
  725. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js +0 -45
  726. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js.map +0 -1
  727. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.d.ts +0 -10
  728. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.d.ts.map +0 -1
  729. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.js +0 -34
  730. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.js.map +0 -1
  731. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.d.ts +0 -10
  732. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.d.ts.map +0 -1
  733. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.js +0 -32
  734. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.js.map +0 -1
  735. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.d.ts +0 -17
  736. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.d.ts.map +0 -1
  737. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.js +0 -48
  738. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.js.map +0 -1
  739. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts +0 -24
  740. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts.map +0 -1
  741. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js +0 -46
  742. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js.map +0 -1
  743. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.d.ts +0 -8
  744. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.d.ts.map +0 -1
  745. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.js +0 -24
  746. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.js.map +0 -1
  747. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts +0 -14
  748. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts.map +0 -1
  749. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js +0 -28
  750. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js.map +0 -1
  751. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.d.ts +0 -2
  752. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.d.ts.map +0 -1
  753. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.js +0 -8
  754. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.js.map +0 -1
  755. package/backend/node_modules/@typescript-eslint/utils/dist/index.d.ts +0 -8
  756. package/backend/node_modules/@typescript-eslint/utils/dist/index.d.ts.map +0 -1
  757. package/backend/node_modules/@typescript-eslint/utils/dist/index.js +0 -41
  758. package/backend/node_modules/@typescript-eslint/utils/dist/index.js.map +0 -1
  759. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.d.ts +0 -388
  760. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.d.ts.map +0 -1
  761. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.js +0 -9
  762. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.js.map +0 -1
  763. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.d.ts +0 -9
  764. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.d.ts.map +0 -1
  765. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.js +0 -4
  766. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.js.map +0 -1
  767. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.d.ts +0 -131
  768. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.d.ts.map +0 -1
  769. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.js +0 -18
  770. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.js.map +0 -1
  771. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.d.ts +0 -260
  772. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.d.ts.map +0 -1
  773. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.js +0 -4
  774. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.js.map +0 -1
  775. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.d.ts +0 -374
  776. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.d.ts.map +0 -1
  777. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.js +0 -24
  778. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.js.map +0 -1
  779. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.d.ts +0 -247
  780. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.d.ts.map +0 -1
  781. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js +0 -14
  782. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js.map +0 -1
  783. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.d.ts +0 -89
  784. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.d.ts.map +0 -1
  785. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js +0 -4
  786. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js.map +0 -1
  787. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.d.ts +0 -2
  788. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.d.ts.map +0 -1
  789. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.js +0 -3
  790. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.js.map +0 -1
  791. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.d.ts +0 -37
  792. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.d.ts.map +0 -1
  793. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.js +0 -4
  794. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.js.map +0 -1
  795. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +0 -514
  796. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map +0 -1
  797. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.js +0 -3
  798. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.js.map +0 -1
  799. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.d.ts +0 -162
  800. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.d.ts.map +0 -1
  801. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.js +0 -8
  802. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.js.map +0 -1
  803. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.d.ts +0 -44
  804. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.d.ts.map +0 -1
  805. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.js +0 -34
  806. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.js.map +0 -1
  807. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.d.ts +0 -362
  808. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.d.ts.map +0 -1
  809. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.js +0 -9
  810. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.js.map +0 -1
  811. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.d.ts +0 -13
  812. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.d.ts.map +0 -1
  813. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.js +0 -29
  814. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.js.map +0 -1
  815. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.d.ts +0 -3
  816. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.d.ts.map +0 -1
  817. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.js +0 -10
  818. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.js.map +0 -1
  819. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.d.ts +0 -2
  820. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.d.ts.map +0 -1
  821. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.js +0 -18
  822. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.js.map +0 -1
  823. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.d.ts +0 -2
  824. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.d.ts.map +0 -1
  825. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.js +0 -9
  826. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.js.map +0 -1
  827. package/backend/node_modules/@typescript-eslint/utils/package.json +0 -98
  828. package/backend/node_modules/chalk/index.d.ts +0 -415
  829. package/backend/node_modules/chalk/license +0 -9
  830. package/backend/node_modules/chalk/package.json +0 -68
  831. package/backend/node_modules/chalk/readme.md +0 -341
  832. package/backend/node_modules/chalk/source/index.js +0 -229
  833. package/backend/node_modules/chalk/source/templates.js +0 -134
  834. package/backend/node_modules/chalk/source/util.js +0 -39
  835. package/backend/node_modules/debug/LICENSE +0 -20
  836. package/backend/node_modules/debug/README.md +0 -481
  837. package/backend/node_modules/debug/package.json +0 -64
  838. package/backend/node_modules/debug/src/browser.js +0 -272
  839. package/backend/node_modules/debug/src/common.js +0 -292
  840. package/backend/node_modules/debug/src/index.js +0 -10
  841. package/backend/node_modules/debug/src/node.js +0 -263
  842. package/backend/node_modules/eslint/LICENSE +0 -19
  843. package/backend/node_modules/eslint/README.md +0 -304
  844. package/backend/node_modules/eslint/bin/eslint.js +0 -173
  845. package/backend/node_modules/eslint/conf/config-schema.js +0 -93
  846. package/backend/node_modules/eslint/conf/default-cli-options.js +0 -32
  847. package/backend/node_modules/eslint/conf/globals.js +0 -154
  848. package/backend/node_modules/eslint/conf/replacements.json +0 -22
  849. package/backend/node_modules/eslint/conf/rule-type-list.json +0 -28
  850. package/backend/node_modules/eslint/lib/api.js +0 -54
  851. package/backend/node_modules/eslint/lib/cli-engine/cli-engine.js +0 -1078
  852. package/backend/node_modules/eslint/lib/cli-engine/file-enumerator.js +0 -547
  853. package/backend/node_modules/eslint/lib/cli-engine/formatters/checkstyle.js +0 -60
  854. package/backend/node_modules/eslint/lib/cli-engine/formatters/compact.js +0 -60
  855. package/backend/node_modules/eslint/lib/cli-engine/formatters/formatters-meta.json +0 -46
  856. package/backend/node_modules/eslint/lib/cli-engine/formatters/html.js +0 -351
  857. package/backend/node_modules/eslint/lib/cli-engine/formatters/jslint-xml.js +0 -41
  858. package/backend/node_modules/eslint/lib/cli-engine/formatters/json-with-metadata.js +0 -16
  859. package/backend/node_modules/eslint/lib/cli-engine/formatters/json.js +0 -13
  860. package/backend/node_modules/eslint/lib/cli-engine/formatters/junit.js +0 -82
  861. package/backend/node_modules/eslint/lib/cli-engine/formatters/stylish.js +0 -101
  862. package/backend/node_modules/eslint/lib/cli-engine/formatters/tap.js +0 -95
  863. package/backend/node_modules/eslint/lib/cli-engine/formatters/unix.js +0 -58
  864. package/backend/node_modules/eslint/lib/cli-engine/formatters/visualstudio.js +0 -63
  865. package/backend/node_modules/eslint/lib/cli-engine/hash.js +0 -35
  866. package/backend/node_modules/eslint/lib/cli-engine/index.js +0 -7
  867. package/backend/node_modules/eslint/lib/cli-engine/lint-result-cache.js +0 -203
  868. package/backend/node_modules/eslint/lib/cli-engine/load-rules.js +0 -46
  869. package/backend/node_modules/eslint/lib/cli-engine/xml-escape.js +0 -34
  870. package/backend/node_modules/eslint/lib/cli.js +0 -471
  871. package/backend/node_modules/eslint/lib/config/default-config.js +0 -67
  872. package/backend/node_modules/eslint/lib/config/flat-config-array.js +0 -380
  873. package/backend/node_modules/eslint/lib/config/flat-config-helpers.js +0 -111
  874. package/backend/node_modules/eslint/lib/config/flat-config-schema.js +0 -598
  875. package/backend/node_modules/eslint/lib/config/rule-validator.js +0 -158
  876. package/backend/node_modules/eslint/lib/eslint/eslint-helpers.js +0 -932
  877. package/backend/node_modules/eslint/lib/eslint/eslint.js +0 -707
  878. package/backend/node_modules/eslint/lib/eslint/flat-eslint.js +0 -1159
  879. package/backend/node_modules/eslint/lib/eslint/index.js +0 -9
  880. package/backend/node_modules/eslint/lib/linter/apply-disable-directives.js +0 -465
  881. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js +0 -852
  882. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-segment.js +0 -263
  883. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-state.js +0 -2348
  884. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path.js +0 -342
  885. package/backend/node_modules/eslint/lib/linter/code-path-analysis/debug-helpers.js +0 -203
  886. package/backend/node_modules/eslint/lib/linter/code-path-analysis/fork-context.js +0 -349
  887. package/backend/node_modules/eslint/lib/linter/code-path-analysis/id-generator.js +0 -45
  888. package/backend/node_modules/eslint/lib/linter/config-comment-parser.js +0 -185
  889. package/backend/node_modules/eslint/lib/linter/index.js +0 -13
  890. package/backend/node_modules/eslint/lib/linter/interpolate.js +0 -28
  891. package/backend/node_modules/eslint/lib/linter/linter.js +0 -2119
  892. package/backend/node_modules/eslint/lib/linter/node-event-generator.js +0 -354
  893. package/backend/node_modules/eslint/lib/linter/report-translator.js +0 -369
  894. package/backend/node_modules/eslint/lib/linter/rule-fixer.js +0 -140
  895. package/backend/node_modules/eslint/lib/linter/rules.js +0 -80
  896. package/backend/node_modules/eslint/lib/linter/safe-emitter.js +0 -52
  897. package/backend/node_modules/eslint/lib/linter/source-code-fixer.js +0 -152
  898. package/backend/node_modules/eslint/lib/linter/timing.js +0 -161
  899. package/backend/node_modules/eslint/lib/options.js +0 -398
  900. package/backend/node_modules/eslint/lib/rule-tester/flat-rule-tester.js +0 -1131
  901. package/backend/node_modules/eslint/lib/rule-tester/index.js +0 -5
  902. package/backend/node_modules/eslint/lib/rule-tester/rule-tester.js +0 -1206
  903. package/backend/node_modules/eslint/lib/rules/accessor-pairs.js +0 -346
  904. package/backend/node_modules/eslint/lib/rules/array-bracket-newline.js +0 -261
  905. package/backend/node_modules/eslint/lib/rules/array-bracket-spacing.js +0 -244
  906. package/backend/node_modules/eslint/lib/rules/array-callback-return.js +0 -446
  907. package/backend/node_modules/eslint/lib/rules/array-element-newline.js +0 -311
  908. package/backend/node_modules/eslint/lib/rules/arrow-body-style.js +0 -296
  909. package/backend/node_modules/eslint/lib/rules/arrow-parens.js +0 -186
  910. package/backend/node_modules/eslint/lib/rules/arrow-spacing.js +0 -164
  911. package/backend/node_modules/eslint/lib/rules/block-scoped-var.js +0 -135
  912. package/backend/node_modules/eslint/lib/rules/block-spacing.js +0 -174
  913. package/backend/node_modules/eslint/lib/rules/brace-style.js +0 -197
  914. package/backend/node_modules/eslint/lib/rules/callback-return.js +0 -187
  915. package/backend/node_modules/eslint/lib/rules/camelcase.js +0 -399
  916. package/backend/node_modules/eslint/lib/rules/capitalized-comments.js +0 -300
  917. package/backend/node_modules/eslint/lib/rules/class-methods-use-this.js +0 -187
  918. package/backend/node_modules/eslint/lib/rules/comma-dangle.js +0 -373
  919. package/backend/node_modules/eslint/lib/rules/comma-spacing.js +0 -192
  920. package/backend/node_modules/eslint/lib/rules/comma-style.js +0 -314
  921. package/backend/node_modules/eslint/lib/rules/complexity.js +0 -165
  922. package/backend/node_modules/eslint/lib/rules/computed-property-spacing.js +0 -208
  923. package/backend/node_modules/eslint/lib/rules/consistent-return.js +0 -210
  924. package/backend/node_modules/eslint/lib/rules/consistent-this.js +0 -153
  925. package/backend/node_modules/eslint/lib/rules/constructor-super.js +0 -446
  926. package/backend/node_modules/eslint/lib/rules/curly.js +0 -486
  927. package/backend/node_modules/eslint/lib/rules/default-case-last.js +0 -44
  928. package/backend/node_modules/eslint/lib/rules/default-case.js +0 -97
  929. package/backend/node_modules/eslint/lib/rules/default-param-last.js +0 -62
  930. package/backend/node_modules/eslint/lib/rules/dot-location.js +0 -108
  931. package/backend/node_modules/eslint/lib/rules/dot-notation.js +0 -176
  932. package/backend/node_modules/eslint/lib/rules/eol-last.js +0 -115
  933. package/backend/node_modules/eslint/lib/rules/eqeqeq.js +0 -174
  934. package/backend/node_modules/eslint/lib/rules/for-direction.js +0 -140
  935. package/backend/node_modules/eslint/lib/rules/func-call-spacing.js +0 -233
  936. package/backend/node_modules/eslint/lib/rules/func-name-matching.js +0 -253
  937. package/backend/node_modules/eslint/lib/rules/func-names.js +0 -191
  938. package/backend/node_modules/eslint/lib/rules/func-style.js +0 -98
  939. package/backend/node_modules/eslint/lib/rules/function-call-argument-newline.js +0 -125
  940. package/backend/node_modules/eslint/lib/rules/function-paren-newline.js +0 -292
  941. package/backend/node_modules/eslint/lib/rules/generator-star-spacing.js +0 -209
  942. package/backend/node_modules/eslint/lib/rules/getter-return.js +0 -204
  943. package/backend/node_modules/eslint/lib/rules/global-require.js +0 -90
  944. package/backend/node_modules/eslint/lib/rules/grouped-accessor-pairs.js +0 -215
  945. package/backend/node_modules/eslint/lib/rules/guard-for-in.js +0 -76
  946. package/backend/node_modules/eslint/lib/rules/handle-callback-err.js +0 -101
  947. package/backend/node_modules/eslint/lib/rules/id-blacklist.js +0 -246
  948. package/backend/node_modules/eslint/lib/rules/id-denylist.js +0 -228
  949. package/backend/node_modules/eslint/lib/rules/id-length.js +0 -177
  950. package/backend/node_modules/eslint/lib/rules/id-match.js +0 -299
  951. package/backend/node_modules/eslint/lib/rules/implicit-arrow-linebreak.js +0 -84
  952. package/backend/node_modules/eslint/lib/rules/indent-legacy.js +0 -1126
  953. package/backend/node_modules/eslint/lib/rules/indent.js +0 -1803
  954. package/backend/node_modules/eslint/lib/rules/index.js +0 -306
  955. package/backend/node_modules/eslint/lib/rules/init-declarations.js +0 -139
  956. package/backend/node_modules/eslint/lib/rules/jsx-quotes.js +0 -98
  957. package/backend/node_modules/eslint/lib/rules/key-spacing.js +0 -687
  958. package/backend/node_modules/eslint/lib/rules/keyword-spacing.js +0 -640
  959. package/backend/node_modules/eslint/lib/rules/line-comment-position.js +0 -122
  960. package/backend/node_modules/eslint/lib/rules/linebreak-style.js +0 -108
  961. package/backend/node_modules/eslint/lib/rules/lines-around-comment.js +0 -471
  962. package/backend/node_modules/eslint/lib/rules/lines-around-directive.js +0 -201
  963. package/backend/node_modules/eslint/lib/rules/lines-between-class-members.js +0 -269
  964. package/backend/node_modules/eslint/lib/rules/logical-assignment-operators.js +0 -504
  965. package/backend/node_modules/eslint/lib/rules/max-classes-per-file.js +0 -89
  966. package/backend/node_modules/eslint/lib/rules/max-depth.js +0 -156
  967. package/backend/node_modules/eslint/lib/rules/max-len.js +0 -440
  968. package/backend/node_modules/eslint/lib/rules/max-lines-per-function.js +0 -213
  969. package/backend/node_modules/eslint/lib/rules/max-lines.js +0 -193
  970. package/backend/node_modules/eslint/lib/rules/max-nested-callbacks.js +0 -117
  971. package/backend/node_modules/eslint/lib/rules/max-params.js +0 -102
  972. package/backend/node_modules/eslint/lib/rules/max-statements-per-line.js +0 -199
  973. package/backend/node_modules/eslint/lib/rules/max-statements.js +0 -184
  974. package/backend/node_modules/eslint/lib/rules/multiline-comment-style.js +0 -474
  975. package/backend/node_modules/eslint/lib/rules/multiline-ternary.js +0 -174
  976. package/backend/node_modules/eslint/lib/rules/new-cap.js +0 -276
  977. package/backend/node_modules/eslint/lib/rules/new-parens.js +0 -93
  978. package/backend/node_modules/eslint/lib/rules/newline-after-var.js +0 -253
  979. package/backend/node_modules/eslint/lib/rules/newline-before-return.js +0 -217
  980. package/backend/node_modules/eslint/lib/rules/newline-per-chained-call.js +0 -126
  981. package/backend/node_modules/eslint/lib/rules/no-alert.js +0 -138
  982. package/backend/node_modules/eslint/lib/rules/no-array-constructor.js +0 -133
  983. package/backend/node_modules/eslint/lib/rules/no-async-promise-executor.js +0 -39
  984. package/backend/node_modules/eslint/lib/rules/no-await-in-loop.js +0 -106
  985. package/backend/node_modules/eslint/lib/rules/no-bitwise.js +0 -119
  986. package/backend/node_modules/eslint/lib/rules/no-buffer-constructor.js +0 -50
  987. package/backend/node_modules/eslint/lib/rules/no-caller.js +0 -46
  988. package/backend/node_modules/eslint/lib/rules/no-case-declarations.js +0 -64
  989. package/backend/node_modules/eslint/lib/rules/no-catch-shadow.js +0 -82
  990. package/backend/node_modules/eslint/lib/rules/no-class-assign.js +0 -63
  991. package/backend/node_modules/eslint/lib/rules/no-compare-neg-zero.js +0 -60
  992. package/backend/node_modules/eslint/lib/rules/no-cond-assign.js +0 -159
  993. package/backend/node_modules/eslint/lib/rules/no-confusing-arrow.js +0 -92
  994. package/backend/node_modules/eslint/lib/rules/no-console.js +0 -207
  995. package/backend/node_modules/eslint/lib/rules/no-const-assign.js +0 -56
  996. package/backend/node_modules/eslint/lib/rules/no-constant-binary-expression.js +0 -509
  997. package/backend/node_modules/eslint/lib/rules/no-constant-condition.js +0 -150
  998. package/backend/node_modules/eslint/lib/rules/no-constructor-return.js +0 -62
  999. package/backend/node_modules/eslint/lib/rules/no-continue.js +0 -39
  1000. package/backend/node_modules/eslint/lib/rules/no-control-regex.js +0 -138
  1001. package/backend/node_modules/eslint/lib/rules/no-debugger.js +0 -43
  1002. package/backend/node_modules/eslint/lib/rules/no-delete-var.js +0 -42
  1003. package/backend/node_modules/eslint/lib/rules/no-div-regex.js +0 -53
  1004. package/backend/node_modules/eslint/lib/rules/no-dupe-args.js +0 -82
  1005. package/backend/node_modules/eslint/lib/rules/no-dupe-class-members.js +0 -104
  1006. package/backend/node_modules/eslint/lib/rules/no-dupe-else-if.js +0 -122
  1007. package/backend/node_modules/eslint/lib/rules/no-dupe-keys.js +0 -142
  1008. package/backend/node_modules/eslint/lib/rules/no-duplicate-case.js +0 -71
  1009. package/backend/node_modules/eslint/lib/rules/no-duplicate-imports.js +0 -290
  1010. package/backend/node_modules/eslint/lib/rules/no-else-return.js +0 -405
  1011. package/backend/node_modules/eslint/lib/rules/no-empty-character-class.js +0 -76
  1012. package/backend/node_modules/eslint/lib/rules/no-empty-function.js +0 -167
  1013. package/backend/node_modules/eslint/lib/rules/no-empty-pattern.js +0 -78
  1014. package/backend/node_modules/eslint/lib/rules/no-empty-static-block.js +0 -47
  1015. package/backend/node_modules/eslint/lib/rules/no-empty.js +0 -103
  1016. package/backend/node_modules/eslint/lib/rules/no-eq-null.js +0 -46
  1017. package/backend/node_modules/eslint/lib/rules/no-eval.js +0 -286
  1018. package/backend/node_modules/eslint/lib/rules/no-ex-assign.js +0 -54
  1019. package/backend/node_modules/eslint/lib/rules/no-extend-native.js +0 -179
  1020. package/backend/node_modules/eslint/lib/rules/no-extra-bind.js +0 -213
  1021. package/backend/node_modules/eslint/lib/rules/no-extra-boolean-cast.js +0 -317
  1022. package/backend/node_modules/eslint/lib/rules/no-extra-label.js +0 -149
  1023. package/backend/node_modules/eslint/lib/rules/no-extra-parens.js +0 -1322
  1024. package/backend/node_modules/eslint/lib/rules/no-extra-semi.js +0 -147
  1025. package/backend/node_modules/eslint/lib/rules/no-fallthrough.js +0 -196
  1026. package/backend/node_modules/eslint/lib/rules/no-floating-decimal.js +0 -73
  1027. package/backend/node_modules/eslint/lib/rules/no-func-assign.js +0 -78
  1028. package/backend/node_modules/eslint/lib/rules/no-global-assign.js +0 -95
  1029. package/backend/node_modules/eslint/lib/rules/no-implicit-coercion.js +0 -380
  1030. package/backend/node_modules/eslint/lib/rules/no-implicit-globals.js +0 -146
  1031. package/backend/node_modules/eslint/lib/rules/no-implied-eval.js +0 -132
  1032. package/backend/node_modules/eslint/lib/rules/no-import-assign.js +0 -241
  1033. package/backend/node_modules/eslint/lib/rules/no-inline-comments.js +0 -110
  1034. package/backend/node_modules/eslint/lib/rules/no-inner-declarations.js +0 -110
  1035. package/backend/node_modules/eslint/lib/rules/no-invalid-regexp.js +0 -194
  1036. package/backend/node_modules/eslint/lib/rules/no-invalid-this.js +0 -150
  1037. package/backend/node_modules/eslint/lib/rules/no-irregular-whitespace.js +0 -276
  1038. package/backend/node_modules/eslint/lib/rules/no-iterator.js +0 -52
  1039. package/backend/node_modules/eslint/lib/rules/no-label-var.js +0 -80
  1040. package/backend/node_modules/eslint/lib/rules/no-labels.js +0 -149
  1041. package/backend/node_modules/eslint/lib/rules/no-lone-blocks.js +0 -136
  1042. package/backend/node_modules/eslint/lib/rules/no-lonely-if.js +0 -88
  1043. package/backend/node_modules/eslint/lib/rules/no-loop-func.js +0 -206
  1044. package/backend/node_modules/eslint/lib/rules/no-loss-of-precision.js +0 -214
  1045. package/backend/node_modules/eslint/lib/rules/no-magic-numbers.js +0 -243
  1046. package/backend/node_modules/eslint/lib/rules/no-misleading-character-class.js +0 -300
  1047. package/backend/node_modules/eslint/lib/rules/no-mixed-operators.js +0 -229
  1048. package/backend/node_modules/eslint/lib/rules/no-mixed-requires.js +0 -238
  1049. package/backend/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +0 -116
  1050. package/backend/node_modules/eslint/lib/rules/no-multi-assign.js +0 -67
  1051. package/backend/node_modules/eslint/lib/rules/no-multi-spaces.js +0 -141
  1052. package/backend/node_modules/eslint/lib/rules/no-multi-str.js +0 -65
  1053. package/backend/node_modules/eslint/lib/rules/no-multiple-empty-lines.js +0 -154
  1054. package/backend/node_modules/eslint/lib/rules/no-native-reassign.js +0 -98
  1055. package/backend/node_modules/eslint/lib/rules/no-negated-condition.js +0 -95
  1056. package/backend/node_modules/eslint/lib/rules/no-negated-in-lhs.js +0 -46
  1057. package/backend/node_modules/eslint/lib/rules/no-nested-ternary.js +0 -44
  1058. package/backend/node_modules/eslint/lib/rules/no-new-func.js +0 -87
  1059. package/backend/node_modules/eslint/lib/rules/no-new-native-nonconstructor.js +0 -66
  1060. package/backend/node_modules/eslint/lib/rules/no-new-object.js +0 -67
  1061. package/backend/node_modules/eslint/lib/rules/no-new-require.js +0 -50
  1062. package/backend/node_modules/eslint/lib/rules/no-new-symbol.js +0 -56
  1063. package/backend/node_modules/eslint/lib/rules/no-new-wrappers.js +0 -60
  1064. package/backend/node_modules/eslint/lib/rules/no-new.js +0 -43
  1065. package/backend/node_modules/eslint/lib/rules/no-nonoctal-decimal-escape.js +0 -148
  1066. package/backend/node_modules/eslint/lib/rules/no-obj-calls.js +0 -86
  1067. package/backend/node_modules/eslint/lib/rules/no-object-constructor.js +0 -117
  1068. package/backend/node_modules/eslint/lib/rules/no-octal-escape.js +0 -56
  1069. package/backend/node_modules/eslint/lib/rules/no-octal.js +0 -45
  1070. package/backend/node_modules/eslint/lib/rules/no-param-reassign.js +0 -230
  1071. package/backend/node_modules/eslint/lib/rules/no-path-concat.js +0 -64
  1072. package/backend/node_modules/eslint/lib/rules/no-plusplus.js +0 -105
  1073. package/backend/node_modules/eslint/lib/rules/no-process-env.js +0 -51
  1074. package/backend/node_modules/eslint/lib/rules/no-process-exit.js +0 -47
  1075. package/backend/node_modules/eslint/lib/rules/no-promise-executor-return.js +0 -263
  1076. package/backend/node_modules/eslint/lib/rules/no-proto.js +0 -48
  1077. package/backend/node_modules/eslint/lib/rules/no-prototype-builtins.js +0 -159
  1078. package/backend/node_modules/eslint/lib/rules/no-redeclare.js +0 -174
  1079. package/backend/node_modules/eslint/lib/rules/no-regex-spaces.js +0 -197
  1080. package/backend/node_modules/eslint/lib/rules/no-restricted-exports.js +0 -193
  1081. package/backend/node_modules/eslint/lib/rules/no-restricted-globals.js +0 -124
  1082. package/backend/node_modules/eslint/lib/rules/no-restricted-imports.js +0 -410
  1083. package/backend/node_modules/eslint/lib/rules/no-restricted-modules.js +0 -213
  1084. package/backend/node_modules/eslint/lib/rules/no-restricted-properties.js +0 -168
  1085. package/backend/node_modules/eslint/lib/rules/no-restricted-syntax.js +0 -70
  1086. package/backend/node_modules/eslint/lib/rules/no-return-assign.js +0 -80
  1087. package/backend/node_modules/eslint/lib/rules/no-return-await.js +0 -135
  1088. package/backend/node_modules/eslint/lib/rules/no-script-url.js +0 -61
  1089. package/backend/node_modules/eslint/lib/rules/no-self-assign.js +0 -183
  1090. package/backend/node_modules/eslint/lib/rules/no-self-compare.js +0 -60
  1091. package/backend/node_modules/eslint/lib/rules/no-sequences.js +0 -138
  1092. package/backend/node_modules/eslint/lib/rules/no-setter-return.js +0 -226
  1093. package/backend/node_modules/eslint/lib/rules/no-shadow-restricted-names.js +0 -65
  1094. package/backend/node_modules/eslint/lib/rules/no-shadow.js +0 -336
  1095. package/backend/node_modules/eslint/lib/rules/no-spaced-func.js +0 -83
  1096. package/backend/node_modules/eslint/lib/rules/no-sparse-arrays.js +0 -50
  1097. package/backend/node_modules/eslint/lib/rules/no-sync.js +0 -64
  1098. package/backend/node_modules/eslint/lib/rules/no-tabs.js +0 -81
  1099. package/backend/node_modules/eslint/lib/rules/no-template-curly-in-string.js +0 -44
  1100. package/backend/node_modules/eslint/lib/rules/no-ternary.js +0 -41
  1101. package/backend/node_modules/eslint/lib/rules/no-this-before-super.js +0 -331
  1102. package/backend/node_modules/eslint/lib/rules/no-throw-literal.js +0 -51
  1103. package/backend/node_modules/eslint/lib/rules/no-trailing-spaces.js +0 -193
  1104. package/backend/node_modules/eslint/lib/rules/no-undef-init.js +0 -75
  1105. package/backend/node_modules/eslint/lib/rules/no-undef.js +0 -79
  1106. package/backend/node_modules/eslint/lib/rules/no-undefined.js +0 -86
  1107. package/backend/node_modules/eslint/lib/rules/no-underscore-dangle.js +0 -335
  1108. package/backend/node_modules/eslint/lib/rules/no-unexpected-multiline.js +0 -120
  1109. package/backend/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +0 -360
  1110. package/backend/node_modules/eslint/lib/rules/no-unneeded-ternary.js +0 -166
  1111. package/backend/node_modules/eslint/lib/rules/no-unreachable-loop.js +0 -185
  1112. package/backend/node_modules/eslint/lib/rules/no-unreachable.js +0 -293
  1113. package/backend/node_modules/eslint/lib/rules/no-unsafe-finally.js +0 -111
  1114. package/backend/node_modules/eslint/lib/rules/no-unsafe-negation.js +0 -128
  1115. package/backend/node_modules/eslint/lib/rules/no-unsafe-optional-chaining.js +0 -205
  1116. package/backend/node_modules/eslint/lib/rules/no-unused-expressions.js +0 -186
  1117. package/backend/node_modules/eslint/lib/rules/no-unused-labels.js +0 -143
  1118. package/backend/node_modules/eslint/lib/rules/no-unused-private-class-members.js +0 -195
  1119. package/backend/node_modules/eslint/lib/rules/no-unused-vars.js +0 -718
  1120. package/backend/node_modules/eslint/lib/rules/no-use-before-define.js +0 -348
  1121. package/backend/node_modules/eslint/lib/rules/no-useless-backreference.js +0 -194
  1122. package/backend/node_modules/eslint/lib/rules/no-useless-call.js +0 -90
  1123. package/backend/node_modules/eslint/lib/rules/no-useless-catch.js +0 -57
  1124. package/backend/node_modules/eslint/lib/rules/no-useless-computed-key.js +0 -168
  1125. package/backend/node_modules/eslint/lib/rules/no-useless-concat.js +0 -115
  1126. package/backend/node_modules/eslint/lib/rules/no-useless-constructor.js +0 -189
  1127. package/backend/node_modules/eslint/lib/rules/no-useless-escape.js +0 -333
  1128. package/backend/node_modules/eslint/lib/rules/no-useless-rename.js +0 -172
  1129. package/backend/node_modules/eslint/lib/rules/no-useless-return.js +0 -364
  1130. package/backend/node_modules/eslint/lib/rules/no-var.js +0 -334
  1131. package/backend/node_modules/eslint/lib/rules/no-void.js +0 -64
  1132. package/backend/node_modules/eslint/lib/rules/no-warning-comments.js +0 -201
  1133. package/backend/node_modules/eslint/lib/rules/no-whitespace-before-property.js +0 -116
  1134. package/backend/node_modules/eslint/lib/rules/no-with.js +0 -39
  1135. package/backend/node_modules/eslint/lib/rules/nonblock-statement-body-position.js +0 -127
  1136. package/backend/node_modules/eslint/lib/rules/object-curly-newline.js +0 -324
  1137. package/backend/node_modules/eslint/lib/rules/object-curly-spacing.js +0 -311
  1138. package/backend/node_modules/eslint/lib/rules/object-property-newline.js +0 -102
  1139. package/backend/node_modules/eslint/lib/rules/object-shorthand.js +0 -520
  1140. package/backend/node_modules/eslint/lib/rules/one-var-declaration-per-line.js +0 -95
  1141. package/backend/node_modules/eslint/lib/rules/one-var.js +0 -567
  1142. package/backend/node_modules/eslint/lib/rules/operator-assignment.js +0 -209
  1143. package/backend/node_modules/eslint/lib/rules/operator-linebreak.js +0 -253
  1144. package/backend/node_modules/eslint/lib/rules/padded-blocks.js +0 -310
  1145. package/backend/node_modules/eslint/lib/rules/padding-line-between-statements.js +0 -590
  1146. package/backend/node_modules/eslint/lib/rules/prefer-arrow-callback.js +0 -381
  1147. package/backend/node_modules/eslint/lib/rules/prefer-const.js +0 -501
  1148. package/backend/node_modules/eslint/lib/rules/prefer-destructuring.js +0 -301
  1149. package/backend/node_modules/eslint/lib/rules/prefer-exponentiation-operator.js +0 -191
  1150. package/backend/node_modules/eslint/lib/rules/prefer-named-capture-group.js +0 -178
  1151. package/backend/node_modules/eslint/lib/rules/prefer-numeric-literals.js +0 -148
  1152. package/backend/node_modules/eslint/lib/rules/prefer-object-has-own.js +0 -114
  1153. package/backend/node_modules/eslint/lib/rules/prefer-object-spread.js +0 -298
  1154. package/backend/node_modules/eslint/lib/rules/prefer-promise-reject-errors.js +0 -132
  1155. package/backend/node_modules/eslint/lib/rules/prefer-reflect.js +0 -127
  1156. package/backend/node_modules/eslint/lib/rules/prefer-regex-literals.js +0 -507
  1157. package/backend/node_modules/eslint/lib/rules/prefer-rest-params.js +0 -118
  1158. package/backend/node_modules/eslint/lib/rules/prefer-spread.js +0 -87
  1159. package/backend/node_modules/eslint/lib/rules/prefer-template.js +0 -275
  1160. package/backend/node_modules/eslint/lib/rules/quote-props.js +0 -310
  1161. package/backend/node_modules/eslint/lib/rules/quotes.js +0 -350
  1162. package/backend/node_modules/eslint/lib/rules/radix.js +0 -198
  1163. package/backend/node_modules/eslint/lib/rules/require-atomic-updates.js +0 -331
  1164. package/backend/node_modules/eslint/lib/rules/require-await.js +0 -113
  1165. package/backend/node_modules/eslint/lib/rules/require-jsdoc.js +0 -122
  1166. package/backend/node_modules/eslint/lib/rules/require-unicode-regexp.js +0 -129
  1167. package/backend/node_modules/eslint/lib/rules/require-yield.js +0 -77
  1168. package/backend/node_modules/eslint/lib/rules/rest-spread-spacing.js +0 -123
  1169. package/backend/node_modules/eslint/lib/rules/semi-spacing.js +0 -248
  1170. package/backend/node_modules/eslint/lib/rules/semi-style.js +0 -158
  1171. package/backend/node_modules/eslint/lib/rules/semi.js +0 -438
  1172. package/backend/node_modules/eslint/lib/rules/sort-imports.js +0 -241
  1173. package/backend/node_modules/eslint/lib/rules/sort-keys.js +0 -230
  1174. package/backend/node_modules/eslint/lib/rules/sort-vars.js +0 -104
  1175. package/backend/node_modules/eslint/lib/rules/space-before-blocks.js +0 -204
  1176. package/backend/node_modules/eslint/lib/rules/space-before-function-paren.js +0 -167
  1177. package/backend/node_modules/eslint/lib/rules/space-in-parens.js +0 -285
  1178. package/backend/node_modules/eslint/lib/rules/space-infix-ops.js +0 -198
  1179. package/backend/node_modules/eslint/lib/rules/space-unary-ops.js +0 -324
  1180. package/backend/node_modules/eslint/lib/rules/spaced-comment.js +0 -385
  1181. package/backend/node_modules/eslint/lib/rules/strict.js +0 -277
  1182. package/backend/node_modules/eslint/lib/rules/switch-colon-spacing.js +0 -132
  1183. package/backend/node_modules/eslint/lib/rules/symbol-description.js +0 -73
  1184. package/backend/node_modules/eslint/lib/rules/template-curly-spacing.js +0 -144
  1185. package/backend/node_modules/eslint/lib/rules/template-tag-spacing.js +0 -93
  1186. package/backend/node_modules/eslint/lib/rules/unicode-bom.js +0 -73
  1187. package/backend/node_modules/eslint/lib/rules/use-isnan.js +0 -141
  1188. package/backend/node_modules/eslint/lib/rules/utils/ast-utils.js +0 -2282
  1189. package/backend/node_modules/eslint/lib/rules/utils/fix-tracker.js +0 -114
  1190. package/backend/node_modules/eslint/lib/rules/utils/keywords.js +0 -67
  1191. package/backend/node_modules/eslint/lib/rules/utils/lazy-loading-rule-map.js +0 -115
  1192. package/backend/node_modules/eslint/lib/rules/utils/patterns/letters.js +0 -36
  1193. package/backend/node_modules/eslint/lib/rules/utils/regular-expressions.js +0 -42
  1194. package/backend/node_modules/eslint/lib/rules/utils/unicode/index.js +0 -11
  1195. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-combining-character.js +0 -13
  1196. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-emoji-modifier.js +0 -13
  1197. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-regional-indicator-symbol.js +0 -13
  1198. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-surrogate-pair.js +0 -14
  1199. package/backend/node_modules/eslint/lib/rules/valid-jsdoc.js +0 -516
  1200. package/backend/node_modules/eslint/lib/rules/valid-typeof.js +0 -127
  1201. package/backend/node_modules/eslint/lib/rules/vars-on-top.js +0 -157
  1202. package/backend/node_modules/eslint/lib/rules/wrap-iife.js +0 -207
  1203. package/backend/node_modules/eslint/lib/rules/wrap-regex.js +0 -61
  1204. package/backend/node_modules/eslint/lib/rules/yield-star-spacing.js +0 -130
  1205. package/backend/node_modules/eslint/lib/rules/yoda.js +0 -353
  1206. package/backend/node_modules/eslint/lib/shared/ajv.js +0 -34
  1207. package/backend/node_modules/eslint/lib/shared/ast-utils.js +0 -29
  1208. package/backend/node_modules/eslint/lib/shared/config-validator.js +0 -347
  1209. package/backend/node_modules/eslint/lib/shared/deprecation-warnings.js +0 -58
  1210. package/backend/node_modules/eslint/lib/shared/directives.js +0 -15
  1211. package/backend/node_modules/eslint/lib/shared/logging.js +0 -30
  1212. package/backend/node_modules/eslint/lib/shared/relative-module-resolver.js +0 -50
  1213. package/backend/node_modules/eslint/lib/shared/runtime-info.js +0 -167
  1214. package/backend/node_modules/eslint/lib/shared/severity.js +0 -49
  1215. package/backend/node_modules/eslint/lib/shared/string-utils.js +0 -60
  1216. package/backend/node_modules/eslint/lib/shared/traverser.js +0 -195
  1217. package/backend/node_modules/eslint/lib/shared/types.js +0 -216
  1218. package/backend/node_modules/eslint/lib/source-code/index.js +0 -5
  1219. package/backend/node_modules/eslint/lib/source-code/source-code.js +0 -1055
  1220. package/backend/node_modules/eslint/lib/source-code/token-store/backward-token-comment-cursor.js +0 -57
  1221. package/backend/node_modules/eslint/lib/source-code/token-store/backward-token-cursor.js +0 -58
  1222. package/backend/node_modules/eslint/lib/source-code/token-store/cursor.js +0 -76
  1223. package/backend/node_modules/eslint/lib/source-code/token-store/cursors.js +0 -90
  1224. package/backend/node_modules/eslint/lib/source-code/token-store/decorative-cursor.js +0 -39
  1225. package/backend/node_modules/eslint/lib/source-code/token-store/filter-cursor.js +0 -43
  1226. package/backend/node_modules/eslint/lib/source-code/token-store/forward-token-comment-cursor.js +0 -57
  1227. package/backend/node_modules/eslint/lib/source-code/token-store/forward-token-cursor.js +0 -63
  1228. package/backend/node_modules/eslint/lib/source-code/token-store/index.js +0 -627
  1229. package/backend/node_modules/eslint/lib/source-code/token-store/limit-cursor.js +0 -40
  1230. package/backend/node_modules/eslint/lib/source-code/token-store/padded-token-cursor.js +0 -38
  1231. package/backend/node_modules/eslint/lib/source-code/token-store/skip-cursor.js +0 -42
  1232. package/backend/node_modules/eslint/lib/source-code/token-store/utils.js +0 -107
  1233. package/backend/node_modules/eslint/lib/unsupported-api.js +0 -30
  1234. package/backend/node_modules/eslint/messages/all-files-ignored.js +0 -16
  1235. package/backend/node_modules/eslint/messages/eslintrc-incompat.js +0 -98
  1236. package/backend/node_modules/eslint/messages/eslintrc-plugins.js +0 -24
  1237. package/backend/node_modules/eslint/messages/extend-config-missing.js +0 -13
  1238. package/backend/node_modules/eslint/messages/failed-to-read-json.js +0 -11
  1239. package/backend/node_modules/eslint/messages/file-not-found.js +0 -10
  1240. package/backend/node_modules/eslint/messages/invalid-rule-options.js +0 -17
  1241. package/backend/node_modules/eslint/messages/invalid-rule-severity.js +0 -13
  1242. package/backend/node_modules/eslint/messages/no-config-found.js +0 -15
  1243. package/backend/node_modules/eslint/messages/plugin-conflict.js +0 -22
  1244. package/backend/node_modules/eslint/messages/plugin-invalid.js +0 -16
  1245. package/backend/node_modules/eslint/messages/plugin-missing.js +0 -19
  1246. package/backend/node_modules/eslint/messages/print-config-with-directory-path.js +0 -8
  1247. package/backend/node_modules/eslint/messages/shared.js +0 -18
  1248. package/backend/node_modules/eslint/messages/whitespace-found.js +0 -11
  1249. package/backend/node_modules/eslint/package.json +0 -181
  1250. package/backend/node_modules/supports-color/browser.js +0 -5
  1251. package/backend/node_modules/supports-color/index.js +0 -135
  1252. package/backend/node_modules/supports-color/license +0 -9
  1253. package/backend/node_modules/supports-color/package.json +0 -53
  1254. package/backend/node_modules/supports-color/readme.md +0 -76
@@ -1,2119 +0,0 @@
1
- /**
2
- * @fileoverview Main Linter Class
3
- * @author Gyandeep Singh
4
- * @author aladdin-add
5
- */
6
-
7
- "use strict";
8
-
9
- //------------------------------------------------------------------------------
10
- // Requirements
11
- //------------------------------------------------------------------------------
12
-
13
- const
14
- path = require("path"),
15
- eslintScope = require("eslint-scope"),
16
- evk = require("eslint-visitor-keys"),
17
- espree = require("espree"),
18
- merge = require("lodash.merge"),
19
- pkg = require("../../package.json"),
20
- astUtils = require("../shared/ast-utils"),
21
- {
22
- directivesPattern
23
- } = require("../shared/directives"),
24
- {
25
- Legacy: {
26
- ConfigOps,
27
- ConfigValidator,
28
- environments: BuiltInEnvironments
29
- }
30
- } = require("@eslint/eslintrc/universal"),
31
- Traverser = require("../shared/traverser"),
32
- { SourceCode } = require("../source-code"),
33
- CodePathAnalyzer = require("./code-path-analysis/code-path-analyzer"),
34
- applyDisableDirectives = require("./apply-disable-directives"),
35
- ConfigCommentParser = require("./config-comment-parser"),
36
- NodeEventGenerator = require("./node-event-generator"),
37
- createReportTranslator = require("./report-translator"),
38
- Rules = require("./rules"),
39
- createEmitter = require("./safe-emitter"),
40
- SourceCodeFixer = require("./source-code-fixer"),
41
- timing = require("./timing"),
42
- ruleReplacements = require("../../conf/replacements.json");
43
- const { getRuleFromConfig } = require("../config/flat-config-helpers");
44
- const { FlatConfigArray } = require("../config/flat-config-array");
45
- const { RuleValidator } = require("../config/rule-validator");
46
- const { assertIsRuleOptions, assertIsRuleSeverity } = require("../config/flat-config-schema");
47
- const { normalizeSeverityToString } = require("../shared/severity");
48
- const debug = require("debug")("eslint:linter");
49
- const MAX_AUTOFIX_PASSES = 10;
50
- const DEFAULT_PARSER_NAME = "espree";
51
- const DEFAULT_ECMA_VERSION = 5;
52
- const commentParser = new ConfigCommentParser();
53
- const DEFAULT_ERROR_LOC = { start: { line: 1, column: 0 }, end: { line: 1, column: 1 } };
54
- const parserSymbol = Symbol.for("eslint.RuleTester.parser");
55
-
56
- //------------------------------------------------------------------------------
57
- // Typedefs
58
- //------------------------------------------------------------------------------
59
-
60
- /** @typedef {InstanceType<import("../cli-engine/config-array").ConfigArray>} ConfigArray */
61
- /** @typedef {InstanceType<import("../cli-engine/config-array").ExtractedConfig>} ExtractedConfig */
62
- /** @typedef {import("../shared/types").ConfigData} ConfigData */
63
- /** @typedef {import("../shared/types").Environment} Environment */
64
- /** @typedef {import("../shared/types").GlobalConf} GlobalConf */
65
- /** @typedef {import("../shared/types").LintMessage} LintMessage */
66
- /** @typedef {import("../shared/types").SuppressedLintMessage} SuppressedLintMessage */
67
- /** @typedef {import("../shared/types").ParserOptions} ParserOptions */
68
- /** @typedef {import("../shared/types").LanguageOptions} LanguageOptions */
69
- /** @typedef {import("../shared/types").Processor} Processor */
70
- /** @typedef {import("../shared/types").Rule} Rule */
71
-
72
- /* eslint-disable jsdoc/valid-types -- https://github.com/jsdoc-type-pratt-parser/jsdoc-type-pratt-parser/issues/4#issuecomment-778805577 */
73
- /**
74
- * @template T
75
- * @typedef {{ [P in keyof T]-?: T[P] }} Required
76
- */
77
- /* eslint-enable jsdoc/valid-types -- https://github.com/jsdoc-type-pratt-parser/jsdoc-type-pratt-parser/issues/4#issuecomment-778805577 */
78
-
79
- /**
80
- * @typedef {Object} DisableDirective
81
- * @property {("disable"|"enable"|"disable-line"|"disable-next-line")} type Type of directive
82
- * @property {number} line The line number
83
- * @property {number} column The column number
84
- * @property {(string|null)} ruleId The rule ID
85
- * @property {string} justification The justification of directive
86
- */
87
-
88
- /**
89
- * The private data for `Linter` instance.
90
- * @typedef {Object} LinterInternalSlots
91
- * @property {ConfigArray|null} lastConfigArray The `ConfigArray` instance that the last `verify()` call used.
92
- * @property {SourceCode|null} lastSourceCode The `SourceCode` instance that the last `verify()` call used.
93
- * @property {SuppressedLintMessage[]} lastSuppressedMessages The `SuppressedLintMessage[]` instance that the last `verify()` call produced.
94
- * @property {Map<string, Parser>} parserMap The loaded parsers.
95
- * @property {Rules} ruleMap The loaded rules.
96
- */
97
-
98
- /**
99
- * @typedef {Object} VerifyOptions
100
- * @property {boolean} [allowInlineConfig] Allow/disallow inline comments' ability
101
- * to change config once it is set. Defaults to true if not supplied.
102
- * Useful if you want to validate JS without comments overriding rules.
103
- * @property {boolean} [disableFixes] if `true` then the linter doesn't make `fix`
104
- * properties into the lint result.
105
- * @property {string} [filename] the filename of the source code.
106
- * @property {boolean | "off" | "warn" | "error"} [reportUnusedDisableDirectives] Adds reported errors for
107
- * unused `eslint-disable` directives.
108
- */
109
-
110
- /**
111
- * @typedef {Object} ProcessorOptions
112
- * @property {(filename:string, text:string) => boolean} [filterCodeBlock] the
113
- * predicate function that selects adopt code blocks.
114
- * @property {Processor.postprocess} [postprocess] postprocessor for report
115
- * messages. If provided, this should accept an array of the message lists
116
- * for each code block returned from the preprocessor, apply a mapping to
117
- * the messages as appropriate, and return a one-dimensional array of
118
- * messages.
119
- * @property {Processor.preprocess} [preprocess] preprocessor for source text.
120
- * If provided, this should accept a string of source text, and return an
121
- * array of code blocks to lint.
122
- */
123
-
124
- /**
125
- * @typedef {Object} FixOptions
126
- * @property {boolean | ((message: LintMessage) => boolean)} [fix] Determines
127
- * whether fixes should be applied.
128
- */
129
-
130
- /**
131
- * @typedef {Object} InternalOptions
132
- * @property {string | null} warnInlineConfig The config name what `noInlineConfig` setting came from. If `noInlineConfig` setting didn't exist, this is null. If this is a config name, then the linter warns directive comments.
133
- * @property {"off" | "warn" | "error"} reportUnusedDisableDirectives (boolean values were normalized)
134
- */
135
-
136
- //------------------------------------------------------------------------------
137
- // Helpers
138
- //------------------------------------------------------------------------------
139
-
140
- /**
141
- * Determines if a given object is Espree.
142
- * @param {Object} parser The parser to check.
143
- * @returns {boolean} True if the parser is Espree or false if not.
144
- */
145
- function isEspree(parser) {
146
- return !!(parser === espree || parser[parserSymbol] === espree);
147
- }
148
-
149
- /**
150
- * Ensures that variables representing built-in properties of the Global Object,
151
- * and any globals declared by special block comments, are present in the global
152
- * scope.
153
- * @param {Scope} globalScope The global scope.
154
- * @param {Object} configGlobals The globals declared in configuration
155
- * @param {{exportedVariables: Object, enabledGlobals: Object}} commentDirectives Directives from comment configuration
156
- * @returns {void}
157
- */
158
- function addDeclaredGlobals(globalScope, configGlobals, { exportedVariables, enabledGlobals }) {
159
-
160
- // Define configured global variables.
161
- for (const id of new Set([...Object.keys(configGlobals), ...Object.keys(enabledGlobals)])) {
162
-
163
- /*
164
- * `ConfigOps.normalizeConfigGlobal` will throw an error if a configured global value is invalid. However, these errors would
165
- * typically be caught when validating a config anyway (validity for inline global comments is checked separately).
166
- */
167
- const configValue = configGlobals[id] === void 0 ? void 0 : ConfigOps.normalizeConfigGlobal(configGlobals[id]);
168
- const commentValue = enabledGlobals[id] && enabledGlobals[id].value;
169
- const value = commentValue || configValue;
170
- const sourceComments = enabledGlobals[id] && enabledGlobals[id].comments;
171
-
172
- if (value === "off") {
173
- continue;
174
- }
175
-
176
- let variable = globalScope.set.get(id);
177
-
178
- if (!variable) {
179
- variable = new eslintScope.Variable(id, globalScope);
180
-
181
- globalScope.variables.push(variable);
182
- globalScope.set.set(id, variable);
183
- }
184
-
185
- variable.eslintImplicitGlobalSetting = configValue;
186
- variable.eslintExplicitGlobal = sourceComments !== void 0;
187
- variable.eslintExplicitGlobalComments = sourceComments;
188
- variable.writeable = (value === "writable");
189
- }
190
-
191
- // mark all exported variables as such
192
- Object.keys(exportedVariables).forEach(name => {
193
- const variable = globalScope.set.get(name);
194
-
195
- if (variable) {
196
- variable.eslintUsed = true;
197
- variable.eslintExported = true;
198
- }
199
- });
200
-
201
- /*
202
- * "through" contains all references which definitions cannot be found.
203
- * Since we augment the global scope using configuration, we need to update
204
- * references and remove the ones that were added by configuration.
205
- */
206
- globalScope.through = globalScope.through.filter(reference => {
207
- const name = reference.identifier.name;
208
- const variable = globalScope.set.get(name);
209
-
210
- if (variable) {
211
-
212
- /*
213
- * Links the variable and the reference.
214
- * And this reference is removed from `Scope#through`.
215
- */
216
- reference.resolved = variable;
217
- variable.references.push(reference);
218
-
219
- return false;
220
- }
221
-
222
- return true;
223
- });
224
- }
225
-
226
- /**
227
- * creates a missing-rule message.
228
- * @param {string} ruleId the ruleId to create
229
- * @returns {string} created error message
230
- * @private
231
- */
232
- function createMissingRuleMessage(ruleId) {
233
- return Object.prototype.hasOwnProperty.call(ruleReplacements.rules, ruleId)
234
- ? `Rule '${ruleId}' was removed and replaced by: ${ruleReplacements.rules[ruleId].join(", ")}`
235
- : `Definition for rule '${ruleId}' was not found.`;
236
- }
237
-
238
- /**
239
- * creates a linting problem
240
- * @param {Object} options to create linting error
241
- * @param {string} [options.ruleId] the ruleId to report
242
- * @param {Object} [options.loc] the loc to report
243
- * @param {string} [options.message] the error message to report
244
- * @param {string} [options.severity] the error message to report
245
- * @returns {LintMessage} created problem, returns a missing-rule problem if only provided ruleId.
246
- * @private
247
- */
248
- function createLintingProblem(options) {
249
- const {
250
- ruleId = null,
251
- loc = DEFAULT_ERROR_LOC,
252
- message = createMissingRuleMessage(options.ruleId),
253
- severity = 2
254
- } = options;
255
-
256
- return {
257
- ruleId,
258
- message,
259
- line: loc.start.line,
260
- column: loc.start.column + 1,
261
- endLine: loc.end.line,
262
- endColumn: loc.end.column + 1,
263
- severity,
264
- nodeType: null
265
- };
266
- }
267
-
268
- /**
269
- * Creates a collection of disable directives from a comment
270
- * @param {Object} options to create disable directives
271
- * @param {("disable"|"enable"|"disable-line"|"disable-next-line")} options.type The type of directive comment
272
- * @param {token} options.commentToken The Comment token
273
- * @param {string} options.value The value after the directive in the comment
274
- * comment specified no specific rules, so it applies to all rules (e.g. `eslint-disable`)
275
- * @param {string} options.justification The justification of the directive
276
- * @param {function(string): {create: Function}} options.ruleMapper A map from rule IDs to defined rules
277
- * @returns {Object} Directives and problems from the comment
278
- */
279
- function createDisableDirectives(options) {
280
- const { commentToken, type, value, justification, ruleMapper } = options;
281
- const ruleIds = Object.keys(commentParser.parseListConfig(value));
282
- const directiveRules = ruleIds.length ? ruleIds : [null];
283
- const result = {
284
- directives: [], // valid disable directives
285
- directiveProblems: [] // problems in directives
286
- };
287
-
288
- const parentComment = { commentToken, ruleIds };
289
-
290
- for (const ruleId of directiveRules) {
291
-
292
- // push to directives, if the rule is defined(including null, e.g. /*eslint enable*/)
293
- if (ruleId === null || !!ruleMapper(ruleId)) {
294
- if (type === "disable-next-line") {
295
- result.directives.push({
296
- parentComment,
297
- type,
298
- line: commentToken.loc.end.line,
299
- column: commentToken.loc.end.column + 1,
300
- ruleId,
301
- justification
302
- });
303
- } else {
304
- result.directives.push({
305
- parentComment,
306
- type,
307
- line: commentToken.loc.start.line,
308
- column: commentToken.loc.start.column + 1,
309
- ruleId,
310
- justification
311
- });
312
- }
313
- } else {
314
- result.directiveProblems.push(createLintingProblem({ ruleId, loc: commentToken.loc }));
315
- }
316
- }
317
- return result;
318
- }
319
-
320
- /**
321
- * Parses comments in file to extract file-specific config of rules, globals
322
- * and environments and merges them with global config; also code blocks
323
- * where reporting is disabled or enabled and merges them with reporting config.
324
- * @param {SourceCode} sourceCode The SourceCode object to get comments from.
325
- * @param {function(string): {create: Function}} ruleMapper A map from rule IDs to defined rules
326
- * @param {string|null} warnInlineConfig If a string then it should warn directive comments as disabled. The string value is the config name what the setting came from.
327
- * @returns {{configuredRules: Object, enabledGlobals: {value:string,comment:Token}[], exportedVariables: Object, problems: LintMessage[], disableDirectives: DisableDirective[]}}
328
- * A collection of the directive comments that were found, along with any problems that occurred when parsing
329
- */
330
- function getDirectiveComments(sourceCode, ruleMapper, warnInlineConfig) {
331
- const configuredRules = {};
332
- const enabledGlobals = Object.create(null);
333
- const exportedVariables = {};
334
- const problems = [];
335
- const disableDirectives = [];
336
- const validator = new ConfigValidator({
337
- builtInRules: Rules
338
- });
339
-
340
- sourceCode.getInlineConfigNodes().filter(token => token.type !== "Shebang").forEach(comment => {
341
- const { directivePart, justificationPart } = commentParser.extractDirectiveComment(comment.value);
342
-
343
- const match = directivesPattern.exec(directivePart);
344
-
345
- if (!match) {
346
- return;
347
- }
348
- const directiveText = match[1];
349
- const lineCommentSupported = /^eslint-disable-(next-)?line$/u.test(directiveText);
350
-
351
- if (comment.type === "Line" && !lineCommentSupported) {
352
- return;
353
- }
354
-
355
- if (warnInlineConfig) {
356
- const kind = comment.type === "Block" ? `/*${directiveText}*/` : `//${directiveText}`;
357
-
358
- problems.push(createLintingProblem({
359
- ruleId: null,
360
- message: `'${kind}' has no effect because you have 'noInlineConfig' setting in ${warnInlineConfig}.`,
361
- loc: comment.loc,
362
- severity: 1
363
- }));
364
- return;
365
- }
366
-
367
- if (directiveText === "eslint-disable-line" && comment.loc.start.line !== comment.loc.end.line) {
368
- const message = `${directiveText} comment should not span multiple lines.`;
369
-
370
- problems.push(createLintingProblem({
371
- ruleId: null,
372
- message,
373
- loc: comment.loc
374
- }));
375
- return;
376
- }
377
-
378
- const directiveValue = directivePart.slice(match.index + directiveText.length);
379
-
380
- switch (directiveText) {
381
- case "eslint-disable":
382
- case "eslint-enable":
383
- case "eslint-disable-next-line":
384
- case "eslint-disable-line": {
385
- const directiveType = directiveText.slice("eslint-".length);
386
- const options = { commentToken: comment, type: directiveType, value: directiveValue, justification: justificationPart, ruleMapper };
387
- const { directives, directiveProblems } = createDisableDirectives(options);
388
-
389
- disableDirectives.push(...directives);
390
- problems.push(...directiveProblems);
391
- break;
392
- }
393
-
394
- case "exported":
395
- Object.assign(exportedVariables, commentParser.parseStringConfig(directiveValue, comment));
396
- break;
397
-
398
- case "globals":
399
- case "global":
400
- for (const [id, { value }] of Object.entries(commentParser.parseStringConfig(directiveValue, comment))) {
401
- let normalizedValue;
402
-
403
- try {
404
- normalizedValue = ConfigOps.normalizeConfigGlobal(value);
405
- } catch (err) {
406
- problems.push(createLintingProblem({
407
- ruleId: null,
408
- loc: comment.loc,
409
- message: err.message
410
- }));
411
- continue;
412
- }
413
-
414
- if (enabledGlobals[id]) {
415
- enabledGlobals[id].comments.push(comment);
416
- enabledGlobals[id].value = normalizedValue;
417
- } else {
418
- enabledGlobals[id] = {
419
- comments: [comment],
420
- value: normalizedValue
421
- };
422
- }
423
- }
424
- break;
425
-
426
- case "eslint": {
427
- const parseResult = commentParser.parseJsonConfig(directiveValue, comment.loc);
428
-
429
- if (parseResult.success) {
430
- Object.keys(parseResult.config).forEach(name => {
431
- const rule = ruleMapper(name);
432
- const ruleValue = parseResult.config[name];
433
-
434
- if (!rule) {
435
- problems.push(createLintingProblem({ ruleId: name, loc: comment.loc }));
436
- return;
437
- }
438
-
439
- try {
440
- validator.validateRuleOptions(rule, name, ruleValue);
441
- } catch (err) {
442
- problems.push(createLintingProblem({
443
- ruleId: name,
444
- message: err.message,
445
- loc: comment.loc
446
- }));
447
-
448
- // do not apply the config, if found invalid options.
449
- return;
450
- }
451
-
452
- configuredRules[name] = ruleValue;
453
- });
454
- } else {
455
- problems.push(parseResult.error);
456
- }
457
-
458
- break;
459
- }
460
-
461
- // no default
462
- }
463
- });
464
-
465
- return {
466
- configuredRules,
467
- enabledGlobals,
468
- exportedVariables,
469
- problems,
470
- disableDirectives
471
- };
472
- }
473
-
474
- /**
475
- * Parses comments in file to extract disable directives.
476
- * @param {SourceCode} sourceCode The SourceCode object to get comments from.
477
- * @param {function(string): {create: Function}} ruleMapper A map from rule IDs to defined rules
478
- * @returns {{problems: LintMessage[], disableDirectives: DisableDirective[]}}
479
- * A collection of the directive comments that were found, along with any problems that occurred when parsing
480
- */
481
- function getDirectiveCommentsForFlatConfig(sourceCode, ruleMapper) {
482
- const problems = [];
483
- const disableDirectives = [];
484
-
485
- sourceCode.getInlineConfigNodes().filter(token => token.type !== "Shebang").forEach(comment => {
486
- const { directivePart, justificationPart } = commentParser.extractDirectiveComment(comment.value);
487
-
488
- const match = directivesPattern.exec(directivePart);
489
-
490
- if (!match) {
491
- return;
492
- }
493
- const directiveText = match[1];
494
- const lineCommentSupported = /^eslint-disable-(next-)?line$/u.test(directiveText);
495
-
496
- if (comment.type === "Line" && !lineCommentSupported) {
497
- return;
498
- }
499
-
500
- if (directiveText === "eslint-disable-line" && comment.loc.start.line !== comment.loc.end.line) {
501
- const message = `${directiveText} comment should not span multiple lines.`;
502
-
503
- problems.push(createLintingProblem({
504
- ruleId: null,
505
- message,
506
- loc: comment.loc
507
- }));
508
- return;
509
- }
510
-
511
- const directiveValue = directivePart.slice(match.index + directiveText.length);
512
-
513
- switch (directiveText) {
514
- case "eslint-disable":
515
- case "eslint-enable":
516
- case "eslint-disable-next-line":
517
- case "eslint-disable-line": {
518
- const directiveType = directiveText.slice("eslint-".length);
519
- const options = { commentToken: comment, type: directiveType, value: directiveValue, justification: justificationPart, ruleMapper };
520
- const { directives, directiveProblems } = createDisableDirectives(options);
521
-
522
- disableDirectives.push(...directives);
523
- problems.push(...directiveProblems);
524
- break;
525
- }
526
-
527
- // no default
528
- }
529
- });
530
-
531
- return {
532
- problems,
533
- disableDirectives
534
- };
535
- }
536
-
537
- /**
538
- * Normalize ECMAScript version from the initial config
539
- * @param {Parser} parser The parser which uses this options.
540
- * @param {number} ecmaVersion ECMAScript version from the initial config
541
- * @returns {number} normalized ECMAScript version
542
- */
543
- function normalizeEcmaVersion(parser, ecmaVersion) {
544
-
545
- if (isEspree(parser)) {
546
- if (ecmaVersion === "latest") {
547
- return espree.latestEcmaVersion;
548
- }
549
- }
550
-
551
- /*
552
- * Calculate ECMAScript edition number from official year version starting with
553
- * ES2015, which corresponds with ES6 (or a difference of 2009).
554
- */
555
- return ecmaVersion >= 2015 ? ecmaVersion - 2009 : ecmaVersion;
556
- }
557
-
558
- /**
559
- * Normalize ECMAScript version from the initial config into languageOptions (year)
560
- * format.
561
- * @param {any} [ecmaVersion] ECMAScript version from the initial config
562
- * @returns {number} normalized ECMAScript version
563
- */
564
- function normalizeEcmaVersionForLanguageOptions(ecmaVersion) {
565
-
566
- switch (ecmaVersion) {
567
- case 3:
568
- return 3;
569
-
570
- // void 0 = no ecmaVersion specified so use the default
571
- case 5:
572
- case void 0:
573
- return 5;
574
-
575
- default:
576
- if (typeof ecmaVersion === "number") {
577
- return ecmaVersion >= 2015 ? ecmaVersion : ecmaVersion + 2009;
578
- }
579
- }
580
-
581
- /*
582
- * We default to the latest supported ecmaVersion for everything else.
583
- * Remember, this is for languageOptions.ecmaVersion, which sets the version
584
- * that is used for a number of processes inside of ESLint. It's normally
585
- * safe to assume people want the latest unless otherwise specified.
586
- */
587
- return espree.latestEcmaVersion + 2009;
588
- }
589
-
590
- const eslintEnvPattern = /\/\*\s*eslint-env\s(.+?)(?:\*\/|$)/gsu;
591
-
592
- /**
593
- * Checks whether or not there is a comment which has "eslint-env *" in a given text.
594
- * @param {string} text A source code text to check.
595
- * @returns {Object|null} A result of parseListConfig() with "eslint-env *" comment.
596
- */
597
- function findEslintEnv(text) {
598
- let match, retv;
599
-
600
- eslintEnvPattern.lastIndex = 0;
601
-
602
- while ((match = eslintEnvPattern.exec(text)) !== null) {
603
- if (match[0].endsWith("*/")) {
604
- retv = Object.assign(
605
- retv || {},
606
- commentParser.parseListConfig(commentParser.extractDirectiveComment(match[1]).directivePart)
607
- );
608
- }
609
- }
610
-
611
- return retv;
612
- }
613
-
614
- /**
615
- * Convert "/path/to/<text>" to "<text>".
616
- * `CLIEngine#executeOnText()` method gives "/path/to/<text>" if the filename
617
- * was omitted because `configArray.extractConfig()` requires an absolute path.
618
- * But the linter should pass `<text>` to `RuleContext#filename` in that
619
- * case.
620
- * Also, code blocks can have their virtual filename. If the parent filename was
621
- * `<text>`, the virtual filename is `<text>/0_foo.js` or something like (i.e.,
622
- * it's not an absolute path).
623
- * @param {string} filename The filename to normalize.
624
- * @returns {string} The normalized filename.
625
- */
626
- function normalizeFilename(filename) {
627
- const parts = filename.split(path.sep);
628
- const index = parts.lastIndexOf("<text>");
629
-
630
- return index === -1 ? filename : parts.slice(index).join(path.sep);
631
- }
632
-
633
- /**
634
- * Normalizes the possible options for `linter.verify` and `linter.verifyAndFix` to a
635
- * consistent shape.
636
- * @param {VerifyOptions} providedOptions Options
637
- * @param {ConfigData} config Config.
638
- * @returns {Required<VerifyOptions> & InternalOptions} Normalized options
639
- */
640
- function normalizeVerifyOptions(providedOptions, config) {
641
-
642
- const linterOptions = config.linterOptions || config;
643
-
644
- // .noInlineConfig for eslintrc, .linterOptions.noInlineConfig for flat
645
- const disableInlineConfig = linterOptions.noInlineConfig === true;
646
- const ignoreInlineConfig = providedOptions.allowInlineConfig === false;
647
- const configNameOfNoInlineConfig = config.configNameOfNoInlineConfig
648
- ? ` (${config.configNameOfNoInlineConfig})`
649
- : "";
650
-
651
- let reportUnusedDisableDirectives = providedOptions.reportUnusedDisableDirectives;
652
-
653
- if (typeof reportUnusedDisableDirectives === "boolean") {
654
- reportUnusedDisableDirectives = reportUnusedDisableDirectives ? "error" : "off";
655
- }
656
- if (typeof reportUnusedDisableDirectives !== "string") {
657
- if (typeof linterOptions.reportUnusedDisableDirectives === "boolean") {
658
- reportUnusedDisableDirectives = linterOptions.reportUnusedDisableDirectives ? "warn" : "off";
659
- } else {
660
- reportUnusedDisableDirectives = linterOptions.reportUnusedDisableDirectives === void 0 ? "off" : normalizeSeverityToString(linterOptions.reportUnusedDisableDirectives);
661
- }
662
- }
663
-
664
- return {
665
- filename: normalizeFilename(providedOptions.filename || "<input>"),
666
- allowInlineConfig: !ignoreInlineConfig,
667
- warnInlineConfig: disableInlineConfig && !ignoreInlineConfig
668
- ? `your config${configNameOfNoInlineConfig}`
669
- : null,
670
- reportUnusedDisableDirectives,
671
- disableFixes: Boolean(providedOptions.disableFixes)
672
- };
673
- }
674
-
675
- /**
676
- * Combines the provided parserOptions with the options from environments
677
- * @param {Parser} parser The parser which uses this options.
678
- * @param {ParserOptions} providedOptions The provided 'parserOptions' key in a config
679
- * @param {Environment[]} enabledEnvironments The environments enabled in configuration and with inline comments
680
- * @returns {ParserOptions} Resulting parser options after merge
681
- */
682
- function resolveParserOptions(parser, providedOptions, enabledEnvironments) {
683
-
684
- const parserOptionsFromEnv = enabledEnvironments
685
- .filter(env => env.parserOptions)
686
- .reduce((parserOptions, env) => merge(parserOptions, env.parserOptions), {});
687
- const mergedParserOptions = merge(parserOptionsFromEnv, providedOptions || {});
688
- const isModule = mergedParserOptions.sourceType === "module";
689
-
690
- if (isModule) {
691
-
692
- /*
693
- * can't have global return inside of modules
694
- * TODO: espree validate parserOptions.globalReturn when sourceType is setting to module.(@aladdin-add)
695
- */
696
- mergedParserOptions.ecmaFeatures = Object.assign({}, mergedParserOptions.ecmaFeatures, { globalReturn: false });
697
- }
698
-
699
- mergedParserOptions.ecmaVersion = normalizeEcmaVersion(parser, mergedParserOptions.ecmaVersion);
700
-
701
- return mergedParserOptions;
702
- }
703
-
704
- /**
705
- * Converts parserOptions to languageOptions for backwards compatibility with eslintrc.
706
- * @param {ConfigData} config Config object.
707
- * @param {Object} config.globals Global variable definitions.
708
- * @param {Parser} config.parser The parser to use.
709
- * @param {ParserOptions} config.parserOptions The parserOptions to use.
710
- * @returns {LanguageOptions} The languageOptions equivalent.
711
- */
712
- function createLanguageOptions({ globals: configuredGlobals, parser, parserOptions }) {
713
-
714
- const {
715
- ecmaVersion,
716
- sourceType
717
- } = parserOptions;
718
-
719
- return {
720
- globals: configuredGlobals,
721
- ecmaVersion: normalizeEcmaVersionForLanguageOptions(ecmaVersion),
722
- sourceType,
723
- parser,
724
- parserOptions
725
- };
726
- }
727
-
728
- /**
729
- * Combines the provided globals object with the globals from environments
730
- * @param {Record<string, GlobalConf>} providedGlobals The 'globals' key in a config
731
- * @param {Environment[]} enabledEnvironments The environments enabled in configuration and with inline comments
732
- * @returns {Record<string, GlobalConf>} The resolved globals object
733
- */
734
- function resolveGlobals(providedGlobals, enabledEnvironments) {
735
- return Object.assign(
736
- Object.create(null),
737
- ...enabledEnvironments.filter(env => env.globals).map(env => env.globals),
738
- providedGlobals
739
- );
740
- }
741
-
742
- /**
743
- * Strips Unicode BOM from a given text.
744
- * @param {string} text A text to strip.
745
- * @returns {string} The stripped text.
746
- */
747
- function stripUnicodeBOM(text) {
748
-
749
- /*
750
- * Check Unicode BOM.
751
- * In JavaScript, string data is stored as UTF-16, so BOM is 0xFEFF.
752
- * http://www.ecma-international.org/ecma-262/6.0/#sec-unicode-format-control-characters
753
- */
754
- if (text.charCodeAt(0) === 0xFEFF) {
755
- return text.slice(1);
756
- }
757
- return text;
758
- }
759
-
760
- /**
761
- * Get the options for a rule (not including severity), if any
762
- * @param {Array|number} ruleConfig rule configuration
763
- * @returns {Array} of rule options, empty Array if none
764
- */
765
- function getRuleOptions(ruleConfig) {
766
- if (Array.isArray(ruleConfig)) {
767
- return ruleConfig.slice(1);
768
- }
769
- return [];
770
-
771
- }
772
-
773
- /**
774
- * Analyze scope of the given AST.
775
- * @param {ASTNode} ast The `Program` node to analyze.
776
- * @param {LanguageOptions} languageOptions The parser options.
777
- * @param {Record<string, string[]>} visitorKeys The visitor keys.
778
- * @returns {ScopeManager} The analysis result.
779
- */
780
- function analyzeScope(ast, languageOptions, visitorKeys) {
781
- const parserOptions = languageOptions.parserOptions;
782
- const ecmaFeatures = parserOptions.ecmaFeatures || {};
783
- const ecmaVersion = languageOptions.ecmaVersion || DEFAULT_ECMA_VERSION;
784
-
785
- return eslintScope.analyze(ast, {
786
- ignoreEval: true,
787
- nodejsScope: ecmaFeatures.globalReturn,
788
- impliedStrict: ecmaFeatures.impliedStrict,
789
- ecmaVersion: typeof ecmaVersion === "number" ? ecmaVersion : 6,
790
- sourceType: languageOptions.sourceType || "script",
791
- childVisitorKeys: visitorKeys || evk.KEYS,
792
- fallback: Traverser.getKeys
793
- });
794
- }
795
-
796
- /**
797
- * Parses text into an AST. Moved out here because the try-catch prevents
798
- * optimization of functions, so it's best to keep the try-catch as isolated
799
- * as possible
800
- * @param {string} text The text to parse.
801
- * @param {LanguageOptions} languageOptions Options to pass to the parser
802
- * @param {string} filePath The path to the file being parsed.
803
- * @returns {{success: false, error: LintMessage}|{success: true, sourceCode: SourceCode}}
804
- * An object containing the AST and parser services if parsing was successful, or the error if parsing failed
805
- * @private
806
- */
807
- function parse(text, languageOptions, filePath) {
808
- const textToParse = stripUnicodeBOM(text).replace(astUtils.shebangPattern, (match, captured) => `//${captured}`);
809
- const { ecmaVersion, sourceType, parser } = languageOptions;
810
- const parserOptions = Object.assign(
811
- { ecmaVersion, sourceType },
812
- languageOptions.parserOptions,
813
- {
814
- loc: true,
815
- range: true,
816
- raw: true,
817
- tokens: true,
818
- comment: true,
819
- eslintVisitorKeys: true,
820
- eslintScopeManager: true,
821
- filePath
822
- }
823
- );
824
-
825
- /*
826
- * Check for parsing errors first. If there's a parsing error, nothing
827
- * else can happen. However, a parsing error does not throw an error
828
- * from this method - it's just considered a fatal error message, a
829
- * problem that ESLint identified just like any other.
830
- */
831
- try {
832
- debug("Parsing:", filePath);
833
- const parseResult = (typeof parser.parseForESLint === "function")
834
- ? parser.parseForESLint(textToParse, parserOptions)
835
- : { ast: parser.parse(textToParse, parserOptions) };
836
-
837
- debug("Parsing successful:", filePath);
838
- const ast = parseResult.ast;
839
- const parserServices = parseResult.services || {};
840
- const visitorKeys = parseResult.visitorKeys || evk.KEYS;
841
-
842
- debug("Scope analysis:", filePath);
843
- const scopeManager = parseResult.scopeManager || analyzeScope(ast, languageOptions, visitorKeys);
844
-
845
- debug("Scope analysis successful:", filePath);
846
-
847
- return {
848
- success: true,
849
-
850
- /*
851
- * Save all values that `parseForESLint()` returned.
852
- * If a `SourceCode` object is given as the first parameter instead of source code text,
853
- * linter skips the parsing process and reuses the source code object.
854
- * In that case, linter needs all the values that `parseForESLint()` returned.
855
- */
856
- sourceCode: new SourceCode({
857
- text,
858
- ast,
859
- parserServices,
860
- scopeManager,
861
- visitorKeys
862
- })
863
- };
864
- } catch (ex) {
865
-
866
- // If the message includes a leading line number, strip it:
867
- const message = `Parsing error: ${ex.message.replace(/^line \d+:/iu, "").trim()}`;
868
-
869
- debug("%s\n%s", message, ex.stack);
870
-
871
- return {
872
- success: false,
873
- error: {
874
- ruleId: null,
875
- fatal: true,
876
- severity: 2,
877
- message,
878
- line: ex.lineNumber,
879
- column: ex.column,
880
- nodeType: null
881
- }
882
- };
883
- }
884
- }
885
-
886
- /**
887
- * Runs a rule, and gets its listeners
888
- * @param {Rule} rule A normalized rule with a `create` method
889
- * @param {Context} ruleContext The context that should be passed to the rule
890
- * @throws {any} Any error during the rule's `create`
891
- * @returns {Object} A map of selector listeners provided by the rule
892
- */
893
- function createRuleListeners(rule, ruleContext) {
894
- try {
895
- return rule.create(ruleContext);
896
- } catch (ex) {
897
- ex.message = `Error while loading rule '${ruleContext.id}': ${ex.message}`;
898
- throw ex;
899
- }
900
- }
901
-
902
- // methods that exist on SourceCode object
903
- const DEPRECATED_SOURCECODE_PASSTHROUGHS = {
904
- getSource: "getText",
905
- getSourceLines: "getLines",
906
- getAllComments: "getAllComments",
907
- getNodeByRangeIndex: "getNodeByRangeIndex",
908
- getComments: "getComments",
909
- getCommentsBefore: "getCommentsBefore",
910
- getCommentsAfter: "getCommentsAfter",
911
- getCommentsInside: "getCommentsInside",
912
- getJSDocComment: "getJSDocComment",
913
- getFirstToken: "getFirstToken",
914
- getFirstTokens: "getFirstTokens",
915
- getLastToken: "getLastToken",
916
- getLastTokens: "getLastTokens",
917
- getTokenAfter: "getTokenAfter",
918
- getTokenBefore: "getTokenBefore",
919
- getTokenByRangeStart: "getTokenByRangeStart",
920
- getTokens: "getTokens",
921
- getTokensAfter: "getTokensAfter",
922
- getTokensBefore: "getTokensBefore",
923
- getTokensBetween: "getTokensBetween"
924
- };
925
-
926
-
927
- const BASE_TRAVERSAL_CONTEXT = Object.freeze(
928
- Object.keys(DEPRECATED_SOURCECODE_PASSTHROUGHS).reduce(
929
- (contextInfo, methodName) =>
930
- Object.assign(contextInfo, {
931
- [methodName](...args) {
932
- return this.sourceCode[DEPRECATED_SOURCECODE_PASSTHROUGHS[methodName]](...args);
933
- }
934
- }),
935
- {}
936
- )
937
- );
938
-
939
- /**
940
- * Runs the given rules on the given SourceCode object
941
- * @param {SourceCode} sourceCode A SourceCode object for the given text
942
- * @param {Object} configuredRules The rules configuration
943
- * @param {function(string): Rule} ruleMapper A mapper function from rule names to rules
944
- * @param {string | undefined} parserName The name of the parser in the config
945
- * @param {LanguageOptions} languageOptions The options for parsing the code.
946
- * @param {Object} settings The settings that were enabled in the config
947
- * @param {string} filename The reported filename of the code
948
- * @param {boolean} disableFixes If true, it doesn't make `fix` properties.
949
- * @param {string | undefined} cwd cwd of the cli
950
- * @param {string} physicalFilename The full path of the file on disk without any code block information
951
- * @returns {LintMessage[]} An array of reported problems
952
- */
953
- function runRules(sourceCode, configuredRules, ruleMapper, parserName, languageOptions, settings, filename, disableFixes, cwd, physicalFilename) {
954
- const emitter = createEmitter();
955
- const nodeQueue = [];
956
- let currentNode = sourceCode.ast;
957
-
958
- Traverser.traverse(sourceCode.ast, {
959
- enter(node, parent) {
960
- node.parent = parent;
961
- nodeQueue.push({ isEntering: true, node });
962
- },
963
- leave(node) {
964
- nodeQueue.push({ isEntering: false, node });
965
- },
966
- visitorKeys: sourceCode.visitorKeys
967
- });
968
-
969
- /*
970
- * Create a frozen object with the ruleContext properties and methods that are shared by all rules.
971
- * All rule contexts will inherit from this object. This avoids the performance penalty of copying all the
972
- * properties once for each rule.
973
- */
974
- const sharedTraversalContext = Object.freeze(
975
- Object.assign(
976
- Object.create(BASE_TRAVERSAL_CONTEXT),
977
- {
978
- getAncestors: () => sourceCode.getAncestors(currentNode),
979
- getDeclaredVariables: node => sourceCode.getDeclaredVariables(node),
980
- getCwd: () => cwd,
981
- cwd,
982
- getFilename: () => filename,
983
- filename,
984
- getPhysicalFilename: () => physicalFilename || filename,
985
- physicalFilename: physicalFilename || filename,
986
- getScope: () => sourceCode.getScope(currentNode),
987
- getSourceCode: () => sourceCode,
988
- sourceCode,
989
- markVariableAsUsed: name => sourceCode.markVariableAsUsed(name, currentNode),
990
- parserOptions: {
991
- ...languageOptions.parserOptions
992
- },
993
- parserPath: parserName,
994
- languageOptions,
995
- parserServices: sourceCode.parserServices,
996
- settings
997
- }
998
- )
999
- );
1000
-
1001
- const lintingProblems = [];
1002
-
1003
- Object.keys(configuredRules).forEach(ruleId => {
1004
- const severity = ConfigOps.getRuleSeverity(configuredRules[ruleId]);
1005
-
1006
- // not load disabled rules
1007
- if (severity === 0) {
1008
- return;
1009
- }
1010
-
1011
- const rule = ruleMapper(ruleId);
1012
-
1013
- if (!rule) {
1014
- lintingProblems.push(createLintingProblem({ ruleId }));
1015
- return;
1016
- }
1017
-
1018
- const messageIds = rule.meta && rule.meta.messages;
1019
- let reportTranslator = null;
1020
- const ruleContext = Object.freeze(
1021
- Object.assign(
1022
- Object.create(sharedTraversalContext),
1023
- {
1024
- id: ruleId,
1025
- options: getRuleOptions(configuredRules[ruleId]),
1026
- report(...args) {
1027
-
1028
- /*
1029
- * Create a report translator lazily.
1030
- * In a vast majority of cases, any given rule reports zero errors on a given
1031
- * piece of code. Creating a translator lazily avoids the performance cost of
1032
- * creating a new translator function for each rule that usually doesn't get
1033
- * called.
1034
- *
1035
- * Using lazy report translators improves end-to-end performance by about 3%
1036
- * with Node 8.4.0.
1037
- */
1038
- if (reportTranslator === null) {
1039
- reportTranslator = createReportTranslator({
1040
- ruleId,
1041
- severity,
1042
- sourceCode,
1043
- messageIds,
1044
- disableFixes
1045
- });
1046
- }
1047
- const problem = reportTranslator(...args);
1048
-
1049
- if (problem.fix && !(rule.meta && rule.meta.fixable)) {
1050
- throw new Error("Fixable rules must set the `meta.fixable` property to \"code\" or \"whitespace\".");
1051
- }
1052
- if (problem.suggestions && !(rule.meta && rule.meta.hasSuggestions === true)) {
1053
- if (rule.meta && rule.meta.docs && typeof rule.meta.docs.suggestion !== "undefined") {
1054
-
1055
- // Encourage migration from the former property name.
1056
- throw new Error("Rules with suggestions must set the `meta.hasSuggestions` property to `true`. `meta.docs.suggestion` is ignored by ESLint.");
1057
- }
1058
- throw new Error("Rules with suggestions must set the `meta.hasSuggestions` property to `true`.");
1059
- }
1060
- lintingProblems.push(problem);
1061
- }
1062
- }
1063
- )
1064
- );
1065
-
1066
- const ruleListeners = timing.enabled ? timing.time(ruleId, createRuleListeners)(rule, ruleContext) : createRuleListeners(rule, ruleContext);
1067
-
1068
- /**
1069
- * Include `ruleId` in error logs
1070
- * @param {Function} ruleListener A rule method that listens for a node.
1071
- * @returns {Function} ruleListener wrapped in error handler
1072
- */
1073
- function addRuleErrorHandler(ruleListener) {
1074
- return function ruleErrorHandler(...listenerArgs) {
1075
- try {
1076
- return ruleListener(...listenerArgs);
1077
- } catch (e) {
1078
- e.ruleId = ruleId;
1079
- throw e;
1080
- }
1081
- };
1082
- }
1083
-
1084
- if (typeof ruleListeners === "undefined" || ruleListeners === null) {
1085
- throw new Error(`The create() function for rule '${ruleId}' did not return an object.`);
1086
- }
1087
-
1088
- // add all the selectors from the rule as listeners
1089
- Object.keys(ruleListeners).forEach(selector => {
1090
- const ruleListener = timing.enabled
1091
- ? timing.time(ruleId, ruleListeners[selector])
1092
- : ruleListeners[selector];
1093
-
1094
- emitter.on(
1095
- selector,
1096
- addRuleErrorHandler(ruleListener)
1097
- );
1098
- });
1099
- });
1100
-
1101
- // only run code path analyzer if the top level node is "Program", skip otherwise
1102
- const eventGenerator = nodeQueue[0].node.type === "Program"
1103
- ? new CodePathAnalyzer(new NodeEventGenerator(emitter, { visitorKeys: sourceCode.visitorKeys, fallback: Traverser.getKeys }))
1104
- : new NodeEventGenerator(emitter, { visitorKeys: sourceCode.visitorKeys, fallback: Traverser.getKeys });
1105
-
1106
- nodeQueue.forEach(traversalInfo => {
1107
- currentNode = traversalInfo.node;
1108
-
1109
- try {
1110
- if (traversalInfo.isEntering) {
1111
- eventGenerator.enterNode(currentNode);
1112
- } else {
1113
- eventGenerator.leaveNode(currentNode);
1114
- }
1115
- } catch (err) {
1116
- err.currentNode = currentNode;
1117
- throw err;
1118
- }
1119
- });
1120
-
1121
- return lintingProblems;
1122
- }
1123
-
1124
- /**
1125
- * Ensure the source code to be a string.
1126
- * @param {string|SourceCode} textOrSourceCode The text or source code object.
1127
- * @returns {string} The source code text.
1128
- */
1129
- function ensureText(textOrSourceCode) {
1130
- if (typeof textOrSourceCode === "object") {
1131
- const { hasBOM, text } = textOrSourceCode;
1132
- const bom = hasBOM ? "\uFEFF" : "";
1133
-
1134
- return bom + text;
1135
- }
1136
-
1137
- return String(textOrSourceCode);
1138
- }
1139
-
1140
- /**
1141
- * Get an environment.
1142
- * @param {LinterInternalSlots} slots The internal slots of Linter.
1143
- * @param {string} envId The environment ID to get.
1144
- * @returns {Environment|null} The environment.
1145
- */
1146
- function getEnv(slots, envId) {
1147
- return (
1148
- (slots.lastConfigArray && slots.lastConfigArray.pluginEnvironments.get(envId)) ||
1149
- BuiltInEnvironments.get(envId) ||
1150
- null
1151
- );
1152
- }
1153
-
1154
- /**
1155
- * Get a rule.
1156
- * @param {LinterInternalSlots} slots The internal slots of Linter.
1157
- * @param {string} ruleId The rule ID to get.
1158
- * @returns {Rule|null} The rule.
1159
- */
1160
- function getRule(slots, ruleId) {
1161
- return (
1162
- (slots.lastConfigArray && slots.lastConfigArray.pluginRules.get(ruleId)) ||
1163
- slots.ruleMap.get(ruleId)
1164
- );
1165
- }
1166
-
1167
- /**
1168
- * Normalize the value of the cwd
1169
- * @param {string | undefined} cwd raw value of the cwd, path to a directory that should be considered as the current working directory, can be undefined.
1170
- * @returns {string | undefined} normalized cwd
1171
- */
1172
- function normalizeCwd(cwd) {
1173
- if (cwd) {
1174
- return cwd;
1175
- }
1176
- if (typeof process === "object") {
1177
- return process.cwd();
1178
- }
1179
-
1180
- // It's more explicit to assign the undefined
1181
- // eslint-disable-next-line no-undefined -- Consistently returning a value
1182
- return undefined;
1183
- }
1184
-
1185
- /**
1186
- * The map to store private data.
1187
- * @type {WeakMap<Linter, LinterInternalSlots>}
1188
- */
1189
- const internalSlotsMap = new WeakMap();
1190
-
1191
- /**
1192
- * Throws an error when the given linter is in flat config mode.
1193
- * @param {Linter} linter The linter to check.
1194
- * @returns {void}
1195
- * @throws {Error} If the linter is in flat config mode.
1196
- */
1197
- function assertEslintrcConfig(linter) {
1198
- const { configType } = internalSlotsMap.get(linter);
1199
-
1200
- if (configType === "flat") {
1201
- throw new Error("This method cannot be used with flat config. Add your entries directly into the config array.");
1202
- }
1203
- }
1204
-
1205
-
1206
- //------------------------------------------------------------------------------
1207
- // Public Interface
1208
- //------------------------------------------------------------------------------
1209
-
1210
- /**
1211
- * Object that is responsible for verifying JavaScript text
1212
- * @name Linter
1213
- */
1214
- class Linter {
1215
-
1216
- /**
1217
- * Initialize the Linter.
1218
- * @param {Object} [config] the config object
1219
- * @param {string} [config.cwd] path to a directory that should be considered as the current working directory, can be undefined.
1220
- * @param {"flat"|"eslintrc"} [config.configType="eslintrc"] the type of config used.
1221
- */
1222
- constructor({ cwd, configType } = {}) {
1223
- internalSlotsMap.set(this, {
1224
- cwd: normalizeCwd(cwd),
1225
- lastConfigArray: null,
1226
- lastSourceCode: null,
1227
- lastSuppressedMessages: [],
1228
- configType, // TODO: Remove after flat config conversion
1229
- parserMap: new Map([["espree", espree]]),
1230
- ruleMap: new Rules()
1231
- });
1232
-
1233
- this.version = pkg.version;
1234
- }
1235
-
1236
- /**
1237
- * Getter for package version.
1238
- * @static
1239
- * @returns {string} The version from package.json.
1240
- */
1241
- static get version() {
1242
- return pkg.version;
1243
- }
1244
-
1245
- /**
1246
- * Same as linter.verify, except without support for processors.
1247
- * @param {string|SourceCode} textOrSourceCode The text to parse or a SourceCode object.
1248
- * @param {ConfigData} providedConfig An ESLintConfig instance to configure everything.
1249
- * @param {VerifyOptions} [providedOptions] The optional filename of the file being checked.
1250
- * @throws {Error} If during rule execution.
1251
- * @returns {(LintMessage|SuppressedLintMessage)[]} The results as an array of messages or an empty array if no messages.
1252
- */
1253
- _verifyWithoutProcessors(textOrSourceCode, providedConfig, providedOptions) {
1254
- const slots = internalSlotsMap.get(this);
1255
- const config = providedConfig || {};
1256
- const options = normalizeVerifyOptions(providedOptions, config);
1257
- let text;
1258
-
1259
- // evaluate arguments
1260
- if (typeof textOrSourceCode === "string") {
1261
- slots.lastSourceCode = null;
1262
- text = textOrSourceCode;
1263
- } else {
1264
- slots.lastSourceCode = textOrSourceCode;
1265
- text = textOrSourceCode.text;
1266
- }
1267
-
1268
- // Resolve parser.
1269
- let parserName = DEFAULT_PARSER_NAME;
1270
- let parser = espree;
1271
-
1272
- if (typeof config.parser === "object" && config.parser !== null) {
1273
- parserName = config.parser.filePath;
1274
- parser = config.parser.definition;
1275
- } else if (typeof config.parser === "string") {
1276
- if (!slots.parserMap.has(config.parser)) {
1277
- return [{
1278
- ruleId: null,
1279
- fatal: true,
1280
- severity: 2,
1281
- message: `Configured parser '${config.parser}' was not found.`,
1282
- line: 0,
1283
- column: 0,
1284
- nodeType: null
1285
- }];
1286
- }
1287
- parserName = config.parser;
1288
- parser = slots.parserMap.get(config.parser);
1289
- }
1290
-
1291
- // search and apply "eslint-env *".
1292
- const envInFile = options.allowInlineConfig && !options.warnInlineConfig
1293
- ? findEslintEnv(text)
1294
- : {};
1295
- const resolvedEnvConfig = Object.assign({ builtin: true }, config.env, envInFile);
1296
- const enabledEnvs = Object.keys(resolvedEnvConfig)
1297
- .filter(envName => resolvedEnvConfig[envName])
1298
- .map(envName => getEnv(slots, envName))
1299
- .filter(env => env);
1300
-
1301
- const parserOptions = resolveParserOptions(parser, config.parserOptions || {}, enabledEnvs);
1302
- const configuredGlobals = resolveGlobals(config.globals || {}, enabledEnvs);
1303
- const settings = config.settings || {};
1304
- const languageOptions = createLanguageOptions({
1305
- globals: config.globals,
1306
- parser,
1307
- parserOptions
1308
- });
1309
-
1310
- if (!slots.lastSourceCode) {
1311
- const parseResult = parse(
1312
- text,
1313
- languageOptions,
1314
- options.filename
1315
- );
1316
-
1317
- if (!parseResult.success) {
1318
- return [parseResult.error];
1319
- }
1320
-
1321
- slots.lastSourceCode = parseResult.sourceCode;
1322
- } else {
1323
-
1324
- /*
1325
- * If the given source code object as the first argument does not have scopeManager, analyze the scope.
1326
- * This is for backward compatibility (SourceCode is frozen so it cannot rebind).
1327
- */
1328
- if (!slots.lastSourceCode.scopeManager) {
1329
- slots.lastSourceCode = new SourceCode({
1330
- text: slots.lastSourceCode.text,
1331
- ast: slots.lastSourceCode.ast,
1332
- parserServices: slots.lastSourceCode.parserServices,
1333
- visitorKeys: slots.lastSourceCode.visitorKeys,
1334
- scopeManager: analyzeScope(slots.lastSourceCode.ast, languageOptions)
1335
- });
1336
- }
1337
- }
1338
-
1339
- const sourceCode = slots.lastSourceCode;
1340
- const commentDirectives = options.allowInlineConfig
1341
- ? getDirectiveComments(sourceCode, ruleId => getRule(slots, ruleId), options.warnInlineConfig)
1342
- : { configuredRules: {}, enabledGlobals: {}, exportedVariables: {}, problems: [], disableDirectives: [] };
1343
-
1344
- // augment global scope with declared global variables
1345
- addDeclaredGlobals(
1346
- sourceCode.scopeManager.scopes[0],
1347
- configuredGlobals,
1348
- { exportedVariables: commentDirectives.exportedVariables, enabledGlobals: commentDirectives.enabledGlobals }
1349
- );
1350
-
1351
- const configuredRules = Object.assign({}, config.rules, commentDirectives.configuredRules);
1352
- let lintingProblems;
1353
-
1354
- try {
1355
- lintingProblems = runRules(
1356
- sourceCode,
1357
- configuredRules,
1358
- ruleId => getRule(slots, ruleId),
1359
- parserName,
1360
- languageOptions,
1361
- settings,
1362
- options.filename,
1363
- options.disableFixes,
1364
- slots.cwd,
1365
- providedOptions.physicalFilename
1366
- );
1367
- } catch (err) {
1368
- err.message += `\nOccurred while linting ${options.filename}`;
1369
- debug("An error occurred while traversing");
1370
- debug("Filename:", options.filename);
1371
- if (err.currentNode) {
1372
- const { line } = err.currentNode.loc.start;
1373
-
1374
- debug("Line:", line);
1375
- err.message += `:${line}`;
1376
- }
1377
- debug("Parser Options:", parserOptions);
1378
- debug("Parser Path:", parserName);
1379
- debug("Settings:", settings);
1380
-
1381
- if (err.ruleId) {
1382
- err.message += `\nRule: "${err.ruleId}"`;
1383
- }
1384
-
1385
- throw err;
1386
- }
1387
-
1388
- return applyDisableDirectives({
1389
- directives: commentDirectives.disableDirectives,
1390
- disableFixes: options.disableFixes,
1391
- problems: lintingProblems
1392
- .concat(commentDirectives.problems)
1393
- .sort((problemA, problemB) => problemA.line - problemB.line || problemA.column - problemB.column),
1394
- reportUnusedDisableDirectives: options.reportUnusedDisableDirectives
1395
- });
1396
- }
1397
-
1398
- /**
1399
- * Verifies the text against the rules specified by the second argument.
1400
- * @param {string|SourceCode} textOrSourceCode The text to parse or a SourceCode object.
1401
- * @param {ConfigData|ConfigArray} config An ESLintConfig instance to configure everything.
1402
- * @param {(string|(VerifyOptions&ProcessorOptions))} [filenameOrOptions] The optional filename of the file being checked.
1403
- * If this is not set, the filename will default to '<input>' in the rule context. If
1404
- * an object, then it has "filename", "allowInlineConfig", and some properties.
1405
- * @returns {LintMessage[]} The results as an array of messages or an empty array if no messages.
1406
- */
1407
- verify(textOrSourceCode, config, filenameOrOptions) {
1408
- debug("Verify");
1409
-
1410
- const { configType, cwd } = internalSlotsMap.get(this);
1411
-
1412
- const options = typeof filenameOrOptions === "string"
1413
- ? { filename: filenameOrOptions }
1414
- : filenameOrOptions || {};
1415
-
1416
- if (config) {
1417
- if (configType === "flat") {
1418
-
1419
- /*
1420
- * Because of how Webpack packages up the files, we can't
1421
- * compare directly to `FlatConfigArray` using `instanceof`
1422
- * because it's not the same `FlatConfigArray` as in the tests.
1423
- * So, we work around it by assuming an array is, in fact, a
1424
- * `FlatConfigArray` if it has a `getConfig()` method.
1425
- */
1426
- let configArray = config;
1427
-
1428
- if (!Array.isArray(config) || typeof config.getConfig !== "function") {
1429
- configArray = new FlatConfigArray(config, { basePath: cwd });
1430
- configArray.normalizeSync();
1431
- }
1432
-
1433
- return this._distinguishSuppressedMessages(this._verifyWithFlatConfigArray(textOrSourceCode, configArray, options, true));
1434
- }
1435
-
1436
- if (typeof config.extractConfig === "function") {
1437
- return this._distinguishSuppressedMessages(this._verifyWithConfigArray(textOrSourceCode, config, options));
1438
- }
1439
- }
1440
-
1441
- /*
1442
- * If we get to here, it means `config` is just an object rather
1443
- * than a config array so we can go right into linting.
1444
- */
1445
-
1446
- /*
1447
- * `Linter` doesn't support `overrides` property in configuration.
1448
- * So we cannot apply multiple processors.
1449
- */
1450
- if (options.preprocess || options.postprocess) {
1451
- return this._distinguishSuppressedMessages(this._verifyWithProcessor(textOrSourceCode, config, options));
1452
- }
1453
- return this._distinguishSuppressedMessages(this._verifyWithoutProcessors(textOrSourceCode, config, options));
1454
- }
1455
-
1456
- /**
1457
- * Verify with a processor.
1458
- * @param {string|SourceCode} textOrSourceCode The source code.
1459
- * @param {FlatConfig} config The config array.
1460
- * @param {VerifyOptions&ProcessorOptions} options The options.
1461
- * @param {FlatConfigArray} [configForRecursive] The `ConfigArray` object to apply multiple processors recursively.
1462
- * @returns {(LintMessage|SuppressedLintMessage)[]} The found problems.
1463
- */
1464
- _verifyWithFlatConfigArrayAndProcessor(textOrSourceCode, config, options, configForRecursive) {
1465
- const filename = options.filename || "<input>";
1466
- const filenameToExpose = normalizeFilename(filename);
1467
- const physicalFilename = options.physicalFilename || filenameToExpose;
1468
- const text = ensureText(textOrSourceCode);
1469
- const preprocess = options.preprocess || (rawText => [rawText]);
1470
- const postprocess = options.postprocess || (messagesList => messagesList.flat());
1471
- const filterCodeBlock =
1472
- options.filterCodeBlock ||
1473
- (blockFilename => blockFilename.endsWith(".js"));
1474
- const originalExtname = path.extname(filename);
1475
-
1476
- let blocks;
1477
-
1478
- try {
1479
- blocks = preprocess(text, filenameToExpose);
1480
- } catch (ex) {
1481
-
1482
- // If the message includes a leading line number, strip it:
1483
- const message = `Preprocessing error: ${ex.message.replace(/^line \d+:/iu, "").trim()}`;
1484
-
1485
- debug("%s\n%s", message, ex.stack);
1486
-
1487
- return [
1488
- {
1489
- ruleId: null,
1490
- fatal: true,
1491
- severity: 2,
1492
- message,
1493
- line: ex.lineNumber,
1494
- column: ex.column,
1495
- nodeType: null
1496
- }
1497
- ];
1498
- }
1499
-
1500
- const messageLists = blocks.map((block, i) => {
1501
- debug("A code block was found: %o", block.filename || "(unnamed)");
1502
-
1503
- // Keep the legacy behavior.
1504
- if (typeof block === "string") {
1505
- return this._verifyWithFlatConfigArrayAndWithoutProcessors(block, config, options);
1506
- }
1507
-
1508
- const blockText = block.text;
1509
- const blockName = path.join(filename, `${i}_${block.filename}`);
1510
-
1511
- // Skip this block if filtered.
1512
- if (!filterCodeBlock(blockName, blockText)) {
1513
- debug("This code block was skipped.");
1514
- return [];
1515
- }
1516
-
1517
- // Resolve configuration again if the file content or extension was changed.
1518
- if (configForRecursive && (text !== blockText || path.extname(blockName) !== originalExtname)) {
1519
- debug("Resolving configuration again because the file content or extension was changed.");
1520
- return this._verifyWithFlatConfigArray(
1521
- blockText,
1522
- configForRecursive,
1523
- { ...options, filename: blockName, physicalFilename }
1524
- );
1525
- }
1526
-
1527
- // Does lint.
1528
- return this._verifyWithFlatConfigArrayAndWithoutProcessors(
1529
- blockText,
1530
- config,
1531
- { ...options, filename: blockName, physicalFilename }
1532
- );
1533
- });
1534
-
1535
- return postprocess(messageLists, filenameToExpose);
1536
- }
1537
-
1538
- /**
1539
- * Same as linter.verify, except without support for processors.
1540
- * @param {string|SourceCode} textOrSourceCode The text to parse or a SourceCode object.
1541
- * @param {FlatConfig} providedConfig An ESLintConfig instance to configure everything.
1542
- * @param {VerifyOptions} [providedOptions] The optional filename of the file being checked.
1543
- * @throws {Error} If during rule execution.
1544
- * @returns {(LintMessage|SuppressedLintMessage)[]} The results as an array of messages or an empty array if no messages.
1545
- */
1546
- _verifyWithFlatConfigArrayAndWithoutProcessors(textOrSourceCode, providedConfig, providedOptions) {
1547
- const slots = internalSlotsMap.get(this);
1548
- const config = providedConfig || {};
1549
- const options = normalizeVerifyOptions(providedOptions, config);
1550
- let text;
1551
-
1552
- // evaluate arguments
1553
- if (typeof textOrSourceCode === "string") {
1554
- slots.lastSourceCode = null;
1555
- text = textOrSourceCode;
1556
- } else {
1557
- slots.lastSourceCode = textOrSourceCode;
1558
- text = textOrSourceCode.text;
1559
- }
1560
-
1561
- const languageOptions = config.languageOptions;
1562
-
1563
- languageOptions.ecmaVersion = normalizeEcmaVersionForLanguageOptions(
1564
- languageOptions.ecmaVersion
1565
- );
1566
-
1567
- // double check that there is a parser to avoid mysterious error messages
1568
- if (!languageOptions.parser) {
1569
- throw new TypeError(`No parser specified for ${options.filename}`);
1570
- }
1571
-
1572
- // Espree expects this information to be passed in
1573
- if (isEspree(languageOptions.parser)) {
1574
- const parserOptions = languageOptions.parserOptions;
1575
-
1576
- if (languageOptions.sourceType) {
1577
-
1578
- parserOptions.sourceType = languageOptions.sourceType;
1579
-
1580
- if (
1581
- parserOptions.sourceType === "module" &&
1582
- parserOptions.ecmaFeatures &&
1583
- parserOptions.ecmaFeatures.globalReturn
1584
- ) {
1585
- parserOptions.ecmaFeatures.globalReturn = false;
1586
- }
1587
- }
1588
- }
1589
-
1590
- const settings = config.settings || {};
1591
-
1592
- if (!slots.lastSourceCode) {
1593
- const parseResult = parse(
1594
- text,
1595
- languageOptions,
1596
- options.filename
1597
- );
1598
-
1599
- if (!parseResult.success) {
1600
- return [parseResult.error];
1601
- }
1602
-
1603
- slots.lastSourceCode = parseResult.sourceCode;
1604
- } else {
1605
-
1606
- /*
1607
- * If the given source code object as the first argument does not have scopeManager, analyze the scope.
1608
- * This is for backward compatibility (SourceCode is frozen so it cannot rebind).
1609
- */
1610
- if (!slots.lastSourceCode.scopeManager) {
1611
- slots.lastSourceCode = new SourceCode({
1612
- text: slots.lastSourceCode.text,
1613
- ast: slots.lastSourceCode.ast,
1614
- parserServices: slots.lastSourceCode.parserServices,
1615
- visitorKeys: slots.lastSourceCode.visitorKeys,
1616
- scopeManager: analyzeScope(slots.lastSourceCode.ast, languageOptions)
1617
- });
1618
- }
1619
- }
1620
-
1621
- const sourceCode = slots.lastSourceCode;
1622
-
1623
- /*
1624
- * Make adjustments based on the language options. For JavaScript,
1625
- * this is primarily about adding variables into the global scope
1626
- * to account for ecmaVersion and configured globals.
1627
- */
1628
- sourceCode.applyLanguageOptions(languageOptions);
1629
-
1630
- const mergedInlineConfig = {
1631
- rules: {}
1632
- };
1633
- const inlineConfigProblems = [];
1634
-
1635
- /*
1636
- * Inline config can be either enabled or disabled. If disabled, it's possible
1637
- * to detect the inline config and emit a warning (though this is not required).
1638
- * So we first check to see if inline config is allowed at all, and if so, we
1639
- * need to check if it's a warning or not.
1640
- */
1641
- if (options.allowInlineConfig) {
1642
-
1643
- // if inline config should warn then add the warnings
1644
- if (options.warnInlineConfig) {
1645
- sourceCode.getInlineConfigNodes().forEach(node => {
1646
- inlineConfigProblems.push(createLintingProblem({
1647
- ruleId: null,
1648
- message: `'${sourceCode.text.slice(node.range[0], node.range[1])}' has no effect because you have 'noInlineConfig' setting in ${options.warnInlineConfig}.`,
1649
- loc: node.loc,
1650
- severity: 1
1651
- }));
1652
-
1653
- });
1654
- } else {
1655
- const inlineConfigResult = sourceCode.applyInlineConfig();
1656
-
1657
- inlineConfigProblems.push(
1658
- ...inlineConfigResult.problems
1659
- .map(createLintingProblem)
1660
- .map(problem => {
1661
- problem.fatal = true;
1662
- return problem;
1663
- })
1664
- );
1665
-
1666
- // next we need to verify information about the specified rules
1667
- const ruleValidator = new RuleValidator();
1668
-
1669
- for (const { config: inlineConfig, node } of inlineConfigResult.configs) {
1670
-
1671
- Object.keys(inlineConfig.rules).forEach(ruleId => {
1672
- const rule = getRuleFromConfig(ruleId, config);
1673
- const ruleValue = inlineConfig.rules[ruleId];
1674
-
1675
- if (!rule) {
1676
- inlineConfigProblems.push(createLintingProblem({ ruleId, loc: node.loc }));
1677
- return;
1678
- }
1679
-
1680
- try {
1681
-
1682
- const ruleOptions = Array.isArray(ruleValue) ? ruleValue : [ruleValue];
1683
-
1684
- assertIsRuleOptions(ruleId, ruleValue);
1685
- assertIsRuleSeverity(ruleId, ruleOptions[0]);
1686
-
1687
- ruleValidator.validate({
1688
- plugins: config.plugins,
1689
- rules: {
1690
- [ruleId]: ruleOptions
1691
- }
1692
- });
1693
- mergedInlineConfig.rules[ruleId] = ruleValue;
1694
- } catch (err) {
1695
-
1696
- let baseMessage = err.message.slice(
1697
- err.message.startsWith("Key \"rules\":")
1698
- ? err.message.indexOf(":", 12) + 1
1699
- : err.message.indexOf(":") + 1
1700
- ).trim();
1701
-
1702
- if (err.messageTemplate) {
1703
- baseMessage += ` You passed "${ruleValue}".`;
1704
- }
1705
-
1706
- inlineConfigProblems.push(createLintingProblem({
1707
- ruleId,
1708
- message: `Inline configuration for rule "${ruleId}" is invalid:\n\t${baseMessage}\n`,
1709
- loc: node.loc
1710
- }));
1711
- }
1712
- });
1713
- }
1714
- }
1715
- }
1716
-
1717
- const commentDirectives = options.allowInlineConfig && !options.warnInlineConfig
1718
- ? getDirectiveCommentsForFlatConfig(
1719
- sourceCode,
1720
- ruleId => getRuleFromConfig(ruleId, config)
1721
- )
1722
- : { problems: [], disableDirectives: [] };
1723
-
1724
- const configuredRules = Object.assign({}, config.rules, mergedInlineConfig.rules);
1725
- let lintingProblems;
1726
-
1727
- sourceCode.finalize();
1728
-
1729
- try {
1730
- lintingProblems = runRules(
1731
- sourceCode,
1732
- configuredRules,
1733
- ruleId => getRuleFromConfig(ruleId, config),
1734
- void 0,
1735
- languageOptions,
1736
- settings,
1737
- options.filename,
1738
- options.disableFixes,
1739
- slots.cwd,
1740
- providedOptions.physicalFilename
1741
- );
1742
- } catch (err) {
1743
- err.message += `\nOccurred while linting ${options.filename}`;
1744
- debug("An error occurred while traversing");
1745
- debug("Filename:", options.filename);
1746
- if (err.currentNode) {
1747
- const { line } = err.currentNode.loc.start;
1748
-
1749
- debug("Line:", line);
1750
- err.message += `:${line}`;
1751
- }
1752
- debug("Parser Options:", languageOptions.parserOptions);
1753
-
1754
- // debug("Parser Path:", parserName);
1755
- debug("Settings:", settings);
1756
-
1757
- if (err.ruleId) {
1758
- err.message += `\nRule: "${err.ruleId}"`;
1759
- }
1760
-
1761
- throw err;
1762
- }
1763
-
1764
- return applyDisableDirectives({
1765
- directives: commentDirectives.disableDirectives,
1766
- disableFixes: options.disableFixes,
1767
- problems: lintingProblems
1768
- .concat(commentDirectives.problems)
1769
- .concat(inlineConfigProblems)
1770
- .sort((problemA, problemB) => problemA.line - problemB.line || problemA.column - problemB.column),
1771
- reportUnusedDisableDirectives: options.reportUnusedDisableDirectives
1772
- });
1773
- }
1774
-
1775
- /**
1776
- * Verify a given code with `ConfigArray`.
1777
- * @param {string|SourceCode} textOrSourceCode The source code.
1778
- * @param {ConfigArray} configArray The config array.
1779
- * @param {VerifyOptions&ProcessorOptions} options The options.
1780
- * @returns {(LintMessage|SuppressedLintMessage)[]} The found problems.
1781
- */
1782
- _verifyWithConfigArray(textOrSourceCode, configArray, options) {
1783
- debug("With ConfigArray: %s", options.filename);
1784
-
1785
- // Store the config array in order to get plugin envs and rules later.
1786
- internalSlotsMap.get(this).lastConfigArray = configArray;
1787
-
1788
- // Extract the final config for this file.
1789
- const config = configArray.extractConfig(options.filename);
1790
- const processor =
1791
- config.processor &&
1792
- configArray.pluginProcessors.get(config.processor);
1793
-
1794
- // Verify.
1795
- if (processor) {
1796
- debug("Apply the processor: %o", config.processor);
1797
- const { preprocess, postprocess, supportsAutofix } = processor;
1798
- const disableFixes = options.disableFixes || !supportsAutofix;
1799
-
1800
- return this._verifyWithProcessor(
1801
- textOrSourceCode,
1802
- config,
1803
- { ...options, disableFixes, postprocess, preprocess },
1804
- configArray
1805
- );
1806
- }
1807
- return this._verifyWithoutProcessors(textOrSourceCode, config, options);
1808
- }
1809
-
1810
- /**
1811
- * Verify a given code with a flat config.
1812
- * @param {string|SourceCode} textOrSourceCode The source code.
1813
- * @param {FlatConfigArray} configArray The config array.
1814
- * @param {VerifyOptions&ProcessorOptions} options The options.
1815
- * @param {boolean} [firstCall=false] Indicates if this is being called directly
1816
- * from verify(). (TODO: Remove once eslintrc is removed.)
1817
- * @returns {(LintMessage|SuppressedLintMessage)[]} The found problems.
1818
- */
1819
- _verifyWithFlatConfigArray(textOrSourceCode, configArray, options, firstCall = false) {
1820
- debug("With flat config: %s", options.filename);
1821
-
1822
- // we need a filename to match configs against
1823
- const filename = options.filename || "__placeholder__.js";
1824
-
1825
- // Store the config array in order to get plugin envs and rules later.
1826
- internalSlotsMap.get(this).lastConfigArray = configArray;
1827
- const config = configArray.getConfig(filename);
1828
-
1829
- if (!config) {
1830
- return [
1831
- {
1832
- ruleId: null,
1833
- severity: 1,
1834
- message: `No matching configuration found for ${filename}.`,
1835
- line: 0,
1836
- column: 0,
1837
- nodeType: null
1838
- }
1839
- ];
1840
- }
1841
-
1842
- // Verify.
1843
- if (config.processor) {
1844
- debug("Apply the processor: %o", config.processor);
1845
- const { preprocess, postprocess, supportsAutofix } = config.processor;
1846
- const disableFixes = options.disableFixes || !supportsAutofix;
1847
-
1848
- return this._verifyWithFlatConfigArrayAndProcessor(
1849
- textOrSourceCode,
1850
- config,
1851
- { ...options, filename, disableFixes, postprocess, preprocess },
1852
- configArray
1853
- );
1854
- }
1855
-
1856
- // check for options-based processing
1857
- if (firstCall && (options.preprocess || options.postprocess)) {
1858
- return this._verifyWithFlatConfigArrayAndProcessor(textOrSourceCode, config, options);
1859
- }
1860
-
1861
- return this._verifyWithFlatConfigArrayAndWithoutProcessors(textOrSourceCode, config, options);
1862
- }
1863
-
1864
- /**
1865
- * Verify with a processor.
1866
- * @param {string|SourceCode} textOrSourceCode The source code.
1867
- * @param {ConfigData|ExtractedConfig} config The config array.
1868
- * @param {VerifyOptions&ProcessorOptions} options The options.
1869
- * @param {ConfigArray} [configForRecursive] The `ConfigArray` object to apply multiple processors recursively.
1870
- * @returns {(LintMessage|SuppressedLintMessage)[]} The found problems.
1871
- */
1872
- _verifyWithProcessor(textOrSourceCode, config, options, configForRecursive) {
1873
- const filename = options.filename || "<input>";
1874
- const filenameToExpose = normalizeFilename(filename);
1875
- const physicalFilename = options.physicalFilename || filenameToExpose;
1876
- const text = ensureText(textOrSourceCode);
1877
- const preprocess = options.preprocess || (rawText => [rawText]);
1878
- const postprocess = options.postprocess || (messagesList => messagesList.flat());
1879
- const filterCodeBlock =
1880
- options.filterCodeBlock ||
1881
- (blockFilename => blockFilename.endsWith(".js"));
1882
- const originalExtname = path.extname(filename);
1883
-
1884
- let blocks;
1885
-
1886
- try {
1887
- blocks = preprocess(text, filenameToExpose);
1888
- } catch (ex) {
1889
-
1890
- // If the message includes a leading line number, strip it:
1891
- const message = `Preprocessing error: ${ex.message.replace(/^line \d+:/iu, "").trim()}`;
1892
-
1893
- debug("%s\n%s", message, ex.stack);
1894
-
1895
- return [
1896
- {
1897
- ruleId: null,
1898
- fatal: true,
1899
- severity: 2,
1900
- message,
1901
- line: ex.lineNumber,
1902
- column: ex.column,
1903
- nodeType: null
1904
- }
1905
- ];
1906
- }
1907
-
1908
- const messageLists = blocks.map((block, i) => {
1909
- debug("A code block was found: %o", block.filename || "(unnamed)");
1910
-
1911
- // Keep the legacy behavior.
1912
- if (typeof block === "string") {
1913
- return this._verifyWithoutProcessors(block, config, options);
1914
- }
1915
-
1916
- const blockText = block.text;
1917
- const blockName = path.join(filename, `${i}_${block.filename}`);
1918
-
1919
- // Skip this block if filtered.
1920
- if (!filterCodeBlock(blockName, blockText)) {
1921
- debug("This code block was skipped.");
1922
- return [];
1923
- }
1924
-
1925
- // Resolve configuration again if the file content or extension was changed.
1926
- if (configForRecursive && (text !== blockText || path.extname(blockName) !== originalExtname)) {
1927
- debug("Resolving configuration again because the file content or extension was changed.");
1928
- return this._verifyWithConfigArray(
1929
- blockText,
1930
- configForRecursive,
1931
- { ...options, filename: blockName, physicalFilename }
1932
- );
1933
- }
1934
-
1935
- // Does lint.
1936
- return this._verifyWithoutProcessors(
1937
- blockText,
1938
- config,
1939
- { ...options, filename: blockName, physicalFilename }
1940
- );
1941
- });
1942
-
1943
- return postprocess(messageLists, filenameToExpose);
1944
- }
1945
-
1946
- /**
1947
- * Given a list of reported problems, distinguish problems between normal messages and suppressed messages.
1948
- * The normal messages will be returned and the suppressed messages will be stored as lastSuppressedMessages.
1949
- * @param {Array<LintMessage|SuppressedLintMessage>} problems A list of reported problems.
1950
- * @returns {LintMessage[]} A list of LintMessage.
1951
- */
1952
- _distinguishSuppressedMessages(problems) {
1953
- const messages = [];
1954
- const suppressedMessages = [];
1955
- const slots = internalSlotsMap.get(this);
1956
-
1957
- for (const problem of problems) {
1958
- if (problem.suppressions) {
1959
- suppressedMessages.push(problem);
1960
- } else {
1961
- messages.push(problem);
1962
- }
1963
- }
1964
-
1965
- slots.lastSuppressedMessages = suppressedMessages;
1966
-
1967
- return messages;
1968
- }
1969
-
1970
- /**
1971
- * Gets the SourceCode object representing the parsed source.
1972
- * @returns {SourceCode} The SourceCode object.
1973
- */
1974
- getSourceCode() {
1975
- return internalSlotsMap.get(this).lastSourceCode;
1976
- }
1977
-
1978
- /**
1979
- * Gets the list of SuppressedLintMessage produced in the last running.
1980
- * @returns {SuppressedLintMessage[]} The list of SuppressedLintMessage
1981
- */
1982
- getSuppressedMessages() {
1983
- return internalSlotsMap.get(this).lastSuppressedMessages;
1984
- }
1985
-
1986
- /**
1987
- * Defines a new linting rule.
1988
- * @param {string} ruleId A unique rule identifier
1989
- * @param {Function | Rule} ruleModule Function from context to object mapping AST node types to event handlers
1990
- * @returns {void}
1991
- */
1992
- defineRule(ruleId, ruleModule) {
1993
- assertEslintrcConfig(this);
1994
- internalSlotsMap.get(this).ruleMap.define(ruleId, ruleModule);
1995
- }
1996
-
1997
- /**
1998
- * Defines many new linting rules.
1999
- * @param {Record<string, Function | Rule>} rulesToDefine map from unique rule identifier to rule
2000
- * @returns {void}
2001
- */
2002
- defineRules(rulesToDefine) {
2003
- assertEslintrcConfig(this);
2004
- Object.getOwnPropertyNames(rulesToDefine).forEach(ruleId => {
2005
- this.defineRule(ruleId, rulesToDefine[ruleId]);
2006
- });
2007
- }
2008
-
2009
- /**
2010
- * Gets an object with all loaded rules.
2011
- * @returns {Map<string, Rule>} All loaded rules
2012
- */
2013
- getRules() {
2014
- assertEslintrcConfig(this);
2015
- const { lastConfigArray, ruleMap } = internalSlotsMap.get(this);
2016
-
2017
- return new Map(function *() {
2018
- yield* ruleMap;
2019
-
2020
- if (lastConfigArray) {
2021
- yield* lastConfigArray.pluginRules;
2022
- }
2023
- }());
2024
- }
2025
-
2026
- /**
2027
- * Define a new parser module
2028
- * @param {string} parserId Name of the parser
2029
- * @param {Parser} parserModule The parser object
2030
- * @returns {void}
2031
- */
2032
- defineParser(parserId, parserModule) {
2033
- assertEslintrcConfig(this);
2034
- internalSlotsMap.get(this).parserMap.set(parserId, parserModule);
2035
- }
2036
-
2037
- /**
2038
- * Performs multiple autofix passes over the text until as many fixes as possible
2039
- * have been applied.
2040
- * @param {string} text The source text to apply fixes to.
2041
- * @param {ConfigData|ConfigArray|FlatConfigArray} config The ESLint config object to use.
2042
- * @param {VerifyOptions&ProcessorOptions&FixOptions} options The ESLint options object to use.
2043
- * @returns {{fixed:boolean,messages:LintMessage[],output:string}} The result of the fix operation as returned from the
2044
- * SourceCodeFixer.
2045
- */
2046
- verifyAndFix(text, config, options) {
2047
- let messages = [],
2048
- fixedResult,
2049
- fixed = false,
2050
- passNumber = 0,
2051
- currentText = text;
2052
- const debugTextDescription = options && options.filename || `${text.slice(0, 10)}...`;
2053
- const shouldFix = options && typeof options.fix !== "undefined" ? options.fix : true;
2054
-
2055
- /**
2056
- * This loop continues until one of the following is true:
2057
- *
2058
- * 1. No more fixes have been applied.
2059
- * 2. Ten passes have been made.
2060
- *
2061
- * That means anytime a fix is successfully applied, there will be another pass.
2062
- * Essentially, guaranteeing a minimum of two passes.
2063
- */
2064
- do {
2065
- passNumber++;
2066
-
2067
- debug(`Linting code for ${debugTextDescription} (pass ${passNumber})`);
2068
- messages = this.verify(currentText, config, options);
2069
-
2070
- debug(`Generating fixed text for ${debugTextDescription} (pass ${passNumber})`);
2071
- fixedResult = SourceCodeFixer.applyFixes(currentText, messages, shouldFix);
2072
-
2073
- /*
2074
- * stop if there are any syntax errors.
2075
- * 'fixedResult.output' is a empty string.
2076
- */
2077
- if (messages.length === 1 && messages[0].fatal) {
2078
- break;
2079
- }
2080
-
2081
- // keep track if any fixes were ever applied - important for return value
2082
- fixed = fixed || fixedResult.fixed;
2083
-
2084
- // update to use the fixed output instead of the original text
2085
- currentText = fixedResult.output;
2086
-
2087
- } while (
2088
- fixedResult.fixed &&
2089
- passNumber < MAX_AUTOFIX_PASSES
2090
- );
2091
-
2092
- /*
2093
- * If the last result had fixes, we need to lint again to be sure we have
2094
- * the most up-to-date information.
2095
- */
2096
- if (fixedResult.fixed) {
2097
- fixedResult.messages = this.verify(currentText, config, options);
2098
- }
2099
-
2100
- // ensure the last result properly reflects if fixes were done
2101
- fixedResult.fixed = fixed;
2102
- fixedResult.output = currentText;
2103
-
2104
- return fixedResult;
2105
- }
2106
- }
2107
-
2108
- module.exports = {
2109
- Linter,
2110
-
2111
- /**
2112
- * Get the internal slots of a given Linter instance for tests.
2113
- * @param {Linter} instance The Linter instance to get.
2114
- * @returns {LinterInternalSlots} The internal slots.
2115
- */
2116
- getLinterInternalSlots(instance) {
2117
- return internalSlotsMap.get(instance);
2118
- }
2119
- };