repoburg 1.0.69 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1903) hide show
  1. package/README.md +8 -1
  2. package/backend/dist/packages/gemini-core/examples/simple.d.ts +1 -0
  3. package/backend/dist/packages/gemini-core/examples/simple.js +73 -0
  4. package/backend/dist/packages/gemini-core/examples/simple.js.map +1 -0
  5. package/backend/dist/packages/gemini-core/index.d.ts +3 -0
  6. package/backend/dist/packages/gemini-core/index.js +27 -0
  7. package/backend/dist/packages/gemini-core/index.js.map +1 -0
  8. package/backend/dist/packages/gemini-core/src/code_assist/codeAssist.d.ts +5 -0
  9. package/backend/dist/packages/gemini-core/src/code_assist/codeAssist.js +17 -0
  10. package/backend/dist/packages/gemini-core/src/code_assist/codeAssist.js.map +1 -0
  11. package/backend/dist/packages/gemini-core/src/code_assist/converter.d.ts +69 -0
  12. package/backend/dist/packages/gemini-core/src/code_assist/converter.js +129 -0
  13. package/backend/dist/packages/gemini-core/src/code_assist/converter.js.map +1 -0
  14. package/backend/dist/packages/gemini-core/src/code_assist/oauth-credential-storage.d.ts +8 -0
  15. package/backend/dist/packages/gemini-core/src/code_assist/oauth-credential-storage.js +84 -0
  16. package/backend/dist/packages/gemini-core/src/code_assist/oauth-credential-storage.js.map +1 -0
  17. package/backend/dist/packages/gemini-core/src/code_assist/oauth2.d.ts +12 -0
  18. package/backend/dist/packages/gemini-core/src/code_assist/oauth2.js +371 -0
  19. package/backend/dist/packages/gemini-core/src/code_assist/oauth2.js.map +1 -0
  20. package/backend/dist/packages/gemini-core/src/code_assist/server.d.ts +28 -0
  21. package/backend/dist/packages/gemini-core/src/code_assist/server.js +135 -0
  22. package/backend/dist/packages/gemini-core/src/code_assist/server.js.map +1 -0
  23. package/backend/dist/packages/gemini-core/src/code_assist/setup.d.ts +10 -0
  24. package/backend/dist/packages/gemini-core/src/code_assist/setup.js +94 -0
  25. package/backend/dist/packages/gemini-core/src/code_assist/setup.js.map +1 -0
  26. package/backend/dist/packages/gemini-core/src/code_assist/types.d.ts +106 -0
  27. package/backend/dist/packages/gemini-core/src/code_assist/types.js +28 -0
  28. package/backend/dist/packages/gemini-core/src/code_assist/types.js.map +1 -0
  29. package/backend/dist/packages/gemini-core/src/config/config.d.ts +22 -0
  30. package/backend/dist/packages/gemini-core/src/config/config.js +38 -0
  31. package/backend/dist/packages/gemini-core/src/config/config.js.map +1 -0
  32. package/backend/dist/packages/gemini-core/src/config/models.d.ts +6 -0
  33. package/backend/dist/packages/gemini-core/src/config/models.js +13 -0
  34. package/backend/dist/packages/gemini-core/src/config/models.js.map +1 -0
  35. package/backend/dist/packages/gemini-core/src/config/storage.d.ts +8 -0
  36. package/backend/dist/packages/gemini-core/src/config/storage.js +25 -0
  37. package/backend/dist/packages/gemini-core/src/config/storage.js.map +1 -0
  38. package/backend/dist/packages/gemini-core/src/core/contentGenerator.d.ts +23 -0
  39. package/backend/dist/packages/gemini-core/src/core/contentGenerator.js +63 -0
  40. package/backend/dist/packages/gemini-core/src/core/contentGenerator.js.map +1 -0
  41. package/backend/dist/packages/gemini-core/src/core/geminiChat.d.ts +34 -0
  42. package/backend/dist/packages/gemini-core/src/core/geminiChat.js +247 -0
  43. package/backend/dist/packages/gemini-core/src/core/geminiChat.js.map +1 -0
  44. package/backend/dist/packages/gemini-core/src/core/geminiRequest.d.ts +3 -0
  45. package/backend/dist/packages/gemini-core/src/core/geminiRequest.js +8 -0
  46. package/backend/dist/packages/gemini-core/src/core/geminiRequest.js.map +1 -0
  47. package/backend/dist/packages/gemini-core/src/core/prompts.d.ts +7 -0
  48. package/backend/dist/packages/gemini-core/src/core/prompts.js +69 -0
  49. package/backend/dist/packages/gemini-core/src/core/prompts.js.map +1 -0
  50. package/backend/dist/packages/gemini-core/src/core/tokenLimits.d.ts +5 -0
  51. package/backend/dist/packages/gemini-core/src/core/tokenLimits.js +25 -0
  52. package/backend/dist/packages/gemini-core/src/core/tokenLimits.js.map +1 -0
  53. package/backend/dist/packages/gemini-core/src/index.d.ts +18 -0
  54. package/backend/dist/packages/gemini-core/src/index.js +37 -0
  55. package/backend/dist/packages/gemini-core/src/index.js.map +1 -0
  56. package/backend/dist/packages/gemini-core/src/mcp/token-storage/base-token-storage.d.ts +14 -0
  57. package/backend/dist/packages/gemini-core/src/mcp/token-storage/base-token-storage.js +34 -0
  58. package/backend/dist/packages/gemini-core/src/mcp/token-storage/base-token-storage.js.map +1 -0
  59. package/backend/dist/packages/gemini-core/src/mcp/token-storage/file-token-storage.d.ts +19 -0
  60. package/backend/dist/packages/gemini-core/src/mcp/token-storage/file-token-storage.js +141 -0
  61. package/backend/dist/packages/gemini-core/src/mcp/token-storage/file-token-storage.js.map +1 -0
  62. package/backend/dist/packages/gemini-core/src/mcp/token-storage/hybrid-token-storage.d.ts +18 -0
  63. package/backend/dist/packages/gemini-core/src/mcp/token-storage/hybrid-token-storage.js +74 -0
  64. package/backend/dist/packages/gemini-core/src/mcp/token-storage/hybrid-token-storage.js.map +1 -0
  65. package/backend/dist/packages/gemini-core/src/mcp/token-storage/index.d.ts +6 -0
  66. package/backend/dist/packages/gemini-core/src/mcp/token-storage/index.js +24 -0
  67. package/backend/dist/packages/gemini-core/src/mcp/token-storage/index.js.map +1 -0
  68. package/backend/dist/packages/gemini-core/src/mcp/token-storage/keychain-token-storage.d.ts +26 -0
  69. package/backend/dist/packages/gemini-core/src/mcp/token-storage/keychain-token-storage.js +188 -0
  70. package/backend/dist/packages/gemini-core/src/mcp/token-storage/keychain-token-storage.js.map +1 -0
  71. package/backend/dist/packages/gemini-core/src/mcp/token-storage/types.d.ts +27 -0
  72. package/backend/dist/packages/gemini-core/src/mcp/token-storage/types.js +9 -0
  73. package/backend/dist/packages/gemini-core/src/mcp/token-storage/types.js.map +1 -0
  74. package/backend/dist/packages/gemini-core/src/utils/errors.d.ts +34 -0
  75. package/backend/dist/packages/gemini-core/src/utils/errors.js +103 -0
  76. package/backend/dist/packages/gemini-core/src/utils/errors.js.map +1 -0
  77. package/backend/dist/packages/gemini-core/src/utils/partUtils.d.ts +7 -0
  78. package/backend/dist/packages/gemini-core/src/utils/partUtils.js +108 -0
  79. package/backend/dist/packages/gemini-core/src/utils/partUtils.js.map +1 -0
  80. package/backend/dist/packages/gemini-core/src/utils/quotaErrorDetection.d.ts +16 -0
  81. package/backend/dist/packages/gemini-core/src/utils/quotaErrorDetection.js +60 -0
  82. package/backend/dist/packages/gemini-core/src/utils/quotaErrorDetection.js.map +1 -0
  83. package/backend/dist/packages/gemini-core/src/utils/retry.d.ts +14 -0
  84. package/backend/dist/packages/gemini-core/src/utils/retry.js +154 -0
  85. package/backend/dist/packages/gemini-core/src/utils/retry.js.map +1 -0
  86. package/backend/dist/packages/gemini-core/src/utils/session.d.ts +1 -0
  87. package/backend/dist/packages/gemini-core/src/utils/session.js +6 -0
  88. package/backend/dist/packages/gemini-core/src/utils/session.js.map +1 -0
  89. package/backend/dist/packages/gemini-core/src/utils/userAccountManager.d.ts +10 -0
  90. package/backend/dist/packages/gemini-core/src/utils/userAccountManager.js +106 -0
  91. package/backend/dist/packages/gemini-core/src/utils/userAccountManager.js.map +1 -0
  92. package/backend/dist/src/action-execution/action-execution.module.js.map +1 -0
  93. package/backend/dist/src/action-execution/action-execution.service.js.map +1 -0
  94. package/backend/dist/src/ai-actions/ai-action-batch.service.js.map +1 -0
  95. package/backend/dist/src/ai-actions/ai-action-creation.service.js.map +1 -0
  96. package/backend/dist/src/ai-actions/ai-actions.controller.js.map +1 -0
  97. package/backend/dist/src/ai-actions/ai-actions.module.js.map +1 -0
  98. package/backend/dist/src/ai-actions/ai-actions.service.js.map +1 -0
  99. package/backend/dist/src/app.controller.js.map +1 -0
  100. package/backend/dist/src/app.module.js.map +1 -0
  101. package/backend/dist/src/app.service.js.map +1 -0
  102. package/backend/dist/src/application-state/application-state.controller.js.map +1 -0
  103. package/backend/dist/src/application-state/application-state.module.js.map +1 -0
  104. package/backend/dist/src/application-state/application-state.service.js.map +1 -0
  105. package/backend/dist/src/application-state/dto/set-auto-context-fetch-enabled.dto.js.map +1 -0
  106. package/backend/dist/src/application-state/dto/set-auto-send-to-ai-studio-enabled.dto.js.map +1 -0
  107. package/backend/dist/src/application-state/dto/set-context-token-limit.dto.js.map +1 -0
  108. package/backend/dist/src/application-state/dto/set-orchestration-timeout.dto.js.map +1 -0
  109. package/backend/dist/src/application-state/dto/set-theme.dto.js.map +1 -0
  110. package/backend/dist/src/application-state/dto/set-websocket-enabled.dto.js.map +1 -0
  111. package/backend/dist/src/context-generation/context-generation.module.js.map +1 -0
  112. package/backend/dist/src/context-generation/context-generation.service.js.map +1 -0
  113. package/backend/dist/src/context-snippets/context-snippets.controller.js.map +1 -0
  114. package/backend/dist/src/context-snippets/context-snippets.module.js.map +1 -0
  115. package/backend/dist/src/context-snippets/context-snippets.service.js.map +1 -0
  116. package/backend/dist/src/context-snippets/dto/context-snippet.dto.js.map +1 -0
  117. package/backend/dist/src/context-templates/context-templates.controller.js.map +1 -0
  118. package/backend/dist/src/context-templates/context-templates.module.js.map +1 -0
  119. package/backend/dist/src/context-templates/context-templates.service.js.map +1 -0
  120. package/backend/dist/src/context-templates/dto/context-template.dto.js.map +1 -0
  121. package/backend/dist/src/core-entities/ai-action.entity.js.map +1 -0
  122. package/backend/dist/src/core-entities/application-state.entity.js.map +1 -0
  123. package/backend/dist/src/core-entities/base.entity.js.map +1 -0
  124. package/backend/dist/src/core-entities/context-snippet.entity.js.map +1 -0
  125. package/backend/dist/src/core-entities/context-template.entity.js.map +1 -0
  126. package/backend/dist/src/core-entities/custom-snippet.entity.js.map +1 -0
  127. package/backend/dist/src/core-entities/execution-log.entity.js.map +1 -0
  128. package/backend/dist/src/core-entities/index.js.map +1 -0
  129. package/backend/dist/src/core-entities/project.entity.js.map +1 -0
  130. package/backend/dist/src/core-entities/session-input.entity.js.map +1 -0
  131. package/backend/dist/src/core-entities/session.entity.js.map +1 -0
  132. package/backend/dist/src/core-entities/system-prompt.entity.js.map +1 -0
  133. package/backend/dist/src/custom-snippets/custom-snippets.controller.js.map +1 -0
  134. package/backend/dist/src/custom-snippets/custom-snippets.module.js.map +1 -0
  135. package/backend/dist/src/custom-snippets/custom-snippets.service.js.map +1 -0
  136. package/backend/dist/src/custom-snippets/dto/custom-snippet.dto.js.map +1 -0
  137. package/backend/dist/src/events/events.gateway.js.map +1 -0
  138. package/backend/dist/src/events/events.module.js.map +1 -0
  139. package/backend/dist/src/execution-logs/dto/execution-log.dto.js.map +1 -0
  140. package/backend/dist/src/execution-logs/execution-logs.controller.js.map +1 -0
  141. package/backend/dist/src/execution-logs/execution-logs.module.js.map +1 -0
  142. package/backend/dist/src/execution-logs/execution-logs.service.js.map +1 -0
  143. package/backend/dist/src/gemini/gemini-llm.provider.d.ts +10 -0
  144. package/backend/dist/src/gemini/gemini-llm.provider.js +103 -0
  145. package/backend/dist/src/gemini/gemini-llm.provider.js.map +1 -0
  146. package/backend/dist/src/gemini/gemini.module.d.ts +2 -0
  147. package/backend/dist/src/gemini/gemini.module.js +21 -0
  148. package/backend/dist/src/gemini/gemini.module.js.map +1 -0
  149. package/backend/dist/src/http-exception.filter.js.map +1 -0
  150. package/backend/dist/src/llm-provider/llm-provider.interface.d.ts +16 -0
  151. package/backend/dist/src/llm-provider/llm-provider.interface.js +5 -0
  152. package/backend/dist/src/llm-provider/llm-provider.interface.js.map +1 -0
  153. package/backend/dist/src/llm-provider/llm-provider.module.d.ts +2 -0
  154. package/backend/dist/src/llm-provider/llm-provider.module.js +29 -0
  155. package/backend/dist/src/llm-provider/llm-provider.module.js.map +1 -0
  156. package/backend/dist/src/llm-response-parser/dto/ai-action.dto.js.map +1 -0
  157. package/backend/dist/src/llm-response-parser/errors/parsing.error.js.map +1 -0
  158. package/backend/dist/src/llm-response-parser/llm-response-parser.module.js.map +1 -0
  159. package/backend/dist/src/llm-response-parser/llm-response-parser.service.js.map +1 -0
  160. package/backend/dist/src/llm-response-parser/parsing.constants.js.map +1 -0
  161. package/backend/dist/src/llm-responses/dto/submit-llm-response.dto.js.map +1 -0
  162. package/backend/dist/src/llm-responses/llm-responses.controller.js.map +1 -0
  163. package/backend/dist/src/llm-responses/llm-responses.module.js.map +1 -0
  164. package/backend/dist/src/llm-responses/llm-responses.service.js.map +1 -0
  165. package/backend/dist/src/main.js.map +1 -0
  166. package/backend/dist/src/orchestration/dto/orchestration.dto.js.map +1 -0
  167. package/backend/dist/src/orchestration/orchestration-fs.service.js.map +1 -0
  168. package/backend/dist/src/orchestration/orchestration-parser.service.js.map +1 -0
  169. package/backend/dist/src/orchestration/orchestration.controller.js.map +1 -0
  170. package/backend/dist/src/orchestration/orchestration.module.js.map +1 -0
  171. package/backend/dist/src/orchestration/orchestration.service.js.map +1 -0
  172. package/backend/dist/src/orchestration/orchestration.types.js.map +1 -0
  173. package/backend/dist/src/projects/dto/project.dto.js.map +1 -0
  174. package/backend/dist/src/projects/projects.controller.js.map +1 -0
  175. package/backend/dist/src/projects/projects.module.js.map +1 -0
  176. package/backend/dist/src/projects/projects.service.js.map +1 -0
  177. package/backend/dist/src/seeding/context-template-seeding.service.js.map +1 -0
  178. package/backend/dist/src/seeding/custom-snippet-seeding.service.js.map +1 -0
  179. package/backend/dist/src/seeding/data/context-templates/default-followup_ad-hoc-focused-context.js.map +1 -0
  180. package/backend/dist/src/seeding/data/context-templates/default-initial_condensed-project-context.js.map +1 -0
  181. package/backend/dist/src/seeding/data/context-templates/default-initial_full-project-context.js.map +1 -0
  182. package/backend/dist/src/seeding/data/context-templates/pm-context.js.map +1 -0
  183. package/backend/dist/src/seeding/data/context-templates/pr-description.js.map +1 -0
  184. package/backend/dist/src/seeding/data/context-templates/sample_focused-tree.d.ts +2 -0
  185. package/backend/dist/src/seeding/data/context-templates/sample_focused-tree.js +15 -0
  186. package/backend/dist/src/seeding/data/context-templates/sample_focused-tree.js.map +1 -0
  187. package/backend/dist/src/seeding/data/custom-snippets/default_rglob.js.map +1 -0
  188. package/backend/dist/src/seeding/data/custom-snippets/git-diff.js.map +1 -0
  189. package/backend/dist/src/seeding/data/custom-snippets/rg-exclude.js.map +1 -0
  190. package/backend/dist/src/seeding/data/custom-snippets/rg-search-glob.js.map +1 -0
  191. package/backend/dist/src/seeding/data/custom-snippets/rg-search.js.map +1 -0
  192. package/backend/dist/src/seeding/data/custom-snippets/run-command.js.map +1 -0
  193. package/backend/dist/src/seeding/data/custom-snippets/tree.js.map +1 -0
  194. package/backend/dist/src/seeding/data/custom-snippets/usr-adhoc-incl.js.map +1 -0
  195. package/backend/dist/src/seeding/data/custom-snippets/usr-cmd-output-incl.js.map +1 -0
  196. package/backend/dist/src/seeding/data/custom-snippets/usr-input-incl.js.map +1 -0
  197. package/backend/dist/src/seeding/data/system-prompts/codebase-explorer.js.map +1 -0
  198. package/backend/dist/src/seeding/data/system-prompts/default_multi-file-action-generator-with-requester.js.map +1 -0
  199. package/backend/dist/src/seeding/data/system-prompts/packup.js.map +1 -0
  200. package/backend/dist/src/seeding/data/system-prompts/refactor-split.js.map +1 -0
  201. package/backend/dist/src/seeding/seeding.module.js.map +1 -0
  202. package/backend/dist/src/seeding/seeding.service.js.map +1 -0
  203. package/backend/dist/src/seeding/system-prompt-seeding.service.js.map +1 -0
  204. package/backend/dist/src/session-followup/session-followup.module.js.map +1 -0
  205. package/backend/dist/src/session-followup/session-followup.service.js.map +1 -0
  206. package/backend/dist/src/session-inputs/dto/session-input.dto.js.map +1 -0
  207. package/backend/dist/src/session-inputs/session-input-context.service.d.ts +16 -0
  208. package/backend/dist/src/session-inputs/session-input-context.service.js +175 -0
  209. package/backend/dist/src/session-inputs/session-input-context.service.js.map +1 -0
  210. package/backend/dist/src/session-inputs/session-inputs.controller.js.map +1 -0
  211. package/backend/dist/src/session-inputs/session-inputs.module.js +50 -0
  212. package/backend/dist/src/session-inputs/session-inputs.module.js.map +1 -0
  213. package/backend/dist/src/session-inputs/session-inputs.service.d.ts +37 -0
  214. package/backend/dist/src/session-inputs/session-inputs.service.js +383 -0
  215. package/backend/dist/src/session-inputs/session-inputs.service.js.map +1 -0
  216. package/backend/dist/src/session-transfer/session-transfer.module.js.map +1 -0
  217. package/backend/dist/src/session-transfer/session-transfer.service.js.map +1 -0
  218. package/backend/dist/src/sessions/dto/session.dto.js.map +1 -0
  219. package/backend/dist/src/sessions/sessions.controller.js.map +1 -0
  220. package/backend/dist/src/sessions/sessions.module.js.map +1 -0
  221. package/backend/dist/src/sessions/sessions.service.js.map +1 -0
  222. package/backend/dist/src/system-prompts/dto/system-prompt.dto.js.map +1 -0
  223. package/backend/dist/src/system-prompts/system-prompts.controller.js.map +1 -0
  224. package/backend/dist/src/system-prompts/system-prompts.module.js.map +1 -0
  225. package/backend/dist/src/system-prompts/system-prompts.service.js.map +1 -0
  226. package/backend/dist/src/timeout.interceptor.js +35 -0
  227. package/backend/dist/src/timeout.interceptor.js.map +1 -0
  228. package/backend/dist/src/tracing.js.map +1 -0
  229. package/backend/dist/src/utils/fuzzy-search.js.map +1 -0
  230. package/backend/dist/src/utils/index.js.map +1 -0
  231. package/backend/dist/src/utils/trace.decorator.js.map +1 -0
  232. package/backend/dist/src/workspace/dto/file-tree.dto.js.map +1 -0
  233. package/backend/dist/src/workspace/dto/search-workspace.dto.js.map +1 -0
  234. package/backend/dist/src/workspace/workspace.controller.js.map +1 -0
  235. package/backend/dist/src/workspace/workspace.module.js.map +1 -0
  236. package/backend/dist/src/workspace/workspace.service.js.map +1 -0
  237. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  238. package/backend/node_modules/@typescript-eslint/eslint-plugin/LICENSE +21 -0
  239. package/backend/node_modules/@typescript-eslint/eslint-plugin/README.md +12 -0
  240. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js +156 -0
  241. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map +1 -0
  242. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js +13 -0
  243. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js.map +1 -0
  244. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/disable-type-checked.js +64 -0
  245. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/disable-type-checked.js.map +1 -0
  246. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js +31 -0
  247. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js.map +1 -0
  248. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-type-checked.js +54 -0
  249. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-type-checked.js.map +1 -0
  250. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js +33 -0
  251. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js.map +1 -0
  252. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict-type-checked.js +79 -0
  253. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict-type-checked.js.map +1 -0
  254. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict.js +43 -0
  255. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/strict.js.map +1 -0
  256. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic-type-checked.js +35 -0
  257. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic-type-checked.js.map +1 -0
  258. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic.js +29 -0
  259. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/configs/stylistic.js.map +1 -0
  260. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +39 -0
  261. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/index.js.map +1 -0
  262. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js +140 -0
  263. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js.map +1 -0
  264. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js +222 -0
  265. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map +1 -0
  266. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js +76 -0
  267. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js.map +1 -0
  268. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js +156 -0
  269. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map +1 -0
  270. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js +56 -0
  271. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js.map +1 -0
  272. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js +240 -0
  273. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js.map +1 -0
  274. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/block-spacing.js +140 -0
  275. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/block-spacing.js.map +1 -0
  276. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/brace-style.js +99 -0
  277. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/brace-style.js.map +1 -0
  278. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js +123 -0
  279. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js.map +1 -0
  280. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js +211 -0
  281. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js.map +1 -0
  282. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js +166 -0
  283. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js.map +1 -0
  284. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js +152 -0
  285. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map +1 -0
  286. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js +109 -0
  287. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js.map +1 -0
  288. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-indexed-object-style.js +128 -0
  289. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-indexed-object-style.js.map +1 -0
  290. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js +222 -0
  291. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js.map +1 -0
  292. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js +98 -0
  293. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js.map +1 -0
  294. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js +245 -0
  295. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js.map +1 -0
  296. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js +635 -0
  297. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map +1 -0
  298. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/default-param-last.js +63 -0
  299. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/default-param-last.js.map +1 -0
  300. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js +120 -0
  301. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js.map +1 -0
  302. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.js +112 -0
  303. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.js.map +1 -0
  304. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js +164 -0
  305. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map +1 -0
  306. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js +283 -0
  307. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map +1 -0
  308. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js +366 -0
  309. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map +1 -0
  310. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js +147 -0
  311. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js.map +1 -0
  312. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js +415 -0
  313. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js.map +1 -0
  314. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js +288 -0
  315. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map +1 -0
  316. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js +48 -0
  317. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js.map +1 -0
  318. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/key-spacing.js +322 -0
  319. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/key-spacing.js.map +1 -0
  320. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js +95 -0
  321. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js.map +1 -0
  322. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-around-comment.js +357 -0
  323. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-around-comment.js.map +1 -0
  324. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js +57 -0
  325. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js.map +1 -0
  326. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/max-params.js +67 -0
  327. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/max-params.js.map +1 -0
  328. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js +258 -0
  329. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js.map +1 -0
  330. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js +747 -0
  331. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map +1 -0
  332. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js +181 -0
  333. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map +1 -0
  334. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js +101 -0
  335. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js.map +1 -0
  336. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/format.js +91 -0
  337. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/format.js.map +1 -0
  338. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/index.js +12 -0
  339. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/index.js.map +1 -0
  340. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/parse-options.js +75 -0
  341. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/parse-options.js.map +1 -0
  342. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/schema.js +291 -0
  343. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/schema.js.map +1 -0
  344. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js +18 -0
  345. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js.map +1 -0
  346. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/types.js +3 -0
  347. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/types.js.map +1 -0
  348. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js +351 -0
  349. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js.map +1 -0
  350. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js +488 -0
  351. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js.map +1 -0
  352. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js +53 -0
  353. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js.map +1 -0
  354. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js +83 -0
  355. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js.map +1 -0
  356. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js +164 -0
  357. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js.map +1 -0
  358. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js +78 -0
  359. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js.map +1 -0
  360. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js +293 -0
  361. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js.map +1 -0
  362. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js +51 -0
  363. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js.map +1 -0
  364. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js +62 -0
  365. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js.map +1 -0
  366. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-type-constituents.js +139 -0
  367. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-type-constituents.js.map +1 -0
  368. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js +95 -0
  369. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js.map +1 -0
  370. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js +132 -0
  371. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js.map +1 -0
  372. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js +94 -0
  373. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map +1 -0
  374. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js +170 -0
  375. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map +1 -0
  376. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js +36 -0
  377. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js.map +1 -0
  378. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js +297 -0
  379. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map +1 -0
  380. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js +43 -0
  381. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js.map +1 -0
  382. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js +112 -0
  383. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map +1 -0
  384. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js +342 -0
  385. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map +1 -0
  386. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js +60 -0
  387. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map +1 -0
  388. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js +160 -0
  389. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js.map +1 -0
  390. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js +56 -0
  391. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js.map +1 -0
  392. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js +185 -0
  393. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map +1 -0
  394. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js +76 -0
  395. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js.map +1 -0
  396. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js +182 -0
  397. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js.map +1 -0
  398. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js +169 -0
  399. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js.map +1 -0
  400. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js +39 -0
  401. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js.map +1 -0
  402. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js +213 -0
  403. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js.map +1 -0
  404. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js +96 -0
  405. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js.map +1 -0
  406. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js +82 -0
  407. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js.map +1 -0
  408. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js +523 -0
  409. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map +1 -0
  410. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-mixed-enums.js +193 -0
  411. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-mixed-enums.js.map +1 -0
  412. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js +63 -0
  413. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map +1 -0
  414. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-nullish-coalescing.js +76 -0
  415. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-nullish-coalescing.js.map +1 -0
  416. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js +66 -0
  417. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map +1 -0
  418. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js +104 -0
  419. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map +1 -0
  420. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js +201 -0
  421. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map +1 -0
  422. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redundant-type-constituents.js +372 -0
  423. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redundant-type-constituents.js.map +1 -0
  424. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js +90 -0
  425. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js.map +1 -0
  426. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js +237 -0
  427. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js.map +1 -0
  428. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js +482 -0
  429. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js.map +1 -0
  430. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js +65 -0
  431. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map +1 -0
  432. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js +96 -0
  433. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js.map +1 -0
  434. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js +260 -0
  435. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map +1 -0
  436. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js +234 -0
  437. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map +1 -0
  438. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js +540 -0
  439. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map +1 -0
  440. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js +149 -0
  441. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js.map +1 -0
  442. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js +150 -0
  443. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js.map +1 -0
  444. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js +252 -0
  445. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map +1 -0
  446. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js +112 -0
  447. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js.map +1 -0
  448. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js +226 -0
  449. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js.map +1 -0
  450. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js +282 -0
  451. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js.map +1 -0
  452. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js +83 -0
  453. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js.map +1 -0
  454. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-declaration-merging.js +56 -0
  455. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-declaration-merging.js.map +1 -0
  456. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-enum-comparison.js +168 -0
  457. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-enum-comparison.js.map +1 -0
  458. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js +123 -0
  459. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js.map +1 -0
  460. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js +161 -0
  461. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js.map +1 -0
  462. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js +68 -0
  463. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js.map +1 -0
  464. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js +58 -0
  465. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map +1 -0
  466. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js +490 -0
  467. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map +1 -0
  468. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js +297 -0
  469. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map +1 -0
  470. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js +59 -0
  471. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map +1 -0
  472. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js +72 -0
  473. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js.map +1 -0
  474. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-template-literals.js +138 -0
  475. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-template-literals.js.map +1 -0
  476. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js +67 -0
  477. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js.map +1 -0
  478. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js +125 -0
  479. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map +1 -0
  480. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js +226 -0
  481. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map +1 -0
  482. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js +634 -0
  483. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js.map +1 -0
  484. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js +171 -0
  485. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js.map +1 -0
  486. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js +73 -0
  487. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map +1 -0
  488. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-destructuring.js +200 -0
  489. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-destructuring.js.map +1 -0
  490. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js +65 -0
  491. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js.map +1 -0
  492. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js +235 -0
  493. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js.map +1 -0
  494. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js +156 -0
  495. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js.map +1 -0
  496. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js +186 -0
  497. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map +1 -0
  498. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js +231 -0
  499. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js.map +1 -0
  500. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js +72 -0
  501. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js.map +1 -0
  502. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js +46 -0
  503. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js.map +1 -0
  504. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js +348 -0
  505. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map +1 -0
  506. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js +3 -0
  507. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js.map +1 -0
  508. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/analyzeChain.js +417 -0
  509. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/analyzeChain.js.map +1 -0
  510. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/compareNodes.js +318 -0
  511. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/compareNodes.js.map +1 -0
  512. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js +279 -0
  513. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js.map +1 -0
  514. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js +175 -0
  515. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map +1 -0
  516. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-promise-reject-errors.js +107 -0
  517. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-promise-reject-errors.js.map +1 -0
  518. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js +82 -0
  519. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js.map +1 -0
  520. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js +315 -0
  521. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js.map +1 -0
  522. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js +74 -0
  523. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js.map +1 -0
  524. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js +159 -0
  525. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map +1 -0
  526. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js +137 -0
  527. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js.map +1 -0
  528. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js +508 -0
  529. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js.map +1 -0
  530. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js +62 -0
  531. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js.map +1 -0
  532. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js +182 -0
  533. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map +1 -0
  534. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js +63 -0
  535. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js.map +1 -0
  536. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js +62 -0
  537. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map +1 -0
  538. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js +212 -0
  539. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map +1 -0
  540. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js +211 -0
  541. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map +1 -0
  542. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js +145 -0
  543. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map +1 -0
  544. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js +268 -0
  545. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map +1 -0
  546. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js +64 -0
  547. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js.map +1 -0
  548. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js +228 -0
  549. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js.map +1 -0
  550. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-blocks.js +80 -0
  551. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-blocks.js.map +1 -0
  552. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js +143 -0
  553. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js.map +1 -0
  554. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-infix-ops.js +133 -0
  555. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-infix-ops.js.map +1 -0
  556. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js +800 -0
  557. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js.map +1 -0
  558. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js +242 -0
  559. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map +1 -0
  560. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js +110 -0
  561. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js.map +1 -0
  562. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js +228 -0
  563. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js.map +1 -0
  564. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js +200 -0
  565. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map +1 -0
  566. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js +245 -0
  567. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map +1 -0
  568. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js +398 -0
  569. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map +1 -0
  570. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js +89 -0
  571. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map +1 -0
  572. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js +562 -0
  573. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js.map +1 -0
  574. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js +6 -0
  575. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js.map +1 -0
  576. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/escapeRegExp.js +16 -0
  577. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/escapeRegExp.js.map +1 -0
  578. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js +241 -0
  579. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js.map +1 -0
  580. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getESLintCoreRule.js +45 -0
  581. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getESLintCoreRule.js.map +1 -0
  582. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFunctionHeadLoc.js +163 -0
  583. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFunctionHeadLoc.js.map +1 -0
  584. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getOperatorPrecedence.js +418 -0
  585. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getOperatorPrecedence.js.map +1 -0
  586. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStaticStringValue.js +46 -0
  587. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStaticStringValue.js.map +1 -0
  588. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStringLength.js +20 -0
  589. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStringLength.js.map +1 -0
  590. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getThisExpression.js +26 -0
  591. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getThisExpression.js.map +1 -0
  592. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappedCode.js +8 -0
  593. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappedCode.js.map +1 -0
  594. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappingFixer.js +155 -0
  595. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappingFixer.js.map +1 -0
  596. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js +42 -0
  597. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map +1 -0
  598. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js +27 -0
  599. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js.map +1 -0
  600. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js +9 -0
  601. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js.map +1 -0
  602. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js +9 -0
  603. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js.map +1 -0
  604. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js +189 -0
  605. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js.map +1 -0
  606. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js +27 -0
  607. package/backend/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js.map +1 -0
  608. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/README.md +60 -0
  609. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/TEMPLATE.md +30 -0
  610. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/adjacent-overload-signatures.md +99 -0
  611. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/array-type.md +111 -0
  612. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/await-thenable.md +42 -0
  613. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md +151 -0
  614. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md +39 -0
  615. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md +132 -0
  616. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/block-spacing.md +10 -0
  617. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md +10 -0
  618. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md +13 -0
  619. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md +105 -0
  620. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-methods-use-this.md +96 -0
  621. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md +20 -0
  622. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md +10 -0
  623. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-generic-constructors.md +76 -0
  624. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-indexed-object-style.md +80 -0
  625. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md +113 -0
  626. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md +81 -0
  627. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-exports.md +105 -0
  628. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md +108 -0
  629. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md +58 -0
  630. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md +82 -0
  631. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md +320 -0
  632. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md +344 -0
  633. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md +249 -0
  634. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md +10 -0
  635. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md +18 -0
  636. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md +10 -0
  637. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/key-spacing.md +10 -0
  638. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md +10 -0
  639. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-around-comment.md +25 -0
  640. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md +55 -0
  641. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/max-params.md +10 -0
  642. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-delimiter-style.md +164 -0
  643. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md +1438 -0
  644. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md +113 -0
  645. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md +721 -0
  646. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md +29 -0
  647. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-delete.md +40 -0
  648. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md +88 -0
  649. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md +56 -0
  650. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-void-expression.md +116 -0
  651. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md +14 -0
  652. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-enum-values.md +58 -0
  653. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-imports.md +13 -0
  654. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-type-constituents.md +66 -0
  655. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dynamic-delete.md +53 -0
  656. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md +92 -0
  657. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-interface.md +59 -0
  658. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md +168 -0
  659. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-non-null-assertion.md +54 -0
  660. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md +10 -0
  661. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md +12 -0
  662. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md +295 -0
  663. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md +124 -0
  664. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-for-in-array.md +61 -0
  665. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md +102 -0
  666. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-import-type-side-effects.md +74 -0
  667. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-inferrable-types.md +103 -0
  668. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md +14 -0
  669. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md +112 -0
  670. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md +10 -0
  671. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md +10 -0
  672. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md +119 -0
  673. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-meaningless-void-operator.md +53 -0
  674. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-new.md +47 -0
  675. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-promises.md +246 -0
  676. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-mixed-enums.md +88 -0
  677. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md +131 -0
  678. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md +54 -0
  679. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md +40 -0
  680. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md +42 -0
  681. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-parameter-properties.md +12 -0
  682. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md +75 -0
  683. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redundant-type-constituents.md +92 -0
  684. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-require-imports.md +60 -0
  685. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-restricted-imports.md +71 -0
  686. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md +105 -0
  687. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md +108 -0
  688. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md +109 -0
  689. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md +623 -0
  690. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md +133 -0
  691. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md +119 -0
  692. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-qualifier.md +51 -0
  693. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md +79 -0
  694. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md +77 -0
  695. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md +55 -0
  696. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-argument.md +93 -0
  697. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md +96 -0
  698. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md +68 -0
  699. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-declaration-merging.md +59 -0
  700. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-enum-comparison.md +82 -0
  701. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md +74 -0
  702. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md +113 -0
  703. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-unary-minus.md +52 -0
  704. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md +10 -0
  705. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md +27 -0
  706. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md +87 -0
  707. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md +19 -0
  708. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-empty-export.md +47 -0
  709. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-template-literals.md +57 -0
  710. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-var-requires.md +60 -0
  711. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md +41 -0
  712. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md +10 -0
  713. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/padding-line-between-statements.md +33 -0
  714. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/parameter-properties.md +488 -0
  715. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md +47 -0
  716. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-destructuring.md +91 -0
  717. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md +62 -0
  718. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-find.md +39 -0
  719. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-for-of.md +44 -0
  720. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md +92 -0
  721. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-includes.md +75 -0
  722. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md +103 -0
  723. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-namespace-keyword.md +47 -0
  724. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md +187 -0
  725. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md +263 -0
  726. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-promise-reject-errors.md +50 -0
  727. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md +389 -0
  728. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md +102 -0
  729. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md +60 -0
  730. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-regexp-exec.md +46 -0
  731. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-return-this-type.md +87 -0
  732. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md +58 -0
  733. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md +70 -0
  734. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/promise-function-async.md +132 -0
  735. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md +10 -0
  736. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md +78 -0
  737. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md +22 -0
  738. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-plus-operands.md +208 -0
  739. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md +121 -0
  740. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md +216 -0
  741. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md +12 -0
  742. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-constituents.md +163 -0
  743. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-blocks.md +43 -0
  744. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md +10 -0
  745. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-infix-ops.md +16 -0
  746. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md +190 -0
  747. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/switch-exhaustiveness-check.md +225 -0
  748. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/triple-slash-reference.md +110 -0
  749. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md +317 -0
  750. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md +320 -0
  751. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unbound-method.md +105 -0
  752. package/backend/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unified-signatures.md +77 -0
  753. package/backend/node_modules/@typescript-eslint/eslint-plugin/index.d.ts +9 -0
  754. package/backend/node_modules/@typescript-eslint/eslint-plugin/package.json +106 -0
  755. package/backend/node_modules/@typescript-eslint/eslint-plugin/rules.d.ts +45 -0
  756. package/backend/node_modules/@typescript-eslint/parser/LICENSE +22 -0
  757. package/backend/node_modules/@typescript-eslint/parser/README.md +12 -0
  758. package/backend/node_modules/@typescript-eslint/parser/dist/index.d.ts +8 -0
  759. package/backend/node_modules/@typescript-eslint/parser/dist/index.d.ts.map +1 -0
  760. package/backend/node_modules/@typescript-eslint/parser/dist/index.js +17 -0
  761. package/backend/node_modules/@typescript-eslint/parser/dist/index.js.map +1 -0
  762. package/backend/node_modules/@typescript-eslint/parser/dist/parser.d.ts +20 -0
  763. package/backend/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map +1 -0
  764. package/backend/node_modules/@typescript-eslint/parser/dist/parser.js +130 -0
  765. package/backend/node_modules/@typescript-eslint/parser/dist/parser.js.map +1 -0
  766. package/backend/node_modules/@typescript-eslint/parser/package.json +85 -0
  767. package/backend/node_modules/@typescript-eslint/type-utils/LICENSE +21 -0
  768. package/backend/node_modules/@typescript-eslint/type-utils/README.md +14 -0
  769. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.d.ts +21 -0
  770. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.d.ts.map +1 -0
  771. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.js +188 -0
  772. package/backend/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.js.map +1 -0
  773. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.d.ts +39 -0
  774. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.d.ts.map +1 -0
  775. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.js +130 -0
  776. package/backend/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.js.map +1 -0
  777. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.d.ts +10 -0
  778. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.d.ts.map +1 -0
  779. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.js +61 -0
  780. package/backend/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.js.map +1 -0
  781. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.d.ts +7 -0
  782. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.d.ts.map +1 -0
  783. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.js +15 -0
  784. package/backend/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.js.map +1 -0
  785. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.d.ts +8 -0
  786. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.d.ts.map +1 -0
  787. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.js +66 -0
  788. package/backend/node_modules/@typescript-eslint/type-utils/dist/getContextualType.js.map +1 -0
  789. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.d.ts +7 -0
  790. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.d.ts.map +1 -0
  791. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.js +16 -0
  792. package/backend/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.js.map +1 -0
  793. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.d.ts +6 -0
  794. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.d.ts.map +1 -0
  795. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.js +38 -0
  796. package/backend/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.js.map +1 -0
  797. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.d.ts +3 -0
  798. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.d.ts.map +1 -0
  799. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.js +51 -0
  800. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTokenAtPosition.js.map +1 -0
  801. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.d.ts +6 -0
  802. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.d.ts.map +1 -0
  803. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.js +16 -0
  804. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeArguments.js.map +1 -0
  805. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.d.ts +8 -0
  806. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.d.ts.map +1 -0
  807. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.js +74 -0
  808. package/backend/node_modules/@typescript-eslint/type-utils/dist/getTypeName.js.map +1 -0
  809. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.d.ts +19 -0
  810. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.d.ts.map +1 -0
  811. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.js +39 -0
  812. package/backend/node_modules/@typescript-eslint/type-utils/dist/index.js.map +1 -0
  813. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.d.ts +3 -0
  814. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.d.ts.map +1 -0
  815. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.js +18 -0
  816. package/backend/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.js.map +1 -0
  817. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.d.ts +27 -0
  818. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.d.ts.map +1 -0
  819. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.js +226 -0
  820. package/backend/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.js.map +1 -0
  821. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.d.ts +17 -0
  822. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.d.ts.map +1 -0
  823. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.js +106 -0
  824. package/backend/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.js.map +1 -0
  825. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.d.ts +58 -0
  826. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.d.ts.map +1 -0
  827. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.js +169 -0
  828. package/backend/node_modules/@typescript-eslint/type-utils/dist/predicates.js.map +1 -0
  829. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.d.ts +4 -0
  830. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.d.ts.map +1 -0
  831. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.js +37 -0
  832. package/backend/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.js.map +1 -0
  833. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.d.ts +4 -0
  834. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.d.ts.map +1 -0
  835. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.js +43 -0
  836. package/backend/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.js.map +1 -0
  837. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.d.ts +16 -0
  838. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.d.ts.map +1 -0
  839. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.js +59 -0
  840. package/backend/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.js.map +1 -0
  841. package/backend/node_modules/@typescript-eslint/type-utils/package.json +81 -0
  842. package/backend/node_modules/@typescript-eslint/utils/LICENSE +21 -0
  843. package/backend/node_modules/@typescript-eslint/utils/README.md +12 -0
  844. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts +48 -0
  845. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts.map +1 -0
  846. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.js +36 -0
  847. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.js.map +1 -0
  848. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts +76 -0
  849. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts.map +1 -0
  850. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.js +40 -0
  851. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.js.map +1 -0
  852. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.d.ts +76 -0
  853. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.d.ts.map +1 -0
  854. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.js +99 -0
  855. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.js.map +1 -0
  856. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.d.ts +6 -0
  857. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.d.ts.map +1 -0
  858. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.js +22 -0
  859. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.js.map +1 -0
  860. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts +32 -0
  861. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts.map +1 -0
  862. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.js +72 -0
  863. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.js.map +1 -0
  864. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts +18 -0
  865. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts.map +1 -0
  866. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.js +44 -0
  867. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.js.map +1 -0
  868. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.d.ts +1231 -0
  869. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.d.ts.map +1 -0
  870. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.js +22 -0
  871. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.js.map +1 -0
  872. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.d.ts +5 -0
  873. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.d.ts.map +1 -0
  874. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.js +21 -0
  875. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/index.js.map +1 -0
  876. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.d.ts +8 -0
  877. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.d.ts.map +1 -0
  878. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js +13 -0
  879. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js.map +1 -0
  880. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts +70 -0
  881. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts.map +1 -0
  882. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.js +135 -0
  883. package/backend/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.js.map +1 -0
  884. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.d.ts +11 -0
  885. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.d.ts.map +1 -0
  886. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js +3 -0
  887. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js.map +1 -0
  888. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts +35 -0
  889. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts.map +1 -0
  890. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js +45 -0
  891. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js.map +1 -0
  892. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.d.ts +10 -0
  893. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.d.ts.map +1 -0
  894. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.js +34 -0
  895. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.js.map +1 -0
  896. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.d.ts +10 -0
  897. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.d.ts.map +1 -0
  898. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.js +32 -0
  899. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/context.js.map +1 -0
  900. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.d.ts +17 -0
  901. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.d.ts.map +1 -0
  902. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.js +48 -0
  903. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.js.map +1 -0
  904. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts +24 -0
  905. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts.map +1 -0
  906. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js +46 -0
  907. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js.map +1 -0
  908. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.d.ts +8 -0
  909. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.d.ts.map +1 -0
  910. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.js +24 -0
  911. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.js.map +1 -0
  912. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts +14 -0
  913. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts.map +1 -0
  914. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js +28 -0
  915. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js.map +1 -0
  916. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.d.ts +2 -0
  917. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.d.ts.map +1 -0
  918. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.js +8 -0
  919. package/backend/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserPathSeemsToBeTSESLint.js.map +1 -0
  920. package/backend/node_modules/@typescript-eslint/utils/dist/index.d.ts +8 -0
  921. package/backend/node_modules/@typescript-eslint/utils/dist/index.d.ts.map +1 -0
  922. package/backend/node_modules/@typescript-eslint/utils/dist/index.js +41 -0
  923. package/backend/node_modules/@typescript-eslint/utils/dist/index.js.map +1 -0
  924. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.d.ts +388 -0
  925. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.d.ts.map +1 -0
  926. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.js +9 -0
  927. package/backend/node_modules/@typescript-eslint/utils/dist/json-schema.js.map +1 -0
  928. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.d.ts +9 -0
  929. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.d.ts.map +1 -0
  930. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.js +4 -0
  931. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.js.map +1 -0
  932. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.d.ts +131 -0
  933. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.d.ts.map +1 -0
  934. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.js +18 -0
  935. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.js.map +1 -0
  936. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.d.ts +260 -0
  937. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.d.ts.map +1 -0
  938. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.js +4 -0
  939. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.js.map +1 -0
  940. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.d.ts +374 -0
  941. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.d.ts.map +1 -0
  942. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.js +24 -0
  943. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.js.map +1 -0
  944. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.d.ts +247 -0
  945. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.d.ts.map +1 -0
  946. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js +14 -0
  947. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js.map +1 -0
  948. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.d.ts +89 -0
  949. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.d.ts.map +1 -0
  950. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js +4 -0
  951. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js.map +1 -0
  952. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.d.ts +2 -0
  953. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.d.ts.map +1 -0
  954. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.js +3 -0
  955. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.js.map +1 -0
  956. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.d.ts +37 -0
  957. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.d.ts.map +1 -0
  958. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.js +4 -0
  959. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.js.map +1 -0
  960. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +514 -0
  961. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map +1 -0
  962. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.js +3 -0
  963. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.js.map +1 -0
  964. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.d.ts +162 -0
  965. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.d.ts.map +1 -0
  966. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.js +8 -0
  967. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.js.map +1 -0
  968. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.d.ts +44 -0
  969. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.d.ts.map +1 -0
  970. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.js +34 -0
  971. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.js.map +1 -0
  972. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.d.ts +362 -0
  973. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.d.ts.map +1 -0
  974. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.js +9 -0
  975. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.js.map +1 -0
  976. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.d.ts +13 -0
  977. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.d.ts.map +1 -0
  978. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.js +29 -0
  979. package/backend/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.js.map +1 -0
  980. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.d.ts +3 -0
  981. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.d.ts.map +1 -0
  982. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.js +10 -0
  983. package/backend/node_modules/@typescript-eslint/utils/dist/ts-estree.js.map +1 -0
  984. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.d.ts +2 -0
  985. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.d.ts.map +1 -0
  986. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.js +18 -0
  987. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/index.js.map +1 -0
  988. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.d.ts +2 -0
  989. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.d.ts.map +1 -0
  990. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.js +9 -0
  991. package/backend/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.js.map +1 -0
  992. package/backend/node_modules/@typescript-eslint/utils/package.json +98 -0
  993. package/backend/node_modules/chalk/index.d.ts +415 -0
  994. package/backend/node_modules/chalk/license +9 -0
  995. package/backend/node_modules/chalk/package.json +68 -0
  996. package/backend/node_modules/chalk/readme.md +341 -0
  997. package/backend/node_modules/chalk/source/index.js +229 -0
  998. package/backend/node_modules/chalk/source/templates.js +134 -0
  999. package/backend/node_modules/chalk/source/util.js +39 -0
  1000. package/backend/node_modules/debug/LICENSE +20 -0
  1001. package/backend/node_modules/debug/README.md +481 -0
  1002. package/backend/node_modules/debug/package.json +64 -0
  1003. package/backend/node_modules/debug/src/browser.js +272 -0
  1004. package/backend/node_modules/debug/src/common.js +292 -0
  1005. package/backend/node_modules/debug/src/index.js +10 -0
  1006. package/backend/node_modules/debug/src/node.js +263 -0
  1007. package/backend/node_modules/eslint/LICENSE +19 -0
  1008. package/backend/node_modules/eslint/README.md +304 -0
  1009. package/backend/node_modules/eslint/bin/eslint.js +173 -0
  1010. package/backend/node_modules/eslint/conf/config-schema.js +93 -0
  1011. package/backend/node_modules/eslint/conf/default-cli-options.js +32 -0
  1012. package/backend/node_modules/eslint/conf/globals.js +154 -0
  1013. package/backend/node_modules/eslint/conf/replacements.json +22 -0
  1014. package/backend/node_modules/eslint/conf/rule-type-list.json +28 -0
  1015. package/backend/node_modules/eslint/lib/api.js +54 -0
  1016. package/backend/node_modules/eslint/lib/cli-engine/cli-engine.js +1078 -0
  1017. package/backend/node_modules/eslint/lib/cli-engine/file-enumerator.js +547 -0
  1018. package/backend/node_modules/eslint/lib/cli-engine/formatters/checkstyle.js +60 -0
  1019. package/backend/node_modules/eslint/lib/cli-engine/formatters/compact.js +60 -0
  1020. package/backend/node_modules/eslint/lib/cli-engine/formatters/formatters-meta.json +46 -0
  1021. package/backend/node_modules/eslint/lib/cli-engine/formatters/html.js +351 -0
  1022. package/backend/node_modules/eslint/lib/cli-engine/formatters/jslint-xml.js +41 -0
  1023. package/backend/node_modules/eslint/lib/cli-engine/formatters/json-with-metadata.js +16 -0
  1024. package/backend/node_modules/eslint/lib/cli-engine/formatters/json.js +13 -0
  1025. package/backend/node_modules/eslint/lib/cli-engine/formatters/junit.js +82 -0
  1026. package/backend/node_modules/eslint/lib/cli-engine/formatters/stylish.js +101 -0
  1027. package/backend/node_modules/eslint/lib/cli-engine/formatters/tap.js +95 -0
  1028. package/backend/node_modules/eslint/lib/cli-engine/formatters/unix.js +58 -0
  1029. package/backend/node_modules/eslint/lib/cli-engine/formatters/visualstudio.js +63 -0
  1030. package/backend/node_modules/eslint/lib/cli-engine/hash.js +35 -0
  1031. package/backend/node_modules/eslint/lib/cli-engine/index.js +7 -0
  1032. package/backend/node_modules/eslint/lib/cli-engine/lint-result-cache.js +203 -0
  1033. package/backend/node_modules/eslint/lib/cli-engine/load-rules.js +46 -0
  1034. package/backend/node_modules/eslint/lib/cli-engine/xml-escape.js +34 -0
  1035. package/backend/node_modules/eslint/lib/cli.js +471 -0
  1036. package/backend/node_modules/eslint/lib/config/default-config.js +67 -0
  1037. package/backend/node_modules/eslint/lib/config/flat-config-array.js +380 -0
  1038. package/backend/node_modules/eslint/lib/config/flat-config-helpers.js +111 -0
  1039. package/backend/node_modules/eslint/lib/config/flat-config-schema.js +598 -0
  1040. package/backend/node_modules/eslint/lib/config/rule-validator.js +158 -0
  1041. package/backend/node_modules/eslint/lib/eslint/eslint-helpers.js +932 -0
  1042. package/backend/node_modules/eslint/lib/eslint/eslint.js +707 -0
  1043. package/backend/node_modules/eslint/lib/eslint/flat-eslint.js +1159 -0
  1044. package/backend/node_modules/eslint/lib/eslint/index.js +9 -0
  1045. package/backend/node_modules/eslint/lib/linter/apply-disable-directives.js +465 -0
  1046. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js +852 -0
  1047. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-segment.js +263 -0
  1048. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path-state.js +2348 -0
  1049. package/backend/node_modules/eslint/lib/linter/code-path-analysis/code-path.js +342 -0
  1050. package/backend/node_modules/eslint/lib/linter/code-path-analysis/debug-helpers.js +203 -0
  1051. package/backend/node_modules/eslint/lib/linter/code-path-analysis/fork-context.js +349 -0
  1052. package/backend/node_modules/eslint/lib/linter/code-path-analysis/id-generator.js +45 -0
  1053. package/backend/node_modules/eslint/lib/linter/config-comment-parser.js +185 -0
  1054. package/backend/node_modules/eslint/lib/linter/index.js +13 -0
  1055. package/backend/node_modules/eslint/lib/linter/interpolate.js +28 -0
  1056. package/backend/node_modules/eslint/lib/linter/linter.js +2119 -0
  1057. package/backend/node_modules/eslint/lib/linter/node-event-generator.js +354 -0
  1058. package/backend/node_modules/eslint/lib/linter/report-translator.js +369 -0
  1059. package/backend/node_modules/eslint/lib/linter/rule-fixer.js +140 -0
  1060. package/backend/node_modules/eslint/lib/linter/rules.js +80 -0
  1061. package/backend/node_modules/eslint/lib/linter/safe-emitter.js +52 -0
  1062. package/backend/node_modules/eslint/lib/linter/source-code-fixer.js +152 -0
  1063. package/backend/node_modules/eslint/lib/linter/timing.js +161 -0
  1064. package/backend/node_modules/eslint/lib/options.js +398 -0
  1065. package/backend/node_modules/eslint/lib/rule-tester/flat-rule-tester.js +1131 -0
  1066. package/backend/node_modules/eslint/lib/rule-tester/index.js +5 -0
  1067. package/backend/node_modules/eslint/lib/rule-tester/rule-tester.js +1206 -0
  1068. package/backend/node_modules/eslint/lib/rules/accessor-pairs.js +346 -0
  1069. package/backend/node_modules/eslint/lib/rules/array-bracket-newline.js +261 -0
  1070. package/backend/node_modules/eslint/lib/rules/array-bracket-spacing.js +244 -0
  1071. package/backend/node_modules/eslint/lib/rules/array-callback-return.js +446 -0
  1072. package/backend/node_modules/eslint/lib/rules/array-element-newline.js +311 -0
  1073. package/backend/node_modules/eslint/lib/rules/arrow-body-style.js +296 -0
  1074. package/backend/node_modules/eslint/lib/rules/arrow-parens.js +186 -0
  1075. package/backend/node_modules/eslint/lib/rules/arrow-spacing.js +164 -0
  1076. package/backend/node_modules/eslint/lib/rules/block-scoped-var.js +135 -0
  1077. package/backend/node_modules/eslint/lib/rules/block-spacing.js +174 -0
  1078. package/backend/node_modules/eslint/lib/rules/brace-style.js +197 -0
  1079. package/backend/node_modules/eslint/lib/rules/callback-return.js +187 -0
  1080. package/backend/node_modules/eslint/lib/rules/camelcase.js +399 -0
  1081. package/backend/node_modules/eslint/lib/rules/capitalized-comments.js +300 -0
  1082. package/backend/node_modules/eslint/lib/rules/class-methods-use-this.js +187 -0
  1083. package/backend/node_modules/eslint/lib/rules/comma-dangle.js +373 -0
  1084. package/backend/node_modules/eslint/lib/rules/comma-spacing.js +192 -0
  1085. package/backend/node_modules/eslint/lib/rules/comma-style.js +314 -0
  1086. package/backend/node_modules/eslint/lib/rules/complexity.js +165 -0
  1087. package/backend/node_modules/eslint/lib/rules/computed-property-spacing.js +208 -0
  1088. package/backend/node_modules/eslint/lib/rules/consistent-return.js +210 -0
  1089. package/backend/node_modules/eslint/lib/rules/consistent-this.js +153 -0
  1090. package/backend/node_modules/eslint/lib/rules/constructor-super.js +446 -0
  1091. package/backend/node_modules/eslint/lib/rules/curly.js +486 -0
  1092. package/backend/node_modules/eslint/lib/rules/default-case-last.js +44 -0
  1093. package/backend/node_modules/eslint/lib/rules/default-case.js +97 -0
  1094. package/backend/node_modules/eslint/lib/rules/default-param-last.js +62 -0
  1095. package/backend/node_modules/eslint/lib/rules/dot-location.js +108 -0
  1096. package/backend/node_modules/eslint/lib/rules/dot-notation.js +176 -0
  1097. package/backend/node_modules/eslint/lib/rules/eol-last.js +115 -0
  1098. package/backend/node_modules/eslint/lib/rules/eqeqeq.js +174 -0
  1099. package/backend/node_modules/eslint/lib/rules/for-direction.js +140 -0
  1100. package/backend/node_modules/eslint/lib/rules/func-call-spacing.js +233 -0
  1101. package/backend/node_modules/eslint/lib/rules/func-name-matching.js +253 -0
  1102. package/backend/node_modules/eslint/lib/rules/func-names.js +191 -0
  1103. package/backend/node_modules/eslint/lib/rules/func-style.js +98 -0
  1104. package/backend/node_modules/eslint/lib/rules/function-call-argument-newline.js +125 -0
  1105. package/backend/node_modules/eslint/lib/rules/function-paren-newline.js +292 -0
  1106. package/backend/node_modules/eslint/lib/rules/generator-star-spacing.js +209 -0
  1107. package/backend/node_modules/eslint/lib/rules/getter-return.js +204 -0
  1108. package/backend/node_modules/eslint/lib/rules/global-require.js +90 -0
  1109. package/backend/node_modules/eslint/lib/rules/grouped-accessor-pairs.js +215 -0
  1110. package/backend/node_modules/eslint/lib/rules/guard-for-in.js +76 -0
  1111. package/backend/node_modules/eslint/lib/rules/handle-callback-err.js +101 -0
  1112. package/backend/node_modules/eslint/lib/rules/id-blacklist.js +246 -0
  1113. package/backend/node_modules/eslint/lib/rules/id-denylist.js +228 -0
  1114. package/backend/node_modules/eslint/lib/rules/id-length.js +177 -0
  1115. package/backend/node_modules/eslint/lib/rules/id-match.js +299 -0
  1116. package/backend/node_modules/eslint/lib/rules/implicit-arrow-linebreak.js +84 -0
  1117. package/backend/node_modules/eslint/lib/rules/indent-legacy.js +1126 -0
  1118. package/backend/node_modules/eslint/lib/rules/indent.js +1803 -0
  1119. package/backend/node_modules/eslint/lib/rules/index.js +306 -0
  1120. package/backend/node_modules/eslint/lib/rules/init-declarations.js +139 -0
  1121. package/backend/node_modules/eslint/lib/rules/jsx-quotes.js +98 -0
  1122. package/backend/node_modules/eslint/lib/rules/key-spacing.js +687 -0
  1123. package/backend/node_modules/eslint/lib/rules/keyword-spacing.js +640 -0
  1124. package/backend/node_modules/eslint/lib/rules/line-comment-position.js +122 -0
  1125. package/backend/node_modules/eslint/lib/rules/linebreak-style.js +108 -0
  1126. package/backend/node_modules/eslint/lib/rules/lines-around-comment.js +471 -0
  1127. package/backend/node_modules/eslint/lib/rules/lines-around-directive.js +201 -0
  1128. package/backend/node_modules/eslint/lib/rules/lines-between-class-members.js +269 -0
  1129. package/backend/node_modules/eslint/lib/rules/logical-assignment-operators.js +504 -0
  1130. package/backend/node_modules/eslint/lib/rules/max-classes-per-file.js +89 -0
  1131. package/backend/node_modules/eslint/lib/rules/max-depth.js +156 -0
  1132. package/backend/node_modules/eslint/lib/rules/max-len.js +440 -0
  1133. package/backend/node_modules/eslint/lib/rules/max-lines-per-function.js +213 -0
  1134. package/backend/node_modules/eslint/lib/rules/max-lines.js +193 -0
  1135. package/backend/node_modules/eslint/lib/rules/max-nested-callbacks.js +117 -0
  1136. package/backend/node_modules/eslint/lib/rules/max-params.js +102 -0
  1137. package/backend/node_modules/eslint/lib/rules/max-statements-per-line.js +199 -0
  1138. package/backend/node_modules/eslint/lib/rules/max-statements.js +184 -0
  1139. package/backend/node_modules/eslint/lib/rules/multiline-comment-style.js +474 -0
  1140. package/backend/node_modules/eslint/lib/rules/multiline-ternary.js +174 -0
  1141. package/backend/node_modules/eslint/lib/rules/new-cap.js +276 -0
  1142. package/backend/node_modules/eslint/lib/rules/new-parens.js +93 -0
  1143. package/backend/node_modules/eslint/lib/rules/newline-after-var.js +253 -0
  1144. package/backend/node_modules/eslint/lib/rules/newline-before-return.js +217 -0
  1145. package/backend/node_modules/eslint/lib/rules/newline-per-chained-call.js +126 -0
  1146. package/backend/node_modules/eslint/lib/rules/no-alert.js +138 -0
  1147. package/backend/node_modules/eslint/lib/rules/no-array-constructor.js +133 -0
  1148. package/backend/node_modules/eslint/lib/rules/no-async-promise-executor.js +39 -0
  1149. package/backend/node_modules/eslint/lib/rules/no-await-in-loop.js +106 -0
  1150. package/backend/node_modules/eslint/lib/rules/no-bitwise.js +119 -0
  1151. package/backend/node_modules/eslint/lib/rules/no-buffer-constructor.js +50 -0
  1152. package/backend/node_modules/eslint/lib/rules/no-caller.js +46 -0
  1153. package/backend/node_modules/eslint/lib/rules/no-case-declarations.js +64 -0
  1154. package/backend/node_modules/eslint/lib/rules/no-catch-shadow.js +82 -0
  1155. package/backend/node_modules/eslint/lib/rules/no-class-assign.js +63 -0
  1156. package/backend/node_modules/eslint/lib/rules/no-compare-neg-zero.js +60 -0
  1157. package/backend/node_modules/eslint/lib/rules/no-cond-assign.js +159 -0
  1158. package/backend/node_modules/eslint/lib/rules/no-confusing-arrow.js +92 -0
  1159. package/backend/node_modules/eslint/lib/rules/no-console.js +207 -0
  1160. package/backend/node_modules/eslint/lib/rules/no-const-assign.js +56 -0
  1161. package/backend/node_modules/eslint/lib/rules/no-constant-binary-expression.js +509 -0
  1162. package/backend/node_modules/eslint/lib/rules/no-constant-condition.js +150 -0
  1163. package/backend/node_modules/eslint/lib/rules/no-constructor-return.js +62 -0
  1164. package/backend/node_modules/eslint/lib/rules/no-continue.js +39 -0
  1165. package/backend/node_modules/eslint/lib/rules/no-control-regex.js +138 -0
  1166. package/backend/node_modules/eslint/lib/rules/no-debugger.js +43 -0
  1167. package/backend/node_modules/eslint/lib/rules/no-delete-var.js +42 -0
  1168. package/backend/node_modules/eslint/lib/rules/no-div-regex.js +53 -0
  1169. package/backend/node_modules/eslint/lib/rules/no-dupe-args.js +82 -0
  1170. package/backend/node_modules/eslint/lib/rules/no-dupe-class-members.js +104 -0
  1171. package/backend/node_modules/eslint/lib/rules/no-dupe-else-if.js +122 -0
  1172. package/backend/node_modules/eslint/lib/rules/no-dupe-keys.js +142 -0
  1173. package/backend/node_modules/eslint/lib/rules/no-duplicate-case.js +71 -0
  1174. package/backend/node_modules/eslint/lib/rules/no-duplicate-imports.js +290 -0
  1175. package/backend/node_modules/eslint/lib/rules/no-else-return.js +405 -0
  1176. package/backend/node_modules/eslint/lib/rules/no-empty-character-class.js +76 -0
  1177. package/backend/node_modules/eslint/lib/rules/no-empty-function.js +167 -0
  1178. package/backend/node_modules/eslint/lib/rules/no-empty-pattern.js +78 -0
  1179. package/backend/node_modules/eslint/lib/rules/no-empty-static-block.js +47 -0
  1180. package/backend/node_modules/eslint/lib/rules/no-empty.js +103 -0
  1181. package/backend/node_modules/eslint/lib/rules/no-eq-null.js +46 -0
  1182. package/backend/node_modules/eslint/lib/rules/no-eval.js +286 -0
  1183. package/backend/node_modules/eslint/lib/rules/no-ex-assign.js +54 -0
  1184. package/backend/node_modules/eslint/lib/rules/no-extend-native.js +179 -0
  1185. package/backend/node_modules/eslint/lib/rules/no-extra-bind.js +213 -0
  1186. package/backend/node_modules/eslint/lib/rules/no-extra-boolean-cast.js +317 -0
  1187. package/backend/node_modules/eslint/lib/rules/no-extra-label.js +149 -0
  1188. package/backend/node_modules/eslint/lib/rules/no-extra-parens.js +1322 -0
  1189. package/backend/node_modules/eslint/lib/rules/no-extra-semi.js +147 -0
  1190. package/backend/node_modules/eslint/lib/rules/no-fallthrough.js +196 -0
  1191. package/backend/node_modules/eslint/lib/rules/no-floating-decimal.js +73 -0
  1192. package/backend/node_modules/eslint/lib/rules/no-func-assign.js +78 -0
  1193. package/backend/node_modules/eslint/lib/rules/no-global-assign.js +95 -0
  1194. package/backend/node_modules/eslint/lib/rules/no-implicit-coercion.js +380 -0
  1195. package/backend/node_modules/eslint/lib/rules/no-implicit-globals.js +146 -0
  1196. package/backend/node_modules/eslint/lib/rules/no-implied-eval.js +132 -0
  1197. package/backend/node_modules/eslint/lib/rules/no-import-assign.js +241 -0
  1198. package/backend/node_modules/eslint/lib/rules/no-inline-comments.js +110 -0
  1199. package/backend/node_modules/eslint/lib/rules/no-inner-declarations.js +110 -0
  1200. package/backend/node_modules/eslint/lib/rules/no-invalid-regexp.js +194 -0
  1201. package/backend/node_modules/eslint/lib/rules/no-invalid-this.js +150 -0
  1202. package/backend/node_modules/eslint/lib/rules/no-irregular-whitespace.js +276 -0
  1203. package/backend/node_modules/eslint/lib/rules/no-iterator.js +52 -0
  1204. package/backend/node_modules/eslint/lib/rules/no-label-var.js +80 -0
  1205. package/backend/node_modules/eslint/lib/rules/no-labels.js +149 -0
  1206. package/backend/node_modules/eslint/lib/rules/no-lone-blocks.js +136 -0
  1207. package/backend/node_modules/eslint/lib/rules/no-lonely-if.js +88 -0
  1208. package/backend/node_modules/eslint/lib/rules/no-loop-func.js +206 -0
  1209. package/backend/node_modules/eslint/lib/rules/no-loss-of-precision.js +214 -0
  1210. package/backend/node_modules/eslint/lib/rules/no-magic-numbers.js +243 -0
  1211. package/backend/node_modules/eslint/lib/rules/no-misleading-character-class.js +300 -0
  1212. package/backend/node_modules/eslint/lib/rules/no-mixed-operators.js +229 -0
  1213. package/backend/node_modules/eslint/lib/rules/no-mixed-requires.js +238 -0
  1214. package/backend/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +116 -0
  1215. package/backend/node_modules/eslint/lib/rules/no-multi-assign.js +67 -0
  1216. package/backend/node_modules/eslint/lib/rules/no-multi-spaces.js +141 -0
  1217. package/backend/node_modules/eslint/lib/rules/no-multi-str.js +65 -0
  1218. package/backend/node_modules/eslint/lib/rules/no-multiple-empty-lines.js +154 -0
  1219. package/backend/node_modules/eslint/lib/rules/no-native-reassign.js +98 -0
  1220. package/backend/node_modules/eslint/lib/rules/no-negated-condition.js +95 -0
  1221. package/backend/node_modules/eslint/lib/rules/no-negated-in-lhs.js +46 -0
  1222. package/backend/node_modules/eslint/lib/rules/no-nested-ternary.js +44 -0
  1223. package/backend/node_modules/eslint/lib/rules/no-new-func.js +87 -0
  1224. package/backend/node_modules/eslint/lib/rules/no-new-native-nonconstructor.js +66 -0
  1225. package/backend/node_modules/eslint/lib/rules/no-new-object.js +67 -0
  1226. package/backend/node_modules/eslint/lib/rules/no-new-require.js +50 -0
  1227. package/backend/node_modules/eslint/lib/rules/no-new-symbol.js +56 -0
  1228. package/backend/node_modules/eslint/lib/rules/no-new-wrappers.js +60 -0
  1229. package/backend/node_modules/eslint/lib/rules/no-new.js +43 -0
  1230. package/backend/node_modules/eslint/lib/rules/no-nonoctal-decimal-escape.js +148 -0
  1231. package/backend/node_modules/eslint/lib/rules/no-obj-calls.js +86 -0
  1232. package/backend/node_modules/eslint/lib/rules/no-object-constructor.js +117 -0
  1233. package/backend/node_modules/eslint/lib/rules/no-octal-escape.js +56 -0
  1234. package/backend/node_modules/eslint/lib/rules/no-octal.js +45 -0
  1235. package/backend/node_modules/eslint/lib/rules/no-param-reassign.js +230 -0
  1236. package/backend/node_modules/eslint/lib/rules/no-path-concat.js +64 -0
  1237. package/backend/node_modules/eslint/lib/rules/no-plusplus.js +105 -0
  1238. package/backend/node_modules/eslint/lib/rules/no-process-env.js +51 -0
  1239. package/backend/node_modules/eslint/lib/rules/no-process-exit.js +47 -0
  1240. package/backend/node_modules/eslint/lib/rules/no-promise-executor-return.js +263 -0
  1241. package/backend/node_modules/eslint/lib/rules/no-proto.js +48 -0
  1242. package/backend/node_modules/eslint/lib/rules/no-prototype-builtins.js +159 -0
  1243. package/backend/node_modules/eslint/lib/rules/no-redeclare.js +174 -0
  1244. package/backend/node_modules/eslint/lib/rules/no-regex-spaces.js +197 -0
  1245. package/backend/node_modules/eslint/lib/rules/no-restricted-exports.js +193 -0
  1246. package/backend/node_modules/eslint/lib/rules/no-restricted-globals.js +124 -0
  1247. package/backend/node_modules/eslint/lib/rules/no-restricted-imports.js +410 -0
  1248. package/backend/node_modules/eslint/lib/rules/no-restricted-modules.js +213 -0
  1249. package/backend/node_modules/eslint/lib/rules/no-restricted-properties.js +168 -0
  1250. package/backend/node_modules/eslint/lib/rules/no-restricted-syntax.js +70 -0
  1251. package/backend/node_modules/eslint/lib/rules/no-return-assign.js +80 -0
  1252. package/backend/node_modules/eslint/lib/rules/no-return-await.js +135 -0
  1253. package/backend/node_modules/eslint/lib/rules/no-script-url.js +61 -0
  1254. package/backend/node_modules/eslint/lib/rules/no-self-assign.js +183 -0
  1255. package/backend/node_modules/eslint/lib/rules/no-self-compare.js +60 -0
  1256. package/backend/node_modules/eslint/lib/rules/no-sequences.js +138 -0
  1257. package/backend/node_modules/eslint/lib/rules/no-setter-return.js +226 -0
  1258. package/backend/node_modules/eslint/lib/rules/no-shadow-restricted-names.js +65 -0
  1259. package/backend/node_modules/eslint/lib/rules/no-shadow.js +336 -0
  1260. package/backend/node_modules/eslint/lib/rules/no-spaced-func.js +83 -0
  1261. package/backend/node_modules/eslint/lib/rules/no-sparse-arrays.js +50 -0
  1262. package/backend/node_modules/eslint/lib/rules/no-sync.js +64 -0
  1263. package/backend/node_modules/eslint/lib/rules/no-tabs.js +81 -0
  1264. package/backend/node_modules/eslint/lib/rules/no-template-curly-in-string.js +44 -0
  1265. package/backend/node_modules/eslint/lib/rules/no-ternary.js +41 -0
  1266. package/backend/node_modules/eslint/lib/rules/no-this-before-super.js +331 -0
  1267. package/backend/node_modules/eslint/lib/rules/no-throw-literal.js +51 -0
  1268. package/backend/node_modules/eslint/lib/rules/no-trailing-spaces.js +193 -0
  1269. package/backend/node_modules/eslint/lib/rules/no-undef-init.js +75 -0
  1270. package/backend/node_modules/eslint/lib/rules/no-undef.js +79 -0
  1271. package/backend/node_modules/eslint/lib/rules/no-undefined.js +86 -0
  1272. package/backend/node_modules/eslint/lib/rules/no-underscore-dangle.js +335 -0
  1273. package/backend/node_modules/eslint/lib/rules/no-unexpected-multiline.js +120 -0
  1274. package/backend/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +360 -0
  1275. package/backend/node_modules/eslint/lib/rules/no-unneeded-ternary.js +166 -0
  1276. package/backend/node_modules/eslint/lib/rules/no-unreachable-loop.js +185 -0
  1277. package/backend/node_modules/eslint/lib/rules/no-unreachable.js +293 -0
  1278. package/backend/node_modules/eslint/lib/rules/no-unsafe-finally.js +111 -0
  1279. package/backend/node_modules/eslint/lib/rules/no-unsafe-negation.js +128 -0
  1280. package/backend/node_modules/eslint/lib/rules/no-unsafe-optional-chaining.js +205 -0
  1281. package/backend/node_modules/eslint/lib/rules/no-unused-expressions.js +186 -0
  1282. package/backend/node_modules/eslint/lib/rules/no-unused-labels.js +143 -0
  1283. package/backend/node_modules/eslint/lib/rules/no-unused-private-class-members.js +195 -0
  1284. package/backend/node_modules/eslint/lib/rules/no-unused-vars.js +718 -0
  1285. package/backend/node_modules/eslint/lib/rules/no-use-before-define.js +348 -0
  1286. package/backend/node_modules/eslint/lib/rules/no-useless-backreference.js +194 -0
  1287. package/backend/node_modules/eslint/lib/rules/no-useless-call.js +90 -0
  1288. package/backend/node_modules/eslint/lib/rules/no-useless-catch.js +57 -0
  1289. package/backend/node_modules/eslint/lib/rules/no-useless-computed-key.js +168 -0
  1290. package/backend/node_modules/eslint/lib/rules/no-useless-concat.js +115 -0
  1291. package/backend/node_modules/eslint/lib/rules/no-useless-constructor.js +189 -0
  1292. package/backend/node_modules/eslint/lib/rules/no-useless-escape.js +333 -0
  1293. package/backend/node_modules/eslint/lib/rules/no-useless-rename.js +172 -0
  1294. package/backend/node_modules/eslint/lib/rules/no-useless-return.js +364 -0
  1295. package/backend/node_modules/eslint/lib/rules/no-var.js +334 -0
  1296. package/backend/node_modules/eslint/lib/rules/no-void.js +64 -0
  1297. package/backend/node_modules/eslint/lib/rules/no-warning-comments.js +201 -0
  1298. package/backend/node_modules/eslint/lib/rules/no-whitespace-before-property.js +116 -0
  1299. package/backend/node_modules/eslint/lib/rules/no-with.js +39 -0
  1300. package/backend/node_modules/eslint/lib/rules/nonblock-statement-body-position.js +127 -0
  1301. package/backend/node_modules/eslint/lib/rules/object-curly-newline.js +324 -0
  1302. package/backend/node_modules/eslint/lib/rules/object-curly-spacing.js +311 -0
  1303. package/backend/node_modules/eslint/lib/rules/object-property-newline.js +102 -0
  1304. package/backend/node_modules/eslint/lib/rules/object-shorthand.js +520 -0
  1305. package/backend/node_modules/eslint/lib/rules/one-var-declaration-per-line.js +95 -0
  1306. package/backend/node_modules/eslint/lib/rules/one-var.js +567 -0
  1307. package/backend/node_modules/eslint/lib/rules/operator-assignment.js +209 -0
  1308. package/backend/node_modules/eslint/lib/rules/operator-linebreak.js +253 -0
  1309. package/backend/node_modules/eslint/lib/rules/padded-blocks.js +310 -0
  1310. package/backend/node_modules/eslint/lib/rules/padding-line-between-statements.js +590 -0
  1311. package/backend/node_modules/eslint/lib/rules/prefer-arrow-callback.js +381 -0
  1312. package/backend/node_modules/eslint/lib/rules/prefer-const.js +501 -0
  1313. package/backend/node_modules/eslint/lib/rules/prefer-destructuring.js +301 -0
  1314. package/backend/node_modules/eslint/lib/rules/prefer-exponentiation-operator.js +191 -0
  1315. package/backend/node_modules/eslint/lib/rules/prefer-named-capture-group.js +178 -0
  1316. package/backend/node_modules/eslint/lib/rules/prefer-numeric-literals.js +148 -0
  1317. package/backend/node_modules/eslint/lib/rules/prefer-object-has-own.js +114 -0
  1318. package/backend/node_modules/eslint/lib/rules/prefer-object-spread.js +298 -0
  1319. package/backend/node_modules/eslint/lib/rules/prefer-promise-reject-errors.js +132 -0
  1320. package/backend/node_modules/eslint/lib/rules/prefer-reflect.js +127 -0
  1321. package/backend/node_modules/eslint/lib/rules/prefer-regex-literals.js +507 -0
  1322. package/backend/node_modules/eslint/lib/rules/prefer-rest-params.js +118 -0
  1323. package/backend/node_modules/eslint/lib/rules/prefer-spread.js +87 -0
  1324. package/backend/node_modules/eslint/lib/rules/prefer-template.js +275 -0
  1325. package/backend/node_modules/eslint/lib/rules/quote-props.js +310 -0
  1326. package/backend/node_modules/eslint/lib/rules/quotes.js +350 -0
  1327. package/backend/node_modules/eslint/lib/rules/radix.js +198 -0
  1328. package/backend/node_modules/eslint/lib/rules/require-atomic-updates.js +331 -0
  1329. package/backend/node_modules/eslint/lib/rules/require-await.js +113 -0
  1330. package/backend/node_modules/eslint/lib/rules/require-jsdoc.js +122 -0
  1331. package/backend/node_modules/eslint/lib/rules/require-unicode-regexp.js +129 -0
  1332. package/backend/node_modules/eslint/lib/rules/require-yield.js +77 -0
  1333. package/backend/node_modules/eslint/lib/rules/rest-spread-spacing.js +123 -0
  1334. package/backend/node_modules/eslint/lib/rules/semi-spacing.js +248 -0
  1335. package/backend/node_modules/eslint/lib/rules/semi-style.js +158 -0
  1336. package/backend/node_modules/eslint/lib/rules/semi.js +438 -0
  1337. package/backend/node_modules/eslint/lib/rules/sort-imports.js +241 -0
  1338. package/backend/node_modules/eslint/lib/rules/sort-keys.js +230 -0
  1339. package/backend/node_modules/eslint/lib/rules/sort-vars.js +104 -0
  1340. package/backend/node_modules/eslint/lib/rules/space-before-blocks.js +204 -0
  1341. package/backend/node_modules/eslint/lib/rules/space-before-function-paren.js +167 -0
  1342. package/backend/node_modules/eslint/lib/rules/space-in-parens.js +285 -0
  1343. package/backend/node_modules/eslint/lib/rules/space-infix-ops.js +198 -0
  1344. package/backend/node_modules/eslint/lib/rules/space-unary-ops.js +324 -0
  1345. package/backend/node_modules/eslint/lib/rules/spaced-comment.js +385 -0
  1346. package/backend/node_modules/eslint/lib/rules/strict.js +277 -0
  1347. package/backend/node_modules/eslint/lib/rules/switch-colon-spacing.js +132 -0
  1348. package/backend/node_modules/eslint/lib/rules/symbol-description.js +73 -0
  1349. package/backend/node_modules/eslint/lib/rules/template-curly-spacing.js +144 -0
  1350. package/backend/node_modules/eslint/lib/rules/template-tag-spacing.js +93 -0
  1351. package/backend/node_modules/eslint/lib/rules/unicode-bom.js +73 -0
  1352. package/backend/node_modules/eslint/lib/rules/use-isnan.js +141 -0
  1353. package/backend/node_modules/eslint/lib/rules/utils/ast-utils.js +2282 -0
  1354. package/backend/node_modules/eslint/lib/rules/utils/fix-tracker.js +114 -0
  1355. package/backend/node_modules/eslint/lib/rules/utils/keywords.js +67 -0
  1356. package/backend/node_modules/eslint/lib/rules/utils/lazy-loading-rule-map.js +115 -0
  1357. package/backend/node_modules/eslint/lib/rules/utils/patterns/letters.js +36 -0
  1358. package/backend/node_modules/eslint/lib/rules/utils/regular-expressions.js +42 -0
  1359. package/backend/node_modules/eslint/lib/rules/utils/unicode/index.js +11 -0
  1360. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-combining-character.js +13 -0
  1361. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-emoji-modifier.js +13 -0
  1362. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-regional-indicator-symbol.js +13 -0
  1363. package/backend/node_modules/eslint/lib/rules/utils/unicode/is-surrogate-pair.js +14 -0
  1364. package/backend/node_modules/eslint/lib/rules/valid-jsdoc.js +516 -0
  1365. package/backend/node_modules/eslint/lib/rules/valid-typeof.js +127 -0
  1366. package/backend/node_modules/eslint/lib/rules/vars-on-top.js +157 -0
  1367. package/backend/node_modules/eslint/lib/rules/wrap-iife.js +207 -0
  1368. package/backend/node_modules/eslint/lib/rules/wrap-regex.js +61 -0
  1369. package/backend/node_modules/eslint/lib/rules/yield-star-spacing.js +130 -0
  1370. package/backend/node_modules/eslint/lib/rules/yoda.js +353 -0
  1371. package/backend/node_modules/eslint/lib/shared/ajv.js +34 -0
  1372. package/backend/node_modules/eslint/lib/shared/ast-utils.js +29 -0
  1373. package/backend/node_modules/eslint/lib/shared/config-validator.js +347 -0
  1374. package/backend/node_modules/eslint/lib/shared/deprecation-warnings.js +58 -0
  1375. package/backend/node_modules/eslint/lib/shared/directives.js +15 -0
  1376. package/backend/node_modules/eslint/lib/shared/logging.js +30 -0
  1377. package/backend/node_modules/eslint/lib/shared/relative-module-resolver.js +50 -0
  1378. package/backend/node_modules/eslint/lib/shared/runtime-info.js +167 -0
  1379. package/backend/node_modules/eslint/lib/shared/severity.js +49 -0
  1380. package/backend/node_modules/eslint/lib/shared/string-utils.js +60 -0
  1381. package/backend/node_modules/eslint/lib/shared/traverser.js +195 -0
  1382. package/backend/node_modules/eslint/lib/shared/types.js +216 -0
  1383. package/backend/node_modules/eslint/lib/source-code/index.js +5 -0
  1384. package/backend/node_modules/eslint/lib/source-code/source-code.js +1055 -0
  1385. package/backend/node_modules/eslint/lib/source-code/token-store/backward-token-comment-cursor.js +57 -0
  1386. package/backend/node_modules/eslint/lib/source-code/token-store/backward-token-cursor.js +58 -0
  1387. package/backend/node_modules/eslint/lib/source-code/token-store/cursor.js +76 -0
  1388. package/backend/node_modules/eslint/lib/source-code/token-store/cursors.js +90 -0
  1389. package/backend/node_modules/eslint/lib/source-code/token-store/decorative-cursor.js +39 -0
  1390. package/backend/node_modules/eslint/lib/source-code/token-store/filter-cursor.js +43 -0
  1391. package/backend/node_modules/eslint/lib/source-code/token-store/forward-token-comment-cursor.js +57 -0
  1392. package/backend/node_modules/eslint/lib/source-code/token-store/forward-token-cursor.js +63 -0
  1393. package/backend/node_modules/eslint/lib/source-code/token-store/index.js +627 -0
  1394. package/backend/node_modules/eslint/lib/source-code/token-store/limit-cursor.js +40 -0
  1395. package/backend/node_modules/eslint/lib/source-code/token-store/padded-token-cursor.js +38 -0
  1396. package/backend/node_modules/eslint/lib/source-code/token-store/skip-cursor.js +42 -0
  1397. package/backend/node_modules/eslint/lib/source-code/token-store/utils.js +107 -0
  1398. package/backend/node_modules/eslint/lib/unsupported-api.js +30 -0
  1399. package/backend/node_modules/eslint/messages/all-files-ignored.js +16 -0
  1400. package/backend/node_modules/eslint/messages/eslintrc-incompat.js +98 -0
  1401. package/backend/node_modules/eslint/messages/eslintrc-plugins.js +24 -0
  1402. package/backend/node_modules/eslint/messages/extend-config-missing.js +13 -0
  1403. package/backend/node_modules/eslint/messages/failed-to-read-json.js +11 -0
  1404. package/backend/node_modules/eslint/messages/file-not-found.js +10 -0
  1405. package/backend/node_modules/eslint/messages/invalid-rule-options.js +17 -0
  1406. package/backend/node_modules/eslint/messages/invalid-rule-severity.js +13 -0
  1407. package/backend/node_modules/eslint/messages/no-config-found.js +15 -0
  1408. package/backend/node_modules/eslint/messages/plugin-conflict.js +22 -0
  1409. package/backend/node_modules/eslint/messages/plugin-invalid.js +16 -0
  1410. package/backend/node_modules/eslint/messages/plugin-missing.js +19 -0
  1411. package/backend/node_modules/eslint/messages/print-config-with-directory-path.js +8 -0
  1412. package/backend/node_modules/eslint/messages/shared.js +18 -0
  1413. package/backend/node_modules/eslint/messages/whitespace-found.js +11 -0
  1414. package/backend/node_modules/eslint/package.json +181 -0
  1415. package/backend/node_modules/undici-types/LICENSE +21 -0
  1416. package/backend/node_modules/undici-types/README.md +6 -0
  1417. package/backend/node_modules/undici-types/agent.d.ts +31 -0
  1418. package/backend/node_modules/undici-types/api.d.ts +43 -0
  1419. package/backend/node_modules/undici-types/balanced-pool.d.ts +29 -0
  1420. package/backend/node_modules/undici-types/cache.d.ts +36 -0
  1421. package/backend/node_modules/undici-types/client.d.ts +108 -0
  1422. package/backend/node_modules/undici-types/connector.d.ts +34 -0
  1423. package/backend/node_modules/undici-types/content-type.d.ts +21 -0
  1424. package/backend/node_modules/undici-types/cookies.d.ts +28 -0
  1425. package/backend/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
  1426. package/backend/node_modules/undici-types/dispatcher.d.ts +256 -0
  1427. package/backend/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
  1428. package/backend/node_modules/undici-types/errors.d.ts +149 -0
  1429. package/backend/node_modules/undici-types/eventsource.d.ts +61 -0
  1430. package/backend/node_modules/undici-types/fetch.d.ts +209 -0
  1431. package/backend/node_modules/undici-types/file.d.ts +39 -0
  1432. package/backend/node_modules/undici-types/filereader.d.ts +54 -0
  1433. package/backend/node_modules/undici-types/formdata.d.ts +108 -0
  1434. package/backend/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  1435. package/backend/node_modules/undici-types/global-origin.d.ts +7 -0
  1436. package/backend/node_modules/undici-types/handlers.d.ts +15 -0
  1437. package/backend/node_modules/undici-types/header.d.ts +4 -0
  1438. package/backend/node_modules/undici-types/index.d.ts +71 -0
  1439. package/backend/node_modules/undici-types/interceptors.d.ts +17 -0
  1440. package/backend/node_modules/undici-types/mock-agent.d.ts +50 -0
  1441. package/backend/node_modules/undici-types/mock-client.d.ts +25 -0
  1442. package/backend/node_modules/undici-types/mock-errors.d.ts +12 -0
  1443. package/backend/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  1444. package/backend/node_modules/undici-types/mock-pool.d.ts +25 -0
  1445. package/backend/node_modules/undici-types/package.json +55 -0
  1446. package/backend/node_modules/undici-types/patch.d.ts +33 -0
  1447. package/backend/node_modules/undici-types/pool-stats.d.ts +19 -0
  1448. package/backend/node_modules/undici-types/pool.d.ts +39 -0
  1449. package/backend/node_modules/undici-types/proxy-agent.d.ts +28 -0
  1450. package/backend/node_modules/undici-types/readable.d.ts +65 -0
  1451. package/backend/node_modules/undici-types/retry-agent.d.ts +8 -0
  1452. package/backend/node_modules/undici-types/retry-handler.d.ts +116 -0
  1453. package/backend/node_modules/undici-types/util.d.ts +18 -0
  1454. package/backend/node_modules/undici-types/webidl.d.ts +228 -0
  1455. package/backend/node_modules/undici-types/websocket.d.ts +150 -0
  1456. package/backend/packages/gemini-core/examples/simple.ts +120 -0
  1457. package/backend/packages/gemini-core/index.ts +15 -0
  1458. package/backend/packages/gemini-core/src/code_assist/codeAssist.ts +37 -0
  1459. package/backend/packages/gemini-core/src/code_assist/converter.ts +250 -0
  1460. package/backend/packages/gemini-core/src/code_assist/oauth-credential-storage.ts +129 -0
  1461. package/backend/packages/gemini-core/src/code_assist/oauth2.ts +541 -0
  1462. package/backend/packages/gemini-core/src/code_assist/server.ts +236 -0
  1463. package/backend/packages/gemini-core/src/code_assist/setup.ts +124 -0
  1464. package/backend/packages/gemini-core/src/code_assist/types.ts +201 -0
  1465. package/backend/packages/gemini-core/src/config/config.ts +75 -0
  1466. package/backend/packages/gemini-core/src/config/models.ts +23 -0
  1467. package/backend/packages/gemini-core/src/config/storage.ts +30 -0
  1468. package/backend/packages/gemini-core/src/core/contentGenerator.ts +136 -0
  1469. package/backend/packages/gemini-core/src/core/geminiChat.ts +385 -0
  1470. package/backend/packages/gemini-core/src/core/geminiRequest.ts +19 -0
  1471. package/backend/packages/gemini-core/src/core/prompts.ts +109 -0
  1472. package/backend/packages/gemini-core/src/core/tokenLimits.ts +32 -0
  1473. package/backend/packages/gemini-core/src/index.ts +35 -0
  1474. package/backend/packages/gemini-core/src/mcp/token-storage/base-token-storage.ts +49 -0
  1475. package/backend/packages/gemini-core/src/mcp/token-storage/file-token-storage.ts +184 -0
  1476. package/backend/packages/gemini-core/src/mcp/token-storage/hybrid-token-storage.ts +97 -0
  1477. package/backend/packages/gemini-core/src/mcp/token-storage/index.ts +14 -0
  1478. package/backend/packages/gemini-core/src/mcp/token-storage/keychain-token-storage.ts +251 -0
  1479. package/backend/packages/gemini-core/src/mcp/token-storage/types.ts +42 -0
  1480. package/backend/packages/gemini-core/src/utils/errors.ts +112 -0
  1481. package/backend/packages/gemini-core/src/utils/partUtils.ts +169 -0
  1482. package/backend/packages/gemini-core/src/utils/quotaErrorDetection.ts +102 -0
  1483. package/backend/packages/gemini-core/src/utils/retry.ts +265 -0
  1484. package/backend/packages/gemini-core/src/utils/session.ts +9 -0
  1485. package/backend/packages/gemini-core/src/utils/userAccountManager.ts +140 -0
  1486. package/daemon/node_modules/undici-types/LICENSE +21 -0
  1487. package/daemon/node_modules/undici-types/README.md +6 -0
  1488. package/daemon/node_modules/undici-types/agent.d.ts +31 -0
  1489. package/daemon/node_modules/undici-types/api.d.ts +43 -0
  1490. package/daemon/node_modules/undici-types/balanced-pool.d.ts +29 -0
  1491. package/daemon/node_modules/undici-types/cache.d.ts +36 -0
  1492. package/daemon/node_modules/undici-types/client.d.ts +108 -0
  1493. package/daemon/node_modules/undici-types/connector.d.ts +34 -0
  1494. package/daemon/node_modules/undici-types/content-type.d.ts +21 -0
  1495. package/daemon/node_modules/undici-types/cookies.d.ts +28 -0
  1496. package/daemon/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
  1497. package/daemon/node_modules/undici-types/dispatcher.d.ts +256 -0
  1498. package/daemon/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
  1499. package/daemon/node_modules/undici-types/errors.d.ts +149 -0
  1500. package/daemon/node_modules/undici-types/eventsource.d.ts +61 -0
  1501. package/daemon/node_modules/undici-types/fetch.d.ts +209 -0
  1502. package/daemon/node_modules/undici-types/file.d.ts +39 -0
  1503. package/daemon/node_modules/undici-types/filereader.d.ts +54 -0
  1504. package/daemon/node_modules/undici-types/formdata.d.ts +108 -0
  1505. package/daemon/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  1506. package/daemon/node_modules/undici-types/global-origin.d.ts +7 -0
  1507. package/daemon/node_modules/undici-types/handlers.d.ts +15 -0
  1508. package/daemon/node_modules/undici-types/header.d.ts +4 -0
  1509. package/daemon/node_modules/undici-types/index.d.ts +71 -0
  1510. package/daemon/node_modules/undici-types/interceptors.d.ts +17 -0
  1511. package/daemon/node_modules/undici-types/mock-agent.d.ts +50 -0
  1512. package/daemon/node_modules/undici-types/mock-client.d.ts +25 -0
  1513. package/daemon/node_modules/undici-types/mock-errors.d.ts +12 -0
  1514. package/daemon/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  1515. package/daemon/node_modules/undici-types/mock-pool.d.ts +25 -0
  1516. package/daemon/node_modules/undici-types/package.json +55 -0
  1517. package/daemon/node_modules/undici-types/patch.d.ts +33 -0
  1518. package/daemon/node_modules/undici-types/pool-stats.d.ts +19 -0
  1519. package/daemon/node_modules/undici-types/pool.d.ts +39 -0
  1520. package/daemon/node_modules/undici-types/proxy-agent.d.ts +28 -0
  1521. package/daemon/node_modules/undici-types/readable.d.ts +65 -0
  1522. package/daemon/node_modules/undici-types/retry-agent.d.ts +8 -0
  1523. package/daemon/node_modules/undici-types/retry-handler.d.ts +116 -0
  1524. package/daemon/node_modules/undici-types/util.d.ts +18 -0
  1525. package/daemon/node_modules/undici-types/webidl.d.ts +228 -0
  1526. package/daemon/node_modules/undici-types/websocket.d.ts +150 -0
  1527. package/package.json +5 -3
  1528. package/backend/.repoburg/orchestrations/README.md +0 -41
  1529. package/backend/dist/action-execution/action-execution.module.js.map +0 -1
  1530. package/backend/dist/action-execution/action-execution.service.js.map +0 -1
  1531. package/backend/dist/ai-actions/ai-action-batch.service.js.map +0 -1
  1532. package/backend/dist/ai-actions/ai-action-creation.service.js.map +0 -1
  1533. package/backend/dist/ai-actions/ai-actions.controller.js.map +0 -1
  1534. package/backend/dist/ai-actions/ai-actions.module.js.map +0 -1
  1535. package/backend/dist/ai-actions/ai-actions.service.js.map +0 -1
  1536. package/backend/dist/app.controller.js.map +0 -1
  1537. package/backend/dist/app.module.js.map +0 -1
  1538. package/backend/dist/app.service.js.map +0 -1
  1539. package/backend/dist/application-state/application-state.controller.js.map +0 -1
  1540. package/backend/dist/application-state/application-state.module.js.map +0 -1
  1541. package/backend/dist/application-state/application-state.service.js.map +0 -1
  1542. package/backend/dist/application-state/dto/set-auto-context-fetch-enabled.dto.js.map +0 -1
  1543. package/backend/dist/application-state/dto/set-auto-send-to-ai-studio-enabled.dto.js.map +0 -1
  1544. package/backend/dist/application-state/dto/set-context-token-limit.dto.js.map +0 -1
  1545. package/backend/dist/application-state/dto/set-orchestration-timeout.dto.js.map +0 -1
  1546. package/backend/dist/application-state/dto/set-theme.dto.js.map +0 -1
  1547. package/backend/dist/application-state/dto/set-websocket-enabled.dto.js.map +0 -1
  1548. package/backend/dist/context-generation/context-generation.module.js.map +0 -1
  1549. package/backend/dist/context-generation/context-generation.service.js.map +0 -1
  1550. package/backend/dist/context-snippets/context-snippets.controller.js.map +0 -1
  1551. package/backend/dist/context-snippets/context-snippets.module.js.map +0 -1
  1552. package/backend/dist/context-snippets/context-snippets.service.js.map +0 -1
  1553. package/backend/dist/context-snippets/dto/context-snippet.dto.js.map +0 -1
  1554. package/backend/dist/context-templates/context-templates.controller.js.map +0 -1
  1555. package/backend/dist/context-templates/context-templates.module.js.map +0 -1
  1556. package/backend/dist/context-templates/context-templates.service.js.map +0 -1
  1557. package/backend/dist/context-templates/dto/context-template.dto.js.map +0 -1
  1558. package/backend/dist/core-entities/ai-action.entity.js.map +0 -1
  1559. package/backend/dist/core-entities/application-state.entity.js.map +0 -1
  1560. package/backend/dist/core-entities/base.entity.js.map +0 -1
  1561. package/backend/dist/core-entities/context-snippet.entity.js.map +0 -1
  1562. package/backend/dist/core-entities/context-template.entity.js.map +0 -1
  1563. package/backend/dist/core-entities/custom-snippet.entity.js.map +0 -1
  1564. package/backend/dist/core-entities/execution-log.entity.js.map +0 -1
  1565. package/backend/dist/core-entities/index.js.map +0 -1
  1566. package/backend/dist/core-entities/project.entity.js.map +0 -1
  1567. package/backend/dist/core-entities/session-input.entity.js.map +0 -1
  1568. package/backend/dist/core-entities/session.entity.js.map +0 -1
  1569. package/backend/dist/core-entities/system-prompt.entity.js.map +0 -1
  1570. package/backend/dist/custom-snippets/custom-snippets.controller.js.map +0 -1
  1571. package/backend/dist/custom-snippets/custom-snippets.module.js.map +0 -1
  1572. package/backend/dist/custom-snippets/custom-snippets.service.js.map +0 -1
  1573. package/backend/dist/custom-snippets/dto/custom-snippet.dto.js.map +0 -1
  1574. package/backend/dist/events/events.gateway.js.map +0 -1
  1575. package/backend/dist/events/events.module.js.map +0 -1
  1576. package/backend/dist/execution-logs/dto/execution-log.dto.js.map +0 -1
  1577. package/backend/dist/execution-logs/execution-logs.controller.js.map +0 -1
  1578. package/backend/dist/execution-logs/execution-logs.module.js.map +0 -1
  1579. package/backend/dist/execution-logs/execution-logs.service.js.map +0 -1
  1580. package/backend/dist/http-exception.filter.js.map +0 -1
  1581. package/backend/dist/llm-response-parser/dto/ai-action.dto.js.map +0 -1
  1582. package/backend/dist/llm-response-parser/errors/parsing.error.js.map +0 -1
  1583. package/backend/dist/llm-response-parser/llm-response-parser.module.js.map +0 -1
  1584. package/backend/dist/llm-response-parser/llm-response-parser.service.js.map +0 -1
  1585. package/backend/dist/llm-response-parser/parsing.constants.js.map +0 -1
  1586. package/backend/dist/llm-responses/dto/submit-llm-response.dto.js.map +0 -1
  1587. package/backend/dist/llm-responses/llm-responses.controller.js.map +0 -1
  1588. package/backend/dist/llm-responses/llm-responses.module.js.map +0 -1
  1589. package/backend/dist/llm-responses/llm-responses.service.js.map +0 -1
  1590. package/backend/dist/main.js.map +0 -1
  1591. package/backend/dist/orchestration/dto/orchestration.dto.js.map +0 -1
  1592. package/backend/dist/orchestration/orchestration-fs.service.js.map +0 -1
  1593. package/backend/dist/orchestration/orchestration-parser.service.js.map +0 -1
  1594. package/backend/dist/orchestration/orchestration.controller.js.map +0 -1
  1595. package/backend/dist/orchestration/orchestration.module.js.map +0 -1
  1596. package/backend/dist/orchestration/orchestration.service.js.map +0 -1
  1597. package/backend/dist/orchestration/orchestration.types.js.map +0 -1
  1598. package/backend/dist/projects/dto/project.dto.js.map +0 -1
  1599. package/backend/dist/projects/projects.controller.js.map +0 -1
  1600. package/backend/dist/projects/projects.module.js.map +0 -1
  1601. package/backend/dist/projects/projects.service.js.map +0 -1
  1602. package/backend/dist/seeding/context-template-seeding.service.js.map +0 -1
  1603. package/backend/dist/seeding/custom-snippet-seeding.service.js.map +0 -1
  1604. package/backend/dist/seeding/data/context-templates/default-followup_ad-hoc-focused-context.js.map +0 -1
  1605. package/backend/dist/seeding/data/context-templates/default-initial_condensed-project-context.js.map +0 -1
  1606. package/backend/dist/seeding/data/context-templates/default-initial_full-project-context.js.map +0 -1
  1607. package/backend/dist/seeding/data/context-templates/pm-context.js.map +0 -1
  1608. package/backend/dist/seeding/data/context-templates/pr-description.js.map +0 -1
  1609. package/backend/dist/seeding/data/context-templates/sample_focused-tree.d.ts +0 -2
  1610. package/backend/dist/seeding/data/context-templates/sample_focused-tree.js +0 -17
  1611. package/backend/dist/seeding/data/context-templates/sample_focused-tree.js.map +0 -1
  1612. package/backend/dist/seeding/data/custom-snippets/default_rglob.js.map +0 -1
  1613. package/backend/dist/seeding/data/custom-snippets/git-diff.js.map +0 -1
  1614. package/backend/dist/seeding/data/custom-snippets/rg-exclude.js.map +0 -1
  1615. package/backend/dist/seeding/data/custom-snippets/rg-search-glob.js.map +0 -1
  1616. package/backend/dist/seeding/data/custom-snippets/rg-search.js.map +0 -1
  1617. package/backend/dist/seeding/data/custom-snippets/run-command.js.map +0 -1
  1618. package/backend/dist/seeding/data/custom-snippets/tree.js.map +0 -1
  1619. package/backend/dist/seeding/data/custom-snippets/usr-adhoc-incl.js.map +0 -1
  1620. package/backend/dist/seeding/data/custom-snippets/usr-cmd-output-incl.js.map +0 -1
  1621. package/backend/dist/seeding/data/custom-snippets/usr-input-incl.js.map +0 -1
  1622. package/backend/dist/seeding/data/system-prompts/codebase-explorer.js.map +0 -1
  1623. package/backend/dist/seeding/data/system-prompts/default_multi-file-action-generator-with-requester.js.map +0 -1
  1624. package/backend/dist/seeding/data/system-prompts/packup.js.map +0 -1
  1625. package/backend/dist/seeding/data/system-prompts/refactor-split.js.map +0 -1
  1626. package/backend/dist/seeding/seeding.module.js.map +0 -1
  1627. package/backend/dist/seeding/seeding.service.js.map +0 -1
  1628. package/backend/dist/seeding/system-prompt-seeding.service.js.map +0 -1
  1629. package/backend/dist/session-followup/session-followup.module.js.map +0 -1
  1630. package/backend/dist/session-followup/session-followup.service.js.map +0 -1
  1631. package/backend/dist/session-inputs/dto/session-input.dto.js.map +0 -1
  1632. package/backend/dist/session-inputs/session-input-context.service.d.ts +0 -16
  1633. package/backend/dist/session-inputs/session-input-context.service.js +0 -176
  1634. package/backend/dist/session-inputs/session-input-context.service.js.map +0 -1
  1635. package/backend/dist/session-inputs/session-inputs.controller.js.map +0 -1
  1636. package/backend/dist/session-inputs/session-inputs.module.js +0 -48
  1637. package/backend/dist/session-inputs/session-inputs.module.js.map +0 -1
  1638. package/backend/dist/session-inputs/session-inputs.service.d.ts +0 -35
  1639. package/backend/dist/session-inputs/session-inputs.service.js +0 -352
  1640. package/backend/dist/session-inputs/session-inputs.service.js.map +0 -1
  1641. package/backend/dist/session-transfer/session-transfer.module.js.map +0 -1
  1642. package/backend/dist/session-transfer/session-transfer.service.js.map +0 -1
  1643. package/backend/dist/sessions/dto/session.dto.js.map +0 -1
  1644. package/backend/dist/sessions/sessions.controller.js.map +0 -1
  1645. package/backend/dist/sessions/sessions.module.js.map +0 -1
  1646. package/backend/dist/sessions/sessions.service.js.map +0 -1
  1647. package/backend/dist/system-prompts/dto/system-prompt.dto.js.map +0 -1
  1648. package/backend/dist/system-prompts/system-prompts.controller.js.map +0 -1
  1649. package/backend/dist/system-prompts/system-prompts.module.js.map +0 -1
  1650. package/backend/dist/system-prompts/system-prompts.service.js.map +0 -1
  1651. package/backend/dist/timeout.interceptor.js +0 -35
  1652. package/backend/dist/timeout.interceptor.js.map +0 -1
  1653. package/backend/dist/tracing.js.map +0 -1
  1654. package/backend/dist/utils/fuzzy-search.js.map +0 -1
  1655. package/backend/dist/utils/index.js.map +0 -1
  1656. package/backend/dist/utils/trace.decorator.js.map +0 -1
  1657. package/backend/dist/workspace/dto/file-tree.dto.js.map +0 -1
  1658. package/backend/dist/workspace/dto/search-workspace.dto.js.map +0 -1
  1659. package/backend/dist/workspace/workspace.controller.js.map +0 -1
  1660. package/backend/dist/workspace/workspace.module.js.map +0 -1
  1661. package/backend/dist/workspace/workspace.service.js.map +0 -1
  1662. /package/backend/dist/{action-execution → src/action-execution}/action-execution.module.d.ts +0 -0
  1663. /package/backend/dist/{action-execution → src/action-execution}/action-execution.module.js +0 -0
  1664. /package/backend/dist/{action-execution → src/action-execution}/action-execution.service.d.ts +0 -0
  1665. /package/backend/dist/{action-execution → src/action-execution}/action-execution.service.js +0 -0
  1666. /package/backend/dist/{ai-actions → src/ai-actions}/ai-action-batch.service.d.ts +0 -0
  1667. /package/backend/dist/{ai-actions → src/ai-actions}/ai-action-batch.service.js +0 -0
  1668. /package/backend/dist/{ai-actions → src/ai-actions}/ai-action-creation.service.d.ts +0 -0
  1669. /package/backend/dist/{ai-actions → src/ai-actions}/ai-action-creation.service.js +0 -0
  1670. /package/backend/dist/{ai-actions → src/ai-actions}/ai-actions.controller.d.ts +0 -0
  1671. /package/backend/dist/{ai-actions → src/ai-actions}/ai-actions.controller.js +0 -0
  1672. /package/backend/dist/{ai-actions → src/ai-actions}/ai-actions.module.d.ts +0 -0
  1673. /package/backend/dist/{ai-actions → src/ai-actions}/ai-actions.module.js +0 -0
  1674. /package/backend/dist/{ai-actions → src/ai-actions}/ai-actions.service.d.ts +0 -0
  1675. /package/backend/dist/{ai-actions → src/ai-actions}/ai-actions.service.js +0 -0
  1676. /package/backend/dist/{app.controller.d.ts → src/app.controller.d.ts} +0 -0
  1677. /package/backend/dist/{app.controller.js → src/app.controller.js} +0 -0
  1678. /package/backend/dist/{app.module.d.ts → src/app.module.d.ts} +0 -0
  1679. /package/backend/dist/{app.module.js → src/app.module.js} +0 -0
  1680. /package/backend/dist/{app.service.d.ts → src/app.service.d.ts} +0 -0
  1681. /package/backend/dist/{app.service.js → src/app.service.js} +0 -0
  1682. /package/backend/dist/{application-state → src/application-state}/application-state.controller.d.ts +0 -0
  1683. /package/backend/dist/{application-state → src/application-state}/application-state.controller.js +0 -0
  1684. /package/backend/dist/{application-state → src/application-state}/application-state.module.d.ts +0 -0
  1685. /package/backend/dist/{application-state → src/application-state}/application-state.module.js +0 -0
  1686. /package/backend/dist/{application-state → src/application-state}/application-state.service.d.ts +0 -0
  1687. /package/backend/dist/{application-state → src/application-state}/application-state.service.js +0 -0
  1688. /package/backend/dist/{application-state → src/application-state}/dto/set-auto-context-fetch-enabled.dto.d.ts +0 -0
  1689. /package/backend/dist/{application-state → src/application-state}/dto/set-auto-context-fetch-enabled.dto.js +0 -0
  1690. /package/backend/dist/{application-state → src/application-state}/dto/set-auto-send-to-ai-studio-enabled.dto.d.ts +0 -0
  1691. /package/backend/dist/{application-state → src/application-state}/dto/set-auto-send-to-ai-studio-enabled.dto.js +0 -0
  1692. /package/backend/dist/{application-state → src/application-state}/dto/set-context-token-limit.dto.d.ts +0 -0
  1693. /package/backend/dist/{application-state → src/application-state}/dto/set-context-token-limit.dto.js +0 -0
  1694. /package/backend/dist/{application-state → src/application-state}/dto/set-orchestration-timeout.dto.d.ts +0 -0
  1695. /package/backend/dist/{application-state → src/application-state}/dto/set-orchestration-timeout.dto.js +0 -0
  1696. /package/backend/dist/{application-state → src/application-state}/dto/set-theme.dto.d.ts +0 -0
  1697. /package/backend/dist/{application-state → src/application-state}/dto/set-theme.dto.js +0 -0
  1698. /package/backend/dist/{application-state → src/application-state}/dto/set-websocket-enabled.dto.d.ts +0 -0
  1699. /package/backend/dist/{application-state → src/application-state}/dto/set-websocket-enabled.dto.js +0 -0
  1700. /package/backend/dist/{context-generation → src/context-generation}/context-generation.module.d.ts +0 -0
  1701. /package/backend/dist/{context-generation → src/context-generation}/context-generation.module.js +0 -0
  1702. /package/backend/dist/{context-generation → src/context-generation}/context-generation.service.d.ts +0 -0
  1703. /package/backend/dist/{context-generation → src/context-generation}/context-generation.service.js +0 -0
  1704. /package/backend/dist/{context-snippets → src/context-snippets}/context-snippets.controller.d.ts +0 -0
  1705. /package/backend/dist/{context-snippets → src/context-snippets}/context-snippets.controller.js +0 -0
  1706. /package/backend/dist/{context-snippets → src/context-snippets}/context-snippets.module.d.ts +0 -0
  1707. /package/backend/dist/{context-snippets → src/context-snippets}/context-snippets.module.js +0 -0
  1708. /package/backend/dist/{context-snippets → src/context-snippets}/context-snippets.service.d.ts +0 -0
  1709. /package/backend/dist/{context-snippets → src/context-snippets}/context-snippets.service.js +0 -0
  1710. /package/backend/dist/{context-snippets → src/context-snippets}/dto/context-snippet.dto.d.ts +0 -0
  1711. /package/backend/dist/{context-snippets → src/context-snippets}/dto/context-snippet.dto.js +0 -0
  1712. /package/backend/dist/{context-templates → src/context-templates}/context-templates.controller.d.ts +0 -0
  1713. /package/backend/dist/{context-templates → src/context-templates}/context-templates.controller.js +0 -0
  1714. /package/backend/dist/{context-templates → src/context-templates}/context-templates.module.d.ts +0 -0
  1715. /package/backend/dist/{context-templates → src/context-templates}/context-templates.module.js +0 -0
  1716. /package/backend/dist/{context-templates → src/context-templates}/context-templates.service.d.ts +0 -0
  1717. /package/backend/dist/{context-templates → src/context-templates}/context-templates.service.js +0 -0
  1718. /package/backend/dist/{context-templates → src/context-templates}/dto/context-template.dto.d.ts +0 -0
  1719. /package/backend/dist/{context-templates → src/context-templates}/dto/context-template.dto.js +0 -0
  1720. /package/backend/dist/{core-entities → src/core-entities}/ai-action.entity.d.ts +0 -0
  1721. /package/backend/dist/{core-entities → src/core-entities}/ai-action.entity.js +0 -0
  1722. /package/backend/dist/{core-entities → src/core-entities}/application-state.entity.d.ts +0 -0
  1723. /package/backend/dist/{core-entities → src/core-entities}/application-state.entity.js +0 -0
  1724. /package/backend/dist/{core-entities → src/core-entities}/base.entity.d.ts +0 -0
  1725. /package/backend/dist/{core-entities → src/core-entities}/base.entity.js +0 -0
  1726. /package/backend/dist/{core-entities → src/core-entities}/context-snippet.entity.d.ts +0 -0
  1727. /package/backend/dist/{core-entities → src/core-entities}/context-snippet.entity.js +0 -0
  1728. /package/backend/dist/{core-entities → src/core-entities}/context-template.entity.d.ts +0 -0
  1729. /package/backend/dist/{core-entities → src/core-entities}/context-template.entity.js +0 -0
  1730. /package/backend/dist/{core-entities → src/core-entities}/custom-snippet.entity.d.ts +0 -0
  1731. /package/backend/dist/{core-entities → src/core-entities}/custom-snippet.entity.js +0 -0
  1732. /package/backend/dist/{core-entities → src/core-entities}/execution-log.entity.d.ts +0 -0
  1733. /package/backend/dist/{core-entities → src/core-entities}/execution-log.entity.js +0 -0
  1734. /package/backend/dist/{core-entities → src/core-entities}/index.d.ts +0 -0
  1735. /package/backend/dist/{core-entities → src/core-entities}/index.js +0 -0
  1736. /package/backend/dist/{core-entities → src/core-entities}/project.entity.d.ts +0 -0
  1737. /package/backend/dist/{core-entities → src/core-entities}/project.entity.js +0 -0
  1738. /package/backend/dist/{core-entities → src/core-entities}/session-input.entity.d.ts +0 -0
  1739. /package/backend/dist/{core-entities → src/core-entities}/session-input.entity.js +0 -0
  1740. /package/backend/dist/{core-entities → src/core-entities}/session.entity.d.ts +0 -0
  1741. /package/backend/dist/{core-entities → src/core-entities}/session.entity.js +0 -0
  1742. /package/backend/dist/{core-entities → src/core-entities}/system-prompt.entity.d.ts +0 -0
  1743. /package/backend/dist/{core-entities → src/core-entities}/system-prompt.entity.js +0 -0
  1744. /package/backend/dist/{custom-snippets → src/custom-snippets}/custom-snippets.controller.d.ts +0 -0
  1745. /package/backend/dist/{custom-snippets → src/custom-snippets}/custom-snippets.controller.js +0 -0
  1746. /package/backend/dist/{custom-snippets → src/custom-snippets}/custom-snippets.module.d.ts +0 -0
  1747. /package/backend/dist/{custom-snippets → src/custom-snippets}/custom-snippets.module.js +0 -0
  1748. /package/backend/dist/{custom-snippets → src/custom-snippets}/custom-snippets.service.d.ts +0 -0
  1749. /package/backend/dist/{custom-snippets → src/custom-snippets}/custom-snippets.service.js +0 -0
  1750. /package/backend/dist/{custom-snippets → src/custom-snippets}/dto/custom-snippet.dto.d.ts +0 -0
  1751. /package/backend/dist/{custom-snippets → src/custom-snippets}/dto/custom-snippet.dto.js +0 -0
  1752. /package/backend/dist/{events → src/events}/events.gateway.d.ts +0 -0
  1753. /package/backend/dist/{events → src/events}/events.gateway.js +0 -0
  1754. /package/backend/dist/{events → src/events}/events.module.d.ts +0 -0
  1755. /package/backend/dist/{events → src/events}/events.module.js +0 -0
  1756. /package/backend/dist/{execution-logs → src/execution-logs}/dto/execution-log.dto.d.ts +0 -0
  1757. /package/backend/dist/{execution-logs → src/execution-logs}/dto/execution-log.dto.js +0 -0
  1758. /package/backend/dist/{execution-logs → src/execution-logs}/execution-logs.controller.d.ts +0 -0
  1759. /package/backend/dist/{execution-logs → src/execution-logs}/execution-logs.controller.js +0 -0
  1760. /package/backend/dist/{execution-logs → src/execution-logs}/execution-logs.module.d.ts +0 -0
  1761. /package/backend/dist/{execution-logs → src/execution-logs}/execution-logs.module.js +0 -0
  1762. /package/backend/dist/{execution-logs → src/execution-logs}/execution-logs.service.d.ts +0 -0
  1763. /package/backend/dist/{execution-logs → src/execution-logs}/execution-logs.service.js +0 -0
  1764. /package/backend/dist/{http-exception.filter.d.ts → src/http-exception.filter.d.ts} +0 -0
  1765. /package/backend/dist/{http-exception.filter.js → src/http-exception.filter.js} +0 -0
  1766. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/dto/ai-action.dto.d.ts +0 -0
  1767. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/dto/ai-action.dto.js +0 -0
  1768. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/errors/parsing.error.d.ts +0 -0
  1769. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/errors/parsing.error.js +0 -0
  1770. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/llm-response-parser.module.d.ts +0 -0
  1771. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/llm-response-parser.module.js +0 -0
  1772. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/llm-response-parser.service.d.ts +0 -0
  1773. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/llm-response-parser.service.js +0 -0
  1774. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/parsing.constants.d.ts +0 -0
  1775. /package/backend/dist/{llm-response-parser → src/llm-response-parser}/parsing.constants.js +0 -0
  1776. /package/backend/dist/{llm-responses → src/llm-responses}/dto/submit-llm-response.dto.d.ts +0 -0
  1777. /package/backend/dist/{llm-responses → src/llm-responses}/dto/submit-llm-response.dto.js +0 -0
  1778. /package/backend/dist/{llm-responses → src/llm-responses}/llm-responses.controller.d.ts +0 -0
  1779. /package/backend/dist/{llm-responses → src/llm-responses}/llm-responses.controller.js +0 -0
  1780. /package/backend/dist/{llm-responses → src/llm-responses}/llm-responses.module.d.ts +0 -0
  1781. /package/backend/dist/{llm-responses → src/llm-responses}/llm-responses.module.js +0 -0
  1782. /package/backend/dist/{llm-responses → src/llm-responses}/llm-responses.service.d.ts +0 -0
  1783. /package/backend/dist/{llm-responses → src/llm-responses}/llm-responses.service.js +0 -0
  1784. /package/backend/dist/{main.d.ts → src/main.d.ts} +0 -0
  1785. /package/backend/dist/{main.js → src/main.js} +0 -0
  1786. /package/backend/dist/{orchestration → src/orchestration}/dto/orchestration.dto.d.ts +0 -0
  1787. /package/backend/dist/{orchestration → src/orchestration}/dto/orchestration.dto.js +0 -0
  1788. /package/backend/dist/{orchestration → src/orchestration}/orchestration-fs.service.d.ts +0 -0
  1789. /package/backend/dist/{orchestration → src/orchestration}/orchestration-fs.service.js +0 -0
  1790. /package/backend/dist/{orchestration → src/orchestration}/orchestration-parser.service.d.ts +0 -0
  1791. /package/backend/dist/{orchestration → src/orchestration}/orchestration-parser.service.js +0 -0
  1792. /package/backend/dist/{orchestration → src/orchestration}/orchestration.controller.d.ts +0 -0
  1793. /package/backend/dist/{orchestration → src/orchestration}/orchestration.controller.js +0 -0
  1794. /package/backend/dist/{orchestration → src/orchestration}/orchestration.module.d.ts +0 -0
  1795. /package/backend/dist/{orchestration → src/orchestration}/orchestration.module.js +0 -0
  1796. /package/backend/dist/{orchestration → src/orchestration}/orchestration.service.d.ts +0 -0
  1797. /package/backend/dist/{orchestration → src/orchestration}/orchestration.service.js +0 -0
  1798. /package/backend/dist/{orchestration → src/orchestration}/orchestration.types.d.ts +0 -0
  1799. /package/backend/dist/{orchestration → src/orchestration}/orchestration.types.js +0 -0
  1800. /package/backend/dist/{projects → src/projects}/dto/project.dto.d.ts +0 -0
  1801. /package/backend/dist/{projects → src/projects}/dto/project.dto.js +0 -0
  1802. /package/backend/dist/{projects → src/projects}/projects.controller.d.ts +0 -0
  1803. /package/backend/dist/{projects → src/projects}/projects.controller.js +0 -0
  1804. /package/backend/dist/{projects → src/projects}/projects.module.d.ts +0 -0
  1805. /package/backend/dist/{projects → src/projects}/projects.module.js +0 -0
  1806. /package/backend/dist/{projects → src/projects}/projects.service.d.ts +0 -0
  1807. /package/backend/dist/{projects → src/projects}/projects.service.js +0 -0
  1808. /package/backend/dist/{seeding → src/seeding}/context-template-seeding.service.d.ts +0 -0
  1809. /package/backend/dist/{seeding → src/seeding}/context-template-seeding.service.js +0 -0
  1810. /package/backend/dist/{seeding → src/seeding}/custom-snippet-seeding.service.d.ts +0 -0
  1811. /package/backend/dist/{seeding → src/seeding}/custom-snippet-seeding.service.js +0 -0
  1812. /package/backend/dist/{seeding → src/seeding}/data/context-templates/default-followup_ad-hoc-focused-context.d.ts +0 -0
  1813. /package/backend/dist/{seeding → src/seeding}/data/context-templates/default-followup_ad-hoc-focused-context.js +0 -0
  1814. /package/backend/dist/{seeding → src/seeding}/data/context-templates/default-initial_condensed-project-context.d.ts +0 -0
  1815. /package/backend/dist/{seeding → src/seeding}/data/context-templates/default-initial_condensed-project-context.js +0 -0
  1816. /package/backend/dist/{seeding → src/seeding}/data/context-templates/default-initial_full-project-context.d.ts +0 -0
  1817. /package/backend/dist/{seeding → src/seeding}/data/context-templates/default-initial_full-project-context.js +0 -0
  1818. /package/backend/dist/{seeding → src/seeding}/data/context-templates/pm-context.d.ts +0 -0
  1819. /package/backend/dist/{seeding → src/seeding}/data/context-templates/pm-context.js +0 -0
  1820. /package/backend/dist/{seeding → src/seeding}/data/context-templates/pr-description.d.ts +0 -0
  1821. /package/backend/dist/{seeding → src/seeding}/data/context-templates/pr-description.js +0 -0
  1822. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/default_rglob.d.ts +0 -0
  1823. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/default_rglob.js +0 -0
  1824. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/git-diff.d.ts +0 -0
  1825. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/git-diff.js +0 -0
  1826. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/rg-exclude.d.ts +0 -0
  1827. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/rg-exclude.js +0 -0
  1828. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/rg-search-glob.d.ts +0 -0
  1829. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/rg-search-glob.js +0 -0
  1830. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/rg-search.d.ts +0 -0
  1831. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/rg-search.js +0 -0
  1832. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/run-command.d.ts +0 -0
  1833. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/run-command.js +0 -0
  1834. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/tree.d.ts +0 -0
  1835. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/tree.js +0 -0
  1836. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/usr-adhoc-incl.d.ts +0 -0
  1837. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/usr-adhoc-incl.js +0 -0
  1838. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/usr-cmd-output-incl.d.ts +0 -0
  1839. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/usr-cmd-output-incl.js +0 -0
  1840. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/usr-input-incl.d.ts +0 -0
  1841. /package/backend/dist/{seeding → src/seeding}/data/custom-snippets/usr-input-incl.js +0 -0
  1842. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/codebase-explorer.d.ts +0 -0
  1843. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/codebase-explorer.js +0 -0
  1844. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/default_multi-file-action-generator-with-requester.d.ts +0 -0
  1845. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/default_multi-file-action-generator-with-requester.js +0 -0
  1846. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/packup.d.ts +0 -0
  1847. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/packup.js +0 -0
  1848. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/refactor-split.d.ts +0 -0
  1849. /package/backend/dist/{seeding → src/seeding}/data/system-prompts/refactor-split.js +0 -0
  1850. /package/backend/dist/{seeding → src/seeding}/seeding.module.d.ts +0 -0
  1851. /package/backend/dist/{seeding → src/seeding}/seeding.module.js +0 -0
  1852. /package/backend/dist/{seeding → src/seeding}/seeding.service.d.ts +0 -0
  1853. /package/backend/dist/{seeding → src/seeding}/seeding.service.js +0 -0
  1854. /package/backend/dist/{seeding → src/seeding}/system-prompt-seeding.service.d.ts +0 -0
  1855. /package/backend/dist/{seeding → src/seeding}/system-prompt-seeding.service.js +0 -0
  1856. /package/backend/dist/{session-followup → src/session-followup}/session-followup.module.d.ts +0 -0
  1857. /package/backend/dist/{session-followup → src/session-followup}/session-followup.module.js +0 -0
  1858. /package/backend/dist/{session-followup → src/session-followup}/session-followup.service.d.ts +0 -0
  1859. /package/backend/dist/{session-followup → src/session-followup}/session-followup.service.js +0 -0
  1860. /package/backend/dist/{session-inputs → src/session-inputs}/dto/session-input.dto.d.ts +0 -0
  1861. /package/backend/dist/{session-inputs → src/session-inputs}/dto/session-input.dto.js +0 -0
  1862. /package/backend/dist/{session-inputs → src/session-inputs}/session-inputs.controller.d.ts +0 -0
  1863. /package/backend/dist/{session-inputs → src/session-inputs}/session-inputs.controller.js +0 -0
  1864. /package/backend/dist/{session-inputs → src/session-inputs}/session-inputs.module.d.ts +0 -0
  1865. /package/backend/dist/{session-transfer → src/session-transfer}/session-transfer.module.d.ts +0 -0
  1866. /package/backend/dist/{session-transfer → src/session-transfer}/session-transfer.module.js +0 -0
  1867. /package/backend/dist/{session-transfer → src/session-transfer}/session-transfer.service.d.ts +0 -0
  1868. /package/backend/dist/{session-transfer → src/session-transfer}/session-transfer.service.js +0 -0
  1869. /package/backend/dist/{sessions → src/sessions}/dto/session.dto.d.ts +0 -0
  1870. /package/backend/dist/{sessions → src/sessions}/dto/session.dto.js +0 -0
  1871. /package/backend/dist/{sessions → src/sessions}/sessions.controller.d.ts +0 -0
  1872. /package/backend/dist/{sessions → src/sessions}/sessions.controller.js +0 -0
  1873. /package/backend/dist/{sessions → src/sessions}/sessions.module.d.ts +0 -0
  1874. /package/backend/dist/{sessions → src/sessions}/sessions.module.js +0 -0
  1875. /package/backend/dist/{sessions → src/sessions}/sessions.service.d.ts +0 -0
  1876. /package/backend/dist/{sessions → src/sessions}/sessions.service.js +0 -0
  1877. /package/backend/dist/{system-prompts → src/system-prompts}/dto/system-prompt.dto.d.ts +0 -0
  1878. /package/backend/dist/{system-prompts → src/system-prompts}/dto/system-prompt.dto.js +0 -0
  1879. /package/backend/dist/{system-prompts → src/system-prompts}/system-prompts.controller.d.ts +0 -0
  1880. /package/backend/dist/{system-prompts → src/system-prompts}/system-prompts.controller.js +0 -0
  1881. /package/backend/dist/{system-prompts → src/system-prompts}/system-prompts.module.d.ts +0 -0
  1882. /package/backend/dist/{system-prompts → src/system-prompts}/system-prompts.module.js +0 -0
  1883. /package/backend/dist/{system-prompts → src/system-prompts}/system-prompts.service.d.ts +0 -0
  1884. /package/backend/dist/{system-prompts → src/system-prompts}/system-prompts.service.js +0 -0
  1885. /package/backend/dist/{timeout.interceptor.d.ts → src/timeout.interceptor.d.ts} +0 -0
  1886. /package/backend/dist/{tracing.d.ts → src/tracing.d.ts} +0 -0
  1887. /package/backend/dist/{tracing.js → src/tracing.js} +0 -0
  1888. /package/backend/dist/{utils → src/utils}/fuzzy-search.d.ts +0 -0
  1889. /package/backend/dist/{utils → src/utils}/fuzzy-search.js +0 -0
  1890. /package/backend/dist/{utils → src/utils}/index.d.ts +0 -0
  1891. /package/backend/dist/{utils → src/utils}/index.js +0 -0
  1892. /package/backend/dist/{utils → src/utils}/trace.decorator.d.ts +0 -0
  1893. /package/backend/dist/{utils → src/utils}/trace.decorator.js +0 -0
  1894. /package/backend/dist/{workspace → src/workspace}/dto/file-tree.dto.d.ts +0 -0
  1895. /package/backend/dist/{workspace → src/workspace}/dto/file-tree.dto.js +0 -0
  1896. /package/backend/dist/{workspace → src/workspace}/dto/search-workspace.dto.d.ts +0 -0
  1897. /package/backend/dist/{workspace → src/workspace}/dto/search-workspace.dto.js +0 -0
  1898. /package/backend/dist/{workspace → src/workspace}/workspace.controller.d.ts +0 -0
  1899. /package/backend/dist/{workspace → src/workspace}/workspace.controller.js +0 -0
  1900. /package/backend/dist/{workspace → src/workspace}/workspace.module.d.ts +0 -0
  1901. /package/backend/dist/{workspace → src/workspace}/workspace.module.js +0 -0
  1902. /package/backend/dist/{workspace → src/workspace}/workspace.service.d.ts +0 -0
  1903. /package/backend/dist/{workspace → src/workspace}/workspace.service.js +0 -0
