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,2282 @@
1
+ /**
2
+ * @fileoverview Common utils for AST.
3
+ * @author Gyandeep Singh
4
+ */
5
+
6
+ "use strict";
7
+
8
+ //------------------------------------------------------------------------------
9
+ // Requirements
10
+ //------------------------------------------------------------------------------
11
+
12
+ const { KEYS: eslintVisitorKeys } = require("eslint-visitor-keys");
13
+ const esutils = require("esutils");
14
+ const espree = require("espree");
15
+ const escapeRegExp = require("escape-string-regexp");
16
+ const {
17
+ breakableTypePattern,
18
+ createGlobalLinebreakMatcher,
19
+ lineBreakPattern,
20
+ shebangPattern
21
+ } = require("../../shared/ast-utils");
22
+
23
+ //------------------------------------------------------------------------------
24
+ // Helpers
25
+ //------------------------------------------------------------------------------
26
+
27
+ const anyFunctionPattern = /^(?:Function(?:Declaration|Expression)|ArrowFunctionExpression)$/u;
28
+ const anyLoopPattern = /^(?:DoWhile|For|ForIn|ForOf|While)Statement$/u;
29
+ const arrayMethodWithThisArgPattern = /^(?:every|filter|find(?:Last)?(?:Index)?|flatMap|forEach|map|some)$/u;
30
+ const arrayOrTypedArrayPattern = /Array$/u;
31
+ const bindOrCallOrApplyPattern = /^(?:bind|call|apply)$/u;
32
+ const thisTagPattern = /^[\s*]*@this/mu;
33
+
34
+
35
+ const COMMENTS_IGNORE_PATTERN = /^\s*(?:eslint|jshint\s+|jslint\s+|istanbul\s+|globals?\s+|exported\s+|jscs)/u;
36
+ const ESLINT_DIRECTIVE_PATTERN = /^(?:eslint[- ]|(?:globals?|exported) )/u;
37
+ const LINEBREAKS = new Set(["\r\n", "\r", "\n", "\u2028", "\u2029"]);
38
+
39
+ // A set of node types that can contain a list of statements
40
+ const STATEMENT_LIST_PARENTS = new Set(["Program", "BlockStatement", "StaticBlock", "SwitchCase"]);
41
+
42
+ const DECIMAL_INTEGER_PATTERN = /^(?:0|0[0-7]*[89]\d*|[1-9](?:_?\d)*)$/u;
43
+
44
+ // Tests the presence of at least one LegacyOctalEscapeSequence or NonOctalDecimalEscapeSequence in a raw string
45
+ const OCTAL_OR_NON_OCTAL_DECIMAL_ESCAPE_PATTERN = /^(?:[^\\]|\\.)*\\(?:[1-9]|0[0-9])/su;
46
+
47
+ const LOGICAL_ASSIGNMENT_OPERATORS = new Set(["&&=", "||=", "??="]);
48
+
49
+ /**
50
+ * Checks reference if is non initializer and writable.
51
+ * @param {Reference} reference A reference to check.
52
+ * @param {int} index The index of the reference in the references.
53
+ * @param {Reference[]} references The array that the reference belongs to.
54
+ * @returns {boolean} Success/Failure
55
+ * @private
56
+ */
57
+ function isModifyingReference(reference, index, references) {
58
+ const identifier = reference.identifier;
59
+
60
+ /*
61
+ * Destructuring assignments can have multiple default value, so
62
+ * possibly there are multiple writeable references for the same
63
+ * identifier.
64
+ */
65
+ const modifyingDifferentIdentifier = index === 0 ||
66
+ references[index - 1].identifier !== identifier;
67
+
68
+ return (identifier &&
69
+ reference.init === false &&
70
+ reference.isWrite() &&
71
+ modifyingDifferentIdentifier
72
+ );
73
+ }
74
+
75
+ /**
76
+ * Checks whether the given string starts with uppercase or not.
77
+ * @param {string} s The string to check.
78
+ * @returns {boolean} `true` if the string starts with uppercase.
79
+ */
80
+ function startsWithUpperCase(s) {
81
+ return s[0] !== s[0].toLocaleLowerCase();
82
+ }
83
+
84
+ /**
85
+ * Checks whether or not a node is a constructor.
86
+ * @param {ASTNode} node A function node to check.
87
+ * @returns {boolean} Whether or not a node is a constructor.
88
+ */
89
+ function isES5Constructor(node) {
90
+ return (node.id && startsWithUpperCase(node.id.name));
91
+ }
92
+
93
+ /**
94
+ * Finds a function node from ancestors of a node.
95
+ * @param {ASTNode} node A start node to find.
96
+ * @returns {Node|null} A found function node.
97
+ */
98
+ function getUpperFunction(node) {
99
+ for (let currentNode = node; currentNode; currentNode = currentNode.parent) {
100
+ if (anyFunctionPattern.test(currentNode.type)) {
101
+ return currentNode;
102
+ }
103
+ }
104
+ return null;
105
+ }
106
+
107
+ /**
108
+ * Checks whether a given node is a function node or not.
109
+ * The following types are function nodes:
110
+ *
111
+ * - ArrowFunctionExpression
112
+ * - FunctionDeclaration
113
+ * - FunctionExpression
114
+ * @param {ASTNode|null} node A node to check.
115
+ * @returns {boolean} `true` if the node is a function node.
116
+ */
117
+ function isFunction(node) {
118
+ return Boolean(node && anyFunctionPattern.test(node.type));
119
+ }
120
+
121
+ /**
122
+ * Checks whether a given node is a loop node or not.
123
+ * The following types are loop nodes:
124
+ *
125
+ * - DoWhileStatement
126
+ * - ForInStatement
127
+ * - ForOfStatement
128
+ * - ForStatement
129
+ * - WhileStatement
130
+ * @param {ASTNode|null} node A node to check.
131
+ * @returns {boolean} `true` if the node is a loop node.
132
+ */
133
+ function isLoop(node) {
134
+ return Boolean(node && anyLoopPattern.test(node.type));
135
+ }
136
+
137
+ /**
138
+ * Checks whether the given node is in a loop or not.
139
+ * @param {ASTNode} node The node to check.
140
+ * @returns {boolean} `true` if the node is in a loop.
141
+ */
142
+ function isInLoop(node) {
143
+ for (let currentNode = node; currentNode && !isFunction(currentNode); currentNode = currentNode.parent) {
144
+ if (isLoop(currentNode)) {
145
+ return true;
146
+ }
147
+ }
148
+
149
+ return false;
150
+ }
151
+
152
+ /**
153
+ * Determines whether the given node is a `null` literal.
154
+ * @param {ASTNode} node The node to check
155
+ * @returns {boolean} `true` if the node is a `null` literal
156
+ */
157
+ function isNullLiteral(node) {
158
+
159
+ /*
160
+ * Checking `node.value === null` does not guarantee that a literal is a null literal.
161
+ * When parsing values that cannot be represented in the current environment (e.g. unicode
162
+ * regexes in Node 4), `node.value` is set to `null` because it wouldn't be possible to
163
+ * set `node.value` to a unicode regex. To make sure a literal is actually `null`, check
164
+ * `node.regex` instead. Also see: https://github.com/eslint/eslint/issues/8020
165
+ */
166
+ return node.type === "Literal" && node.value === null && !node.regex && !node.bigint;
167
+ }
168
+
169
+ /**
170
+ * Checks whether or not a node is `null` or `undefined`.
171
+ * @param {ASTNode} node A node to check.
172
+ * @returns {boolean} Whether or not the node is a `null` or `undefined`.
173
+ * @public
174
+ */
175
+ function isNullOrUndefined(node) {
176
+ return (
177
+ isNullLiteral(node) ||
178
+ (node.type === "Identifier" && node.name === "undefined") ||
179
+ (node.type === "UnaryExpression" && node.operator === "void")
180
+ );
181
+ }
182
+
183
+ /**
184
+ * Checks whether or not a node is callee.
185
+ * @param {ASTNode} node A node to check.
186
+ * @returns {boolean} Whether or not the node is callee.
187
+ */
188
+ function isCallee(node) {
189
+ return node.parent.type === "CallExpression" && node.parent.callee === node;
190
+ }
191
+
192
+ /**
193
+ * Returns the result of the string conversion applied to the evaluated value of the given expression node,
194
+ * if it can be determined statically.
195
+ *
196
+ * This function returns a `string` value for all `Literal` nodes and simple `TemplateLiteral` nodes only.
197
+ * In all other cases, this function returns `null`.
198
+ * @param {ASTNode} node Expression node.
199
+ * @returns {string|null} String value if it can be determined. Otherwise, `null`.
200
+ */
201
+ function getStaticStringValue(node) {
202
+ switch (node.type) {
203
+ case "Literal":
204
+ if (node.value === null) {
205
+ if (isNullLiteral(node)) {
206
+ return String(node.value); // "null"
207
+ }
208
+ if (node.regex) {
209
+ return `/${node.regex.pattern}/${node.regex.flags}`;
210
+ }
211
+ if (node.bigint) {
212
+ return node.bigint;
213
+ }
214
+
215
+ // Otherwise, this is an unknown literal. The function will return null.
216
+
217
+ } else {
218
+ return String(node.value);
219
+ }
220
+ break;
221
+ case "TemplateLiteral":
222
+ if (node.expressions.length === 0 && node.quasis.length === 1) {
223
+ return node.quasis[0].value.cooked;
224
+ }
225
+ break;
226
+
227
+ // no default
228
+ }
229
+
230
+ return null;
231
+ }
232
+
233
+ /**
234
+ * Gets the property name of a given node.
235
+ * The node can be a MemberExpression, a Property, or a MethodDefinition.
236
+ *
237
+ * If the name is dynamic, this returns `null`.
238
+ *
239
+ * For examples:
240
+ *
241
+ * a.b // => "b"
242
+ * a["b"] // => "b"
243
+ * a['b'] // => "b"
244
+ * a[`b`] // => "b"
245
+ * a[100] // => "100"
246
+ * a[b] // => null
247
+ * a["a" + "b"] // => null
248
+ * a[tag`b`] // => null
249
+ * a[`${b}`] // => null
250
+ *
251
+ * let a = {b: 1} // => "b"
252
+ * let a = {["b"]: 1} // => "b"
253
+ * let a = {['b']: 1} // => "b"
254
+ * let a = {[`b`]: 1} // => "b"
255
+ * let a = {[100]: 1} // => "100"
256
+ * let a = {[b]: 1} // => null
257
+ * let a = {["a" + "b"]: 1} // => null
258
+ * let a = {[tag`b`]: 1} // => null
259
+ * let a = {[`${b}`]: 1} // => null
260
+ * @param {ASTNode} node The node to get.
261
+ * @returns {string|null} The property name if static. Otherwise, null.
262
+ */
263
+ function getStaticPropertyName(node) {
264
+ let prop;
265
+
266
+ switch (node && node.type) {
267
+ case "ChainExpression":
268
+ return getStaticPropertyName(node.expression);
269
+
270
+ case "Property":
271
+ case "PropertyDefinition":
272
+ case "MethodDefinition":
273
+ prop = node.key;
274
+ break;
275
+
276
+ case "MemberExpression":
277
+ prop = node.property;
278
+ break;
279
+
280
+ // no default
281
+ }
282
+
283
+ if (prop) {
284
+ if (prop.type === "Identifier" && !node.computed) {
285
+ return prop.name;
286
+ }
287
+
288
+ return getStaticStringValue(prop);
289
+ }
290
+
291
+ return null;
292
+ }
293
+
294
+ /**
295
+ * Retrieve `ChainExpression#expression` value if the given node a `ChainExpression` node. Otherwise, pass through it.
296
+ * @param {ASTNode} node The node to address.
297
+ * @returns {ASTNode} The `ChainExpression#expression` value if the node is a `ChainExpression` node. Otherwise, the node.
298
+ */
299
+ function skipChainExpression(node) {
300
+ return node && node.type === "ChainExpression" ? node.expression : node;
301
+ }
302
+
303
+ /**
304
+ * Check if the `actual` is an expected value.
305
+ * @param {string} actual The string value to check.
306
+ * @param {string | RegExp} expected The expected string value or pattern.
307
+ * @returns {boolean} `true` if the `actual` is an expected value.
308
+ */
309
+ function checkText(actual, expected) {
310
+ return typeof expected === "string"
311
+ ? actual === expected
312
+ : expected.test(actual);
313
+ }
314
+
315
+ /**
316
+ * Check if a given node is an Identifier node with a given name.
317
+ * @param {ASTNode} node The node to check.
318
+ * @param {string | RegExp} name The expected name or the expected pattern of the object name.
319
+ * @returns {boolean} `true` if the node is an Identifier node with the name.
320
+ */
321
+ function isSpecificId(node, name) {
322
+ return node.type === "Identifier" && checkText(node.name, name);
323
+ }
324
+
325
+ /**
326
+ * Check if a given node is member access with a given object name and property name pair.
327
+ * This is regardless of optional or not.
328
+ * @param {ASTNode} node The node to check.
329
+ * @param {string | RegExp | null} objectName The expected name or the expected pattern of the object name. If this is nullish, this method doesn't check object.
330
+ * @param {string | RegExp | null} propertyName The expected name or the expected pattern of the property name. If this is nullish, this method doesn't check property.
331
+ * @returns {boolean} `true` if the node is member access with the object name and property name pair.
332
+ * The node is a `MemberExpression` or `ChainExpression`.
333
+ */
334
+ function isSpecificMemberAccess(node, objectName, propertyName) {
335
+ const checkNode = skipChainExpression(node);
336
+
337
+ if (checkNode.type !== "MemberExpression") {
338
+ return false;
339
+ }
340
+
341
+ if (objectName && !isSpecificId(checkNode.object, objectName)) {
342
+ return false;
343
+ }
344
+
345
+ if (propertyName) {
346
+ const actualPropertyName = getStaticPropertyName(checkNode);
347
+
348
+ if (typeof actualPropertyName !== "string" || !checkText(actualPropertyName, propertyName)) {
349
+ return false;
350
+ }
351
+ }
352
+
353
+ return true;
354
+ }
355
+
356
+ /**
357
+ * Check if two literal nodes are the same value.
358
+ * @param {ASTNode} left The Literal node to compare.
359
+ * @param {ASTNode} right The other Literal node to compare.
360
+ * @returns {boolean} `true` if the two literal nodes are the same value.
361
+ */
362
+ function equalLiteralValue(left, right) {
363
+
364
+ // RegExp literal.
365
+ if (left.regex || right.regex) {
366
+ return Boolean(
367
+ left.regex &&
368
+ right.regex &&
369
+ left.regex.pattern === right.regex.pattern &&
370
+ left.regex.flags === right.regex.flags
371
+ );
372
+ }
373
+
374
+ // BigInt literal.
375
+ if (left.bigint || right.bigint) {
376
+ return left.bigint === right.bigint;
377
+ }
378
+
379
+ return left.value === right.value;
380
+ }
381
+
382
+ /**
383
+ * Check if two expressions reference the same value. For example:
384
+ * a = a
385
+ * a.b = a.b
386
+ * a[0] = a[0]
387
+ * a['b'] = a['b']
388
+ * @param {ASTNode} left The left side of the comparison.
389
+ * @param {ASTNode} right The right side of the comparison.
390
+ * @param {boolean} [disableStaticComputedKey] Don't address `a.b` and `a["b"]` are the same if `true`. For backward compatibility.
391
+ * @returns {boolean} `true` if both sides match and reference the same value.
392
+ */
393
+ function isSameReference(left, right, disableStaticComputedKey = false) {
394
+ if (left.type !== right.type) {
395
+
396
+ // Handle `a.b` and `a?.b` are samely.
397
+ if (left.type === "ChainExpression") {
398
+ return isSameReference(left.expression, right, disableStaticComputedKey);
399
+ }
400
+ if (right.type === "ChainExpression") {
401
+ return isSameReference(left, right.expression, disableStaticComputedKey);
402
+ }
403
+
404
+ return false;
405
+ }
406
+
407
+ switch (left.type) {
408
+ case "Super":
409
+ case "ThisExpression":
410
+ return true;
411
+
412
+ case "Identifier":
413
+ case "PrivateIdentifier":
414
+ return left.name === right.name;
415
+ case "Literal":
416
+ return equalLiteralValue(left, right);
417
+
418
+ case "ChainExpression":
419
+ return isSameReference(left.expression, right.expression, disableStaticComputedKey);
420
+
421
+ case "MemberExpression": {
422
+ if (!disableStaticComputedKey) {
423
+ const nameA = getStaticPropertyName(left);
424
+
425
+ // x.y = x["y"]
426
+ if (nameA !== null) {
427
+ return (
428
+ isSameReference(left.object, right.object, disableStaticComputedKey) &&
429
+ nameA === getStaticPropertyName(right)
430
+ );
431
+ }
432
+ }
433
+
434
+ /*
435
+ * x[0] = x[0]
436
+ * x[y] = x[y]
437
+ * x.y = x.y
438
+ */
439
+ return (
440
+ left.computed === right.computed &&
441
+ isSameReference(left.object, right.object, disableStaticComputedKey) &&
442
+ isSameReference(left.property, right.property, disableStaticComputedKey)
443
+ );
444
+ }
445
+
446
+ default:
447
+ return false;
448
+ }
449
+ }
450
+
451
+ /**
452
+ * Checks whether or not a node is `Reflect.apply`.
453
+ * @param {ASTNode} node A node to check.
454
+ * @returns {boolean} Whether or not the node is a `Reflect.apply`.
455
+ */
456
+ function isReflectApply(node) {
457
+ return isSpecificMemberAccess(node, "Reflect", "apply");
458
+ }
459
+
460
+ /**
461
+ * Checks whether or not a node is `Array.from`.
462
+ * @param {ASTNode} node A node to check.
463
+ * @returns {boolean} Whether or not the node is a `Array.from`.
464
+ */
465
+ function isArrayFromMethod(node) {
466
+ return isSpecificMemberAccess(node, arrayOrTypedArrayPattern, "from");
467
+ }
468
+
469
+ /**
470
+ * Checks whether or not a node is a method which expects a function as a first argument, and `thisArg` as a second argument.
471
+ * @param {ASTNode} node A node to check.
472
+ * @returns {boolean} Whether or not the node is a method which expects a function as a first argument, and `thisArg` as a second argument.
473
+ */
474
+ function isMethodWhichHasThisArg(node) {
475
+ return isSpecificMemberAccess(node, null, arrayMethodWithThisArgPattern);
476
+ }
477
+
478
+ /**
479
+ * Creates the negate function of the given function.
480
+ * @param {Function} f The function to negate.
481
+ * @returns {Function} Negated function.
482
+ */
483
+ function negate(f) {
484
+ return token => !f(token);
485
+ }
486
+
487
+ /**
488
+ * Checks whether or not a node has a `@this` tag in its comments.
489
+ * @param {ASTNode} node A node to check.
490
+ * @param {SourceCode} sourceCode A SourceCode instance to get comments.
491
+ * @returns {boolean} Whether or not the node has a `@this` tag in its comments.
492
+ */
493
+ function hasJSDocThisTag(node, sourceCode) {
494
+ const jsdocComment = sourceCode.getJSDocComment(node);
495
+
496
+ if (jsdocComment && thisTagPattern.test(jsdocComment.value)) {
497
+ return true;
498
+ }
499
+
500
+ // Checks `@this` in its leading comments for callbacks,
501
+ // because callbacks don't have its JSDoc comment.
502
+ // e.g.
503
+ // sinon.test(/* @this sinon.Sandbox */function() { this.spy(); });
504
+ return sourceCode.getCommentsBefore(node).some(comment => thisTagPattern.test(comment.value));
505
+ }
506
+
507
+ /**
508
+ * Determines if a node is surrounded by parentheses.
509
+ * @param {SourceCode} sourceCode The ESLint source code object
510
+ * @param {ASTNode} node The node to be checked.
511
+ * @returns {boolean} True if the node is parenthesised.
512
+ * @private
513
+ */
514
+ function isParenthesised(sourceCode, node) {
515
+ const previousToken = sourceCode.getTokenBefore(node),
516
+ nextToken = sourceCode.getTokenAfter(node);
517
+
518
+ return Boolean(previousToken && nextToken) &&
519
+ previousToken.value === "(" && previousToken.range[1] <= node.range[0] &&
520
+ nextToken.value === ")" && nextToken.range[0] >= node.range[1];
521
+ }
522
+
523
+ /**
524
+ * Checks if the given token is a `=` token or not.
525
+ * @param {Token} token The token to check.
526
+ * @returns {boolean} `true` if the token is a `=` token.
527
+ */
528
+ function isEqToken(token) {
529
+ return token.value === "=" && token.type === "Punctuator";
530
+ }
531
+
532
+ /**
533
+ * Checks if the given token is an arrow token or not.
534
+ * @param {Token} token The token to check.
535
+ * @returns {boolean} `true` if the token is an arrow token.
536
+ */
537
+ function isArrowToken(token) {
538
+ return token.value === "=>" && token.type === "Punctuator";
539
+ }
540
+
541
+ /**
542
+ * Checks if the given token is a comma token or not.
543
+ * @param {Token} token The token to check.
544
+ * @returns {boolean} `true` if the token is a comma token.
545
+ */
546
+ function isCommaToken(token) {
547
+ return token.value === "," && token.type === "Punctuator";
548
+ }
549
+
550
+ /**
551
+ * Checks if the given token is a dot token or not.
552
+ * @param {Token} token The token to check.
553
+ * @returns {boolean} `true` if the token is a dot token.
554
+ */
555
+ function isDotToken(token) {
556
+ return token.value === "." && token.type === "Punctuator";
557
+ }
558
+
559
+ /**
560
+ * Checks if the given token is a `?.` token or not.
561
+ * @param {Token} token The token to check.
562
+ * @returns {boolean} `true` if the token is a `?.` token.
563
+ */
564
+ function isQuestionDotToken(token) {
565
+ return token.value === "?." && token.type === "Punctuator";
566
+ }
567
+
568
+ /**
569
+ * Checks if the given token is a semicolon token or not.
570
+ * @param {Token} token The token to check.
571
+ * @returns {boolean} `true` if the token is a semicolon token.
572
+ */
573
+ function isSemicolonToken(token) {
574
+ return token.value === ";" && token.type === "Punctuator";
575
+ }
576
+
577
+ /**
578
+ * Checks if the given token is a colon token or not.
579
+ * @param {Token} token The token to check.
580
+ * @returns {boolean} `true` if the token is a colon token.
581
+ */
582
+ function isColonToken(token) {
583
+ return token.value === ":" && token.type === "Punctuator";
584
+ }
585
+
586
+ /**
587
+ * Checks if the given token is an opening parenthesis token or not.
588
+ * @param {Token} token The token to check.
589
+ * @returns {boolean} `true` if the token is an opening parenthesis token.
590
+ */
591
+ function isOpeningParenToken(token) {
592
+ return token.value === "(" && token.type === "Punctuator";
593
+ }
594
+
595
+ /**
596
+ * Checks if the given token is a closing parenthesis token or not.
597
+ * @param {Token} token The token to check.
598
+ * @returns {boolean} `true` if the token is a closing parenthesis token.
599
+ */
600
+ function isClosingParenToken(token) {
601
+ return token.value === ")" && token.type === "Punctuator";
602
+ }
603
+
604
+ /**
605
+ * Checks if the given token is an opening square bracket token or not.
606
+ * @param {Token} token The token to check.
607
+ * @returns {boolean} `true` if the token is an opening square bracket token.
608
+ */
609
+ function isOpeningBracketToken(token) {
610
+ return token.value === "[" && token.type === "Punctuator";
611
+ }
612
+
613
+ /**
614
+ * Checks if the given token is a closing square bracket token or not.
615
+ * @param {Token} token The token to check.
616
+ * @returns {boolean} `true` if the token is a closing square bracket token.
617
+ */
618
+ function isClosingBracketToken(token) {
619
+ return token.value === "]" && token.type === "Punctuator";
620
+ }
621
+
622
+ /**
623
+ * Checks if the given token is an opening brace token or not.
624
+ * @param {Token} token The token to check.
625
+ * @returns {boolean} `true` if the token is an opening brace token.
626
+ */
627
+ function isOpeningBraceToken(token) {
628
+ return token.value === "{" && token.type === "Punctuator";
629
+ }
630
+
631
+ /**
632
+ * Checks if the given token is a closing brace token or not.
633
+ * @param {Token} token The token to check.
634
+ * @returns {boolean} `true` if the token is a closing brace token.
635
+ */
636
+ function isClosingBraceToken(token) {
637
+ return token.value === "}" && token.type === "Punctuator";
638
+ }
639
+
640
+ /**
641
+ * Checks if the given token is a comment token or not.
642
+ * @param {Token} token The token to check.
643
+ * @returns {boolean} `true` if the token is a comment token.
644
+ */
645
+ function isCommentToken(token) {
646
+ return token.type === "Line" || token.type === "Block" || token.type === "Shebang";
647
+ }
648
+
649
+ /**
650
+ * Checks if the given token is a keyword token or not.
651
+ * @param {Token} token The token to check.
652
+ * @returns {boolean} `true` if the token is a keyword token.
653
+ */
654
+ function isKeywordToken(token) {
655
+ return token.type === "Keyword";
656
+ }
657
+
658
+ /**
659
+ * Gets the `(` token of the given function node.
660
+ * @param {ASTNode} node The function node to get.
661
+ * @param {SourceCode} sourceCode The source code object to get tokens.
662
+ * @returns {Token} `(` token.
663
+ */
664
+ function getOpeningParenOfParams(node, sourceCode) {
665
+
666
+ // If the node is an arrow function and doesn't have parens, this returns the identifier of the first param.
667
+ if (node.type === "ArrowFunctionExpression" && node.params.length === 1) {
668
+ const argToken = sourceCode.getFirstToken(node.params[0]);
669
+ const maybeParenToken = sourceCode.getTokenBefore(argToken);
670
+
671
+ return isOpeningParenToken(maybeParenToken) ? maybeParenToken : argToken;
672
+ }
673
+
674
+ // Otherwise, returns paren.
675
+ return node.id
676
+ ? sourceCode.getTokenAfter(node.id, isOpeningParenToken)
677
+ : sourceCode.getFirstToken(node, isOpeningParenToken);
678
+ }
679
+
680
+ /**
681
+ * Checks whether or not the tokens of two given nodes are same.
682
+ * @param {ASTNode} left A node 1 to compare.
683
+ * @param {ASTNode} right A node 2 to compare.
684
+ * @param {SourceCode} sourceCode The ESLint source code object.
685
+ * @returns {boolean} the source code for the given node.
686
+ */
687
+ function equalTokens(left, right, sourceCode) {
688
+ const tokensL = sourceCode.getTokens(left);
689
+ const tokensR = sourceCode.getTokens(right);
690
+
691
+ if (tokensL.length !== tokensR.length) {
692
+ return false;
693
+ }
694
+ for (let i = 0; i < tokensL.length; ++i) {
695
+ if (tokensL[i].type !== tokensR[i].type ||
696
+ tokensL[i].value !== tokensR[i].value
697
+ ) {
698
+ return false;
699
+ }
700
+ }
701
+
702
+ return true;
703
+ }
704
+
705
+ /**
706
+ * Check if the given node is a true logical expression or not.
707
+ *
708
+ * The three binary expressions logical-or (`||`), logical-and (`&&`), and
709
+ * coalesce (`??`) are known as `ShortCircuitExpression`.
710
+ * But ESTree represents those by `LogicalExpression` node.
711
+ *
712
+ * This function rejects coalesce expressions of `LogicalExpression` node.
713
+ * @param {ASTNode} node The node to check.
714
+ * @returns {boolean} `true` if the node is `&&` or `||`.
715
+ * @see https://tc39.es/ecma262/#prod-ShortCircuitExpression
716
+ */
717
+ function isLogicalExpression(node) {
718
+ return (
719
+ node.type === "LogicalExpression" &&
720
+ (node.operator === "&&" || node.operator === "||")
721
+ );
722
+ }
723
+
724
+ /**
725
+ * Check if the given node is a nullish coalescing expression or not.
726
+ *
727
+ * The three binary expressions logical-or (`||`), logical-and (`&&`), and
728
+ * coalesce (`??`) are known as `ShortCircuitExpression`.
729
+ * But ESTree represents those by `LogicalExpression` node.
730
+ *
731
+ * This function finds only coalesce expressions of `LogicalExpression` node.
732
+ * @param {ASTNode} node The node to check.
733
+ * @returns {boolean} `true` if the node is `??`.
734
+ */
735
+ function isCoalesceExpression(node) {
736
+ return node.type === "LogicalExpression" && node.operator === "??";
737
+ }
738
+
739
+ /**
740
+ * Check if given two nodes are the pair of a logical expression and a coalesce expression.
741
+ * @param {ASTNode} left A node to check.
742
+ * @param {ASTNode} right Another node to check.
743
+ * @returns {boolean} `true` if the two nodes are the pair of a logical expression and a coalesce expression.
744
+ */
745
+ function isMixedLogicalAndCoalesceExpressions(left, right) {
746
+ return (
747
+ (isLogicalExpression(left) && isCoalesceExpression(right)) ||
748
+ (isCoalesceExpression(left) && isLogicalExpression(right))
749
+ );
750
+ }
751
+
752
+ /**
753
+ * Checks if the given operator is a logical assignment operator.
754
+ * @param {string} operator The operator to check.
755
+ * @returns {boolean} `true` if the operator is a logical assignment operator.
756
+ */
757
+ function isLogicalAssignmentOperator(operator) {
758
+ return LOGICAL_ASSIGNMENT_OPERATORS.has(operator);
759
+ }
760
+
761
+ /**
762
+ * Get the colon token of the given SwitchCase node.
763
+ * @param {ASTNode} node The SwitchCase node to get.
764
+ * @param {SourceCode} sourceCode The source code object to get tokens.
765
+ * @returns {Token} The colon token of the node.
766
+ */
767
+ function getSwitchCaseColonToken(node, sourceCode) {
768
+ if (node.test) {
769
+ return sourceCode.getTokenAfter(node.test, isColonToken);
770
+ }
771
+ return sourceCode.getFirstToken(node, 1);
772
+ }
773
+
774
+ /**
775
+ * Gets ESM module export name represented by the given node.
776
+ * @param {ASTNode} node `Identifier` or string `Literal` node in a position
777
+ * that represents a module export name:
778
+ * - `ImportSpecifier#imported`
779
+ * - `ExportSpecifier#local` (if it is a re-export from another module)
780
+ * - `ExportSpecifier#exported`
781
+ * - `ExportAllDeclaration#exported`
782
+ * @returns {string} The module export name.
783
+ */
784
+ function getModuleExportName(node) {
785
+ if (node.type === "Identifier") {
786
+ return node.name;
787
+ }
788
+
789
+ // string literal
790
+ return node.value;
791
+ }
792
+
793
+ /**
794
+ * Returns literal's value converted to the Boolean type
795
+ * @param {ASTNode} node any `Literal` node
796
+ * @returns {boolean | null} `true` when node is truthy, `false` when node is falsy,
797
+ * `null` when it cannot be determined.
798
+ */
799
+ function getBooleanValue(node) {
800
+ if (node.value === null) {
801
+
802
+ /*
803
+ * it might be a null literal or bigint/regex literal in unsupported environments .
804
+ * https://github.com/estree/estree/blob/14df8a024956ea289bd55b9c2226a1d5b8a473ee/es5.md#regexpliteral
805
+ * https://github.com/estree/estree/blob/14df8a024956ea289bd55b9c2226a1d5b8a473ee/es2020.md#bigintliteral
806
+ */
807
+
808
+ if (node.raw === "null") {
809
+ return false;
810
+ }
811
+
812
+ // regex is always truthy
813
+ if (typeof node.regex === "object") {
814
+ return true;
815
+ }
816
+
817
+ return null;
818
+ }
819
+
820
+ return !!node.value;
821
+ }
822
+
823
+ /**
824
+ * Checks if a branch node of LogicalExpression short circuits the whole condition
825
+ * @param {ASTNode} node The branch of main condition which needs to be checked
826
+ * @param {string} operator The operator of the main LogicalExpression.
827
+ * @returns {boolean} true when condition short circuits whole condition
828
+ */
829
+ function isLogicalIdentity(node, operator) {
830
+ switch (node.type) {
831
+ case "Literal":
832
+ return (operator === "||" && getBooleanValue(node) === true) ||
833
+ (operator === "&&" && getBooleanValue(node) === false);
834
+
835
+ case "UnaryExpression":
836
+ return (operator === "&&" && node.operator === "void");
837
+
838
+ case "LogicalExpression":
839
+
840
+ /*
841
+ * handles `a && false || b`
842
+ * `false` is an identity element of `&&` but not `||`
843
+ */
844
+ return operator === node.operator &&
845
+ (
846
+ isLogicalIdentity(node.left, operator) ||
847
+ isLogicalIdentity(node.right, operator)
848
+ );
849
+
850
+ case "AssignmentExpression":
851
+ return ["||=", "&&="].includes(node.operator) &&
852
+ operator === node.operator.slice(0, -1) &&
853
+ isLogicalIdentity(node.right, operator);
854
+
855
+ // no default
856
+ }
857
+ return false;
858
+ }
859
+
860
+ /**
861
+ * Checks if an identifier is a reference to a global variable.
862
+ * @param {Scope} scope The scope in which the identifier is referenced.
863
+ * @param {ASTNode} node An identifier node to check.
864
+ * @returns {boolean} `true` if the identifier is a reference to a global variable.
865
+ */
866
+ function isReferenceToGlobalVariable(scope, node) {
867
+ const reference = scope.references.find(ref => ref.identifier === node);
868
+
869
+ return Boolean(
870
+ reference &&
871
+ reference.resolved &&
872
+ reference.resolved.scope.type === "global" &&
873
+ reference.resolved.defs.length === 0
874
+ );
875
+ }
876
+
877
+
878
+ /**
879
+ * Checks if a node has a constant truthiness value.
880
+ * @param {Scope} scope Scope in which the node appears.
881
+ * @param {ASTNode} node The AST node to check.
882
+ * @param {boolean} inBooleanPosition `true` if checking the test of a
883
+ * condition. `false` in all other cases. When `false`, checks if -- for
884
+ * both string and number -- if coerced to that type, the value will
885
+ * be constant.
886
+ * @returns {boolean} true when node's truthiness is constant
887
+ * @private
888
+ */
889
+ function isConstant(scope, node, inBooleanPosition) {
890
+
891
+ // node.elements can return null values in the case of sparse arrays ex. [,]
892
+ if (!node) {
893
+ return true;
894
+ }
895
+ switch (node.type) {
896
+ case "Literal":
897
+ case "ArrowFunctionExpression":
898
+ case "FunctionExpression":
899
+ return true;
900
+ case "ClassExpression":
901
+ case "ObjectExpression":
902
+
903
+ /**
904
+ * In theory objects like:
905
+ *
906
+ * `{toString: () => a}`
907
+ * `{valueOf: () => a}`
908
+ *
909
+ * Or a classes like:
910
+ *
911
+ * `class { static toString() { return a } }`
912
+ * `class { static valueOf() { return a } }`
913
+ *
914
+ * Are not constant verifiably when `inBooleanPosition` is
915
+ * false, but it's an edge case we've opted not to handle.
916
+ */
917
+ return true;
918
+ case "TemplateLiteral":
919
+ return (inBooleanPosition && node.quasis.some(quasi => quasi.value.cooked.length)) ||
920
+ node.expressions.every(exp => isConstant(scope, exp, false));
921
+
922
+ case "ArrayExpression": {
923
+ if (!inBooleanPosition) {
924
+ return node.elements.every(element => isConstant(scope, element, false));
925
+ }
926
+ return true;
927
+ }
928
+
929
+ case "UnaryExpression":
930
+ if (
931
+ node.operator === "void" ||
932
+ node.operator === "typeof" && inBooleanPosition
933
+ ) {
934
+ return true;
935
+ }
936
+
937
+ if (node.operator === "!") {
938
+ return isConstant(scope, node.argument, true);
939
+ }
940
+
941
+ return isConstant(scope, node.argument, false);
942
+
943
+ case "BinaryExpression":
944
+ return isConstant(scope, node.left, false) &&
945
+ isConstant(scope, node.right, false) &&
946
+ node.operator !== "in";
947
+
948
+ case "LogicalExpression": {
949
+ const isLeftConstant = isConstant(scope, node.left, inBooleanPosition);
950
+ const isRightConstant = isConstant(scope, node.right, inBooleanPosition);
951
+ const isLeftShortCircuit = (isLeftConstant && isLogicalIdentity(node.left, node.operator));
952
+ const isRightShortCircuit = (inBooleanPosition && isRightConstant && isLogicalIdentity(node.right, node.operator));
953
+
954
+ return (isLeftConstant && isRightConstant) ||
955
+ isLeftShortCircuit ||
956
+ isRightShortCircuit;
957
+ }
958
+ case "NewExpression":
959
+ return inBooleanPosition;
960
+ case "AssignmentExpression":
961
+ if (node.operator === "=") {
962
+ return isConstant(scope, node.right, inBooleanPosition);
963
+ }
964
+
965
+ if (["||=", "&&="].includes(node.operator) && inBooleanPosition) {
966
+ return isLogicalIdentity(node.right, node.operator.slice(0, -1));
967
+ }
968
+
969
+ return false;
970
+
971
+ case "SequenceExpression":
972
+ return isConstant(scope, node.expressions[node.expressions.length - 1], inBooleanPosition);
973
+ case "SpreadElement":
974
+ return isConstant(scope, node.argument, inBooleanPosition);
975
+ case "CallExpression":
976
+ if (node.callee.type === "Identifier" && node.callee.name === "Boolean") {
977
+ if (node.arguments.length === 0 || isConstant(scope, node.arguments[0], true)) {
978
+ return isReferenceToGlobalVariable(scope, node.callee);
979
+ }
980
+ }
981
+ return false;
982
+ case "Identifier":
983
+ return node.name === "undefined" && isReferenceToGlobalVariable(scope, node);
984
+
985
+ // no default
986
+ }
987
+ return false;
988
+ }
989
+
990
+ /**
991
+ * Checks whether a node is an ExpressionStatement at the top level of a file or function body.
992
+ * A top-level ExpressionStatement node is a directive if it contains a single unparenthesized
993
+ * string literal and if it occurs either as the first sibling or immediately after another
994
+ * directive.
995
+ * @param {ASTNode} node The node to check.
996
+ * @returns {boolean} Whether or not the node is an ExpressionStatement at the top level of a
997
+ * file or function body.
998
+ */
999
+ function isTopLevelExpressionStatement(node) {
1000
+ if (node.type !== "ExpressionStatement") {
1001
+ return false;
1002
+ }
1003
+ const parent = node.parent;
1004
+
1005
+ return parent.type === "Program" || (parent.type === "BlockStatement" && isFunction(parent.parent));
1006
+
1007
+ }
1008
+
1009
+ /**
1010
+ * Check whether the given node is a part of a directive prologue or not.
1011
+ * @param {ASTNode} node The node to check.
1012
+ * @returns {boolean} `true` if the node is a part of directive prologue.
1013
+ */
1014
+ function isDirective(node) {
1015
+ return node.type === "ExpressionStatement" && typeof node.directive === "string";
1016
+ }
1017
+
1018
+ /**
1019
+ * Tests if a node appears at the beginning of an ancestor ExpressionStatement node.
1020
+ * @param {ASTNode} node The node to check.
1021
+ * @returns {boolean} Whether the node appears at the beginning of an ancestor ExpressionStatement node.
1022
+ */
1023
+ function isStartOfExpressionStatement(node) {
1024
+ const start = node.range[0];
1025
+ let ancestor = node;
1026
+
1027
+ while ((ancestor = ancestor.parent) && ancestor.range[0] === start) {
1028
+ if (ancestor.type === "ExpressionStatement") {
1029
+ return true;
1030
+ }
1031
+ }
1032
+ return false;
1033
+ }
1034
+
1035
+ /**
1036
+ * Determines whether an opening parenthesis `(`, bracket `[` or backtick ``` ` ``` needs to be preceded by a semicolon.
1037
+ * This opening parenthesis or bracket should be at the start of an `ExpressionStatement` or at the start of the body of an `ArrowFunctionExpression`.
1038
+ * @type {(sourceCode: SourceCode, node: ASTNode) => boolean}
1039
+ * @param {SourceCode} sourceCode The source code object.
1040
+ * @param {ASTNode} node A node at the position where an opening parenthesis or bracket will be inserted.
1041
+ * @returns {boolean} Whether a semicolon is required before the opening parenthesis or braket.
1042
+ */
1043
+ let needsPrecedingSemicolon;
1044
+
1045
+ {
1046
+ const BREAK_OR_CONTINUE = new Set(["BreakStatement", "ContinueStatement"]);
1047
+
1048
+ // Declaration types that must contain a string Literal node at the end.
1049
+ const DECLARATIONS = new Set(["ExportAllDeclaration", "ExportNamedDeclaration", "ImportDeclaration"]);
1050
+
1051
+ const IDENTIFIER_OR_KEYWORD = new Set(["Identifier", "Keyword"]);
1052
+
1053
+ // Keywords that can immediately precede an ExpressionStatement node, mapped to the their node types.
1054
+ const NODE_TYPES_BY_KEYWORD = {
1055
+ __proto__: null,
1056
+ break: "BreakStatement",
1057
+ continue: "ContinueStatement",
1058
+ debugger: "DebuggerStatement",
1059
+ do: "DoWhileStatement",
1060
+ else: "IfStatement",
1061
+ return: "ReturnStatement",
1062
+ yield: "YieldExpression"
1063
+ };
1064
+
1065
+ /*
1066
+ * Before an opening parenthesis, postfix `++` and `--` always trigger ASI;
1067
+ * the tokens `:`, `;`, `{` and `=>` don't expect a semicolon, as that would count as an empty statement.
1068
+ */
1069
+ const PUNCTUATORS = new Set([":", ";", "{", "=>", "++", "--"]);
1070
+
1071
+ /*
1072
+ * Statements that can contain an `ExpressionStatement` after a closing parenthesis.
1073
+ * DoWhileStatement is an exception in that it always triggers ASI after the closing parenthesis.
1074
+ */
1075
+ const STATEMENTS = new Set([
1076
+ "DoWhileStatement",
1077
+ "ForInStatement",
1078
+ "ForOfStatement",
1079
+ "ForStatement",
1080
+ "IfStatement",
1081
+ "WhileStatement",
1082
+ "WithStatement"
1083
+ ]);
1084
+
1085
+ needsPrecedingSemicolon =
1086
+ function(sourceCode, node) {
1087
+ const prevToken = sourceCode.getTokenBefore(node);
1088
+
1089
+ if (!prevToken || prevToken.type === "Punctuator" && PUNCTUATORS.has(prevToken.value)) {
1090
+ return false;
1091
+ }
1092
+
1093
+ const prevNode = sourceCode.getNodeByRangeIndex(prevToken.range[0]);
1094
+
1095
+ if (isClosingParenToken(prevToken)) {
1096
+ return !STATEMENTS.has(prevNode.type);
1097
+ }
1098
+
1099
+ if (isClosingBraceToken(prevToken)) {
1100
+ return (
1101
+ prevNode.type === "BlockStatement" && prevNode.parent.type === "FunctionExpression" ||
1102
+ prevNode.type === "ClassBody" && prevNode.parent.type === "ClassExpression" ||
1103
+ prevNode.type === "ObjectExpression"
1104
+ );
1105
+ }
1106
+
1107
+ if (IDENTIFIER_OR_KEYWORD.has(prevToken.type)) {
1108
+ if (BREAK_OR_CONTINUE.has(prevNode.parent.type)) {
1109
+ return false;
1110
+ }
1111
+
1112
+ const keyword = prevToken.value;
1113
+ const nodeType = NODE_TYPES_BY_KEYWORD[keyword];
1114
+
1115
+ return prevNode.type !== nodeType;
1116
+ }
1117
+
1118
+ if (prevToken.type === "String") {
1119
+ return !DECLARATIONS.has(prevNode.parent.type);
1120
+ }
1121
+
1122
+ return true;
1123
+ };
1124
+ }
1125
+
1126
+ //------------------------------------------------------------------------------
1127
+ // Public Interface
1128
+ //------------------------------------------------------------------------------
1129
+
1130
+ module.exports = {
1131
+ COMMENTS_IGNORE_PATTERN,
1132
+ LINEBREAKS,
1133
+ LINEBREAK_MATCHER: lineBreakPattern,
1134
+ SHEBANG_MATCHER: shebangPattern,
1135
+ STATEMENT_LIST_PARENTS,
1136
+
1137
+ /**
1138
+ * Determines whether two adjacent tokens are on the same line.
1139
+ * @param {Object} left The left token object.
1140
+ * @param {Object} right The right token object.
1141
+ * @returns {boolean} Whether or not the tokens are on the same line.
1142
+ * @public
1143
+ */
1144
+ isTokenOnSameLine(left, right) {
1145
+ return left.loc.end.line === right.loc.start.line;
1146
+ },
1147
+
1148
+ isNullOrUndefined,
1149
+ isCallee,
1150
+ isES5Constructor,
1151
+ getUpperFunction,
1152
+ isFunction,
1153
+ isLoop,
1154
+ isInLoop,
1155
+ isArrayFromMethod,
1156
+ isParenthesised,
1157
+ createGlobalLinebreakMatcher,
1158
+ equalTokens,
1159
+
1160
+ isArrowToken,
1161
+ isClosingBraceToken,
1162
+ isClosingBracketToken,
1163
+ isClosingParenToken,
1164
+ isColonToken,
1165
+ isCommaToken,
1166
+ isCommentToken,
1167
+ isDotToken,
1168
+ isQuestionDotToken,
1169
+ isKeywordToken,
1170
+ isNotClosingBraceToken: negate(isClosingBraceToken),
1171
+ isNotClosingBracketToken: negate(isClosingBracketToken),
1172
+ isNotClosingParenToken: negate(isClosingParenToken),
1173
+ isNotColonToken: negate(isColonToken),
1174
+ isNotCommaToken: negate(isCommaToken),
1175
+ isNotDotToken: negate(isDotToken),
1176
+ isNotQuestionDotToken: negate(isQuestionDotToken),
1177
+ isNotOpeningBraceToken: negate(isOpeningBraceToken),
1178
+ isNotOpeningBracketToken: negate(isOpeningBracketToken),
1179
+ isNotOpeningParenToken: negate(isOpeningParenToken),
1180
+ isNotSemicolonToken: negate(isSemicolonToken),
1181
+ isOpeningBraceToken,
1182
+ isOpeningBracketToken,
1183
+ isOpeningParenToken,
1184
+ isSemicolonToken,
1185
+ isEqToken,
1186
+
1187
+ /**
1188
+ * Checks whether or not a given node is a string literal.
1189
+ * @param {ASTNode} node A node to check.
1190
+ * @returns {boolean} `true` if the node is a string literal.
1191
+ */
1192
+ isStringLiteral(node) {
1193
+ return (
1194
+ (node.type === "Literal" && typeof node.value === "string") ||
1195
+ node.type === "TemplateLiteral"
1196
+ );
1197
+ },
1198
+
1199
+ /**
1200
+ * Checks whether a given node is a breakable statement or not.
1201
+ * The node is breakable if the node is one of the following type:
1202
+ *
1203
+ * - DoWhileStatement
1204
+ * - ForInStatement
1205
+ * - ForOfStatement
1206
+ * - ForStatement
1207
+ * - SwitchStatement
1208
+ * - WhileStatement
1209
+ * @param {ASTNode} node A node to check.
1210
+ * @returns {boolean} `true` if the node is breakable.
1211
+ */
1212
+ isBreakableStatement(node) {
1213
+ return breakableTypePattern.test(node.type);
1214
+ },
1215
+
1216
+ /**
1217
+ * Gets references which are non initializer and writable.
1218
+ * @param {Reference[]} references An array of references.
1219
+ * @returns {Reference[]} An array of only references which are non initializer and writable.
1220
+ * @public
1221
+ */
1222
+ getModifyingReferences(references) {
1223
+ return references.filter(isModifyingReference);
1224
+ },
1225
+
1226
+ /**
1227
+ * Validate that a string passed in is surrounded by the specified character
1228
+ * @param {string} val The text to check.
1229
+ * @param {string} character The character to see if it's surrounded by.
1230
+ * @returns {boolean} True if the text is surrounded by the character, false if not.
1231
+ * @private
1232
+ */
1233
+ isSurroundedBy(val, character) {
1234
+ return val[0] === character && val[val.length - 1] === character;
1235
+ },
1236
+
1237
+ /**
1238
+ * Returns whether the provided node is an ESLint directive comment or not
1239
+ * @param {Line|Block} node The comment token to be checked
1240
+ * @returns {boolean} `true` if the node is an ESLint directive comment
1241
+ */
1242
+ isDirectiveComment(node) {
1243
+ const comment = node.value.trim();
1244
+
1245
+ return (
1246
+ node.type === "Line" && comment.startsWith("eslint-") ||
1247
+ node.type === "Block" && ESLINT_DIRECTIVE_PATTERN.test(comment)
1248
+ );
1249
+ },
1250
+
1251
+ /**
1252
+ * Gets the trailing statement of a given node.
1253
+ *
1254
+ * if (code)
1255
+ * consequent;
1256
+ *
1257
+ * When taking this `IfStatement`, returns `consequent;` statement.
1258
+ * @param {ASTNode} A node to get.
1259
+ * @returns {ASTNode|null} The trailing statement's node.
1260
+ */
1261
+ getTrailingStatement: esutils.ast.trailingStatement,
1262
+
1263
+ /**
1264
+ * Finds the variable by a given name in a given scope and its upper scopes.
1265
+ * @param {eslint-scope.Scope} initScope A scope to start find.
1266
+ * @param {string} name A variable name to find.
1267
+ * @returns {eslint-scope.Variable|null} A found variable or `null`.
1268
+ */
1269
+ getVariableByName(initScope, name) {
1270
+ let scope = initScope;
1271
+
1272
+ while (scope) {
1273
+ const variable = scope.set.get(name);
1274
+
1275
+ if (variable) {
1276
+ return variable;
1277
+ }
1278
+
1279
+ scope = scope.upper;
1280
+ }
1281
+
1282
+ return null;
1283
+ },
1284
+
1285
+ /**
1286
+ * Checks whether or not a given function node is the default `this` binding.
1287
+ *
1288
+ * First, this checks the node:
1289
+ *
1290
+ * - The given node is not in `PropertyDefinition#value` position.
1291
+ * - The given node is not `StaticBlock`.
1292
+ * - The function name does not start with uppercase. It's a convention to capitalize the names
1293
+ * of constructor functions. This check is not performed if `capIsConstructor` is set to `false`.
1294
+ * - The function does not have a JSDoc comment that has a @this tag.
1295
+ *
1296
+ * Next, this checks the location of the node.
1297
+ * If the location is below, this judges `this` is valid.
1298
+ *
1299
+ * - The location is not on an object literal.
1300
+ * - The location is not assigned to a variable which starts with an uppercase letter. Applies to anonymous
1301
+ * functions only, as the name of the variable is considered to be the name of the function in this case.
1302
+ * This check is not performed if `capIsConstructor` is set to `false`.
1303
+ * - The location is not on an ES2015 class.
1304
+ * - Its `bind`/`call`/`apply` method is not called directly.
1305
+ * - The function is not a callback of array methods (such as `.forEach()`) if `thisArg` is given.
1306
+ * @param {ASTNode} node A function node to check. It also can be an implicit function, like `StaticBlock`
1307
+ * or any expression that is `PropertyDefinition#value` node.
1308
+ * @param {SourceCode} sourceCode A SourceCode instance to get comments.
1309
+ * @param {boolean} [capIsConstructor = true] `false` disables the assumption that functions which name starts
1310
+ * with an uppercase or are assigned to a variable which name starts with an uppercase are constructors.
1311
+ * @returns {boolean} The function node is the default `this` binding.
1312
+ */
1313
+ isDefaultThisBinding(node, sourceCode, { capIsConstructor = true } = {}) {
1314
+
1315
+ /*
1316
+ * Class field initializers are implicit functions, but ESTree doesn't have the AST node of field initializers.
1317
+ * Therefore, A expression node at `PropertyDefinition#value` is a function.
1318
+ * In this case, `this` is always not default binding.
1319
+ */
1320
+ if (node.parent.type === "PropertyDefinition" && node.parent.value === node) {
1321
+ return false;
1322
+ }
1323
+
1324
+ // Class static blocks are implicit functions. In this case, `this` is always not default binding.
1325
+ if (node.type === "StaticBlock") {
1326
+ return false;
1327
+ }
1328
+
1329
+ if (
1330
+ (capIsConstructor && isES5Constructor(node)) ||
1331
+ hasJSDocThisTag(node, sourceCode)
1332
+ ) {
1333
+ return false;
1334
+ }
1335
+ const isAnonymous = node.id === null;
1336
+ let currentNode = node;
1337
+
1338
+ while (currentNode) {
1339
+ const parent = currentNode.parent;
1340
+
1341
+ switch (parent.type) {
1342
+
1343
+ /*
1344
+ * Looks up the destination.
1345
+ * e.g., obj.foo = nativeFoo || function foo() { ... };
1346
+ */
1347
+ case "LogicalExpression":
1348
+ case "ConditionalExpression":
1349
+ case "ChainExpression":
1350
+ currentNode = parent;
1351
+ break;
1352
+
1353
+ /*
1354
+ * If the upper function is IIFE, checks the destination of the return value.
1355
+ * e.g.
1356
+ * obj.foo = (function() {
1357
+ * // setup...
1358
+ * return function foo() { ... };
1359
+ * })();
1360
+ * obj.foo = (() =>
1361
+ * function foo() { ... }
1362
+ * )();
1363
+ */
1364
+ case "ReturnStatement": {
1365
+ const func = getUpperFunction(parent);
1366
+
1367
+ if (func === null || !isCallee(func)) {
1368
+ return true;
1369
+ }
1370
+ currentNode = func.parent;
1371
+ break;
1372
+ }
1373
+ case "ArrowFunctionExpression":
1374
+ if (currentNode !== parent.body || !isCallee(parent)) {
1375
+ return true;
1376
+ }
1377
+ currentNode = parent.parent;
1378
+ break;
1379
+
1380
+ /*
1381
+ * e.g.
1382
+ * var obj = { foo() { ... } };
1383
+ * var obj = { foo: function() { ... } };
1384
+ * class A { constructor() { ... } }
1385
+ * class A { foo() { ... } }
1386
+ * class A { get foo() { ... } }
1387
+ * class A { set foo() { ... } }
1388
+ * class A { static foo() { ... } }
1389
+ * class A { foo = function() { ... } }
1390
+ */
1391
+ case "Property":
1392
+ case "PropertyDefinition":
1393
+ case "MethodDefinition":
1394
+ return parent.value !== currentNode;
1395
+
1396
+ /*
1397
+ * e.g.
1398
+ * obj.foo = function foo() { ... };
1399
+ * Foo = function() { ... };
1400
+ * [obj.foo = function foo() { ... }] = a;
1401
+ * [Foo = function() { ... }] = a;
1402
+ */
1403
+ case "AssignmentExpression":
1404
+ case "AssignmentPattern":
1405
+ if (parent.left.type === "MemberExpression") {
1406
+ return false;
1407
+ }
1408
+ if (
1409
+ capIsConstructor &&
1410
+ isAnonymous &&
1411
+ parent.left.type === "Identifier" &&
1412
+ startsWithUpperCase(parent.left.name)
1413
+ ) {
1414
+ return false;
1415
+ }
1416
+ return true;
1417
+
1418
+ /*
1419
+ * e.g.
1420
+ * var Foo = function() { ... };
1421
+ */
1422
+ case "VariableDeclarator":
1423
+ return !(
1424
+ capIsConstructor &&
1425
+ isAnonymous &&
1426
+ parent.init === currentNode &&
1427
+ parent.id.type === "Identifier" &&
1428
+ startsWithUpperCase(parent.id.name)
1429
+ );
1430
+
1431
+ /*
1432
+ * e.g.
1433
+ * var foo = function foo() { ... }.bind(obj);
1434
+ * (function foo() { ... }).call(obj);
1435
+ * (function foo() { ... }).apply(obj, []);
1436
+ */
1437
+ case "MemberExpression":
1438
+ if (
1439
+ parent.object === currentNode &&
1440
+ isSpecificMemberAccess(parent, null, bindOrCallOrApplyPattern)
1441
+ ) {
1442
+ const maybeCalleeNode = parent.parent.type === "ChainExpression"
1443
+ ? parent.parent
1444
+ : parent;
1445
+
1446
+ return !(
1447
+ isCallee(maybeCalleeNode) &&
1448
+ maybeCalleeNode.parent.arguments.length >= 1 &&
1449
+ !isNullOrUndefined(maybeCalleeNode.parent.arguments[0])
1450
+ );
1451
+ }
1452
+ return true;
1453
+
1454
+ /*
1455
+ * e.g.
1456
+ * Reflect.apply(function() {}, obj, []);
1457
+ * Array.from([], function() {}, obj);
1458
+ * list.forEach(function() {}, obj);
1459
+ */
1460
+ case "CallExpression":
1461
+ if (isReflectApply(parent.callee)) {
1462
+ return (
1463
+ parent.arguments.length !== 3 ||
1464
+ parent.arguments[0] !== currentNode ||
1465
+ isNullOrUndefined(parent.arguments[1])
1466
+ );
1467
+ }
1468
+ if (isArrayFromMethod(parent.callee)) {
1469
+ return (
1470
+ parent.arguments.length !== 3 ||
1471
+ parent.arguments[1] !== currentNode ||
1472
+ isNullOrUndefined(parent.arguments[2])
1473
+ );
1474
+ }
1475
+ if (isMethodWhichHasThisArg(parent.callee)) {
1476
+ return (
1477
+ parent.arguments.length !== 2 ||
1478
+ parent.arguments[0] !== currentNode ||
1479
+ isNullOrUndefined(parent.arguments[1])
1480
+ );
1481
+ }
1482
+ return true;
1483
+
1484
+ // Otherwise `this` is default.
1485
+ default:
1486
+ return true;
1487
+ }
1488
+ }
1489
+
1490
+ /* c8 ignore next */
1491
+ return true;
1492
+ },
1493
+
1494
+ /**
1495
+ * Get the precedence level based on the node type
1496
+ * @param {ASTNode} node node to evaluate
1497
+ * @returns {int} precedence level
1498
+ * @private
1499
+ */
1500
+ getPrecedence(node) {
1501
+ switch (node.type) {
1502
+ case "SequenceExpression":
1503
+ return 0;
1504
+
1505
+ case "AssignmentExpression":
1506
+ case "ArrowFunctionExpression":
1507
+ case "YieldExpression":
1508
+ return 1;
1509
+
1510
+ case "ConditionalExpression":
1511
+ return 3;
1512
+
1513
+ case "LogicalExpression":
1514
+ switch (node.operator) {
1515
+ case "||":
1516
+ case "??":
1517
+ return 4;
1518
+ case "&&":
1519
+ return 5;
1520
+
1521
+ // no default
1522
+ }
1523
+
1524
+ /* falls through */
1525
+
1526
+ case "BinaryExpression":
1527
+
1528
+ switch (node.operator) {
1529
+ case "|":
1530
+ return 6;
1531
+ case "^":
1532
+ return 7;
1533
+ case "&":
1534
+ return 8;
1535
+ case "==":
1536
+ case "!=":
1537
+ case "===":
1538
+ case "!==":
1539
+ return 9;
1540
+ case "<":
1541
+ case "<=":
1542
+ case ">":
1543
+ case ">=":
1544
+ case "in":
1545
+ case "instanceof":
1546
+ return 10;
1547
+ case "<<":
1548
+ case ">>":
1549
+ case ">>>":
1550
+ return 11;
1551
+ case "+":
1552
+ case "-":
1553
+ return 12;
1554
+ case "*":
1555
+ case "/":
1556
+ case "%":
1557
+ return 13;
1558
+ case "**":
1559
+ return 15;
1560
+
1561
+ // no default
1562
+ }
1563
+
1564
+ /* falls through */
1565
+
1566
+ case "UnaryExpression":
1567
+ case "AwaitExpression":
1568
+ return 16;
1569
+
1570
+ case "UpdateExpression":
1571
+ return 17;
1572
+
1573
+ case "CallExpression":
1574
+ case "ChainExpression":
1575
+ case "ImportExpression":
1576
+ return 18;
1577
+
1578
+ case "NewExpression":
1579
+ return 19;
1580
+
1581
+ default:
1582
+ if (node.type in eslintVisitorKeys) {
1583
+ return 20;
1584
+ }
1585
+
1586
+ /*
1587
+ * if the node is not a standard node that we know about, then assume it has the lowest precedence
1588
+ * this will mean that rules will wrap unknown nodes in parentheses where applicable instead of
1589
+ * unwrapping them and potentially changing the meaning of the code or introducing a syntax error.
1590
+ */
1591
+ return -1;
1592
+ }
1593
+ },
1594
+
1595
+ /**
1596
+ * Checks whether the given node is an empty block node or not.
1597
+ * @param {ASTNode|null} node The node to check.
1598
+ * @returns {boolean} `true` if the node is an empty block.
1599
+ */
1600
+ isEmptyBlock(node) {
1601
+ return Boolean(node && node.type === "BlockStatement" && node.body.length === 0);
1602
+ },
1603
+
1604
+ /**
1605
+ * Checks whether the given node is an empty function node or not.
1606
+ * @param {ASTNode|null} node The node to check.
1607
+ * @returns {boolean} `true` if the node is an empty function.
1608
+ */
1609
+ isEmptyFunction(node) {
1610
+ return isFunction(node) && module.exports.isEmptyBlock(node.body);
1611
+ },
1612
+
1613
+ /**
1614
+ * Get directives from directive prologue of a Program or Function node.
1615
+ * @param {ASTNode} node The node to check.
1616
+ * @returns {ASTNode[]} The directives found in the directive prologue.
1617
+ */
1618
+ getDirectivePrologue(node) {
1619
+ const directives = [];
1620
+
1621
+ // Directive prologues only occur at the top of files or functions.
1622
+ if (
1623
+ node.type === "Program" ||
1624
+ node.type === "FunctionDeclaration" ||
1625
+ node.type === "FunctionExpression" ||
1626
+
1627
+ /*
1628
+ * Do not check arrow functions with implicit return.
1629
+ * `() => "use strict";` returns the string `"use strict"`.
1630
+ */
1631
+ (node.type === "ArrowFunctionExpression" && node.body.type === "BlockStatement")
1632
+ ) {
1633
+ const statements = node.type === "Program" ? node.body : node.body.body;
1634
+
1635
+ for (const statement of statements) {
1636
+ if (
1637
+ statement.type === "ExpressionStatement" &&
1638
+ statement.expression.type === "Literal"
1639
+ ) {
1640
+ directives.push(statement);
1641
+ } else {
1642
+ break;
1643
+ }
1644
+ }
1645
+ }
1646
+
1647
+ return directives;
1648
+ },
1649
+
1650
+ /**
1651
+ * Determines whether this node is a decimal integer literal. If a node is a decimal integer literal, a dot added
1652
+ * after the node will be parsed as a decimal point, rather than a property-access dot.
1653
+ * @param {ASTNode} node The node to check.
1654
+ * @returns {boolean} `true` if this node is a decimal integer.
1655
+ * @example
1656
+ *
1657
+ * 0 // true
1658
+ * 5 // true
1659
+ * 50 // true
1660
+ * 5_000 // true
1661
+ * 1_234_56 // true
1662
+ * 08 // true
1663
+ * 0192 // true
1664
+ * 5. // false
1665
+ * .5 // false
1666
+ * 5.0 // false
1667
+ * 5.00_00 // false
1668
+ * 05 // false
1669
+ * 0x5 // false
1670
+ * 0b101 // false
1671
+ * 0b11_01 // false
1672
+ * 0o5 // false
1673
+ * 5e0 // false
1674
+ * 5e1_000 // false
1675
+ * 5n // false
1676
+ * 1_000n // false
1677
+ * "5" // false
1678
+ *
1679
+ */
1680
+ isDecimalInteger(node) {
1681
+ return node.type === "Literal" && typeof node.value === "number" &&
1682
+ DECIMAL_INTEGER_PATTERN.test(node.raw);
1683
+ },
1684
+
1685
+ /**
1686
+ * Determines whether this token is a decimal integer numeric token.
1687
+ * This is similar to isDecimalInteger(), but for tokens.
1688
+ * @param {Token} token The token to check.
1689
+ * @returns {boolean} `true` if this token is a decimal integer.
1690
+ */
1691
+ isDecimalIntegerNumericToken(token) {
1692
+ return token.type === "Numeric" && DECIMAL_INTEGER_PATTERN.test(token.value);
1693
+ },
1694
+
1695
+ /**
1696
+ * Gets the name and kind of the given function node.
1697
+ *
1698
+ * - `function foo() {}` .................... `function 'foo'`
1699
+ * - `(function foo() {})` .................. `function 'foo'`
1700
+ * - `(function() {})` ...................... `function`
1701
+ * - `function* foo() {}` ................... `generator function 'foo'`
1702
+ * - `(function* foo() {})` ................. `generator function 'foo'`
1703
+ * - `(function*() {})` ..................... `generator function`
1704
+ * - `() => {}` ............................. `arrow function`
1705
+ * - `async () => {}` ....................... `async arrow function`
1706
+ * - `({ foo: function foo() {} })` ......... `method 'foo'`
1707
+ * - `({ foo: function() {} })` ............. `method 'foo'`
1708
+ * - `({ ['foo']: function() {} })` ......... `method 'foo'`
1709
+ * - `({ [foo]: function() {} })` ........... `method`
1710
+ * - `({ foo() {} })` ....................... `method 'foo'`
1711
+ * - `({ foo: function* foo() {} })` ........ `generator method 'foo'`
1712
+ * - `({ foo: function*() {} })` ............ `generator method 'foo'`
1713
+ * - `({ ['foo']: function*() {} })` ........ `generator method 'foo'`
1714
+ * - `({ [foo]: function*() {} })` .......... `generator method`
1715
+ * - `({ *foo() {} })` ...................... `generator method 'foo'`
1716
+ * - `({ foo: async function foo() {} })` ... `async method 'foo'`
1717
+ * - `({ foo: async function() {} })` ....... `async method 'foo'`
1718
+ * - `({ ['foo']: async function() {} })` ... `async method 'foo'`
1719
+ * - `({ [foo]: async function() {} })` ..... `async method`
1720
+ * - `({ async foo() {} })` ................. `async method 'foo'`
1721
+ * - `({ get foo() {} })` ................... `getter 'foo'`
1722
+ * - `({ set foo(a) {} })` .................. `setter 'foo'`
1723
+ * - `class A { constructor() {} }` ......... `constructor`
1724
+ * - `class A { foo() {} }` ................. `method 'foo'`
1725
+ * - `class A { *foo() {} }` ................ `generator method 'foo'`
1726
+ * - `class A { async foo() {} }` ........... `async method 'foo'`
1727
+ * - `class A { ['foo']() {} }` ............. `method 'foo'`
1728
+ * - `class A { *['foo']() {} }` ............ `generator method 'foo'`
1729
+ * - `class A { async ['foo']() {} }` ....... `async method 'foo'`
1730
+ * - `class A { [foo]() {} }` ............... `method`
1731
+ * - `class A { *[foo]() {} }` .............. `generator method`
1732
+ * - `class A { async [foo]() {} }` ......... `async method`
1733
+ * - `class A { get foo() {} }` ............. `getter 'foo'`
1734
+ * - `class A { set foo(a) {} }` ............ `setter 'foo'`
1735
+ * - `class A { static foo() {} }` .......... `static method 'foo'`
1736
+ * - `class A { static *foo() {} }` ......... `static generator method 'foo'`
1737
+ * - `class A { static async foo() {} }` .... `static async method 'foo'`
1738
+ * - `class A { static get foo() {} }` ...... `static getter 'foo'`
1739
+ * - `class A { static set foo(a) {} }` ..... `static setter 'foo'`
1740
+ * - `class A { foo = () => {}; }` .......... `method 'foo'`
1741
+ * - `class A { foo = function() {}; }` ..... `method 'foo'`
1742
+ * - `class A { foo = function bar() {}; }` . `method 'foo'`
1743
+ * - `class A { static foo = () => {}; }` ... `static method 'foo'`
1744
+ * - `class A { '#foo' = () => {}; }` ....... `method '#foo'`
1745
+ * - `class A { #foo = () => {}; }` ......... `private method #foo`
1746
+ * - `class A { static #foo = () => {}; }` .. `static private method #foo`
1747
+ * - `class A { '#foo'() {} }` .............. `method '#foo'`
1748
+ * - `class A { #foo() {} }` ................ `private method #foo`
1749
+ * - `class A { static #foo() {} }` ......... `static private method #foo`
1750
+ * @param {ASTNode} node The function node to get.
1751
+ * @returns {string} The name and kind of the function node.
1752
+ */
1753
+ getFunctionNameWithKind(node) {
1754
+ const parent = node.parent;
1755
+ const tokens = [];
1756
+
1757
+ if (parent.type === "MethodDefinition" || parent.type === "PropertyDefinition") {
1758
+
1759
+ // The proposal uses `static` word consistently before visibility words: https://github.com/tc39/proposal-static-class-features
1760
+ if (parent.static) {
1761
+ tokens.push("static");
1762
+ }
1763
+ if (!parent.computed && parent.key.type === "PrivateIdentifier") {
1764
+ tokens.push("private");
1765
+ }
1766
+ }
1767
+ if (node.async) {
1768
+ tokens.push("async");
1769
+ }
1770
+ if (node.generator) {
1771
+ tokens.push("generator");
1772
+ }
1773
+
1774
+ if (parent.type === "Property" || parent.type === "MethodDefinition") {
1775
+ if (parent.kind === "constructor") {
1776
+ return "constructor";
1777
+ }
1778
+ if (parent.kind === "get") {
1779
+ tokens.push("getter");
1780
+ } else if (parent.kind === "set") {
1781
+ tokens.push("setter");
1782
+ } else {
1783
+ tokens.push("method");
1784
+ }
1785
+ } else if (parent.type === "PropertyDefinition") {
1786
+ tokens.push("method");
1787
+ } else {
1788
+ if (node.type === "ArrowFunctionExpression") {
1789
+ tokens.push("arrow");
1790
+ }
1791
+ tokens.push("function");
1792
+ }
1793
+
1794
+ if (parent.type === "Property" || parent.type === "MethodDefinition" || parent.type === "PropertyDefinition") {
1795
+ if (!parent.computed && parent.key.type === "PrivateIdentifier") {
1796
+ tokens.push(`#${parent.key.name}`);
1797
+ } else {
1798
+ const name = getStaticPropertyName(parent);
1799
+
1800
+ if (name !== null) {
1801
+ tokens.push(`'${name}'`);
1802
+ } else if (node.id) {
1803
+ tokens.push(`'${node.id.name}'`);
1804
+ }
1805
+ }
1806
+ } else if (node.id) {
1807
+ tokens.push(`'${node.id.name}'`);
1808
+ }
1809
+
1810
+ return tokens.join(" ");
1811
+ },
1812
+
1813
+ /**
1814
+ * Gets the location of the given function node for reporting.
1815
+ *
1816
+ * - `function foo() {}`
1817
+ * ^^^^^^^^^^^^
1818
+ * - `(function foo() {})`
1819
+ * ^^^^^^^^^^^^
1820
+ * - `(function() {})`
1821
+ * ^^^^^^^^
1822
+ * - `function* foo() {}`
1823
+ * ^^^^^^^^^^^^^
1824
+ * - `(function* foo() {})`
1825
+ * ^^^^^^^^^^^^^
1826
+ * - `(function*() {})`
1827
+ * ^^^^^^^^^
1828
+ * - `() => {}`
1829
+ * ^^
1830
+ * - `async () => {}`
1831
+ * ^^
1832
+ * - `({ foo: function foo() {} })`
1833
+ * ^^^^^^^^^^^^^^^^^
1834
+ * - `({ foo: function() {} })`
1835
+ * ^^^^^^^^^^^^^
1836
+ * - `({ ['foo']: function() {} })`
1837
+ * ^^^^^^^^^^^^^^^^^
1838
+ * - `({ [foo]: function() {} })`
1839
+ * ^^^^^^^^^^^^^^^
1840
+ * - `({ foo() {} })`
1841
+ * ^^^
1842
+ * - `({ foo: function* foo() {} })`
1843
+ * ^^^^^^^^^^^^^^^^^^
1844
+ * - `({ foo: function*() {} })`
1845
+ * ^^^^^^^^^^^^^^
1846
+ * - `({ ['foo']: function*() {} })`
1847
+ * ^^^^^^^^^^^^^^^^^^
1848
+ * - `({ [foo]: function*() {} })`
1849
+ * ^^^^^^^^^^^^^^^^
1850
+ * - `({ *foo() {} })`
1851
+ * ^^^^
1852
+ * - `({ foo: async function foo() {} })`
1853
+ * ^^^^^^^^^^^^^^^^^^^^^^^
1854
+ * - `({ foo: async function() {} })`
1855
+ * ^^^^^^^^^^^^^^^^^^^
1856
+ * - `({ ['foo']: async function() {} })`
1857
+ * ^^^^^^^^^^^^^^^^^^^^^^^
1858
+ * - `({ [foo]: async function() {} })`
1859
+ * ^^^^^^^^^^^^^^^^^^^^^
1860
+ * - `({ async foo() {} })`
1861
+ * ^^^^^^^^^
1862
+ * - `({ get foo() {} })`
1863
+ * ^^^^^^^
1864
+ * - `({ set foo(a) {} })`
1865
+ * ^^^^^^^
1866
+ * - `class A { constructor() {} }`
1867
+ * ^^^^^^^^^^^
1868
+ * - `class A { foo() {} }`
1869
+ * ^^^
1870
+ * - `class A { *foo() {} }`
1871
+ * ^^^^
1872
+ * - `class A { async foo() {} }`
1873
+ * ^^^^^^^^^
1874
+ * - `class A { ['foo']() {} }`
1875
+ * ^^^^^^^
1876
+ * - `class A { *['foo']() {} }`
1877
+ * ^^^^^^^^
1878
+ * - `class A { async ['foo']() {} }`
1879
+ * ^^^^^^^^^^^^^
1880
+ * - `class A { [foo]() {} }`
1881
+ * ^^^^^
1882
+ * - `class A { *[foo]() {} }`
1883
+ * ^^^^^^
1884
+ * - `class A { async [foo]() {} }`
1885
+ * ^^^^^^^^^^^
1886
+ * - `class A { get foo() {} }`
1887
+ * ^^^^^^^
1888
+ * - `class A { set foo(a) {} }`
1889
+ * ^^^^^^^
1890
+ * - `class A { static foo() {} }`
1891
+ * ^^^^^^^^^^
1892
+ * - `class A { static *foo() {} }`
1893
+ * ^^^^^^^^^^^
1894
+ * - `class A { static async foo() {} }`
1895
+ * ^^^^^^^^^^^^^^^^
1896
+ * - `class A { static get foo() {} }`
1897
+ * ^^^^^^^^^^^^^^
1898
+ * - `class A { static set foo(a) {} }`
1899
+ * ^^^^^^^^^^^^^^
1900
+ * - `class A { foo = function() {} }`
1901
+ * ^^^^^^^^^^^^^^
1902
+ * - `class A { static foo = function() {} }`
1903
+ * ^^^^^^^^^^^^^^^^^^^^^
1904
+ * - `class A { foo = (a, b) => {} }`
1905
+ * ^^^^^^
1906
+ * @param {ASTNode} node The function node to get.
1907
+ * @param {SourceCode} sourceCode The source code object to get tokens.
1908
+ * @returns {string} The location of the function node for reporting.
1909
+ */
1910
+ getFunctionHeadLoc(node, sourceCode) {
1911
+ const parent = node.parent;
1912
+ let start = null;
1913
+ let end = null;
1914
+
1915
+ if (parent.type === "Property" || parent.type === "MethodDefinition" || parent.type === "PropertyDefinition") {
1916
+ start = parent.loc.start;
1917
+ end = getOpeningParenOfParams(node, sourceCode).loc.start;
1918
+ } else if (node.type === "ArrowFunctionExpression") {
1919
+ const arrowToken = sourceCode.getTokenBefore(node.body, isArrowToken);
1920
+
1921
+ start = arrowToken.loc.start;
1922
+ end = arrowToken.loc.end;
1923
+ } else {
1924
+ start = node.loc.start;
1925
+ end = getOpeningParenOfParams(node, sourceCode).loc.start;
1926
+ }
1927
+
1928
+ return {
1929
+ start: Object.assign({}, start),
1930
+ end: Object.assign({}, end)
1931
+ };
1932
+ },
1933
+
1934
+ /**
1935
+ * Gets next location when the result is not out of bound, otherwise returns null.
1936
+ *
1937
+ * Assumptions:
1938
+ *
1939
+ * - The given location represents a valid location in the given source code.
1940
+ * - Columns are 0-based.
1941
+ * - Lines are 1-based.
1942
+ * - Column immediately after the last character in a line (not incl. linebreaks) is considered to be a valid location.
1943
+ * - If the source code ends with a linebreak, `sourceCode.lines` array will have an extra element (empty string) at the end.
1944
+ * The start (column 0) of that extra line is considered to be a valid location.
1945
+ *
1946
+ * Examples of successive locations (line, column):
1947
+ *
1948
+ * code: foo
1949
+ * locations: (1, 0) -> (1, 1) -> (1, 2) -> (1, 3) -> null
1950
+ *
1951
+ * code: foo<LF>
1952
+ * locations: (1, 0) -> (1, 1) -> (1, 2) -> (1, 3) -> (2, 0) -> null
1953
+ *
1954
+ * code: foo<CR><LF>
1955
+ * locations: (1, 0) -> (1, 1) -> (1, 2) -> (1, 3) -> (2, 0) -> null
1956
+ *
1957
+ * code: a<LF>b
1958
+ * locations: (1, 0) -> (1, 1) -> (2, 0) -> (2, 1) -> null
1959
+ *
1960
+ * code: a<LF>b<LF>
1961
+ * locations: (1, 0) -> (1, 1) -> (2, 0) -> (2, 1) -> (3, 0) -> null
1962
+ *
1963
+ * code: a<CR><LF>b<CR><LF>
1964
+ * locations: (1, 0) -> (1, 1) -> (2, 0) -> (2, 1) -> (3, 0) -> null
1965
+ *
1966
+ * code: a<LF><LF>
1967
+ * locations: (1, 0) -> (1, 1) -> (2, 0) -> (3, 0) -> null
1968
+ *
1969
+ * code: <LF>
1970
+ * locations: (1, 0) -> (2, 0) -> null
1971
+ *
1972
+ * code:
1973
+ * locations: (1, 0) -> null
1974
+ * @param {SourceCode} sourceCode The sourceCode
1975
+ * @param {{line: number, column: number}} location The location
1976
+ * @returns {{line: number, column: number} | null} Next location
1977
+ */
1978
+ getNextLocation(sourceCode, { line, column }) {
1979
+ if (column < sourceCode.lines[line - 1].length) {
1980
+ return {
1981
+ line,
1982
+ column: column + 1
1983
+ };
1984
+ }
1985
+
1986
+ if (line < sourceCode.lines.length) {
1987
+ return {
1988
+ line: line + 1,
1989
+ column: 0
1990
+ };
1991
+ }
1992
+
1993
+ return null;
1994
+ },
1995
+
1996
+ /**
1997
+ * Gets the parenthesized text of a node. This is similar to sourceCode.getText(node), but it also includes any parentheses
1998
+ * surrounding the node.
1999
+ * @param {SourceCode} sourceCode The source code object
2000
+ * @param {ASTNode} node An expression node
2001
+ * @returns {string} The text representing the node, with all surrounding parentheses included
2002
+ */
2003
+ getParenthesisedText(sourceCode, node) {
2004
+ let leftToken = sourceCode.getFirstToken(node);
2005
+ let rightToken = sourceCode.getLastToken(node);
2006
+
2007
+ while (
2008
+ sourceCode.getTokenBefore(leftToken) &&
2009
+ sourceCode.getTokenBefore(leftToken).type === "Punctuator" &&
2010
+ sourceCode.getTokenBefore(leftToken).value === "(" &&
2011
+ sourceCode.getTokenAfter(rightToken) &&
2012
+ sourceCode.getTokenAfter(rightToken).type === "Punctuator" &&
2013
+ sourceCode.getTokenAfter(rightToken).value === ")"
2014
+ ) {
2015
+ leftToken = sourceCode.getTokenBefore(leftToken);
2016
+ rightToken = sourceCode.getTokenAfter(rightToken);
2017
+ }
2018
+
2019
+ return sourceCode.getText().slice(leftToken.range[0], rightToken.range[1]);
2020
+ },
2021
+
2022
+ /**
2023
+ * Determine if a node has a possibility to be an Error object
2024
+ * @param {ASTNode} node ASTNode to check
2025
+ * @returns {boolean} True if there is a chance it contains an Error obj
2026
+ */
2027
+ couldBeError(node) {
2028
+ switch (node.type) {
2029
+ case "Identifier":
2030
+ case "CallExpression":
2031
+ case "NewExpression":
2032
+ case "MemberExpression":
2033
+ case "TaggedTemplateExpression":
2034
+ case "YieldExpression":
2035
+ case "AwaitExpression":
2036
+ case "ChainExpression":
2037
+ return true; // possibly an error object.
2038
+
2039
+ case "AssignmentExpression":
2040
+ if (["=", "&&="].includes(node.operator)) {
2041
+ return module.exports.couldBeError(node.right);
2042
+ }
2043
+
2044
+ if (["||=", "??="].includes(node.operator)) {
2045
+ return module.exports.couldBeError(node.left) || module.exports.couldBeError(node.right);
2046
+ }
2047
+
2048
+ /**
2049
+ * All other assignment operators are mathematical assignment operators (arithmetic or bitwise).
2050
+ * An assignment expression with a mathematical operator can either evaluate to a primitive value,
2051
+ * or throw, depending on the operands. Thus, it cannot evaluate to an `Error` object.
2052
+ */
2053
+ return false;
2054
+
2055
+ case "SequenceExpression": {
2056
+ const exprs = node.expressions;
2057
+
2058
+ return exprs.length !== 0 && module.exports.couldBeError(exprs[exprs.length - 1]);
2059
+ }
2060
+
2061
+ case "LogicalExpression":
2062
+
2063
+ /*
2064
+ * If the && operator short-circuits, the left side was falsy and therefore not an error, and if it
2065
+ * doesn't short-circuit, it takes the value from the right side, so the right side must always be
2066
+ * a plausible error. A future improvement could verify that the left side could be truthy by
2067
+ * excluding falsy literals.
2068
+ */
2069
+ if (node.operator === "&&") {
2070
+ return module.exports.couldBeError(node.right);
2071
+ }
2072
+
2073
+ return module.exports.couldBeError(node.left) || module.exports.couldBeError(node.right);
2074
+
2075
+ case "ConditionalExpression":
2076
+ return module.exports.couldBeError(node.consequent) || module.exports.couldBeError(node.alternate);
2077
+
2078
+ default:
2079
+ return false;
2080
+ }
2081
+ },
2082
+
2083
+ /**
2084
+ * Check if a given node is a numeric literal or not.
2085
+ * @param {ASTNode} node The node to check.
2086
+ * @returns {boolean} `true` if the node is a number or bigint literal.
2087
+ */
2088
+ isNumericLiteral(node) {
2089
+ return (
2090
+ node.type === "Literal" &&
2091
+ (typeof node.value === "number" || Boolean(node.bigint))
2092
+ );
2093
+ },
2094
+
2095
+ /**
2096
+ * Determines whether two tokens can safely be placed next to each other without merging into a single token
2097
+ * @param {Token|string} leftValue The left token. If this is a string, it will be tokenized and the last token will be used.
2098
+ * @param {Token|string} rightValue The right token. If this is a string, it will be tokenized and the first token will be used.
2099
+ * @returns {boolean} If the tokens cannot be safely placed next to each other, returns `false`. If the tokens can be placed
2100
+ * next to each other, behavior is undefined (although it should return `true` in most cases).
2101
+ */
2102
+ canTokensBeAdjacent(leftValue, rightValue) {
2103
+ const espreeOptions = {
2104
+ ecmaVersion: espree.latestEcmaVersion,
2105
+ comment: true,
2106
+ range: true
2107
+ };
2108
+
2109
+ let leftToken;
2110
+
2111
+ if (typeof leftValue === "string") {
2112
+ let tokens;
2113
+
2114
+ try {
2115
+ tokens = espree.tokenize(leftValue, espreeOptions);
2116
+ } catch {
2117
+ return false;
2118
+ }
2119
+
2120
+ const comments = tokens.comments;
2121
+
2122
+ leftToken = tokens[tokens.length - 1];
2123
+ if (comments.length) {
2124
+ const lastComment = comments[comments.length - 1];
2125
+
2126
+ if (!leftToken || lastComment.range[0] > leftToken.range[0]) {
2127
+ leftToken = lastComment;
2128
+ }
2129
+ }
2130
+ } else {
2131
+ leftToken = leftValue;
2132
+ }
2133
+
2134
+ /*
2135
+ * If a hashbang comment was passed as a token object from SourceCode,
2136
+ * its type will be "Shebang" because of the way ESLint itself handles hashbangs.
2137
+ * If a hashbang comment was passed in a string and then tokenized in this function,
2138
+ * its type will be "Hashbang" because of the way Espree tokenizes hashbangs.
2139
+ */
2140
+ if (leftToken.type === "Shebang" || leftToken.type === "Hashbang") {
2141
+ return false;
2142
+ }
2143
+
2144
+ let rightToken;
2145
+
2146
+ if (typeof rightValue === "string") {
2147
+ let tokens;
2148
+
2149
+ try {
2150
+ tokens = espree.tokenize(rightValue, espreeOptions);
2151
+ } catch {
2152
+ return false;
2153
+ }
2154
+
2155
+ const comments = tokens.comments;
2156
+
2157
+ rightToken = tokens[0];
2158
+ if (comments.length) {
2159
+ const firstComment = comments[0];
2160
+
2161
+ if (!rightToken || firstComment.range[0] < rightToken.range[0]) {
2162
+ rightToken = firstComment;
2163
+ }
2164
+ }
2165
+ } else {
2166
+ rightToken = rightValue;
2167
+ }
2168
+
2169
+ if (leftToken.type === "Punctuator" || rightToken.type === "Punctuator") {
2170
+ if (leftToken.type === "Punctuator" && rightToken.type === "Punctuator") {
2171
+ const PLUS_TOKENS = new Set(["+", "++"]);
2172
+ const MINUS_TOKENS = new Set(["-", "--"]);
2173
+
2174
+ return !(
2175
+ PLUS_TOKENS.has(leftToken.value) && PLUS_TOKENS.has(rightToken.value) ||
2176
+ MINUS_TOKENS.has(leftToken.value) && MINUS_TOKENS.has(rightToken.value)
2177
+ );
2178
+ }
2179
+ if (leftToken.type === "Punctuator" && leftToken.value === "/") {
2180
+ return !["Block", "Line", "RegularExpression"].includes(rightToken.type);
2181
+ }
2182
+ return true;
2183
+ }
2184
+
2185
+ if (
2186
+ leftToken.type === "String" || rightToken.type === "String" ||
2187
+ leftToken.type === "Template" || rightToken.type === "Template"
2188
+ ) {
2189
+ return true;
2190
+ }
2191
+
2192
+ if (leftToken.type !== "Numeric" && rightToken.type === "Numeric" && rightToken.value.startsWith(".")) {
2193
+ return true;
2194
+ }
2195
+
2196
+ if (leftToken.type === "Block" || rightToken.type === "Block" || rightToken.type === "Line") {
2197
+ return true;
2198
+ }
2199
+
2200
+ if (rightToken.type === "PrivateIdentifier") {
2201
+ return true;
2202
+ }
2203
+
2204
+ return false;
2205
+ },
2206
+
2207
+ /**
2208
+ * Get the `loc` object of a given name in a `/*globals` directive comment.
2209
+ * @param {SourceCode} sourceCode The source code to convert index to loc.
2210
+ * @param {Comment} comment The `/*globals` directive comment which include the name.
2211
+ * @param {string} name The name to find.
2212
+ * @returns {SourceLocation} The `loc` object.
2213
+ */
2214
+ getNameLocationInGlobalDirectiveComment(sourceCode, comment, name) {
2215
+ const namePattern = new RegExp(`[\\s,]${escapeRegExp(name)}(?:$|[\\s,:])`, "gu");
2216
+
2217
+ // To ignore the first text "global".
2218
+ namePattern.lastIndex = comment.value.indexOf("global") + 6;
2219
+
2220
+ // Search a given variable name.
2221
+ const match = namePattern.exec(comment.value);
2222
+
2223
+ // Convert the index to loc.
2224
+ const start = sourceCode.getLocFromIndex(
2225
+ comment.range[0] +
2226
+ "/*".length +
2227
+ (match ? match.index + 1 : 0)
2228
+ );
2229
+ const end = {
2230
+ line: start.line,
2231
+ column: start.column + (match ? name.length : 1)
2232
+ };
2233
+
2234
+ return { start, end };
2235
+ },
2236
+
2237
+ /**
2238
+ * Determines whether the given raw string contains an octal escape sequence
2239
+ * or a non-octal decimal escape sequence ("\8", "\9").
2240
+ *
2241
+ * "\1", "\2" ... "\7", "\8", "\9"
2242
+ * "\00", "\01" ... "\07", "\08", "\09"
2243
+ *
2244
+ * "\0", when not followed by a digit, is not an octal escape sequence.
2245
+ * @param {string} rawString A string in its raw representation.
2246
+ * @returns {boolean} `true` if the string contains at least one octal escape sequence
2247
+ * or at least one non-octal decimal escape sequence.
2248
+ */
2249
+ hasOctalOrNonOctalDecimalEscapeSequence(rawString) {
2250
+ return OCTAL_OR_NON_OCTAL_DECIMAL_ESCAPE_PATTERN.test(rawString);
2251
+ },
2252
+
2253
+ /**
2254
+ * Determines whether the given node is a template literal without expressions.
2255
+ * @param {ASTNode} node Node to check.
2256
+ * @returns {boolean} True if the node is a template literal without expressions.
2257
+ */
2258
+ isStaticTemplateLiteral(node) {
2259
+ return node.type === "TemplateLiteral" && node.expressions.length === 0;
2260
+ },
2261
+
2262
+ isReferenceToGlobalVariable,
2263
+ isLogicalExpression,
2264
+ isCoalesceExpression,
2265
+ isMixedLogicalAndCoalesceExpressions,
2266
+ isNullLiteral,
2267
+ getStaticStringValue,
2268
+ getStaticPropertyName,
2269
+ skipChainExpression,
2270
+ isSpecificId,
2271
+ isSpecificMemberAccess,
2272
+ equalLiteralValue,
2273
+ isSameReference,
2274
+ isLogicalAssignmentOperator,
2275
+ getSwitchCaseColonToken,
2276
+ getModuleExportName,
2277
+ isConstant,
2278
+ isTopLevelExpressionStatement,
2279
+ isDirective,
2280
+ isStartOfExpressionStatement,
2281
+ needsPrecedingSemicolon
2282
+ };