@@ -0,0 +1,1803 @@
1
+ /**
2
+ * @fileoverview This rule sets a specific indentation style and width for your code
3
+ *
4
+ * @author Teddy Katz
5
+ * @author Vitaly Puzrin
6
+ * @author Gyandeep Singh
7
+ * @deprecated in ESLint v8.53.0
8
+ */
9
+
10
+ "use strict";
11
+
12
+ //------------------------------------------------------------------------------
13
+ // Requirements
14
+ //------------------------------------------------------------------------------
15
+
16
+ const astUtils = require("./utils/ast-utils");
17
+
18
+ //------------------------------------------------------------------------------
19
+ // Rule Definition
20
+ //------------------------------------------------------------------------------
21
+
22
+ const KNOWN_NODES = new Set([
23
+ "AssignmentExpression",
24
+ "AssignmentPattern",
25
+ "ArrayExpression",
26
+ "ArrayPattern",
27
+ "ArrowFunctionExpression",
28
+ "AwaitExpression",
29
+ "BlockStatement",
30
+ "BinaryExpression",
31
+ "BreakStatement",
32
+ "CallExpression",
33
+ "CatchClause",
34
+ "ChainExpression",
35
+ "ClassBody",
36
+ "ClassDeclaration",
37
+ "ClassExpression",
38
+ "ConditionalExpression",
39
+ "ContinueStatement",
40
+ "DoWhileStatement",
41
+ "DebuggerStatement",
42
+ "EmptyStatement",
43
+ "ExperimentalRestProperty",
44
+ "ExperimentalSpreadProperty",
45
+ "ExpressionStatement",
46
+ "ForStatement",
47
+ "ForInStatement",
48
+ "ForOfStatement",
49
+ "FunctionDeclaration",
50
+ "FunctionExpression",
51
+ "Identifier",
52
+ "IfStatement",
53
+ "Literal",
54
+ "LabeledStatement",
55
+ "LogicalExpression",
56
+ "MemberExpression",
57
+ "MetaProperty",
58
+ "MethodDefinition",
59
+ "NewExpression",
60
+ "ObjectExpression",
61
+ "ObjectPattern",
62
+ "PrivateIdentifier",
63
+ "Program",
64
+ "Property",
65
+ "PropertyDefinition",
66
+ "RestElement",
67
+ "ReturnStatement",
68
+ "SequenceExpression",
69
+ "SpreadElement",
70
+ "StaticBlock",
71
+ "Super",
72
+ "SwitchCase",
73
+ "SwitchStatement",
74
+ "TaggedTemplateExpression",
75
+ "TemplateElement",
76
+ "TemplateLiteral",
77
+ "ThisExpression",
78
+ "ThrowStatement",
79
+ "TryStatement",
80
+ "UnaryExpression",
81
+ "UpdateExpression",
82
+ "VariableDeclaration",
83
+ "VariableDeclarator",
84
+ "WhileStatement",
85
+ "WithStatement",
86
+ "YieldExpression",
87
+ "JSXFragment",
88
+ "JSXOpeningFragment",
89
+ "JSXClosingFragment",
90
+ "JSXIdentifier",
91
+ "JSXNamespacedName",
92
+ "JSXMemberExpression",
93
+ "JSXEmptyExpression",
94
+ "JSXExpressionContainer",
95
+ "JSXElement",
96
+ "JSXClosingElement",
97
+ "JSXOpeningElement",
98
+ "JSXAttribute",
99
+ "JSXSpreadAttribute",
100
+ "JSXText",
101
+ "ExportDefaultDeclaration",
102
+ "ExportNamedDeclaration",
103
+ "ExportAllDeclaration",
104
+ "ExportSpecifier",
105
+ "ImportDeclaration",
106
+ "ImportSpecifier",
107
+ "ImportDefaultSpecifier",
108
+ "ImportNamespaceSpecifier",
109
+ "ImportExpression"
110
+ ]);
111
+
112
+ /*
113
+ * General rule strategy:
114
+ * 1. An OffsetStorage instance stores a map of desired offsets, where each token has a specified offset from another
115
+ * specified token or to the first column.
116
+ * 2. As the AST is traversed, modify the desired offsets of tokens accordingly. For example, when entering a
117
+ * BlockStatement, offset all of the tokens in the BlockStatement by 1 indent level from the opening curly
118
+ * brace of the BlockStatement.
119
+ * 3. After traversing the AST, calculate the expected indentation levels of every token according to the
120
+ * OffsetStorage container.
121
+ * 4. For each line, compare the expected indentation of the first token to the actual indentation in the file,
122
+ * and report the token if the two values are not equal.
123
+ */
124
+
125
+
126
+ /**
127
+ * A mutable map that stores (key, value) pairs. The keys are numeric indices, and must be unique.
128
+ * This is intended to be a generic wrapper around a map with non-negative integer keys, so that the underlying implementation
129
+ * can easily be swapped out.
130
+ */
131
+ class IndexMap {
132
+
133
+ /**
134
+ * Creates an empty map
135
+ * @param {number} maxKey The maximum key
136
+ */
137
+ constructor(maxKey) {
138
+
139
+ // Initializing the array with the maximum expected size avoids dynamic reallocations that could degrade performance.
140
+ this._values = Array(maxKey + 1);
141
+ }
142
+
143
+ /**
144
+ * Inserts an entry into the map.
145
+ * @param {number} key The entry's key
146
+ * @param {any} value The entry's value
147
+ * @returns {void}
148
+ */
149
+ insert(key, value) {
150
+ this._values[key] = value;
151
+ }
152
+
153
+ /**
154
+ * Finds the value of the entry with the largest key less than or equal to the provided key
155
+ * @param {number} key The provided key
156
+ * @returns {*|undefined} The value of the found entry, or undefined if no such entry exists.
157
+ */
158
+ findLastNotAfter(key) {
159
+ const values = this._values;
160
+
161
+ for (let index = key; index >= 0; index--) {
162
+ const value = values[index];
163
+
164
+ if (value) {
165
+ return value;
166
+ }
167
+ }
168
+ return void 0;
169
+ }
170
+
171
+ /**
172
+ * Deletes all of the keys in the interval [start, end)
173
+ * @param {number} start The start of the range
174
+ * @param {number} end The end of the range
175
+ * @returns {void}
176
+ */
177
+ deleteRange(start, end) {
178
+ this._values.fill(void 0, start, end);
179
+ }
180
+ }
181
+
182
+ /**
183
+ * A helper class to get token-based info related to indentation
184
+ */
185
+ class TokenInfo {
186
+
187
+ /**
188
+ * @param {SourceCode} sourceCode A SourceCode object
189
+ */
190
+ constructor(sourceCode) {
191
+ this.sourceCode = sourceCode;
192
+ this.firstTokensByLineNumber = new Map();
193
+ const tokens = sourceCode.tokensAndComments;
194
+
195
+ for (let i = 0; i < tokens.length; i++) {
196
+ const token = tokens[i];
197
+
198
+ if (!this.firstTokensByLineNumber.has(token.loc.start.line)) {
199
+ this.firstTokensByLineNumber.set(token.loc.start.line, token);
200
+ }
201
+ if (!this.firstTokensByLineNumber.has(token.loc.end.line) && sourceCode.text.slice(token.range[1] - token.loc.end.column, token.range[1]).trim()) {
202
+ this.firstTokensByLineNumber.set(token.loc.end.line, token);
203
+ }
204
+ }
205
+ }
206
+
207
+ /**
208
+ * Gets the first token on a given token's line
209
+ * @param {Token|ASTNode} token a node or token
210
+ * @returns {Token} The first token on the given line
211
+ */
212
+ getFirstTokenOfLine(token) {
213
+ return this.firstTokensByLineNumber.get(token.loc.start.line);
214
+ }
215
+
216
+ /**
217
+ * Determines whether a token is the first token in its line
218
+ * @param {Token} token The token
219
+ * @returns {boolean} `true` if the token is the first on its line
220
+ */
221
+ isFirstTokenOfLine(token) {
222
+ return this.getFirstTokenOfLine(token) === token;
223
+ }
224
+
225
+ /**
226
+ * Get the actual indent of a token
227
+ * @param {Token} token Token to examine. This should be the first token on its line.
228
+ * @returns {string} The indentation characters that precede the token
229
+ */
230
+ getTokenIndent(token) {
231
+ return this.sourceCode.text.slice(token.range[0] - token.loc.start.column, token.range[0]);
232
+ }
233
+ }
234
+
235
+ /**
236
+ * A class to store information on desired offsets of tokens from each other
237
+ */
238
+ class OffsetStorage {
239
+
240
+ /**
241
+ * @param {TokenInfo} tokenInfo a TokenInfo instance
242
+ * @param {number} indentSize The desired size of each indentation level
243
+ * @param {string} indentType The indentation character
244
+ * @param {number} maxIndex The maximum end index of any token
245
+ */
246
+ constructor(tokenInfo, indentSize, indentType, maxIndex) {
247
+ this._tokenInfo = tokenInfo;
248
+ this._indentSize = indentSize;
249
+ this._indentType = indentType;
250
+
251
+ this._indexMap = new IndexMap(maxIndex);
252
+ this._indexMap.insert(0, { offset: 0, from: null, force: false });
253
+
254
+ this._lockedFirstTokens = new WeakMap();
255
+ this._desiredIndentCache = new WeakMap();
256
+ this._ignoredTokens = new WeakSet();
257
+ }
258
+
259
+ _getOffsetDescriptor(token) {
260
+ return this._indexMap.findLastNotAfter(token.range[0]);
261
+ }
262
+
263
+ /**
264
+ * Sets the offset column of token B to match the offset column of token A.
265
+ * - **WARNING**: This matches a *column*, even if baseToken is not the first token on its line. In
266
+ * most cases, `setDesiredOffset` should be used instead.
267
+ * @param {Token} baseToken The first token
268
+ * @param {Token} offsetToken The second token, whose offset should be matched to the first token
269
+ * @returns {void}
270
+ */
271
+ matchOffsetOf(baseToken, offsetToken) {
272
+
273
+ /*
274
+ * lockedFirstTokens is a map from a token whose indentation is controlled by the "first" option to
275
+ * the token that it depends on. For example, with the `ArrayExpression: first` option, the first
276
+ * token of each element in the array after the first will be mapped to the first token of the first
277
+ * element. The desired indentation of each of these tokens is computed based on the desired indentation
278
+ * of the "first" element, rather than through the normal offset mechanism.
279
+ */
280
+ this._lockedFirstTokens.set(offsetToken, baseToken);
281
+ }
282
+
283
+ /**
284
+ * Sets the desired offset of a token.
285
+ *
286
+ * This uses a line-based offset collapsing behavior to handle tokens on the same line.
287
+ * For example, consider the following two cases:
288
+ *
289
+ * (
290
+ * [
291
+ * bar
292
+ * ]
293
+ * )
294
+ *
295
+ * ([
296
+ * bar
297
+ * ])
298
+ *
299
+ * Based on the first case, it's clear that the `bar` token needs to have an offset of 1 indent level (4 spaces) from
300
+ * the `[` token, and the `[` token has to have an offset of 1 indent level from the `(` token. Since the `(` token is
301
+ * the first on its line (with an indent of 0 spaces), the `bar` token needs to be offset by 2 indent levels (8 spaces)
302
+ * from the start of its line.
303
+ *
304
+ * However, in the second case `bar` should only be indented by 4 spaces. This is because the offset of 1 indent level
305
+ * between the `(` and the `[` tokens gets "collapsed" because the two tokens are on the same line. As a result, the
306
+ * `(` token is mapped to the `[` token with an offset of 0, and the rule correctly decides that `bar` should be indented
307
+ * by 1 indent level from the start of the line.
308
+ *
309
+ * This is useful because rule listeners can usually just call `setDesiredOffset` for all the tokens in the node,
310
+ * without needing to check which lines those tokens are on.
311
+ *
312
+ * Note that since collapsing only occurs when two tokens are on the same line, there are a few cases where non-intuitive
313
+ * behavior can occur. For example, consider the following cases:
314
+ *
315
+ * foo(
316
+ * ).
317
+ * bar(
318
+ * baz
319
+ * )
320
+ *
321
+ * foo(
322
+ * ).bar(
323
+ * baz
324
+ * )
325
+ *
326
+ * Based on the first example, it would seem that `bar` should be offset by 1 indent level from `foo`, and `baz`
327
+ * should be offset by 1 indent level from `bar`. However, this is not correct, because it would result in `baz`
328
+ * being indented by 2 indent levels in the second case (since `foo`, `bar`, and `baz` are all on separate lines, no
329
+ * collapsing would occur).
330
+ *
331
+ * Instead, the correct way would be to offset `baz` by 1 level from `bar`, offset `bar` by 1 level from the `)`, and
332
+ * offset the `)` by 0 levels from `foo`. This ensures that the offset between `bar` and the `)` are correctly collapsed
333
+ * in the second case.
334
+ * @param {Token} token The token
335
+ * @param {Token} fromToken The token that `token` should be offset from
336
+ * @param {number} offset The desired indent level
337
+ * @returns {void}
338
+ */
339
+ setDesiredOffset(token, fromToken, offset) {
340
+ return this.setDesiredOffsets(token.range, fromToken, offset);
341
+ }
342
+
343
+ /**
344
+ * Sets the desired offset of all tokens in a range
345
+ * It's common for node listeners in this file to need to apply the same offset to a large, contiguous range of tokens.
346
+ * Moreover, the offset of any given token is usually updated multiple times (roughly once for each node that contains
347
+ * it). This means that the offset of each token is updated O(AST depth) times.
348
+ * It would not be performant to store and update the offsets for each token independently, because the rule would end
349
+ * up having a time complexity of O(number of tokens * AST depth), which is quite slow for large files.
350
+ *
351
+ * Instead, the offset tree is represented as a collection of contiguous offset ranges in a file. For example, the following
352
+ * list could represent the state of the offset tree at a given point:
353
+ *
354
+ * - Tokens starting in the interval [0, 15) are aligned with the beginning of the file
355
+ * - Tokens starting in the interval [15, 30) are offset by 1 indent level from the `bar` token
356
+ * - Tokens starting in the interval [30, 43) are offset by 1 indent level from the `foo` token
357
+ * - Tokens starting in the interval [43, 820) are offset by 2 indent levels from the `bar` token
358
+ * - Tokens starting in the interval [820, ∞) are offset by 1 indent level from the `baz` token
359
+ *
360
+ * The `setDesiredOffsets` methods inserts ranges like the ones above. The third line above would be inserted by using:
361
+ * `setDesiredOffsets([30, 43], fooToken, 1);`
362
+ * @param {[number, number]} range A [start, end] pair. All tokens with range[0] <= token.start < range[1] will have the offset applied.
363
+ * @param {Token} fromToken The token that this is offset from
364
+ * @param {number} offset The desired indent level
365
+ * @param {boolean} force `true` if this offset should not use the normal collapsing behavior. This should almost always be false.
366
+ * @returns {void}
367
+ */
368
+ setDesiredOffsets(range, fromToken, offset, force) {
369
+
370
+ /*
371
+ * Offset ranges are stored as a collection of nodes, where each node maps a numeric key to an offset
372
+ * descriptor. The tree for the example above would have the following nodes:
373
+ *
374
+ * * key: 0, value: { offset: 0, from: null }
375
+ * * key: 15, value: { offset: 1, from: barToken }
376
+ * * key: 30, value: { offset: 1, from: fooToken }
377
+ * * key: 43, value: { offset: 2, from: barToken }
378
+ * * key: 820, value: { offset: 1, from: bazToken }
379
+ *
380
+ * To find the offset descriptor for any given token, one needs to find the node with the largest key
381
+ * which is <= token.start. To make this operation fast, the nodes are stored in a map indexed by key.
382
+ */
383
+
384
+ const descriptorToInsert = { offset, from: fromToken, force };
385
+
386
+ const descriptorAfterRange = this._indexMap.findLastNotAfter(range[1]);
387
+
388
+ const fromTokenIsInRange = fromToken && fromToken.range[0] >= range[0] && fromToken.range[1] <= range[1];
389
+ const fromTokenDescriptor = fromTokenIsInRange && this._getOffsetDescriptor(fromToken);
390
+
391
+ // First, remove any existing nodes in the range from the map.
392
+ this._indexMap.deleteRange(range[0] + 1, range[1]);
393
+
394
+ // Insert a new node into the map for this range
395
+ this._indexMap.insert(range[0], descriptorToInsert);
396
+
397
+ /*
398
+ * To avoid circular offset dependencies, keep the `fromToken` token mapped to whatever it was mapped to previously,
399
+ * even if it's in the current range.
400
+ */
401
+ if (fromTokenIsInRange) {
402
+ this._indexMap.insert(fromToken.range[0], fromTokenDescriptor);
403
+ this._indexMap.insert(fromToken.range[1], descriptorToInsert);
404
+ }
405
+
406
+ /*
407
+ * To avoid modifying the offset of tokens after the range, insert another node to keep the offset of the following
408
+ * tokens the same as it was before.
409
+ */
410
+ this._indexMap.insert(range[1], descriptorAfterRange);
411
+ }
412
+
413
+ /**
414
+ * Gets the desired indent of a token
415
+ * @param {Token} token The token
416
+ * @returns {string} The desired indent of the token
417
+ */
418
+ getDesiredIndent(token) {
419
+ if (!this._desiredIndentCache.has(token)) {
420
+
421
+ if (this._ignoredTokens.has(token)) {
422
+
423
+ /*
424
+ * If the token is ignored, use the actual indent of the token as the desired indent.
425
+ * This ensures that no errors are reported for this token.
426
+ */
427
+ this._desiredIndentCache.set(
428
+ token,
429
+ this._tokenInfo.getTokenIndent(token)
430
+ );
431
+ } else if (this._lockedFirstTokens.has(token)) {
432
+ const firstToken = this._lockedFirstTokens.get(token);
433
+
434
+ this._desiredIndentCache.set(
435
+ token,
436
+
437
+ // (indentation for the first element's line)
438
+ this.getDesiredIndent(this._tokenInfo.getFirstTokenOfLine(firstToken)) +
439
+
440
+ // (space between the start of the first element's line and the first element)
441
+ this._indentType.repeat(firstToken.loc.start.column - this._tokenInfo.getFirstTokenOfLine(firstToken).loc.start.column)
442
+ );
443
+ } else {
444
+ const offsetInfo = this._getOffsetDescriptor(token);
445
+ const offset = (
446
+ offsetInfo.from &&
447
+ offsetInfo.from.loc.start.line === token.loc.start.line &&
448
+ !/^\s*?\n/u.test(token.value) &&
449
+ !offsetInfo.force
450
+ ) ? 0 : offsetInfo.offset * this._indentSize;
451
+
452
+ this._desiredIndentCache.set(
453
+ token,
454
+ (offsetInfo.from ? this.getDesiredIndent(offsetInfo.from) : "") + this._indentType.repeat(offset)
455
+ );
456
+ }
457
+ }
458
+ return this._desiredIndentCache.get(token);
459
+ }
460
+
461
+ /**
462
+ * Ignores a token, preventing it from being reported.
463
+ * @param {Token} token The token
464
+ * @returns {void}
465
+ */
466
+ ignoreToken(token) {
467
+ if (this._tokenInfo.isFirstTokenOfLine(token)) {
468
+ this._ignoredTokens.add(token);
469
+ }
470
+ }
471
+
472
+ /**
473
+ * Gets the first token that the given token's indentation is dependent on
474
+ * @param {Token} token The token
475
+ * @returns {Token} The token that the given token depends on, or `null` if the given token is at the top level
476
+ */
477
+ getFirstDependency(token) {
478
+ return this._getOffsetDescriptor(token).from;
479
+ }
480
+ }
481
+
482
+ const ELEMENT_LIST_SCHEMA = {
483
+ oneOf: [
484
+ {
485
+ type: "integer",
486
+ minimum: 0
487
+ },
488
+ {
489
+ enum: ["first", "off"]
490
+ }
491
+ ]
492
+ };
493
+
494
+ /** @type {import('../shared/types').Rule} */
495
+ module.exports = {
496
+ meta: {
497
+ deprecated: true,
498
+ replacedBy: [],
499
+ type: "layout",
500
+
501
+ docs: {
502
+ description: "Enforce consistent indentation",
503
+ recommended: false,
504
+ url: "https://eslint.org/docs/latest/rules/indent"
505
+ },
506
+
507
+ fixable: "whitespace",
508
+
509
+ schema: [
510
+ {
511
+ oneOf: [
512
+ {
513
+ enum: ["tab"]
514
+ },
515
+ {
516
+ type: "integer",
517
+ minimum: 0
518
+ }
519
+ ]
520
+ },
521
+ {
522
+ type: "object",
523
+ properties: {
524
+ SwitchCase: {
525
+ type: "integer",
526
+ minimum: 0,
527
+ default: 0
528
+ },
529
+ VariableDeclarator: {
530
+ oneOf: [
531
+ ELEMENT_LIST_SCHEMA,
532
+ {
533
+ type: "object",
534
+ properties: {
535
+ var: ELEMENT_LIST_SCHEMA,
536
+ let: ELEMENT_LIST_SCHEMA,
537
+ const: ELEMENT_LIST_SCHEMA
538
+ },
539
+ additionalProperties: false
540
+ }
541
+ ]
542
+ },
543
+ outerIIFEBody: {
544
+ oneOf: [
545
+ {
546
+ type: "integer",
547
+ minimum: 0
548
+ },
549
+ {
550
+ enum: ["off"]
551
+ }
552
+ ]
553
+ },
554
+ MemberExpression: {
555
+ oneOf: [
556
+ {
557
+ type: "integer",
558
+ minimum: 0
559
+ },
560
+ {
561
+ enum: ["off"]
562
+ }
563
+ ]
564
+ },
565
+ FunctionDeclaration: {
566
+ type: "object",
567
+ properties: {
568
+ parameters: ELEMENT_LIST_SCHEMA,
569
+ body: {
570
+ type: "integer",
571
+ minimum: 0
572
+ }
573
+ },
574
+ additionalProperties: false
575
+ },
576
+ FunctionExpression: {
577
+ type: "object",
578
+ properties: {
579
+ parameters: ELEMENT_LIST_SCHEMA,
580
+ body: {
581
+ type: "integer",
582
+ minimum: 0
583
+ }
584
+ },
585
+ additionalProperties: false
586
+ },
587
+ StaticBlock: {
588
+ type: "object",
589
+ properties: {
590
+ body: {
591
+ type: "integer",
592
+ minimum: 0
593
+ }
594
+ },
595
+ additionalProperties: false
596
+ },
597
+ CallExpression: {
598
+ type: "object",
599
+ properties: {
600
+ arguments: ELEMENT_LIST_SCHEMA
601
+ },
602
+ additionalProperties: false
603
+ },
604
+ ArrayExpression: ELEMENT_LIST_SCHEMA,
605
+ ObjectExpression: ELEMENT_LIST_SCHEMA,
606
+ ImportDeclaration: ELEMENT_LIST_SCHEMA,
607
+ flatTernaryExpressions: {
608
+ type: "boolean",
609
+ default: false
610
+ },
611
+ offsetTernaryExpressions: {
612
+ type: "boolean",
613
+ default: false
614
+ },
615
+ ignoredNodes: {
616
+ type: "array",
617
+ items: {
618
+ type: "string",
619
+ not: {
620
+ pattern: ":exit$"
621
+ }
622
+ }
623
+ },
624
+ ignoreComments: {
625
+ type: "boolean",
626
+ default: false
627
+ }
628
+ },
629
+ additionalProperties: false
630
+ }
631
+ ],
632
+ messages: {
633
+ wrongIndentation: "Expected indentation of {{expected}} but found {{actual}}."
634
+ }
635
+ },
636
+
637
+ create(context) {
638
+ const DEFAULT_VARIABLE_INDENT = 1;
639
+ const DEFAULT_PARAMETER_INDENT = 1;
640
+ const DEFAULT_FUNCTION_BODY_INDENT = 1;
641
+
642
+ let indentType = "space";
643
+ let indentSize = 4;
644
+ const options = {
645
+ SwitchCase: 0,
646
+ VariableDeclarator: {
647
+ var: DEFAULT_VARIABLE_INDENT,
648
+ let: DEFAULT_VARIABLE_INDENT,
649
+ const: DEFAULT_VARIABLE_INDENT
650
+ },
651
+ outerIIFEBody: 1,
652
+ FunctionDeclaration: {
653
+ parameters: DEFAULT_PARAMETER_INDENT,
654
+ body: DEFAULT_FUNCTION_BODY_INDENT
655
+ },
656
+ FunctionExpression: {
657
+ parameters: DEFAULT_PARAMETER_INDENT,
658
+ body: DEFAULT_FUNCTION_BODY_INDENT
659
+ },
660
+ StaticBlock: {
661
+ body: DEFAULT_FUNCTION_BODY_INDENT
662
+ },
663
+ CallExpression: {
664
+ arguments: DEFAULT_PARAMETER_INDENT
665
+ },
666
+ MemberExpression: 1,
667
+ ArrayExpression: 1,
668
+ ObjectExpression: 1,
669
+ ImportDeclaration: 1,
670
+ flatTernaryExpressions: false,
671
+ ignoredNodes: [],
672
+ ignoreComments: false
673
+ };
674
+
675
+ if (context.options.length) {
676
+ if (context.options[0] === "tab") {
677
+ indentSize = 1;
678
+ indentType = "tab";
679
+ } else {
680
+ indentSize = context.options[0];
681
+ indentType = "space";
682
+ }
683
+
684
+ if (context.options[1]) {
685
+ Object.assign(options, context.options[1]);
686
+
687
+ if (typeof options.VariableDeclarator === "number" || options.VariableDeclarator === "first") {
688
+ options.VariableDeclarator = {
689
+ var: options.VariableDeclarator,
690
+ let: options.VariableDeclarator,
691
+ const: options.VariableDeclarator
692
+ };
693
+ }
694
+ }
695
+ }
696
+
697
+ const sourceCode = context.sourceCode;
698
+ const tokenInfo = new TokenInfo(sourceCode);
699
+ const offsets = new OffsetStorage(tokenInfo, indentSize, indentType === "space" ? " " : "\t", sourceCode.text.length);
700
+ const parameterParens = new WeakSet();
701
+
702
+ /**
703
+ * Creates an error message for a line, given the expected/actual indentation.
704
+ * @param {int} expectedAmount The expected amount of indentation characters for this line
705
+ * @param {int} actualSpaces The actual number of indentation spaces that were found on this line
706
+ * @param {int} actualTabs The actual number of indentation tabs that were found on this line
707
+ * @returns {string} An error message for this line
708
+ */
709
+ function createErrorMessageData(expectedAmount, actualSpaces, actualTabs) {
710
+ const expectedStatement = `${expectedAmount} ${indentType}${expectedAmount === 1 ? "" : "s"}`; // e.g. "2 tabs"
711
+ const foundSpacesWord = `space${actualSpaces === 1 ? "" : "s"}`; // e.g. "space"
712
+ const foundTabsWord = `tab${actualTabs === 1 ? "" : "s"}`; // e.g. "tabs"
713
+ let foundStatement;
714
+
715
+ if (actualSpaces > 0) {
716
+
717
+ /*
718
+ * Abbreviate the message if the expected indentation is also spaces.
719
+ * e.g. 'Expected 4 spaces but found 2' rather than 'Expected 4 spaces but found 2 spaces'
720
+ */
721
+ foundStatement = indentType === "space" ? actualSpaces : `${actualSpaces} ${foundSpacesWord}`;
722
+ } else if (actualTabs > 0) {
723
+ foundStatement = indentType === "tab" ? actualTabs : `${actualTabs} ${foundTabsWord}`;
724
+ } else {
725
+ foundStatement = "0";
726
+ }
727
+ return {
728
+ expected: expectedStatement,
729
+ actual: foundStatement
730
+ };
731
+ }
732
+
733
+ /**
734
+ * Reports a given indent violation
735
+ * @param {Token} token Token violating the indent rule
736
+ * @param {string} neededIndent Expected indentation string
737
+ * @returns {void}
738
+ */
739
+ function report(token, neededIndent) {
740
+ const actualIndent = Array.from(tokenInfo.getTokenIndent(token));
741
+ const numSpaces = actualIndent.filter(char => char === " ").length;
742
+ const numTabs = actualIndent.filter(char => char === "\t").length;
743
+
744
+ context.report({
745
+ node: token,
746
+ messageId: "wrongIndentation",
747
+ data: createErrorMessageData(neededIndent.length, numSpaces, numTabs),
748
+ loc: {
749
+ start: { line: token.loc.start.line, column: 0 },
750
+ end: { line: token.loc.start.line, column: token.loc.start.column }
751
+ },
752
+ fix(fixer) {
753
+ const range = [token.range[0] - token.loc.start.column, token.range[0]];
754
+ const newText = neededIndent;
755
+
756
+ return fixer.replaceTextRange(range, newText);
757
+ }
758
+ });
759
+ }
760
+
761
+ /**
762
+ * Checks if a token's indentation is correct
763
+ * @param {Token} token Token to examine
764
+ * @param {string} desiredIndent Desired indentation of the string
765
+ * @returns {boolean} `true` if the token's indentation is correct
766
+ */
767
+ function validateTokenIndent(token, desiredIndent) {
768
+ const indentation = tokenInfo.getTokenIndent(token);
769
+
770
+ return indentation === desiredIndent ||
771
+
772
+ // To avoid conflicts with no-mixed-spaces-and-tabs, don't report mixed spaces and tabs.
773
+ indentation.includes(" ") && indentation.includes("\t");
774
+ }
775
+
776
+ /**
777
+ * Check to see if the node is a file level IIFE
778
+ * @param {ASTNode} node The function node to check.
779
+ * @returns {boolean} True if the node is the outer IIFE
780
+ */
781
+ function isOuterIIFE(node) {
782
+
783
+ /*
784
+ * Verify that the node is an IIFE
785
+ */
786
+ if (!node.parent || node.parent.type !== "CallExpression" || node.parent.callee !== node) {
787
+ return false;
788
+ }
789
+
790
+ /*
791
+ * Navigate legal ancestors to determine whether this IIFE is outer.
792
+ * A "legal ancestor" is an expression or statement that causes the function to get executed immediately.
793
+ * For example, `!(function(){})()` is an outer IIFE even though it is preceded by a ! operator.
794
+ */
795
+ let statement = node.parent && node.parent.parent;
796
+
797
+ while (
798
+ statement.type === "UnaryExpression" && ["!", "~", "+", "-"].includes(statement.operator) ||
799
+ statement.type === "AssignmentExpression" ||
800
+ statement.type === "LogicalExpression" ||
801
+ statement.type === "SequenceExpression" ||
802
+ statement.type === "VariableDeclarator"
803
+ ) {
804
+ statement = statement.parent;
805
+ }
806
+
807
+ return (statement.type === "ExpressionStatement" || statement.type === "VariableDeclaration") && statement.parent.type === "Program";
808
+ }
809
+
810
+ /**
811
+ * Counts the number of linebreaks that follow the last non-whitespace character in a string
812
+ * @param {string} string The string to check
813
+ * @returns {number} The number of JavaScript linebreaks that follow the last non-whitespace character,
814
+ * or the total number of linebreaks if the string is all whitespace.
815
+ */
816
+ function countTrailingLinebreaks(string) {
817
+ const trailingWhitespace = string.match(/\s*$/u)[0];
818
+ const linebreakMatches = trailingWhitespace.match(astUtils.createGlobalLinebreakMatcher());
819
+
820
+ return linebreakMatches === null ? 0 : linebreakMatches.length;
821
+ }
822
+
823
+ /**
824
+ * Check indentation for lists of elements (arrays, objects, function params)
825
+ * @param {ASTNode[]} elements List of elements that should be offset
826
+ * @param {Token} startToken The start token of the list that element should be aligned against, e.g. '['
827
+ * @param {Token} endToken The end token of the list, e.g. ']'
828
+ * @param {number|string} offset The amount that the elements should be offset
829
+ * @returns {void}
830
+ */
831
+ function addElementListIndent(elements, startToken, endToken, offset) {
832
+
833
+ /**
834
+ * Gets the first token of a given element, including surrounding parentheses.
835
+ * @param {ASTNode} element A node in the `elements` list
836
+ * @returns {Token} The first token of this element
837
+ */
838
+ function getFirstToken(element) {
839
+ let token = sourceCode.getTokenBefore(element);
840
+
841
+ while (astUtils.isOpeningParenToken(token) && token !== startToken) {
842
+ token = sourceCode.getTokenBefore(token);
843
+ }
844
+ return sourceCode.getTokenAfter(token);
845
+ }
846
+
847
+ // Run through all the tokens in the list, and offset them by one indent level (mainly for comments, other things will end up overridden)
848
+ offsets.setDesiredOffsets(
849
+ [startToken.range[1], endToken.range[0]],
850
+ startToken,
851
+ typeof offset === "number" ? offset : 1
852
+ );
853
+ offsets.setDesiredOffset(endToken, startToken, 0);
854
+
855
+ // If the preference is "first" but there is no first element (e.g. sparse arrays w/ empty first slot), fall back to 1 level.
856
+ if (offset === "first" && elements.length && !elements[0]) {
857
+ return;
858
+ }
859
+ elements.forEach((element, index) => {
860
+ if (!element) {
861
+
862
+ // Skip holes in arrays
863
+ return;
864
+ }
865
+ if (offset === "off") {
866
+
867
+ // Ignore the first token of every element if the "off" option is used
868
+ offsets.ignoreToken(getFirstToken(element));
869
+ }
870
+
871
+ // Offset the following elements correctly relative to the first element
872
+ if (index === 0) {
873
+ return;
874
+ }
875
+ if (offset === "first" && tokenInfo.isFirstTokenOfLine(getFirstToken(element))) {
876
+ offsets.matchOffsetOf(getFirstToken(elements[0]), getFirstToken(element));
877
+ } else {
878
+ const previousElement = elements[index - 1];
879
+ const firstTokenOfPreviousElement = previousElement && getFirstToken(previousElement);
880
+ const previousElementLastToken = previousElement && sourceCode.getLastToken(previousElement);
881
+
882
+ if (
883
+ previousElement &&
884
+ previousElementLastToken.loc.end.line - countTrailingLinebreaks(previousElementLastToken.value) > startToken.loc.end.line
885
+ ) {
886
+ offsets.setDesiredOffsets(
887
+ [previousElement.range[1], element.range[1]],
888
+ firstTokenOfPreviousElement,
889
+ 0
890
+ );
891
+ }
892
+ }
893
+ });
894
+ }
895
+
896
+ /**
897
+ * Check and decide whether to check for indentation for blockless nodes
898
+ * Scenarios are for or while statements without braces around them
899
+ * @param {ASTNode} node node to examine
900
+ * @returns {void}
901
+ */
902
+ function addBlocklessNodeIndent(node) {
903
+ if (node.type !== "BlockStatement") {
904
+ const lastParentToken = sourceCode.getTokenBefore(node, astUtils.isNotOpeningParenToken);
905
+
906
+ let firstBodyToken = sourceCode.getFirstToken(node);
907
+ let lastBodyToken = sourceCode.getLastToken(node);
908
+
909
+ while (
910
+ astUtils.isOpeningParenToken(sourceCode.getTokenBefore(firstBodyToken)) &&
911
+ astUtils.isClosingParenToken(sourceCode.getTokenAfter(lastBodyToken))
912
+ ) {
913
+ firstBodyToken = sourceCode.getTokenBefore(firstBodyToken);
914
+ lastBodyToken = sourceCode.getTokenAfter(lastBodyToken);
915
+ }
916
+
917
+ offsets.setDesiredOffsets([firstBodyToken.range[0], lastBodyToken.range[1]], lastParentToken, 1);
918
+ }
919
+ }
920
+
921
+ /**
922
+ * Checks the indentation for nodes that are like function calls (`CallExpression` and `NewExpression`)
923
+ * @param {ASTNode} node A CallExpression or NewExpression node
924
+ * @returns {void}
925
+ */
926
+ function addFunctionCallIndent(node) {
927
+ let openingParen;
928
+
929
+ if (node.arguments.length) {
930
+ openingParen = sourceCode.getFirstTokenBetween(node.callee, node.arguments[0], astUtils.isOpeningParenToken);
931
+ } else {
932
+ openingParen = sourceCode.getLastToken(node, 1);
933
+ }
934
+ const closingParen = sourceCode.getLastToken(node);
935
+
936
+ parameterParens.add(openingParen);
937
+ parameterParens.add(closingParen);
938
+
939
+ /*
940
+ * If `?.` token exists, set desired offset for that.
941
+ * This logic is copied from `MemberExpression`'s.
942
+ */
943
+ if (node.optional) {
944
+ const dotToken = sourceCode.getTokenAfter(node.callee, astUtils.isQuestionDotToken);
945
+ const calleeParenCount = sourceCode.getTokensBetween(node.callee, dotToken, { filter: astUtils.isClosingParenToken }).length;
946
+ const firstTokenOfCallee = calleeParenCount
947
+ ? sourceCode.getTokenBefore(node.callee, { skip: calleeParenCount - 1 })
948
+ : sourceCode.getFirstToken(node.callee);
949
+ const lastTokenOfCallee = sourceCode.getTokenBefore(dotToken);
950
+ const offsetBase = lastTokenOfCallee.loc.end.line === openingParen.loc.start.line
951
+ ? lastTokenOfCallee
952
+ : firstTokenOfCallee;
953
+
954
+ offsets.setDesiredOffset(dotToken, offsetBase, 1);
955
+ }
956
+
957
+ const offsetAfterToken = node.callee.type === "TaggedTemplateExpression" ? sourceCode.getFirstToken(node.callee.quasi) : openingParen;
958
+ const offsetToken = sourceCode.getTokenBefore(offsetAfterToken);
959
+
960
+ offsets.setDesiredOffset(openingParen, offsetToken, 0);
961
+
962
+ addElementListIndent(node.arguments, openingParen, closingParen, options.CallExpression.arguments);
963
+ }
964
+
965
+ /**
966
+ * Checks the indentation of parenthesized values, given a list of tokens in a program
967
+ * @param {Token[]} tokens A list of tokens
968
+ * @returns {void}
969
+ */
970
+ function addParensIndent(tokens) {
971
+ const parenStack = [];
972
+ const parenPairs = [];
973
+
974
+ for (let i = 0; i < tokens.length; i++) {
975
+ const nextToken = tokens[i];
976
+
977
+ if (astUtils.isOpeningParenToken(nextToken)) {
978
+ parenStack.push(nextToken);
979
+ } else if (astUtils.isClosingParenToken(nextToken)) {
980
+ parenPairs.push({ left: parenStack.pop(), right: nextToken });
981
+ }
982
+ }
983
+
984
+ for (let i = parenPairs.length - 1; i >= 0; i--) {
985
+ const leftParen = parenPairs[i].left;
986
+ const rightParen = parenPairs[i].right;
987
+
988
+ // We only want to handle parens around expressions, so exclude parentheses that are in function parameters and function call arguments.
989
+ if (!parameterParens.has(leftParen) && !parameterParens.has(rightParen)) {
990
+ const parenthesizedTokens = new Set(sourceCode.getTokensBetween(leftParen, rightParen));
991
+
992
+ parenthesizedTokens.forEach(token => {
993
+ if (!parenthesizedTokens.has(offsets.getFirstDependency(token))) {
994
+ offsets.setDesiredOffset(token, leftParen, 1);
995
+ }
996
+ });
997
+ }
998
+
999
+ offsets.setDesiredOffset(rightParen, leftParen, 0);
1000
+ }
1001
+ }
1002
+
1003
+ /**
1004
+ * Ignore all tokens within an unknown node whose offset do not depend
1005
+ * on another token's offset within the unknown node
1006
+ * @param {ASTNode} node Unknown Node
1007
+ * @returns {void}
1008
+ */
1009
+ function ignoreNode(node) {
1010
+ const unknownNodeTokens = new Set(sourceCode.getTokens(node, { includeComments: true }));
1011
+
1012
+ unknownNodeTokens.forEach(token => {
1013
+ if (!unknownNodeTokens.has(offsets.getFirstDependency(token))) {
1014
+ const firstTokenOfLine = tokenInfo.getFirstTokenOfLine(token);
1015
+
1016
+ if (token === firstTokenOfLine) {
1017
+ offsets.ignoreToken(token);
1018
+ } else {
1019
+ offsets.setDesiredOffset(token, firstTokenOfLine, 0);
1020
+ }
1021
+ }
1022
+ });
1023
+ }
1024
+
1025
+ /**
1026
+ * Check whether the given token is on the first line of a statement.
1027
+ * @param {Token} token The token to check.
1028
+ * @param {ASTNode} leafNode The expression node that the token belongs directly.
1029
+ * @returns {boolean} `true` if the token is on the first line of a statement.
1030
+ */
1031
+ function isOnFirstLineOfStatement(token, leafNode) {
1032
+ let node = leafNode;
1033
+
1034
+ while (node.parent && !node.parent.type.endsWith("Statement") && !node.parent.type.endsWith("Declaration")) {
1035
+ node = node.parent;
1036
+ }
1037
+ node = node.parent;
1038
+
1039
+ return !node || node.loc.start.line === token.loc.start.line;
1040
+ }
1041
+
1042
+ /**
1043
+ * Check whether there are any blank (whitespace-only) lines between
1044
+ * two tokens on separate lines.
1045
+ * @param {Token} firstToken The first token.
1046
+ * @param {Token} secondToken The second token.
1047
+ * @returns {boolean} `true` if the tokens are on separate lines and
1048
+ * there exists a blank line between them, `false` otherwise.
1049
+ */
1050
+ function hasBlankLinesBetween(firstToken, secondToken) {
1051
+ const firstTokenLine = firstToken.loc.end.line;
1052
+ const secondTokenLine = secondToken.loc.start.line;
1053
+
1054
+ if (firstTokenLine === secondTokenLine || firstTokenLine === secondTokenLine - 1) {
1055
+ return false;
1056
+ }
1057
+
1058
+ for (let line = firstTokenLine + 1; line < secondTokenLine; ++line) {
1059
+ if (!tokenInfo.firstTokensByLineNumber.has(line)) {
1060
+ return true;
1061
+ }
1062
+ }
1063
+
1064
+ return false;
1065
+ }
1066
+
1067
+ const ignoredNodeFirstTokens = new Set();
1068
+
1069
+ const baseOffsetListeners = {
1070
+ "ArrayExpression, ArrayPattern"(node) {
1071
+ const openingBracket = sourceCode.getFirstToken(node);
1072
+ const closingBracket = sourceCode.getTokenAfter([...node.elements].reverse().find(_ => _) || openingBracket, astUtils.isClosingBracketToken);
1073
+
1074
+ addElementListIndent(node.elements, openingBracket, closingBracket, options.ArrayExpression);
1075
+ },
1076
+
1077
+ "ObjectExpression, ObjectPattern"(node) {
1078
+ const openingCurly = sourceCode.getFirstToken(node);
1079
+ const closingCurly = sourceCode.getTokenAfter(
1080
+ node.properties.length ? node.properties[node.properties.length - 1] : openingCurly,
1081
+ astUtils.isClosingBraceToken
1082
+ );
1083
+
1084
+ addElementListIndent(node.properties, openingCurly, closingCurly, options.ObjectExpression);
1085
+ },
1086
+
1087
+ ArrowFunctionExpression(node) {
1088
+ const maybeOpeningParen = sourceCode.getFirstToken(node, { skip: node.async ? 1 : 0 });
1089
+
1090
+ if (astUtils.isOpeningParenToken(maybeOpeningParen)) {
1091
+ const openingParen = maybeOpeningParen;
1092
+ const closingParen = sourceCode.getTokenBefore(node.body, astUtils.isClosingParenToken);
1093
+
1094
+ parameterParens.add(openingParen);
1095
+ parameterParens.add(closingParen);
1096
+ addElementListIndent(node.params, openingParen, closingParen, options.FunctionExpression.parameters);
1097
+ }
1098
+
1099
+ addBlocklessNodeIndent(node.body);
1100
+ },
1101
+
1102
+ AssignmentExpression(node) {
1103
+ const operator = sourceCode.getFirstTokenBetween(node.left, node.right, token => token.value === node.operator);
1104
+
1105
+ offsets.setDesiredOffsets([operator.range[0], node.range[1]], sourceCode.getLastToken(node.left), 1);
1106
+ offsets.ignoreToken(operator);
1107
+ offsets.ignoreToken(sourceCode.getTokenAfter(operator));
1108
+ },
1109
+
1110
+ "BinaryExpression, LogicalExpression"(node) {
1111
+ const operator = sourceCode.getFirstTokenBetween(node.left, node.right, token => token.value === node.operator);
1112
+
1113
+ /*
1114
+ * For backwards compatibility, don't check BinaryExpression indents, e.g.
1115
+ * var foo = bar &&
1116
+ * baz;
1117
+ */
1118
+
1119
+ const tokenAfterOperator = sourceCode.getTokenAfter(operator);
1120
+
1121
+ offsets.ignoreToken(operator);
1122
+ offsets.ignoreToken(tokenAfterOperator);
1123
+ offsets.setDesiredOffset(tokenAfterOperator, operator, 0);
1124
+ },
1125
+
1126
+ "BlockStatement, ClassBody"(node) {
1127
+ let blockIndentLevel;
1128
+
1129
+ if (node.parent && isOuterIIFE(node.parent)) {
1130
+ blockIndentLevel = options.outerIIFEBody;
1131
+ } else if (node.parent && (node.parent.type === "FunctionExpression" || node.parent.type === "ArrowFunctionExpression")) {
1132
+ blockIndentLevel = options.FunctionExpression.body;
1133
+ } else if (node.parent && node.parent.type === "FunctionDeclaration") {
1134
+ blockIndentLevel = options.FunctionDeclaration.body;
1135
+ } else {
1136
+ blockIndentLevel = 1;
1137
+ }
1138
+
1139
+ /*
1140
+ * For blocks that aren't lone statements, ensure that the opening curly brace
1141
+ * is aligned with the parent.
1142
+ */
1143
+ if (!astUtils.STATEMENT_LIST_PARENTS.has(node.parent.type)) {
1144
+ offsets.setDesiredOffset(sourceCode.getFirstToken(node), sourceCode.getFirstToken(node.parent), 0);
1145
+ }
1146
+
1147
+ addElementListIndent(node.body, sourceCode.getFirstToken(node), sourceCode.getLastToken(node), blockIndentLevel);
1148
+ },
1149
+
1150
+ CallExpression: addFunctionCallIndent,
1151
+
1152
+ "ClassDeclaration[superClass], ClassExpression[superClass]"(node) {
1153
+ const classToken = sourceCode.getFirstToken(node);
1154
+ const extendsToken = sourceCode.getTokenBefore(node.superClass, astUtils.isNotOpeningParenToken);
1155
+
1156
+ offsets.setDesiredOffsets([extendsToken.range[0], node.body.range[0]], classToken, 1);
1157
+ },
1158
+
1159
+ ConditionalExpression(node) {
1160
+ const firstToken = sourceCode.getFirstToken(node);
1161
+
1162
+ // `flatTernaryExpressions` option is for the following style:
1163
+ // var a =
1164
+ // foo > 0 ? bar :
1165
+ // foo < 0 ? baz :
1166
+ // /*else*/ qiz ;
1167
+ if (!options.flatTernaryExpressions ||
1168
+ !astUtils.isTokenOnSameLine(node.test, node.consequent) ||
1169
+ isOnFirstLineOfStatement(firstToken, node)
1170
+ ) {
1171
+ const questionMarkToken = sourceCode.getFirstTokenBetween(node.test, node.consequent, token => token.type === "Punctuator" && token.value === "?");
1172
+ const colonToken = sourceCode.getFirstTokenBetween(node.consequent, node.alternate, token => token.type === "Punctuator" && token.value === ":");
1173
+
1174
+ const firstConsequentToken = sourceCode.getTokenAfter(questionMarkToken);
1175
+ const lastConsequentToken = sourceCode.getTokenBefore(colonToken);
1176
+ const firstAlternateToken = sourceCode.getTokenAfter(colonToken);
1177
+
1178
+ offsets.setDesiredOffset(questionMarkToken, firstToken, 1);
1179
+ offsets.setDesiredOffset(colonToken, firstToken, 1);
1180
+
1181
+ offsets.setDesiredOffset(firstConsequentToken, firstToken, firstConsequentToken.type === "Punctuator" &&
1182
+ options.offsetTernaryExpressions ? 2 : 1);
1183
+
1184
+ /*
1185
+ * The alternate and the consequent should usually have the same indentation.
1186
+ * If they share part of a line, align the alternate against the first token of the consequent.
1187
+ * This allows the alternate to be indented correctly in cases like this:
1188
+ * foo ? (
1189
+ * bar
1190
+ * ) : ( // this '(' is aligned with the '(' above, so it's considered to be aligned with `foo`
1191
+ * baz // as a result, `baz` is offset by 1 rather than 2
1192
+ * )
1193
+ */
1194
+ if (lastConsequentToken.loc.end.line === firstAlternateToken.loc.start.line) {
1195
+ offsets.setDesiredOffset(firstAlternateToken, firstConsequentToken, 0);
1196
+ } else {
1197
+
1198
+ /**
1199
+ * If the alternate and consequent do not share part of a line, offset the alternate from the first
1200
+ * token of the conditional expression. For example:
1201
+ * foo ? bar
1202
+ * : baz
1203
+ *
1204
+ * If `baz` were aligned with `bar` rather than being offset by 1 from `foo`, `baz` would end up
1205
+ * having no expected indentation.
1206
+ */
1207
+ offsets.setDesiredOffset(firstAlternateToken, firstToken, firstAlternateToken.type === "Punctuator" &&
1208
+ options.offsetTernaryExpressions ? 2 : 1);
1209
+ }
1210
+ }
1211
+ },
1212
+
1213
+ "DoWhileStatement, WhileStatement, ForInStatement, ForOfStatement, WithStatement": node => addBlocklessNodeIndent(node.body),
1214
+
1215
+ ExportNamedDeclaration(node) {
1216
+ if (node.declaration === null) {
1217
+ const closingCurly = sourceCode.getLastToken(node, astUtils.isClosingBraceToken);
1218
+
1219
+ // Indent the specifiers in `export {foo, bar, baz}`
1220
+ addElementListIndent(node.specifiers, sourceCode.getFirstToken(node, { skip: 1 }), closingCurly, 1);
1221
+
1222
+ if (node.source) {
1223
+
1224
+ // Indent everything after and including the `from` token in `export {foo, bar, baz} from 'qux'`
1225
+ offsets.setDesiredOffsets([closingCurly.range[1], node.range[1]], sourceCode.getFirstToken(node), 1);
1226
+ }
1227
+ }
1228
+ },
1229
+
1230
+ ForStatement(node) {
1231
+ const forOpeningParen = sourceCode.getFirstToken(node, 1);
1232
+
1233
+ if (node.init) {
1234
+ offsets.setDesiredOffsets(node.init.range, forOpeningParen, 1);
1235
+ }
1236
+ if (node.test) {
1237
+ offsets.setDesiredOffsets(node.test.range, forOpeningParen, 1);
1238
+ }
1239
+ if (node.update) {
1240
+ offsets.setDesiredOffsets(node.update.range, forOpeningParen, 1);
1241
+ }
1242
+ addBlocklessNodeIndent(node.body);
1243
+ },
1244
+
1245
+ "FunctionDeclaration, FunctionExpression"(node) {
1246
+ const closingParen = sourceCode.getTokenBefore(node.body);
1247
+ const openingParen = sourceCode.getTokenBefore(node.params.length ? node.params[0] : closingParen);
1248
+
1249
+ parameterParens.add(openingParen);
1250
+ parameterParens.add(closingParen);
1251
+ addElementListIndent(node.params, openingParen, closingParen, options[node.type].parameters);
1252
+ },
1253
+
1254
+ IfStatement(node) {
1255
+ addBlocklessNodeIndent(node.consequent);
1256
+ if (node.alternate) {
1257
+ addBlocklessNodeIndent(node.alternate);
1258
+ }
1259
+ },
1260
+
1261
+ /*
1262
+ * For blockless nodes with semicolon-first style, don't indent the semicolon.
1263
+ * e.g.
1264
+ * if (foo)
1265
+ * bar()
1266
+ * ; [1, 2, 3].map(foo)
1267
+ *
1268
+ * Traversal into the node sets indentation of the semicolon, so we need to override it on exit.
1269
+ */
1270
+ ":matches(DoWhileStatement, ForStatement, ForInStatement, ForOfStatement, IfStatement, WhileStatement, WithStatement):exit"(node) {
1271
+ let nodesToCheck;
1272
+
1273
+ if (node.type === "IfStatement") {
1274
+ nodesToCheck = [node.consequent];
1275
+ if (node.alternate) {
1276
+ nodesToCheck.push(node.alternate);
1277
+ }
1278
+ } else {
1279
+ nodesToCheck = [node.body];
1280
+ }
1281
+
1282
+ for (const nodeToCheck of nodesToCheck) {
1283
+ const lastToken = sourceCode.getLastToken(nodeToCheck);
1284
+
1285
+ if (astUtils.isSemicolonToken(lastToken)) {
1286
+ const tokenBeforeLast = sourceCode.getTokenBefore(lastToken);
1287
+ const tokenAfterLast = sourceCode.getTokenAfter(lastToken);
1288
+
1289
+ // override indentation of `;` only if its line looks like a semicolon-first style line
1290
+ if (
1291
+ !astUtils.isTokenOnSameLine(tokenBeforeLast, lastToken) &&
1292
+ tokenAfterLast &&
1293
+ astUtils.isTokenOnSameLine(lastToken, tokenAfterLast)
1294
+ ) {
1295
+ offsets.setDesiredOffset(
1296
+ lastToken,
1297
+ sourceCode.getFirstToken(node),
1298
+ 0
1299
+ );
1300
+ }
1301
+ }
1302
+ }
1303
+ },
1304
+
1305
+ ImportDeclaration(node) {
1306
+ if (node.specifiers.some(specifier => specifier.type === "ImportSpecifier")) {
1307
+ const openingCurly = sourceCode.getFirstToken(node, astUtils.isOpeningBraceToken);
1308
+ const closingCurly = sourceCode.getLastToken(node, astUtils.isClosingBraceToken);
1309
+
1310
+ addElementListIndent(node.specifiers.filter(specifier => specifier.type === "ImportSpecifier"), openingCurly, closingCurly, options.ImportDeclaration);
1311
+ }
1312
+
1313
+ const fromToken = sourceCode.getLastToken(node, token => token.type === "Identifier" && token.value === "from");
1314
+ const sourceToken = sourceCode.getLastToken(node, token => token.type === "String");
1315
+ const semiToken = sourceCode.getLastToken(node, token => token.type === "Punctuator" && token.value === ";");
1316
+
1317
+ if (fromToken) {
1318
+ const end = semiToken && semiToken.range[1] === sourceToken.range[1] ? node.range[1] : sourceToken.range[1];
1319
+
1320
+ offsets.setDesiredOffsets([fromToken.range[0], end], sourceCode.getFirstToken(node), 1);
1321
+ }
1322
+ },
1323
+
1324
+ ImportExpression(node) {
1325
+ const openingParen = sourceCode.getFirstToken(node, 1);
1326
+ const closingParen = sourceCode.getLastToken(node);
1327
+
1328
+ parameterParens.add(openingParen);
1329
+ parameterParens.add(closingParen);
1330
+ offsets.setDesiredOffset(openingParen, sourceCode.getTokenBefore(openingParen), 0);
1331
+
1332
+ addElementListIndent([node.source], openingParen, closingParen, options.CallExpression.arguments);
1333
+ },
1334
+
1335
+ "MemberExpression, JSXMemberExpression, MetaProperty"(node) {
1336
+ const object = node.type === "MetaProperty" ? node.meta : node.object;
1337
+ const firstNonObjectToken = sourceCode.getFirstTokenBetween(object, node.property, astUtils.isNotClosingParenToken);
1338
+ const secondNonObjectToken = sourceCode.getTokenAfter(firstNonObjectToken);
1339
+
1340
+ const objectParenCount = sourceCode.getTokensBetween(object, node.property, { filter: astUtils.isClosingParenToken }).length;
1341
+ const firstObjectToken = objectParenCount
1342
+ ? sourceCode.getTokenBefore(object, { skip: objectParenCount - 1 })
1343
+ : sourceCode.getFirstToken(object);
1344
+ const lastObjectToken = sourceCode.getTokenBefore(firstNonObjectToken);
1345
+ const firstPropertyToken = node.computed ? firstNonObjectToken : secondNonObjectToken;
1346
+
1347
+ if (node.computed) {
1348
+
1349
+ // For computed MemberExpressions, match the closing bracket with the opening bracket.
1350
+ offsets.setDesiredOffset(sourceCode.getLastToken(node), firstNonObjectToken, 0);
1351
+ offsets.setDesiredOffsets(node.property.range, firstNonObjectToken, 1);
1352
+ }
1353
+
1354
+ /*
1355
+ * If the object ends on the same line that the property starts, match against the last token
1356
+ * of the object, to ensure that the MemberExpression is not indented.
1357
+ *
1358
+ * Otherwise, match against the first token of the object, e.g.
1359
+ * foo
1360
+ * .bar
1361
+ * .baz // <-- offset by 1 from `foo`
1362
+ */
1363
+ const offsetBase = lastObjectToken.loc.end.line === firstPropertyToken.loc.start.line
1364
+ ? lastObjectToken
1365
+ : firstObjectToken;
1366
+
1367
+ if (typeof options.MemberExpression === "number") {
1368
+
1369
+ // Match the dot (for non-computed properties) or the opening bracket (for computed properties) against the object.
1370
+ offsets.setDesiredOffset(firstNonObjectToken, offsetBase, options.MemberExpression);
1371
+
1372
+ /*
1373
+ * For computed MemberExpressions, match the first token of the property against the opening bracket.
1374
+ * Otherwise, match the first token of the property against the object.
1375
+ */
1376
+ offsets.setDesiredOffset(secondNonObjectToken, node.computed ? firstNonObjectToken : offsetBase, options.MemberExpression);
1377
+ } else {
1378
+
1379
+ // If the MemberExpression option is off, ignore the dot and the first token of the property.
1380
+ offsets.ignoreToken(firstNonObjectToken);
1381
+ offsets.ignoreToken(secondNonObjectToken);
1382
+
1383
+ // To ignore the property indentation, ensure that the property tokens depend on the ignored tokens.
1384
+ offsets.setDesiredOffset(firstNonObjectToken, offsetBase, 0);
1385
+ offsets.setDesiredOffset(secondNonObjectToken, firstNonObjectToken, 0);
1386
+ }
1387
+ },
1388
+
1389
+ NewExpression(node) {
1390
+
1391
+ // Only indent the arguments if the NewExpression has parens (e.g. `new Foo(bar)` or `new Foo()`, but not `new Foo`
1392
+ if (node.arguments.length > 0 ||
1393
+ astUtils.isClosingParenToken(sourceCode.getLastToken(node)) &&
1394
+ astUtils.isOpeningParenToken(sourceCode.getLastToken(node, 1))) {
1395
+ addFunctionCallIndent(node);
1396
+ }
1397
+ },
1398
+
1399
+ Property(node) {
1400
+ if (!node.shorthand && !node.method && node.kind === "init") {
1401
+ const colon = sourceCode.getFirstTokenBetween(node.key, node.value, astUtils.isColonToken);
1402
+
1403
+ offsets.ignoreToken(sourceCode.getTokenAfter(colon));
1404
+ }
1405
+ },
1406
+
1407
+ PropertyDefinition(node) {
1408
+ const firstToken = sourceCode.getFirstToken(node);
1409
+ const maybeSemicolonToken = sourceCode.getLastToken(node);
1410
+ let keyLastToken = null;
1411
+
1412
+ // Indent key.
1413
+ if (node.computed) {
1414
+ const bracketTokenL = sourceCode.getTokenBefore(node.key, astUtils.isOpeningBracketToken);
1415
+ const bracketTokenR = keyLastToken = sourceCode.getTokenAfter(node.key, astUtils.isClosingBracketToken);
1416
+ const keyRange = [bracketTokenL.range[1], bracketTokenR.range[0]];
1417
+
1418
+ if (bracketTokenL !== firstToken) {
1419
+ offsets.setDesiredOffset(bracketTokenL, firstToken, 0);
1420
+ }
1421
+ offsets.setDesiredOffsets(keyRange, bracketTokenL, 1);
1422
+ offsets.setDesiredOffset(bracketTokenR, bracketTokenL, 0);
1423
+ } else {
1424
+ const idToken = keyLastToken = sourceCode.getFirstToken(node.key);
1425
+
1426
+ if (idToken !== firstToken) {
1427
+ offsets.setDesiredOffset(idToken, firstToken, 1);
1428
+ }
1429
+ }
1430
+
1431
+ // Indent initializer.
1432
+ if (node.value) {
1433
+ const eqToken = sourceCode.getTokenBefore(node.value, astUtils.isEqToken);
1434
+ const valueToken = sourceCode.getTokenAfter(eqToken);
1435
+
1436
+ offsets.setDesiredOffset(eqToken, keyLastToken, 1);
1437
+ offsets.setDesiredOffset(valueToken, eqToken, 1);
1438
+ if (astUtils.isSemicolonToken(maybeSemicolonToken)) {
1439
+ offsets.setDesiredOffset(maybeSemicolonToken, eqToken, 1);
1440
+ }
1441
+ } else if (astUtils.isSemicolonToken(maybeSemicolonToken)) {
1442
+ offsets.setDesiredOffset(maybeSemicolonToken, keyLastToken, 1);
1443
+ }
1444
+ },
1445
+
1446
+ StaticBlock(node) {
1447
+ const openingCurly = sourceCode.getFirstToken(node, { skip: 1 }); // skip the `static` token
1448
+ const closingCurly = sourceCode.getLastToken(node);
1449
+
1450
+ addElementListIndent(node.body, openingCurly, closingCurly, options.StaticBlock.body);
1451
+ },
1452
+
1453
+ SwitchStatement(node) {
1454
+ const openingCurly = sourceCode.getTokenAfter(node.discriminant, astUtils.isOpeningBraceToken);
1455
+ const closingCurly = sourceCode.getLastToken(node);
1456
+
1457
+ offsets.setDesiredOffsets([openingCurly.range[1], closingCurly.range[0]], openingCurly, options.SwitchCase);
1458
+
1459
+ if (node.cases.length) {
1460
+ sourceCode.getTokensBetween(
1461
+ node.cases[node.cases.length - 1],
1462
+ closingCurly,
1463
+ { includeComments: true, filter: astUtils.isCommentToken }
1464
+ ).forEach(token => offsets.ignoreToken(token));
1465
+ }
1466
+ },
1467
+
1468
+ SwitchCase(node) {
1469
+ if (!(node.consequent.length === 1 && node.consequent[0].type === "BlockStatement")) {
1470
+ const caseKeyword = sourceCode.getFirstToken(node);
1471
+ const tokenAfterCurrentCase = sourceCode.getTokenAfter(node);
1472
+
1473
+ offsets.setDesiredOffsets([caseKeyword.range[1], tokenAfterCurrentCase.range[0]], caseKeyword, 1);
1474
+ }
1475
+ },
1476
+
1477
+ TemplateLiteral(node) {
1478
+ node.expressions.forEach((expression, index) => {
1479
+ const previousQuasi = node.quasis[index];
1480
+ const nextQuasi = node.quasis[index + 1];
1481
+ const tokenToAlignFrom = previousQuasi.loc.start.line === previousQuasi.loc.end.line
1482
+ ? sourceCode.getFirstToken(previousQuasi)
1483
+ : null;
1484
+
1485
+ offsets.setDesiredOffsets([previousQuasi.range[1], nextQuasi.range[0]], tokenToAlignFrom, 1);
1486
+ offsets.setDesiredOffset(sourceCode.getFirstToken(nextQuasi), tokenToAlignFrom, 0);
1487
+ });
1488
+ },
1489
+
1490
+ VariableDeclaration(node) {
1491
+ let variableIndent = Object.prototype.hasOwnProperty.call(options.VariableDeclarator, node.kind)
1492
+ ? options.VariableDeclarator[node.kind]
1493
+ : DEFAULT_VARIABLE_INDENT;
1494
+
1495
+ const firstToken = sourceCode.getFirstToken(node),
1496
+ lastToken = sourceCode.getLastToken(node);
1497
+
1498
+ if (options.VariableDeclarator[node.kind] === "first") {
1499
+ if (node.declarations.length > 1) {
1500
+ addElementListIndent(
1501
+ node.declarations,
1502
+ firstToken,
1503
+ lastToken,
1504
+ "first"
1505
+ );
1506
+ return;
1507
+ }
1508
+
1509
+ variableIndent = DEFAULT_VARIABLE_INDENT;
1510
+ }
1511
+
1512
+ if (node.declarations[node.declarations.length - 1].loc.start.line > node.loc.start.line) {
1513
+
1514
+ /*
1515
+ * VariableDeclarator indentation is a bit different from other forms of indentation, in that the
1516
+ * indentation of an opening bracket sometimes won't match that of a closing bracket. For example,
1517
+ * the following indentations are correct:
1518
+ *
1519
+ * var foo = {
1520
+ * ok: true
1521
+ * };
1522
+ *
1523
+ * var foo = {
1524
+ * ok: true,
1525
+ * },
1526
+ * bar = 1;
1527
+ *
1528
+ * Account for when exiting the AST (after indentations have already been set for the nodes in
1529
+ * the declaration) by manually increasing the indentation level of the tokens in this declarator
1530
+ * on the same line as the start of the declaration, provided that there are declarators that
1531
+ * follow this one.
1532
+ */
1533
+ offsets.setDesiredOffsets(node.range, firstToken, variableIndent, true);
1534
+ } else {
1535
+ offsets.setDesiredOffsets(node.range, firstToken, variableIndent);
1536
+ }
1537
+
1538
+ if (astUtils.isSemicolonToken(lastToken)) {
1539
+ offsets.ignoreToken(lastToken);
1540
+ }
1541
+ },
1542
+
1543
+ VariableDeclarator(node) {
1544
+ if (node.init) {
1545
+ const equalOperator = sourceCode.getTokenBefore(node.init, astUtils.isNotOpeningParenToken);
1546
+ const tokenAfterOperator = sourceCode.getTokenAfter(equalOperator);
1547
+
1548
+ offsets.ignoreToken(equalOperator);
1549
+ offsets.ignoreToken(tokenAfterOperator);
1550
+ offsets.setDesiredOffsets([tokenAfterOperator.range[0], node.range[1]], equalOperator, 1);
1551
+ offsets.setDesiredOffset(equalOperator, sourceCode.getLastToken(node.id), 0);
1552
+ }
1553
+ },
1554
+
1555
+ "JSXAttribute[value]"(node) {
1556
+ const equalsToken = sourceCode.getFirstTokenBetween(node.name, node.value, token => token.type === "Punctuator" && token.value === "=");
1557
+
1558
+ offsets.setDesiredOffsets([equalsToken.range[0], node.value.range[1]], sourceCode.getFirstToken(node.name), 1);
1559
+ },
1560
+
1561
+ JSXElement(node) {
1562
+ if (node.closingElement) {
1563
+ addElementListIndent(node.children, sourceCode.getFirstToken(node.openingElement), sourceCode.getFirstToken(node.closingElement), 1);
1564
+ }
1565
+ },
1566
+
1567
+ JSXOpeningElement(node) {
1568
+ const firstToken = sourceCode.getFirstToken(node);
1569
+ let closingToken;
1570
+
1571
+ if (node.selfClosing) {
1572
+ closingToken = sourceCode.getLastToken(node, { skip: 1 });
1573
+ offsets.setDesiredOffset(sourceCode.getLastToken(node), closingToken, 0);
1574
+ } else {
1575
+ closingToken = sourceCode.getLastToken(node);
1576
+ }
1577
+ offsets.setDesiredOffsets(node.name.range, sourceCode.getFirstToken(node));
1578
+ addElementListIndent(node.attributes, firstToken, closingToken, 1);
1579
+ },
1580
+
1581
+ JSXClosingElement(node) {
1582
+ const firstToken = sourceCode.getFirstToken(node);
1583
+
1584
+ offsets.setDesiredOffsets(node.name.range, firstToken, 1);
1585
+ },
1586
+
1587
+ JSXFragment(node) {
1588
+ const firstOpeningToken = sourceCode.getFirstToken(node.openingFragment);
1589
+ const firstClosingToken = sourceCode.getFirstToken(node.closingFragment);
1590
+
1591
+ addElementListIndent(node.children, firstOpeningToken, firstClosingToken, 1);
1592
+ },
1593
+
1594
+ JSXOpeningFragment(node) {
1595
+ const firstToken = sourceCode.getFirstToken(node);
1596
+ const closingToken = sourceCode.getLastToken(node);
1597
+
1598
+ offsets.setDesiredOffsets(node.range, firstToken, 1);
1599
+ offsets.matchOffsetOf(firstToken, closingToken);
1600
+ },
1601
+
1602
+ JSXClosingFragment(node) {
1603
+ const firstToken = sourceCode.getFirstToken(node);
1604
+ const slashToken = sourceCode.getLastToken(node, { skip: 1 });
1605
+ const closingToken = sourceCode.getLastToken(node);
1606
+ const tokenToMatch = astUtils.isTokenOnSameLine(slashToken, closingToken) ? slashToken : closingToken;
1607
+
1608
+ offsets.setDesiredOffsets(node.range, firstToken, 1);
1609
+ offsets.matchOffsetOf(firstToken, tokenToMatch);
1610
+ },
1611
+
1612
+ JSXExpressionContainer(node) {
1613
+ const openingCurly = sourceCode.getFirstToken(node);
1614
+ const closingCurly = sourceCode.getLastToken(node);
1615
+
1616
+ offsets.setDesiredOffsets(
1617
+ [openingCurly.range[1], closingCurly.range[0]],
1618
+ openingCurly,
1619
+ 1
1620
+ );
1621
+ },
1622
+
1623
+ JSXSpreadAttribute(node) {
1624
+ const openingCurly = sourceCode.getFirstToken(node);
1625
+ const closingCurly = sourceCode.getLastToken(node);
1626
+
1627
+ offsets.setDesiredOffsets(
1628
+ [openingCurly.range[1], closingCurly.range[0]],
1629
+ openingCurly,
1630
+ 1
1631
+ );
1632
+ },
1633
+
1634
+ "*"(node) {
1635
+ const firstToken = sourceCode.getFirstToken(node);
1636
+
1637
+ // Ensure that the children of every node are indented at least as much as the first token.
1638
+ if (firstToken && !ignoredNodeFirstTokens.has(firstToken)) {
1639
+ offsets.setDesiredOffsets(node.range, firstToken, 0);
1640
+ }
1641
+ }
1642
+ };
1643
+
1644
+ const listenerCallQueue = [];
1645
+
1646
+ /*
1647
+ * To ignore the indentation of a node:
1648
+ * 1. Don't call the node's listener when entering it (if it has a listener)
1649
+ * 2. Don't set any offsets against the first token of the node.
1650
+ * 3. Call `ignoreNode` on the node sometime after exiting it and before validating offsets.
1651
+ */
1652
+ const offsetListeners = {};
1653
+
1654
+ for (const [selector, listener] of Object.entries(baseOffsetListeners)) {
1655
+
1656
+ /*
1657
+ * Offset listener calls are deferred until traversal is finished, and are called as
1658
+ * part of the final `Program:exit` listener. This is necessary because a node might
1659
+ * be matched by multiple selectors.
1660
+ *
1661
+ * Example: Suppose there is an offset listener for `Identifier`, and the user has
1662
+ * specified in configuration that `MemberExpression > Identifier` should be ignored.
1663
+ * Due to selector specificity rules, the `Identifier` listener will get called first. However,
1664
+ * if a given Identifier node is supposed to be ignored, then the `Identifier` offset listener
1665
+ * should not have been called at all. Without doing extra selector matching, we don't know
1666
+ * whether the Identifier matches the `MemberExpression > Identifier` selector until the
1667
+ * `MemberExpression > Identifier` listener is called.
1668
+ *
1669
+ * To avoid this, the `Identifier` listener isn't called until traversal finishes and all
1670
+ * ignored nodes are known.
1671
+ */
1672
+ offsetListeners[selector] = node => listenerCallQueue.push({ listener, node });
1673
+ }
1674
+
1675
+ // For each ignored node selector, set up a listener to collect it into the `ignoredNodes` set.
1676
+ const ignoredNodes = new Set();
1677
+
1678
+ /**
1679
+ * Ignores a node
1680
+ * @param {ASTNode} node The node to ignore
1681
+ * @returns {void}
1682
+ */
1683
+ function addToIgnoredNodes(node) {
1684
+ ignoredNodes.add(node);
1685
+ ignoredNodeFirstTokens.add(sourceCode.getFirstToken(node));
1686
+ }
1687
+
1688
+ const ignoredNodeListeners = options.ignoredNodes.reduce(
1689
+ (listeners, ignoredSelector) => Object.assign(listeners, { [ignoredSelector]: addToIgnoredNodes }),
1690
+ {}
1691
+ );
1692
+
1693
+ /*
1694
+ * Join the listeners, and add a listener to verify that all tokens actually have the correct indentation
1695
+ * at the end.
1696
+ *
1697
+ * Using Object.assign will cause some offset listeners to be overwritten if the same selector also appears
1698
+ * in `ignoredNodeListeners`. This isn't a problem because all of the matching nodes will be ignored,
1699
+ * so those listeners wouldn't be called anyway.
1700
+ */
1701
+ return Object.assign(
1702
+ offsetListeners,
1703
+ ignoredNodeListeners,
1704
+ {
1705
+ "*:exit"(node) {
1706
+
1707
+ // If a node's type is nonstandard, we can't tell how its children should be offset, so ignore it.
1708
+ if (!KNOWN_NODES.has(node.type)) {
1709
+ addToIgnoredNodes(node);
1710
+ }
1711
+ },
1712
+ "Program:exit"() {
1713
+
1714
+ // If ignoreComments option is enabled, ignore all comment tokens.
1715
+ if (options.ignoreComments) {
1716
+ sourceCode.getAllComments()
1717
+ .forEach(comment => offsets.ignoreToken(comment));
1718
+ }
1719
+
1720
+ // Invoke the queued offset listeners for the nodes that aren't ignored.
1721
+ for (let i = 0; i < listenerCallQueue.length; i++) {
1722
+ const nodeInfo = listenerCallQueue[i];
1723
+
1724
+ if (!ignoredNodes.has(nodeInfo.node)) {
1725
+ nodeInfo.listener(nodeInfo.node);
1726
+ }
1727
+ }
1728
+
1729
+ // Update the offsets for ignored nodes to prevent their child tokens from being reported.
1730
+ ignoredNodes.forEach(ignoreNode);
1731
+
1732
+ addParensIndent(sourceCode.ast.tokens);
1733
+
1734
+ /*
1735
+ * Create a Map from (tokenOrComment) => (precedingToken).
1736
+ * This is necessary because sourceCode.getTokenBefore does not handle a comment as an argument correctly.
1737
+ */
1738
+ const precedingTokens = new WeakMap();
1739
+
1740
+ for (let i = 0; i < sourceCode.ast.comments.length; i++) {
1741
+ const comment = sourceCode.ast.comments[i];
1742
+
1743
+ const tokenOrCommentBefore = sourceCode.getTokenBefore(comment, { includeComments: true });
1744
+ const hasToken = precedingTokens.has(tokenOrCommentBefore) ? precedingTokens.get(tokenOrCommentBefore) : tokenOrCommentBefore;
1745
+
1746
+ precedingTokens.set(comment, hasToken);
1747
+ }
1748
+
1749
+ for (let i = 1; i < sourceCode.lines.length + 1; i++) {
1750
+
1751
+ if (!tokenInfo.firstTokensByLineNumber.has(i)) {
1752
+
1753
+ // Don't check indentation on blank lines
1754
+ continue;
1755
+ }
1756
+
1757
+ const firstTokenOfLine = tokenInfo.firstTokensByLineNumber.get(i);
1758
+
1759
+ if (firstTokenOfLine.loc.start.line !== i) {
1760
+
1761
+ // Don't check the indentation of multi-line tokens (e.g. template literals or block comments) twice.
1762
+ continue;
1763
+ }
1764
+
1765
+ if (astUtils.isCommentToken(firstTokenOfLine)) {
1766
+ const tokenBefore = precedingTokens.get(firstTokenOfLine);
1767
+ const tokenAfter = tokenBefore ? sourceCode.getTokenAfter(tokenBefore) : sourceCode.ast.tokens[0];
1768
+ const mayAlignWithBefore = tokenBefore && !hasBlankLinesBetween(tokenBefore, firstTokenOfLine);
1769
+ const mayAlignWithAfter = tokenAfter && !hasBlankLinesBetween(firstTokenOfLine, tokenAfter);
1770
+
1771
+ /*
1772
+ * If a comment precedes a line that begins with a semicolon token, align to that token, i.e.
1773
+ *
1774
+ * let foo
1775
+ * // comment
1776
+ * ;(async () => {})()
1777
+ */
1778
+ if (tokenAfter && astUtils.isSemicolonToken(tokenAfter) && !astUtils.isTokenOnSameLine(firstTokenOfLine, tokenAfter)) {
1779
+ offsets.setDesiredOffset(firstTokenOfLine, tokenAfter, 0);
1780
+ }
1781
+
1782
+ // If a comment matches the expected indentation of the token immediately before or after, don't report it.
1783
+ if (
1784
+ mayAlignWithBefore && validateTokenIndent(firstTokenOfLine, offsets.getDesiredIndent(tokenBefore)) ||
1785
+ mayAlignWithAfter && validateTokenIndent(firstTokenOfLine, offsets.getDesiredIndent(tokenAfter))
1786
+ ) {
1787
+ continue;
1788
+ }
1789
+ }
1790
+
1791
+ // If the token matches the expected indentation, don't report it.
1792
+ if (validateTokenIndent(firstTokenOfLine, offsets.getDesiredIndent(firstTokenOfLine))) {
1793
+ continue;
1794
+ }
1795
+
1796
+ // Otherwise, report the token/comment.
1797
+ report(firstTokenOfLine, offsets.getDesiredIndent(firstTokenOfLine));
1798
+ }
1799
+ }
1800
+ }
1801
+ );
1802
+ }
1803
+ };