repoburg 1.3.86 → 1.3.88

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 (534) hide show
  1. package/backend/dist/src/ai-actions/ai-actions.controller.js +67 -0
  2. package/backend/dist/src/ai-actions/ai-actions.controller.js.map +1 -1
  3. package/backend/dist/src/application-state/application-state.controller.js +123 -0
  4. package/backend/dist/src/application-state/application-state.controller.js.map +1 -1
  5. package/backend/dist/src/application-state/dto/set-alibaba-config.dto.js +2 -0
  6. package/backend/dist/src/application-state/dto/set-alibaba-config.dto.js.map +1 -1
  7. package/backend/dist/src/application-state/dto/set-auto-context-fetch-enabled.dto.js +4 -0
  8. package/backend/dist/src/application-state/dto/set-auto-context-fetch-enabled.dto.js.map +1 -1
  9. package/backend/dist/src/application-state/dto/set-auto-send-to-ai-studio-enabled.dto.js +2 -0
  10. package/backend/dist/src/application-state/dto/set-auto-send-to-ai-studio-enabled.dto.js.map +1 -1
  11. package/backend/dist/src/application-state/dto/set-context-token-limit.dto.js +6 -0
  12. package/backend/dist/src/application-state/dto/set-context-token-limit.dto.js.map +1 -1
  13. package/backend/dist/src/application-state/dto/set-execution-strategy.dto.js +6 -0
  14. package/backend/dist/src/application-state/dto/set-execution-strategy.dto.js.map +1 -1
  15. package/backend/dist/src/application-state/dto/set-followup-token-limit.dto.js +5 -0
  16. package/backend/dist/src/application-state/dto/set-followup-token-limit.dto.js.map +1 -1
  17. package/backend/dist/src/application-state/dto/set-history-compression-enabled.dto.js +4 -0
  18. package/backend/dist/src/application-state/dto/set-history-compression-enabled.dto.js.map +1 -1
  19. package/backend/dist/src/application-state/dto/set-llm-retry-enabled.dto.js +4 -0
  20. package/backend/dist/src/application-state/dto/set-llm-retry-enabled.dto.js.map +1 -1
  21. package/backend/dist/src/application-state/dto/set-llm-retry-max-attempts.dto.js +6 -0
  22. package/backend/dist/src/application-state/dto/set-llm-retry-max-attempts.dto.js.map +1 -1
  23. package/backend/dist/src/application-state/dto/set-manual-llm-enabled.dto.js +4 -0
  24. package/backend/dist/src/application-state/dto/set-manual-llm-enabled.dto.js.map +1 -1
  25. package/backend/dist/src/application-state/dto/set-openrouter-config.dto.js +2 -0
  26. package/backend/dist/src/application-state/dto/set-openrouter-config.dto.js.map +1 -1
  27. package/backend/dist/src/application-state/dto/set-streaming-enabled.dto.js +2 -0
  28. package/backend/dist/src/application-state/dto/set-streaming-enabled.dto.js.map +1 -1
  29. package/backend/dist/src/application-state/dto/set-syntax-validation-enabled.dto.js +4 -0
  30. package/backend/dist/src/application-state/dto/set-syntax-validation-enabled.dto.js.map +1 -1
  31. package/backend/dist/src/application-state/dto/set-theme.dto.js +6 -0
  32. package/backend/dist/src/application-state/dto/set-theme.dto.js.map +1 -1
  33. package/backend/dist/src/application-state/dto/set-tools-enabled.dto.js +4 -0
  34. package/backend/dist/src/application-state/dto/set-tools-enabled.dto.js.map +1 -1
  35. package/backend/dist/src/application-state/dto/set-websocket-enabled.dto.js +2 -0
  36. package/backend/dist/src/application-state/dto/set-websocket-enabled.dto.js.map +1 -1
  37. package/backend/dist/src/application-state/dto/set-yolo-mode-message.dto.js +5 -0
  38. package/backend/dist/src/application-state/dto/set-yolo-mode-message.dto.js.map +1 -1
  39. package/backend/dist/src/application-state/dto/set-yolo-mode.dto.js +4 -0
  40. package/backend/dist/src/application-state/dto/set-yolo-mode.dto.js.map +1 -1
  41. package/backend/dist/src/application-state/dto/set-zai-config.dto.js +2 -0
  42. package/backend/dist/src/application-state/dto/set-zai-config.dto.js.map +1 -1
  43. package/backend/dist/src/context-snippets/context-snippets.controller.js +38 -0
  44. package/backend/dist/src/context-snippets/context-snippets.controller.js.map +1 -1
  45. package/backend/dist/src/context-templates/context-templates.controller.js +104 -0
  46. package/backend/dist/src/context-templates/context-templates.controller.js.map +1 -1
  47. package/backend/dist/src/context-templates/dto/context-template.dto.d.ts +1 -1
  48. package/backend/dist/src/context-templates/dto/context-template.dto.js +44 -1
  49. package/backend/dist/src/context-templates/dto/context-template.dto.js.map +1 -1
  50. package/backend/dist/src/core-entities/ai-action.entity.js +73 -0
  51. package/backend/dist/src/core-entities/ai-action.entity.js.map +1 -1
  52. package/backend/dist/src/core-entities/base.entity.js +18 -0
  53. package/backend/dist/src/core-entities/base.entity.js.map +1 -1
  54. package/backend/dist/src/core-entities/context-snippet.entity.js +12 -0
  55. package/backend/dist/src/core-entities/context-snippet.entity.js.map +1 -1
  56. package/backend/dist/src/core-entities/context-template.entity.d.ts +2 -4
  57. package/backend/dist/src/core-entities/context-template.entity.js +50 -7
  58. package/backend/dist/src/core-entities/context-template.entity.js.map +1 -1
  59. package/backend/dist/src/core-entities/custom-snippet.entity.js +16 -0
  60. package/backend/dist/src/core-entities/custom-snippet.entity.js.map +1 -1
  61. package/backend/dist/src/core-entities/custom-variable.entity.js +24 -0
  62. package/backend/dist/src/core-entities/custom-variable.entity.js.map +1 -1
  63. package/backend/dist/src/core-entities/enums.d.ts +64 -0
  64. package/backend/dist/src/core-entities/enums.js +77 -0
  65. package/backend/dist/src/core-entities/enums.js.map +1 -0
  66. package/backend/dist/src/core-entities/execution-log.entity.js +15 -0
  67. package/backend/dist/src/core-entities/execution-log.entity.js.map +1 -1
  68. package/backend/dist/src/core-entities/index.d.ts +1 -2
  69. package/backend/dist/src/core-entities/index.js +1 -2
  70. package/backend/dist/src/core-entities/index.js.map +1 -1
  71. package/backend/dist/src/core-entities/llm-call-log.entity.js +43 -0
  72. package/backend/dist/src/core-entities/llm-call-log.entity.js.map +1 -1
  73. package/backend/dist/src/core-entities/mcp-config.entity.js +27 -0
  74. package/backend/dist/src/core-entities/mcp-config.entity.js.map +1 -1
  75. package/backend/dist/src/core-entities/mcp-tool.entity.js +26 -0
  76. package/backend/dist/src/core-entities/mcp-tool.entity.js.map +1 -1
  77. package/backend/dist/src/core-entities/project.entity.js +13 -0
  78. package/backend/dist/src/core-entities/project.entity.js.map +1 -1
  79. package/backend/dist/src/core-entities/session-input.entity.js +94 -0
  80. package/backend/dist/src/core-entities/session-input.entity.js.map +1 -1
  81. package/backend/dist/src/core-entities/session.entity.d.ts +1 -1
  82. package/backend/dist/src/core-entities/session.entity.js +96 -1
  83. package/backend/dist/src/core-entities/session.entity.js.map +1 -1
  84. package/backend/dist/src/core-entities/system-prompt.entity.js +29 -0
  85. package/backend/dist/src/core-entities/system-prompt.entity.js.map +1 -1
  86. package/backend/dist/src/core-entities/tool-hook.entity.js +21 -0
  87. package/backend/dist/src/core-entities/tool-hook.entity.js.map +1 -1
  88. package/backend/dist/src/custom-snippets/custom-snippets.controller.js +48 -0
  89. package/backend/dist/src/custom-snippets/custom-snippets.controller.js.map +1 -1
  90. package/backend/dist/src/custom-variables/custom-variables.controller.js +46 -0
  91. package/backend/dist/src/custom-variables/custom-variables.controller.js.map +1 -1
  92. package/backend/dist/src/global-config/global-config.controller.js +12 -0
  93. package/backend/dist/src/global-config/global-config.controller.js.map +1 -1
  94. package/backend/dist/src/interactive-chat/streaming.controller.js +38 -0
  95. package/backend/dist/src/interactive-chat/streaming.controller.js.map +1 -1
  96. package/backend/dist/src/llm-call-logs/llm-call-logs.controller.js +96 -0
  97. package/backend/dist/src/llm-call-logs/llm-call-logs.controller.js.map +1 -1
  98. package/backend/dist/src/llm-provider/llm-provider.controller.js +18 -0
  99. package/backend/dist/src/llm-provider/llm-provider.controller.js.map +1 -1
  100. package/backend/dist/src/llm-responses/dto/submit-llm-response.dto.js +45 -0
  101. package/backend/dist/src/llm-responses/dto/submit-llm-response.dto.js.map +1 -1
  102. package/backend/dist/src/llm-responses/dto/sync-conversation.dto.js +24 -0
  103. package/backend/dist/src/llm-responses/dto/sync-conversation.dto.js.map +1 -1
  104. package/backend/dist/src/llm-responses/llm-responses.controller.js +32 -0
  105. package/backend/dist/src/llm-responses/llm-responses.controller.js.map +1 -1
  106. package/backend/dist/src/main.js +9 -0
  107. package/backend/dist/src/main.js.map +1 -1
  108. package/backend/dist/src/mcp/dto/batch-update-mcp-tools.dto.js +8 -0
  109. package/backend/dist/src/mcp/dto/batch-update-mcp-tools.dto.js.map +1 -1
  110. package/backend/dist/src/mcp/dto/create-mcp-config.dto.js +5 -0
  111. package/backend/dist/src/mcp/dto/create-mcp-config.dto.js.map +1 -1
  112. package/backend/dist/src/mcp/dto/update-mcp-config.dto.js +2 -0
  113. package/backend/dist/src/mcp/dto/update-mcp-config.dto.js.map +1 -1
  114. package/backend/dist/src/mcp/mcp.controller.js +21 -0
  115. package/backend/dist/src/mcp/mcp.controller.js.map +1 -1
  116. package/backend/dist/src/projects/dto/project.dto.js +14 -0
  117. package/backend/dist/src/projects/dto/project.dto.js.map +1 -1
  118. package/backend/dist/src/projects/projects.controller.js +31 -0
  119. package/backend/dist/src/projects/projects.controller.js.map +1 -1
  120. package/backend/dist/src/session-inputs/dto/session-input.dto.d.ts +12 -1
  121. package/backend/dist/src/session-inputs/dto/session-input.dto.js +103 -1
  122. package/backend/dist/src/session-inputs/dto/session-input.dto.js.map +1 -1
  123. package/backend/dist/src/session-inputs/session-input.subscriber.js.map +1 -1
  124. package/backend/dist/src/session-inputs/session-inputs.controller.d.ts +2 -1
  125. package/backend/dist/src/session-inputs/session-inputs.controller.js +84 -0
  126. package/backend/dist/src/session-inputs/session-inputs.controller.js.map +1 -1
  127. package/backend/dist/src/session-inputs/session-inputs.module.js +1 -0
  128. package/backend/dist/src/session-inputs/session-inputs.module.js.map +1 -1
  129. package/backend/dist/src/session-inputs/session-inputs.service.d.ts +7 -3
  130. package/backend/dist/src/session-inputs/session-inputs.service.js +51 -4
  131. package/backend/dist/src/session-inputs/session-inputs.service.js.map +1 -1
  132. package/backend/dist/src/sessions/dto/session.dto.js +91 -0
  133. package/backend/dist/src/sessions/dto/session.dto.js.map +1 -1
  134. package/backend/dist/src/sessions/sessions.controller.js +112 -0
  135. package/backend/dist/src/sessions/sessions.controller.js.map +1 -1
  136. package/backend/dist/src/sub-agents/dto/create-sub-agent.dto.js +26 -0
  137. package/backend/dist/src/sub-agents/dto/create-sub-agent.dto.js.map +1 -1
  138. package/backend/dist/src/sub-agents/dto/update-sub-agent.dto.js +22 -0
  139. package/backend/dist/src/sub-agents/dto/update-sub-agent.dto.js.map +1 -1
  140. package/backend/dist/src/sub-agents/sub-agent-run.entity.d.ts +2 -7
  141. package/backend/dist/src/sub-agents/sub-agent-run.entity.js +63 -9
  142. package/backend/dist/src/sub-agents/sub-agent-run.entity.js.map +1 -1
  143. package/backend/dist/src/sub-agents/sub-agent-runs.controller.js +63 -0
  144. package/backend/dist/src/sub-agents/sub-agent-runs.controller.js.map +1 -1
  145. package/backend/dist/src/sub-agents/sub-agent.entity.js +47 -0
  146. package/backend/dist/src/sub-agents/sub-agent.entity.js.map +1 -1
  147. package/backend/dist/src/sub-agents/sub-agents.controller.js +25 -0
  148. package/backend/dist/src/sub-agents/sub-agents.controller.js.map +1 -1
  149. package/backend/dist/src/system-prompts/dto/set-enabled-tools.dto.js +9 -0
  150. package/backend/dist/src/system-prompts/dto/set-enabled-tools.dto.js.map +1 -1
  151. package/backend/dist/src/system-prompts/dto/system-prompt.dto.js +43 -0
  152. package/backend/dist/src/system-prompts/dto/system-prompt.dto.js.map +1 -1
  153. package/backend/dist/src/system-prompts/dto/toggle-tool.dto.js +5 -0
  154. package/backend/dist/src/system-prompts/dto/toggle-tool.dto.js.map +1 -1
  155. package/backend/dist/src/system-prompts/system-prompts.controller.js +80 -0
  156. package/backend/dist/src/system-prompts/system-prompts.controller.js.map +1 -1
  157. package/backend/dist/src/tool-hooks/dto/create-tool-hook.dto.js +14 -0
  158. package/backend/dist/src/tool-hooks/dto/create-tool-hook.dto.js.map +1 -1
  159. package/backend/dist/src/tool-hooks/dto/update-tool-hook.dto.js +11 -0
  160. package/backend/dist/src/tool-hooks/dto/update-tool-hook.dto.js.map +1 -1
  161. package/backend/dist/src/tool-hooks/tool-hooks.controller.js +52 -0
  162. package/backend/dist/src/tool-hooks/tool-hooks.controller.js.map +1 -1
  163. package/backend/dist/src/visual-editor/visual-editor.controller.js +15 -0
  164. package/backend/dist/src/visual-editor/visual-editor.controller.js.map +1 -1
  165. package/backend/dist/src/workspace/workspace.controller.js +41 -0
  166. package/backend/dist/src/workspace/workspace.controller.js.map +1 -1
  167. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  168. package/{daemon/node_modules/undici-types → backend/node_modules/@eslint/eslintrc}/LICENSE +5 -7
  169. package/backend/node_modules/@eslint/eslintrc/README.md +115 -0
  170. package/backend/node_modules/@eslint/eslintrc/conf/config-schema.js +79 -0
  171. package/backend/node_modules/@eslint/eslintrc/conf/environments.js +215 -0
  172. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs +1104 -0
  173. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs.map +1 -0
  174. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc.cjs +4344 -0
  175. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc.cjs.map +1 -0
  176. package/backend/node_modules/@eslint/eslintrc/lib/cascading-config-array-factory.js +532 -0
  177. package/backend/node_modules/@eslint/eslintrc/lib/config-array/config-array.js +523 -0
  178. package/backend/node_modules/@eslint/eslintrc/lib/config-array/config-dependency.js +124 -0
  179. package/backend/node_modules/@eslint/eslintrc/lib/config-array/extracted-config.js +145 -0
  180. package/backend/node_modules/@eslint/eslintrc/lib/config-array/ignore-pattern.js +238 -0
  181. package/backend/node_modules/@eslint/eslintrc/lib/config-array/index.js +19 -0
  182. package/backend/node_modules/@eslint/eslintrc/lib/config-array/override-tester.js +225 -0
  183. package/backend/node_modules/@eslint/eslintrc/lib/config-array-factory.js +1151 -0
  184. package/backend/node_modules/@eslint/eslintrc/lib/flat-compat.js +318 -0
  185. package/backend/node_modules/@eslint/eslintrc/lib/index-universal.js +29 -0
  186. package/backend/node_modules/@eslint/eslintrc/lib/index.js +56 -0
  187. package/backend/node_modules/@eslint/eslintrc/lib/shared/ajv.js +191 -0
  188. package/backend/node_modules/@eslint/eslintrc/lib/shared/config-ops.js +135 -0
  189. package/backend/node_modules/@eslint/eslintrc/lib/shared/config-validator.js +325 -0
  190. package/backend/node_modules/@eslint/eslintrc/lib/shared/deprecation-warnings.js +63 -0
  191. package/backend/node_modules/@eslint/eslintrc/lib/shared/naming.js +96 -0
  192. package/backend/node_modules/@eslint/eslintrc/lib/shared/relative-module-resolver.js +42 -0
  193. package/backend/node_modules/@eslint/eslintrc/lib/shared/types.js +149 -0
  194. package/backend/node_modules/@eslint/eslintrc/package.json +82 -0
  195. package/backend/node_modules/@eslint/eslintrc/universal.js +9 -0
  196. package/backend/package.json +1 -3
  197. package/package.json +3 -1
  198. package/visual-editor-proxy/dist/tsconfig.tsbuildinfo +1 -1
  199. package/backend/node_modules/@types/node/LICENSE +0 -21
  200. package/backend/node_modules/@types/node/README.md +0 -15
  201. package/backend/node_modules/@types/node/assert/strict.d.ts +0 -8
  202. package/backend/node_modules/@types/node/assert.d.ts +0 -1044
  203. package/backend/node_modules/@types/node/async_hooks.d.ts +0 -605
  204. package/backend/node_modules/@types/node/buffer.buffer.d.ts +0 -462
  205. package/backend/node_modules/@types/node/buffer.d.ts +0 -1932
  206. package/backend/node_modules/@types/node/child_process.d.ts +0 -1452
  207. package/backend/node_modules/@types/node/cluster.d.ts +0 -578
  208. package/backend/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  209. package/backend/node_modules/@types/node/compatibility/index.d.ts +0 -9
  210. package/backend/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  211. package/backend/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  212. package/backend/node_modules/@types/node/console.d.ts +0 -452
  213. package/backend/node_modules/@types/node/constants.d.ts +0 -21
  214. package/backend/node_modules/@types/node/crypto.d.ts +0 -4570
  215. package/backend/node_modules/@types/node/dgram.d.ts +0 -596
  216. package/backend/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
  217. package/backend/node_modules/@types/node/dns/promises.d.ts +0 -479
  218. package/backend/node_modules/@types/node/dns.d.ts +0 -871
  219. package/backend/node_modules/@types/node/domain.d.ts +0 -170
  220. package/backend/node_modules/@types/node/events.d.ts +0 -931
  221. package/backend/node_modules/@types/node/fs/promises.d.ts +0 -1248
  222. package/backend/node_modules/@types/node/fs.d.ts +0 -4362
  223. package/backend/node_modules/@types/node/globals.d.ts +0 -170
  224. package/backend/node_modules/@types/node/globals.typedarray.d.ts +0 -21
  225. package/backend/node_modules/@types/node/http.d.ts +0 -2031
  226. package/backend/node_modules/@types/node/http2.d.ts +0 -2623
  227. package/backend/node_modules/@types/node/https.d.ts +0 -549
  228. package/backend/node_modules/@types/node/index.d.ts +0 -93
  229. package/backend/node_modules/@types/node/inspector.generated.d.ts +0 -3966
  230. package/backend/node_modules/@types/node/module.d.ts +0 -539
  231. package/backend/node_modules/@types/node/net.d.ts +0 -1011
  232. package/backend/node_modules/@types/node/os.d.ts +0 -495
  233. package/backend/node_modules/@types/node/package.json +0 -140
  234. package/backend/node_modules/@types/node/path.d.ts +0 -200
  235. package/backend/node_modules/@types/node/perf_hooks.d.ts +0 -963
  236. package/backend/node_modules/@types/node/process.d.ts +0 -1956
  237. package/backend/node_modules/@types/node/punycode.d.ts +0 -117
  238. package/backend/node_modules/@types/node/querystring.d.ts +0 -152
  239. package/backend/node_modules/@types/node/readline/promises.d.ts +0 -162
  240. package/backend/node_modules/@types/node/readline.d.ts +0 -589
  241. package/backend/node_modules/@types/node/repl.d.ts +0 -430
  242. package/backend/node_modules/@types/node/sea.d.ts +0 -153
  243. package/backend/node_modules/@types/node/stream/consumers.d.ts +0 -38
  244. package/backend/node_modules/@types/node/stream/promises.d.ts +0 -90
  245. package/backend/node_modules/@types/node/stream/web.d.ts +0 -533
  246. package/backend/node_modules/@types/node/stream.d.ts +0 -1668
  247. package/backend/node_modules/@types/node/string_decoder.d.ts +0 -67
  248. package/backend/node_modules/@types/node/test.d.ts +0 -1807
  249. package/backend/node_modules/@types/node/timers/promises.d.ts +0 -108
  250. package/backend/node_modules/@types/node/timers.d.ts +0 -286
  251. package/backend/node_modules/@types/node/tls.d.ts +0 -1231
  252. package/backend/node_modules/@types/node/trace_events.d.ts +0 -197
  253. package/backend/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -460
  254. package/backend/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -19
  255. package/backend/node_modules/@types/node/ts5.6/index.d.ts +0 -93
  256. package/backend/node_modules/@types/node/tty.d.ts +0 -208
  257. package/backend/node_modules/@types/node/url.d.ts +0 -964
  258. package/backend/node_modules/@types/node/util.d.ts +0 -2331
  259. package/backend/node_modules/@types/node/v8.d.ts +0 -808
  260. package/backend/node_modules/@types/node/vm.d.ts +0 -1030
  261. package/backend/node_modules/@types/node/wasi.d.ts +0 -181
  262. package/backend/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
  263. package/backend/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  264. package/backend/node_modules/@types/node/web-globals/events.d.ts +0 -94
  265. package/backend/node_modules/@types/node/web-globals/fetch.d.ts +0 -46
  266. package/backend/node_modules/@types/node/worker_threads.d.ts +0 -743
  267. package/backend/node_modules/@types/node/zlib.d.ts +0 -539
  268. package/backend/node_modules/debug/LICENSE +0 -20
  269. package/backend/node_modules/debug/README.md +0 -481
  270. package/backend/node_modules/debug/package.json +0 -64
  271. package/backend/node_modules/debug/src/browser.js +0 -272
  272. package/backend/node_modules/debug/src/common.js +0 -292
  273. package/backend/node_modules/debug/src/index.js +0 -10
  274. package/backend/node_modules/debug/src/node.js +0 -263
  275. package/backend/node_modules/undici-types/LICENSE +0 -21
  276. package/backend/node_modules/undici-types/README.md +0 -6
  277. package/backend/node_modules/undici-types/agent.d.ts +0 -31
  278. package/backend/node_modules/undici-types/api.d.ts +0 -43
  279. package/backend/node_modules/undici-types/balanced-pool.d.ts +0 -29
  280. package/backend/node_modules/undici-types/cache.d.ts +0 -36
  281. package/backend/node_modules/undici-types/client.d.ts +0 -108
  282. package/backend/node_modules/undici-types/connector.d.ts +0 -34
  283. package/backend/node_modules/undici-types/content-type.d.ts +0 -21
  284. package/backend/node_modules/undici-types/cookies.d.ts +0 -28
  285. package/backend/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
  286. package/backend/node_modules/undici-types/dispatcher.d.ts +0 -256
  287. package/backend/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
  288. package/backend/node_modules/undici-types/errors.d.ts +0 -149
  289. package/backend/node_modules/undici-types/eventsource.d.ts +0 -61
  290. package/backend/node_modules/undici-types/fetch.d.ts +0 -209
  291. package/backend/node_modules/undici-types/file.d.ts +0 -39
  292. package/backend/node_modules/undici-types/filereader.d.ts +0 -54
  293. package/backend/node_modules/undici-types/formdata.d.ts +0 -108
  294. package/backend/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  295. package/backend/node_modules/undici-types/global-origin.d.ts +0 -7
  296. package/backend/node_modules/undici-types/handlers.d.ts +0 -15
  297. package/backend/node_modules/undici-types/header.d.ts +0 -4
  298. package/backend/node_modules/undici-types/index.d.ts +0 -71
  299. package/backend/node_modules/undici-types/interceptors.d.ts +0 -17
  300. package/backend/node_modules/undici-types/mock-agent.d.ts +0 -50
  301. package/backend/node_modules/undici-types/mock-client.d.ts +0 -25
  302. package/backend/node_modules/undici-types/mock-errors.d.ts +0 -12
  303. package/backend/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  304. package/backend/node_modules/undici-types/mock-pool.d.ts +0 -25
  305. package/backend/node_modules/undici-types/package.json +0 -55
  306. package/backend/node_modules/undici-types/patch.d.ts +0 -33
  307. package/backend/node_modules/undici-types/pool-stats.d.ts +0 -19
  308. package/backend/node_modules/undici-types/pool.d.ts +0 -39
  309. package/backend/node_modules/undici-types/proxy-agent.d.ts +0 -28
  310. package/backend/node_modules/undici-types/readable.d.ts +0 -65
  311. package/backend/node_modules/undici-types/retry-agent.d.ts +0 -8
  312. package/backend/node_modules/undici-types/retry-handler.d.ts +0 -116
  313. package/backend/node_modules/undici-types/util.d.ts +0 -18
  314. package/backend/node_modules/undici-types/webidl.d.ts +0 -228
  315. package/backend/node_modules/undici-types/websocket.d.ts +0 -150
  316. package/daemon/node_modules/@types/node/LICENSE +0 -21
  317. package/daemon/node_modules/@types/node/README.md +0 -15
  318. package/daemon/node_modules/@types/node/assert/strict.d.ts +0 -8
  319. package/daemon/node_modules/@types/node/assert.d.ts +0 -1044
  320. package/daemon/node_modules/@types/node/async_hooks.d.ts +0 -605
  321. package/daemon/node_modules/@types/node/buffer.buffer.d.ts +0 -462
  322. package/daemon/node_modules/@types/node/buffer.d.ts +0 -1932
  323. package/daemon/node_modules/@types/node/child_process.d.ts +0 -1452
  324. package/daemon/node_modules/@types/node/cluster.d.ts +0 -578
  325. package/daemon/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  326. package/daemon/node_modules/@types/node/compatibility/index.d.ts +0 -9
  327. package/daemon/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  328. package/daemon/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  329. package/daemon/node_modules/@types/node/console.d.ts +0 -452
  330. package/daemon/node_modules/@types/node/constants.d.ts +0 -21
  331. package/daemon/node_modules/@types/node/crypto.d.ts +0 -4570
  332. package/daemon/node_modules/@types/node/dgram.d.ts +0 -596
  333. package/daemon/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
  334. package/daemon/node_modules/@types/node/dns/promises.d.ts +0 -479
  335. package/daemon/node_modules/@types/node/dns.d.ts +0 -871
  336. package/daemon/node_modules/@types/node/domain.d.ts +0 -170
  337. package/daemon/node_modules/@types/node/events.d.ts +0 -931
  338. package/daemon/node_modules/@types/node/fs/promises.d.ts +0 -1248
  339. package/daemon/node_modules/@types/node/fs.d.ts +0 -4362
  340. package/daemon/node_modules/@types/node/globals.d.ts +0 -170
  341. package/daemon/node_modules/@types/node/globals.typedarray.d.ts +0 -21
  342. package/daemon/node_modules/@types/node/http.d.ts +0 -2031
  343. package/daemon/node_modules/@types/node/http2.d.ts +0 -2623
  344. package/daemon/node_modules/@types/node/https.d.ts +0 -549
  345. package/daemon/node_modules/@types/node/index.d.ts +0 -93
  346. package/daemon/node_modules/@types/node/inspector.generated.d.ts +0 -3966
  347. package/daemon/node_modules/@types/node/module.d.ts +0 -539
  348. package/daemon/node_modules/@types/node/net.d.ts +0 -1011
  349. package/daemon/node_modules/@types/node/os.d.ts +0 -495
  350. package/daemon/node_modules/@types/node/package.json +0 -140
  351. package/daemon/node_modules/@types/node/path.d.ts +0 -200
  352. package/daemon/node_modules/@types/node/perf_hooks.d.ts +0 -963
  353. package/daemon/node_modules/@types/node/process.d.ts +0 -1956
  354. package/daemon/node_modules/@types/node/punycode.d.ts +0 -117
  355. package/daemon/node_modules/@types/node/querystring.d.ts +0 -152
  356. package/daemon/node_modules/@types/node/readline/promises.d.ts +0 -162
  357. package/daemon/node_modules/@types/node/readline.d.ts +0 -589
  358. package/daemon/node_modules/@types/node/repl.d.ts +0 -430
  359. package/daemon/node_modules/@types/node/sea.d.ts +0 -153
  360. package/daemon/node_modules/@types/node/stream/consumers.d.ts +0 -38
  361. package/daemon/node_modules/@types/node/stream/promises.d.ts +0 -90
  362. package/daemon/node_modules/@types/node/stream/web.d.ts +0 -533
  363. package/daemon/node_modules/@types/node/stream.d.ts +0 -1668
  364. package/daemon/node_modules/@types/node/string_decoder.d.ts +0 -67
  365. package/daemon/node_modules/@types/node/test.d.ts +0 -1807
  366. package/daemon/node_modules/@types/node/timers/promises.d.ts +0 -108
  367. package/daemon/node_modules/@types/node/timers.d.ts +0 -286
  368. package/daemon/node_modules/@types/node/tls.d.ts +0 -1231
  369. package/daemon/node_modules/@types/node/trace_events.d.ts +0 -197
  370. package/daemon/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -460
  371. package/daemon/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -19
  372. package/daemon/node_modules/@types/node/ts5.6/index.d.ts +0 -93
  373. package/daemon/node_modules/@types/node/tty.d.ts +0 -208
  374. package/daemon/node_modules/@types/node/url.d.ts +0 -964
  375. package/daemon/node_modules/@types/node/util.d.ts +0 -2331
  376. package/daemon/node_modules/@types/node/v8.d.ts +0 -808
  377. package/daemon/node_modules/@types/node/vm.d.ts +0 -1030
  378. package/daemon/node_modules/@types/node/wasi.d.ts +0 -181
  379. package/daemon/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
  380. package/daemon/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  381. package/daemon/node_modules/@types/node/web-globals/events.d.ts +0 -94
  382. package/daemon/node_modules/@types/node/web-globals/fetch.d.ts +0 -46
  383. package/daemon/node_modules/@types/node/worker_threads.d.ts +0 -743
  384. package/daemon/node_modules/@types/node/zlib.d.ts +0 -539
  385. package/daemon/node_modules/undici-types/README.md +0 -6
  386. package/daemon/node_modules/undici-types/agent.d.ts +0 -31
  387. package/daemon/node_modules/undici-types/api.d.ts +0 -43
  388. package/daemon/node_modules/undici-types/balanced-pool.d.ts +0 -29
  389. package/daemon/node_modules/undici-types/cache.d.ts +0 -36
  390. package/daemon/node_modules/undici-types/client.d.ts +0 -108
  391. package/daemon/node_modules/undici-types/connector.d.ts +0 -34
  392. package/daemon/node_modules/undici-types/content-type.d.ts +0 -21
  393. package/daemon/node_modules/undici-types/cookies.d.ts +0 -28
  394. package/daemon/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
  395. package/daemon/node_modules/undici-types/dispatcher.d.ts +0 -256
  396. package/daemon/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
  397. package/daemon/node_modules/undici-types/errors.d.ts +0 -149
  398. package/daemon/node_modules/undici-types/eventsource.d.ts +0 -61
  399. package/daemon/node_modules/undici-types/fetch.d.ts +0 -209
  400. package/daemon/node_modules/undici-types/file.d.ts +0 -39
  401. package/daemon/node_modules/undici-types/filereader.d.ts +0 -54
  402. package/daemon/node_modules/undici-types/formdata.d.ts +0 -108
  403. package/daemon/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  404. package/daemon/node_modules/undici-types/global-origin.d.ts +0 -7
  405. package/daemon/node_modules/undici-types/handlers.d.ts +0 -15
  406. package/daemon/node_modules/undici-types/header.d.ts +0 -4
  407. package/daemon/node_modules/undici-types/index.d.ts +0 -71
  408. package/daemon/node_modules/undici-types/interceptors.d.ts +0 -17
  409. package/daemon/node_modules/undici-types/mock-agent.d.ts +0 -50
  410. package/daemon/node_modules/undici-types/mock-client.d.ts +0 -25
  411. package/daemon/node_modules/undici-types/mock-errors.d.ts +0 -12
  412. package/daemon/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  413. package/daemon/node_modules/undici-types/mock-pool.d.ts +0 -25
  414. package/daemon/node_modules/undici-types/package.json +0 -55
  415. package/daemon/node_modules/undici-types/patch.d.ts +0 -33
  416. package/daemon/node_modules/undici-types/pool-stats.d.ts +0 -19
  417. package/daemon/node_modules/undici-types/pool.d.ts +0 -39
  418. package/daemon/node_modules/undici-types/proxy-agent.d.ts +0 -28
  419. package/daemon/node_modules/undici-types/readable.d.ts +0 -65
  420. package/daemon/node_modules/undici-types/retry-agent.d.ts +0 -8
  421. package/daemon/node_modules/undici-types/retry-handler.d.ts +0 -116
  422. package/daemon/node_modules/undici-types/util.d.ts +0 -18
  423. package/daemon/node_modules/undici-types/webidl.d.ts +0 -228
  424. package/daemon/node_modules/undici-types/websocket.d.ts +0 -150
  425. package/visual-editor-proxy/node_modules/@types/node/LICENSE +0 -21
  426. package/visual-editor-proxy/node_modules/@types/node/README.md +0 -15
  427. package/visual-editor-proxy/node_modules/@types/node/assert/strict.d.ts +0 -8
  428. package/visual-editor-proxy/node_modules/@types/node/assert.d.ts +0 -1062
  429. package/visual-editor-proxy/node_modules/@types/node/async_hooks.d.ts +0 -605
  430. package/visual-editor-proxy/node_modules/@types/node/buffer.buffer.d.ts +0 -462
  431. package/visual-editor-proxy/node_modules/@types/node/buffer.d.ts +0 -1932
  432. package/visual-editor-proxy/node_modules/@types/node/child_process.d.ts +0 -1458
  433. package/visual-editor-proxy/node_modules/@types/node/cluster.d.ts +0 -577
  434. package/visual-editor-proxy/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  435. package/visual-editor-proxy/node_modules/@types/node/compatibility/index.d.ts +0 -9
  436. package/visual-editor-proxy/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  437. package/visual-editor-proxy/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  438. package/visual-editor-proxy/node_modules/@types/node/console.d.ts +0 -452
  439. package/visual-editor-proxy/node_modules/@types/node/constants.d.ts +0 -21
  440. package/visual-editor-proxy/node_modules/@types/node/crypto.d.ts +0 -4570
  441. package/visual-editor-proxy/node_modules/@types/node/dgram.d.ts +0 -596
  442. package/visual-editor-proxy/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
  443. package/visual-editor-proxy/node_modules/@types/node/dns/promises.d.ts +0 -479
  444. package/visual-editor-proxy/node_modules/@types/node/dns.d.ts +0 -871
  445. package/visual-editor-proxy/node_modules/@types/node/domain.d.ts +0 -170
  446. package/visual-editor-proxy/node_modules/@types/node/events.d.ts +0 -977
  447. package/visual-editor-proxy/node_modules/@types/node/fs/promises.d.ts +0 -1248
  448. package/visual-editor-proxy/node_modules/@types/node/fs.d.ts +0 -4362
  449. package/visual-editor-proxy/node_modules/@types/node/globals.d.ts +0 -172
  450. package/visual-editor-proxy/node_modules/@types/node/globals.typedarray.d.ts +0 -21
  451. package/visual-editor-proxy/node_modules/@types/node/http.d.ts +0 -2030
  452. package/visual-editor-proxy/node_modules/@types/node/http2.d.ts +0 -2624
  453. package/visual-editor-proxy/node_modules/@types/node/https.d.ts +0 -546
  454. package/visual-editor-proxy/node_modules/@types/node/index.d.ts +0 -93
  455. package/visual-editor-proxy/node_modules/@types/node/inspector.generated.d.ts +0 -3966
  456. package/visual-editor-proxy/node_modules/@types/node/module.d.ts +0 -539
  457. package/visual-editor-proxy/node_modules/@types/node/net.d.ts +0 -1011
  458. package/visual-editor-proxy/node_modules/@types/node/os.d.ts +0 -505
  459. package/visual-editor-proxy/node_modules/@types/node/package.json +0 -140
  460. package/visual-editor-proxy/node_modules/@types/node/path.d.ts +0 -200
  461. package/visual-editor-proxy/node_modules/@types/node/perf_hooks.d.ts +0 -961
  462. package/visual-editor-proxy/node_modules/@types/node/process.d.ts +0 -1944
  463. package/visual-editor-proxy/node_modules/@types/node/punycode.d.ts +0 -117
  464. package/visual-editor-proxy/node_modules/@types/node/querystring.d.ts +0 -152
  465. package/visual-editor-proxy/node_modules/@types/node/readline/promises.d.ts +0 -162
  466. package/visual-editor-proxy/node_modules/@types/node/readline.d.ts +0 -589
  467. package/visual-editor-proxy/node_modules/@types/node/repl.d.ts +0 -430
  468. package/visual-editor-proxy/node_modules/@types/node/sea.d.ts +0 -153
  469. package/visual-editor-proxy/node_modules/@types/node/stream/consumers.d.ts +0 -38
  470. package/visual-editor-proxy/node_modules/@types/node/stream/promises.d.ts +0 -90
  471. package/visual-editor-proxy/node_modules/@types/node/stream/web.d.ts +0 -533
  472. package/visual-editor-proxy/node_modules/@types/node/stream.d.ts +0 -1675
  473. package/visual-editor-proxy/node_modules/@types/node/string_decoder.d.ts +0 -67
  474. package/visual-editor-proxy/node_modules/@types/node/test.d.ts +0 -1787
  475. package/visual-editor-proxy/node_modules/@types/node/timers/promises.d.ts +0 -108
  476. package/visual-editor-proxy/node_modules/@types/node/timers.d.ts +0 -286
  477. package/visual-editor-proxy/node_modules/@types/node/tls.d.ts +0 -1231
  478. package/visual-editor-proxy/node_modules/@types/node/trace_events.d.ts +0 -197
  479. package/visual-editor-proxy/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -460
  480. package/visual-editor-proxy/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -19
  481. package/visual-editor-proxy/node_modules/@types/node/ts5.6/index.d.ts +0 -93
  482. package/visual-editor-proxy/node_modules/@types/node/tty.d.ts +0 -208
  483. package/visual-editor-proxy/node_modules/@types/node/url.d.ts +0 -964
  484. package/visual-editor-proxy/node_modules/@types/node/util.d.ts +0 -2331
  485. package/visual-editor-proxy/node_modules/@types/node/v8.d.ts +0 -808
  486. package/visual-editor-proxy/node_modules/@types/node/vm.d.ts +0 -1000
  487. package/visual-editor-proxy/node_modules/@types/node/wasi.d.ts +0 -181
  488. package/visual-editor-proxy/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
  489. package/visual-editor-proxy/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  490. package/visual-editor-proxy/node_modules/@types/node/web-globals/events.d.ts +0 -97
  491. package/visual-editor-proxy/node_modules/@types/node/web-globals/fetch.d.ts +0 -46
  492. package/visual-editor-proxy/node_modules/@types/node/worker_threads.d.ts +0 -715
  493. package/visual-editor-proxy/node_modules/@types/node/zlib.d.ts +0 -539
  494. package/visual-editor-proxy/node_modules/undici-types/LICENSE +0 -21
  495. package/visual-editor-proxy/node_modules/undici-types/README.md +0 -6
  496. package/visual-editor-proxy/node_modules/undici-types/agent.d.ts +0 -31
  497. package/visual-editor-proxy/node_modules/undici-types/api.d.ts +0 -43
  498. package/visual-editor-proxy/node_modules/undici-types/balanced-pool.d.ts +0 -29
  499. package/visual-editor-proxy/node_modules/undici-types/cache.d.ts +0 -36
  500. package/visual-editor-proxy/node_modules/undici-types/client.d.ts +0 -108
  501. package/visual-editor-proxy/node_modules/undici-types/connector.d.ts +0 -34
  502. package/visual-editor-proxy/node_modules/undici-types/content-type.d.ts +0 -21
  503. package/visual-editor-proxy/node_modules/undici-types/cookies.d.ts +0 -28
  504. package/visual-editor-proxy/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
  505. package/visual-editor-proxy/node_modules/undici-types/dispatcher.d.ts +0 -256
  506. package/visual-editor-proxy/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
  507. package/visual-editor-proxy/node_modules/undici-types/errors.d.ts +0 -149
  508. package/visual-editor-proxy/node_modules/undici-types/eventsource.d.ts +0 -61
  509. package/visual-editor-proxy/node_modules/undici-types/fetch.d.ts +0 -209
  510. package/visual-editor-proxy/node_modules/undici-types/file.d.ts +0 -39
  511. package/visual-editor-proxy/node_modules/undici-types/filereader.d.ts +0 -54
  512. package/visual-editor-proxy/node_modules/undici-types/formdata.d.ts +0 -108
  513. package/visual-editor-proxy/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  514. package/visual-editor-proxy/node_modules/undici-types/global-origin.d.ts +0 -7
  515. package/visual-editor-proxy/node_modules/undici-types/handlers.d.ts +0 -15
  516. package/visual-editor-proxy/node_modules/undici-types/header.d.ts +0 -4
  517. package/visual-editor-proxy/node_modules/undici-types/index.d.ts +0 -71
  518. package/visual-editor-proxy/node_modules/undici-types/interceptors.d.ts +0 -17
  519. package/visual-editor-proxy/node_modules/undici-types/mock-agent.d.ts +0 -50
  520. package/visual-editor-proxy/node_modules/undici-types/mock-client.d.ts +0 -25
  521. package/visual-editor-proxy/node_modules/undici-types/mock-errors.d.ts +0 -12
  522. package/visual-editor-proxy/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  523. package/visual-editor-proxy/node_modules/undici-types/mock-pool.d.ts +0 -25
  524. package/visual-editor-proxy/node_modules/undici-types/package.json +0 -55
  525. package/visual-editor-proxy/node_modules/undici-types/patch.d.ts +0 -33
  526. package/visual-editor-proxy/node_modules/undici-types/pool-stats.d.ts +0 -19
  527. package/visual-editor-proxy/node_modules/undici-types/pool.d.ts +0 -39
  528. package/visual-editor-proxy/node_modules/undici-types/proxy-agent.d.ts +0 -28
  529. package/visual-editor-proxy/node_modules/undici-types/readable.d.ts +0 -65
  530. package/visual-editor-proxy/node_modules/undici-types/retry-agent.d.ts +0 -8
  531. package/visual-editor-proxy/node_modules/undici-types/retry-handler.d.ts +0 -116
  532. package/visual-editor-proxy/node_modules/undici-types/util.d.ts +0 -18
  533. package/visual-editor-proxy/node_modules/undici-types/webidl.d.ts +0 -228
  534. package/visual-editor-proxy/node_modules/undici-types/websocket.d.ts +0 -150
@@ -0,0 +1,145 @@
1
+ /**
2
+ * @fileoverview `ExtractedConfig` class.
3
+ *
4
+ * `ExtractedConfig` class expresses a final configuration for a specific file.
5
+ *
6
+ * It provides one method.
7
+ *
8
+ * - `toCompatibleObjectAsConfigFileContent()`
9
+ * Convert this configuration to the compatible object as the content of
10
+ * config files. It converts the loaded parser and plugins to strings.
11
+ * `CLIEngine#getConfigForFile(filePath)` method uses this method.
12
+ *
13
+ * `ConfigArray#extractConfig(filePath)` creates a `ExtractedConfig` instance.
14
+ *
15
+ * @author Toru Nagashima <https://github.com/mysticatea>
16
+ */
17
+
18
+ import { IgnorePattern } from "./ignore-pattern.js";
19
+
20
+ // For VSCode intellisense
21
+ /** @typedef {import("../../shared/types").ConfigData} ConfigData */
22
+ /** @typedef {import("../../shared/types").GlobalConf} GlobalConf */
23
+ /** @typedef {import("../../shared/types").SeverityConf} SeverityConf */
24
+ /** @typedef {import("./config-dependency").DependentParser} DependentParser */
25
+ /** @typedef {import("./config-dependency").DependentPlugin} DependentPlugin */
26
+
27
+ /**
28
+ * Check if `xs` starts with `ys`.
29
+ * @template T
30
+ * @param {T[]} xs The array to check.
31
+ * @param {T[]} ys The array that may be the first part of `xs`.
32
+ * @returns {boolean} `true` if `xs` starts with `ys`.
33
+ */
34
+ function startsWith(xs, ys) {
35
+ return xs.length >= ys.length && ys.every((y, i) => y === xs[i]);
36
+ }
37
+
38
+ /**
39
+ * The class for extracted config data.
40
+ */
41
+ class ExtractedConfig {
42
+ constructor() {
43
+
44
+ /**
45
+ * The config name what `noInlineConfig` setting came from.
46
+ * @type {string}
47
+ */
48
+ this.configNameOfNoInlineConfig = "";
49
+
50
+ /**
51
+ * Environments.
52
+ * @type {Record<string, boolean>}
53
+ */
54
+ this.env = {};
55
+
56
+ /**
57
+ * Global variables.
58
+ * @type {Record<string, GlobalConf>}
59
+ */
60
+ this.globals = {};
61
+
62
+ /**
63
+ * The glob patterns that ignore to lint.
64
+ * @type {(((filePath:string, dot?:boolean) => boolean) & { basePath:string; patterns:string[] }) | undefined}
65
+ */
66
+ this.ignores = void 0;
67
+
68
+ /**
69
+ * The flag that disables directive comments.
70
+ * @type {boolean|undefined}
71
+ */
72
+ this.noInlineConfig = void 0;
73
+
74
+ /**
75
+ * Parser definition.
76
+ * @type {DependentParser|null}
77
+ */
78
+ this.parser = null;
79
+
80
+ /**
81
+ * Options for the parser.
82
+ * @type {Object}
83
+ */
84
+ this.parserOptions = {};
85
+
86
+ /**
87
+ * Plugin definitions.
88
+ * @type {Record<string, DependentPlugin>}
89
+ */
90
+ this.plugins = {};
91
+
92
+ /**
93
+ * Processor ID.
94
+ * @type {string|null}
95
+ */
96
+ this.processor = null;
97
+
98
+ /**
99
+ * The flag that reports unused `eslint-disable` directive comments.
100
+ * @type {boolean|undefined}
101
+ */
102
+ this.reportUnusedDisableDirectives = void 0;
103
+
104
+ /**
105
+ * Rule settings.
106
+ * @type {Record<string, [SeverityConf, ...any[]]>}
107
+ */
108
+ this.rules = {};
109
+
110
+ /**
111
+ * Shared settings.
112
+ * @type {Object}
113
+ */
114
+ this.settings = {};
115
+ }
116
+
117
+ /**
118
+ * Convert this config to the compatible object as a config file content.
119
+ * @returns {ConfigData} The converted object.
120
+ */
121
+ toCompatibleObjectAsConfigFileContent() {
122
+ const {
123
+ /* eslint-disable no-unused-vars */
124
+ configNameOfNoInlineConfig: _ignore1,
125
+ processor: _ignore2,
126
+ /* eslint-enable no-unused-vars */
127
+ ignores,
128
+ ...config
129
+ } = this;
130
+
131
+ config.parser = config.parser && config.parser.filePath;
132
+ config.plugins = Object.keys(config.plugins).filter(Boolean).reverse();
133
+ config.ignorePatterns = ignores ? ignores.patterns : [];
134
+
135
+ // Strip the default patterns from `ignorePatterns`.
136
+ if (startsWith(config.ignorePatterns, IgnorePattern.DefaultPatterns)) {
137
+ config.ignorePatterns =
138
+ config.ignorePatterns.slice(IgnorePattern.DefaultPatterns.length);
139
+ }
140
+
141
+ return config;
142
+ }
143
+ }
144
+
145
+ export { ExtractedConfig };
@@ -0,0 +1,238 @@
1
+ /**
2
+ * @fileoverview `IgnorePattern` class.
3
+ *
4
+ * `IgnorePattern` class has the set of glob patterns and the base path.
5
+ *
6
+ * It provides two static methods.
7
+ *
8
+ * - `IgnorePattern.createDefaultIgnore(cwd)`
9
+ * Create the default predicate function.
10
+ * - `IgnorePattern.createIgnore(ignorePatterns)`
11
+ * Create the predicate function from multiple `IgnorePattern` objects.
12
+ *
13
+ * It provides two properties and a method.
14
+ *
15
+ * - `patterns`
16
+ * The glob patterns that ignore to lint.
17
+ * - `basePath`
18
+ * The base path of the glob patterns. If absolute paths existed in the
19
+ * glob patterns, those are handled as relative paths to the base path.
20
+ * - `getPatternsRelativeTo(basePath)`
21
+ * Get `patterns` as modified for a given base path. It modifies the
22
+ * absolute paths in the patterns as prepending the difference of two base
23
+ * paths.
24
+ *
25
+ * `ConfigArrayFactory` creates `IgnorePattern` objects when it processes
26
+ * `ignorePatterns` properties.
27
+ *
28
+ * @author Toru Nagashima <https://github.com/mysticatea>
29
+ */
30
+
31
+ //------------------------------------------------------------------------------
32
+ // Requirements
33
+ //------------------------------------------------------------------------------
34
+
35
+ import assert from "assert";
36
+ import path from "path";
37
+ import ignore from "ignore";
38
+ import debugOrig from "debug";
39
+
40
+ const debug = debugOrig("eslintrc:ignore-pattern");
41
+
42
+ /** @typedef {ReturnType<import("ignore").default>} Ignore */
43
+
44
+ //------------------------------------------------------------------------------
45
+ // Helpers
46
+ //------------------------------------------------------------------------------
47
+
48
+ /**
49
+ * Get the path to the common ancestor directory of given paths.
50
+ * @param {string[]} sourcePaths The paths to calculate the common ancestor.
51
+ * @returns {string} The path to the common ancestor directory.
52
+ */
53
+ function getCommonAncestorPath(sourcePaths) {
54
+ let result = sourcePaths[0];
55
+
56
+ for (let i = 1; i < sourcePaths.length; ++i) {
57
+ const a = result;
58
+ const b = sourcePaths[i];
59
+
60
+ // Set the shorter one (it's the common ancestor if one includes the other).
61
+ result = a.length < b.length ? a : b;
62
+
63
+ // Set the common ancestor.
64
+ for (let j = 0, lastSepPos = 0; j < a.length && j < b.length; ++j) {
65
+ if (a[j] !== b[j]) {
66
+ result = a.slice(0, lastSepPos);
67
+ break;
68
+ }
69
+ if (a[j] === path.sep) {
70
+ lastSepPos = j;
71
+ }
72
+ }
73
+ }
74
+
75
+ let resolvedResult = result || path.sep;
76
+
77
+ // if Windows common ancestor is root of drive must have trailing slash to be absolute.
78
+ if (resolvedResult && resolvedResult.endsWith(":") && process.platform === "win32") {
79
+ resolvedResult += path.sep;
80
+ }
81
+ return resolvedResult;
82
+ }
83
+
84
+ /**
85
+ * Make relative path.
86
+ * @param {string} from The source path to get relative path.
87
+ * @param {string} to The destination path to get relative path.
88
+ * @returns {string} The relative path.
89
+ */
90
+ function relative(from, to) {
91
+ const relPath = path.relative(from, to);
92
+
93
+ if (path.sep === "/") {
94
+ return relPath;
95
+ }
96
+ return relPath.split(path.sep).join("/");
97
+ }
98
+
99
+ /**
100
+ * Get the trailing slash if existed.
101
+ * @param {string} filePath The path to check.
102
+ * @returns {string} The trailing slash if existed.
103
+ */
104
+ function dirSuffix(filePath) {
105
+ const isDir = (
106
+ filePath.endsWith(path.sep) ||
107
+ (process.platform === "win32" && filePath.endsWith("/"))
108
+ );
109
+
110
+ return isDir ? "/" : "";
111
+ }
112
+
113
+ const DefaultPatterns = Object.freeze(["/**/node_modules/*"]);
114
+ const DotPatterns = Object.freeze([".*", "!.eslintrc.*", "!../"]);
115
+
116
+ //------------------------------------------------------------------------------
117
+ // Public
118
+ //------------------------------------------------------------------------------
119
+
120
+ class IgnorePattern {
121
+
122
+ /**
123
+ * The default patterns.
124
+ * @type {string[]}
125
+ */
126
+ static get DefaultPatterns() {
127
+ return DefaultPatterns;
128
+ }
129
+
130
+ /**
131
+ * Create the default predicate function.
132
+ * @param {string} cwd The current working directory.
133
+ * @returns {((filePath:string, dot:boolean) => boolean) & {basePath:string; patterns:string[]}}
134
+ * The preficate function.
135
+ * The first argument is an absolute path that is checked.
136
+ * The second argument is the flag to not ignore dotfiles.
137
+ * If the predicate function returned `true`, it means the path should be ignored.
138
+ */
139
+ static createDefaultIgnore(cwd) {
140
+ return this.createIgnore([new IgnorePattern(DefaultPatterns, cwd)]);
141
+ }
142
+
143
+ /**
144
+ * Create the predicate function from multiple `IgnorePattern` objects.
145
+ * @param {IgnorePattern[]} ignorePatterns The list of ignore patterns.
146
+ * @returns {((filePath:string, dot?:boolean) => boolean) & {basePath:string; patterns:string[]}}
147
+ * The preficate function.
148
+ * The first argument is an absolute path that is checked.
149
+ * The second argument is the flag to not ignore dotfiles.
150
+ * If the predicate function returned `true`, it means the path should be ignored.
151
+ */
152
+ static createIgnore(ignorePatterns) {
153
+ debug("Create with: %o", ignorePatterns);
154
+
155
+ const basePath = getCommonAncestorPath(ignorePatterns.map(p => p.basePath));
156
+ const patterns = [].concat(
157
+ ...ignorePatterns.map(p => p.getPatternsRelativeTo(basePath))
158
+ );
159
+ const ig = ignore({ allowRelativePaths: true }).add([...DotPatterns, ...patterns]);
160
+ const dotIg = ignore({ allowRelativePaths: true }).add(patterns);
161
+
162
+ debug(" processed: %o", { basePath, patterns });
163
+
164
+ return Object.assign(
165
+ (filePath, dot = false) => {
166
+ assert(path.isAbsolute(filePath), "'filePath' should be an absolute path.");
167
+ const relPathRaw = relative(basePath, filePath);
168
+ const relPath = relPathRaw && (relPathRaw + dirSuffix(filePath));
169
+ const adoptedIg = dot ? dotIg : ig;
170
+ const result = relPath !== "" && adoptedIg.ignores(relPath);
171
+
172
+ debug("Check", { filePath, dot, relativePath: relPath, result });
173
+ return result;
174
+ },
175
+ { basePath, patterns }
176
+ );
177
+ }
178
+
179
+ /**
180
+ * Initialize a new `IgnorePattern` instance.
181
+ * @param {string[]} patterns The glob patterns that ignore to lint.
182
+ * @param {string} basePath The base path of `patterns`.
183
+ */
184
+ constructor(patterns, basePath) {
185
+ assert(path.isAbsolute(basePath), "'basePath' should be an absolute path.");
186
+
187
+ /**
188
+ * The glob patterns that ignore to lint.
189
+ * @type {string[]}
190
+ */
191
+ this.patterns = patterns;
192
+
193
+ /**
194
+ * The base path of `patterns`.
195
+ * @type {string}
196
+ */
197
+ this.basePath = basePath;
198
+
199
+ /**
200
+ * If `true` then patterns which don't start with `/` will match the paths to the outside of `basePath`. Defaults to `false`.
201
+ *
202
+ * It's set `true` for `.eslintignore`, `package.json`, and `--ignore-path` for backward compatibility.
203
+ * It's `false` as-is for `ignorePatterns` property in config files.
204
+ * @type {boolean}
205
+ */
206
+ this.loose = false;
207
+ }
208
+
209
+ /**
210
+ * Get `patterns` as modified for a given base path. It modifies the
211
+ * absolute paths in the patterns as prepending the difference of two base
212
+ * paths.
213
+ * @param {string} newBasePath The base path.
214
+ * @returns {string[]} Modifired patterns.
215
+ */
216
+ getPatternsRelativeTo(newBasePath) {
217
+ assert(path.isAbsolute(newBasePath), "'newBasePath' should be an absolute path.");
218
+ const { basePath, loose, patterns } = this;
219
+
220
+ if (newBasePath === basePath) {
221
+ return patterns;
222
+ }
223
+ const prefix = `/${relative(newBasePath, basePath)}`;
224
+
225
+ return patterns.map(pattern => {
226
+ const negative = pattern.startsWith("!");
227
+ const head = negative ? "!" : "";
228
+ const body = negative ? pattern.slice(1) : pattern;
229
+
230
+ if (body.startsWith("/") || body.startsWith("../")) {
231
+ return `${head}${prefix}${body}`;
232
+ }
233
+ return loose ? pattern : `${head}${prefix}/**/${body}`;
234
+ });
235
+ }
236
+ }
237
+
238
+ export { IgnorePattern };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @fileoverview `ConfigArray` class.
3
+ * @author Toru Nagashima <https://github.com/mysticatea>
4
+ */
5
+
6
+ import { ConfigArray, getUsedExtractedConfigs } from "./config-array.js";
7
+ import { ConfigDependency } from "./config-dependency.js";
8
+ import { ExtractedConfig } from "./extracted-config.js";
9
+ import { IgnorePattern } from "./ignore-pattern.js";
10
+ import { OverrideTester } from "./override-tester.js";
11
+
12
+ export {
13
+ ConfigArray,
14
+ ConfigDependency,
15
+ ExtractedConfig,
16
+ IgnorePattern,
17
+ OverrideTester,
18
+ getUsedExtractedConfigs
19
+ };
@@ -0,0 +1,225 @@
1
+ /**
2
+ * @fileoverview `OverrideTester` class.
3
+ *
4
+ * `OverrideTester` class handles `files` property and `excludedFiles` property
5
+ * of `overrides` config.
6
+ *
7
+ * It provides one method.
8
+ *
9
+ * - `test(filePath)`
10
+ * Test if a file path matches the pair of `files` property and
11
+ * `excludedFiles` property. The `filePath` argument must be an absolute
12
+ * path.
13
+ *
14
+ * `ConfigArrayFactory` creates `OverrideTester` objects when it processes
15
+ * `overrides` properties.
16
+ *
17
+ * @author Toru Nagashima <https://github.com/mysticatea>
18
+ */
19
+
20
+ import assert from "assert";
21
+ import path from "path";
22
+ import util from "util";
23
+ import minimatch from "minimatch";
24
+
25
+ const { Minimatch } = minimatch;
26
+
27
+ const minimatchOpts = { dot: true, matchBase: true };
28
+
29
+ /**
30
+ * @typedef {Object} Pattern
31
+ * @property {InstanceType<Minimatch>[] | null} includes The positive matchers.
32
+ * @property {InstanceType<Minimatch>[] | null} excludes The negative matchers.
33
+ */
34
+
35
+ /**
36
+ * Normalize a given pattern to an array.
37
+ * @param {string|string[]|undefined} patterns A glob pattern or an array of glob patterns.
38
+ * @returns {string[]|null} Normalized patterns.
39
+ * @private
40
+ */
41
+ function normalizePatterns(patterns) {
42
+ if (Array.isArray(patterns)) {
43
+ return patterns.filter(Boolean);
44
+ }
45
+ if (typeof patterns === "string" && patterns) {
46
+ return [patterns];
47
+ }
48
+ return [];
49
+ }
50
+
51
+ /**
52
+ * Create the matchers of given patterns.
53
+ * @param {string[]} patterns The patterns.
54
+ * @returns {InstanceType<Minimatch>[] | null} The matchers.
55
+ */
56
+ function toMatcher(patterns) {
57
+ if (patterns.length === 0) {
58
+ return null;
59
+ }
60
+ return patterns.map(pattern => {
61
+ if (/^\.[/\\]/u.test(pattern)) {
62
+ return new Minimatch(
63
+ pattern.slice(2),
64
+
65
+ // `./*.js` should not match with `subdir/foo.js`
66
+ { ...minimatchOpts, matchBase: false }
67
+ );
68
+ }
69
+ return new Minimatch(pattern, minimatchOpts);
70
+ });
71
+ }
72
+
73
+ /**
74
+ * Convert a given matcher to string.
75
+ * @param {Pattern} matchers The matchers.
76
+ * @returns {string} The string expression of the matcher.
77
+ */
78
+ function patternToJson({ includes, excludes }) {
79
+ return {
80
+ includes: includes && includes.map(m => m.pattern),
81
+ excludes: excludes && excludes.map(m => m.pattern)
82
+ };
83
+ }
84
+
85
+ /**
86
+ * The class to test given paths are matched by the patterns.
87
+ */
88
+ class OverrideTester {
89
+
90
+ /**
91
+ * Create a tester with given criteria.
92
+ * If there are no criteria, returns `null`.
93
+ * @param {string|string[]} files The glob patterns for included files.
94
+ * @param {string|string[]} excludedFiles The glob patterns for excluded files.
95
+ * @param {string} basePath The path to the base directory to test paths.
96
+ * @returns {OverrideTester|null} The created instance or `null`.
97
+ */
98
+ static create(files, excludedFiles, basePath) {
99
+ const includePatterns = normalizePatterns(files);
100
+ const excludePatterns = normalizePatterns(excludedFiles);
101
+ let endsWithWildcard = false;
102
+
103
+ if (includePatterns.length === 0) {
104
+ return null;
105
+ }
106
+
107
+ // Rejects absolute paths or relative paths to parents.
108
+ for (const pattern of includePatterns) {
109
+ if (path.isAbsolute(pattern) || pattern.includes("..")) {
110
+ throw new Error(`Invalid override pattern (expected relative path not containing '..'): ${pattern}`);
111
+ }
112
+ if (pattern.endsWith("*")) {
113
+ endsWithWildcard = true;
114
+ }
115
+ }
116
+ for (const pattern of excludePatterns) {
117
+ if (path.isAbsolute(pattern) || pattern.includes("..")) {
118
+ throw new Error(`Invalid override pattern (expected relative path not containing '..'): ${pattern}`);
119
+ }
120
+ }
121
+
122
+ const includes = toMatcher(includePatterns);
123
+ const excludes = toMatcher(excludePatterns);
124
+
125
+ return new OverrideTester(
126
+ [{ includes, excludes }],
127
+ basePath,
128
+ endsWithWildcard
129
+ );
130
+ }
131
+
132
+ /**
133
+ * Combine two testers by logical and.
134
+ * If either of the testers was `null`, returns the other tester.
135
+ * The `basePath` property of the two must be the same value.
136
+ * @param {OverrideTester|null} a A tester.
137
+ * @param {OverrideTester|null} b Another tester.
138
+ * @returns {OverrideTester|null} Combined tester.
139
+ */
140
+ static and(a, b) {
141
+ if (!b) {
142
+ return a && new OverrideTester(
143
+ a.patterns,
144
+ a.basePath,
145
+ a.endsWithWildcard
146
+ );
147
+ }
148
+ if (!a) {
149
+ return new OverrideTester(
150
+ b.patterns,
151
+ b.basePath,
152
+ b.endsWithWildcard
153
+ );
154
+ }
155
+
156
+ assert.strictEqual(a.basePath, b.basePath);
157
+ return new OverrideTester(
158
+ a.patterns.concat(b.patterns),
159
+ a.basePath,
160
+ a.endsWithWildcard || b.endsWithWildcard
161
+ );
162
+ }
163
+
164
+ /**
165
+ * Initialize this instance.
166
+ * @param {Pattern[]} patterns The matchers.
167
+ * @param {string} basePath The base path.
168
+ * @param {boolean} endsWithWildcard If `true` then a pattern ends with `*`.
169
+ */
170
+ constructor(patterns, basePath, endsWithWildcard = false) {
171
+
172
+ /** @type {Pattern[]} */
173
+ this.patterns = patterns;
174
+
175
+ /** @type {string} */
176
+ this.basePath = basePath;
177
+
178
+ /** @type {boolean} */
179
+ this.endsWithWildcard = endsWithWildcard;
180
+ }
181
+
182
+ /**
183
+ * Test if a given path is matched or not.
184
+ * @param {string} filePath The absolute path to the target file.
185
+ * @returns {boolean} `true` if the path was matched.
186
+ */
187
+ test(filePath) {
188
+ if (typeof filePath !== "string" || !path.isAbsolute(filePath)) {
189
+ throw new Error(`'filePath' should be an absolute path, but got ${filePath}.`);
190
+ }
191
+ const relativePath = path.relative(this.basePath, filePath);
192
+
193
+ return this.patterns.every(({ includes, excludes }) => (
194
+ (!includes || includes.some(m => m.match(relativePath))) &&
195
+ (!excludes || !excludes.some(m => m.match(relativePath)))
196
+ ));
197
+ }
198
+
199
+ // eslint-disable-next-line jsdoc/require-description
200
+ /**
201
+ * @returns {Object} a JSON compatible object.
202
+ */
203
+ toJSON() {
204
+ if (this.patterns.length === 1) {
205
+ return {
206
+ ...patternToJson(this.patterns[0]),
207
+ basePath: this.basePath
208
+ };
209
+ }
210
+ return {
211
+ AND: this.patterns.map(patternToJson),
212
+ basePath: this.basePath
213
+ };
214
+ }
215
+
216
+ // eslint-disable-next-line jsdoc/require-description
217
+ /**
218
+ * @returns {Object} an object to display by `console.log()`.
219
+ */
220
+ [util.inspect.custom]() {
221
+ return this.toJSON();
222
+ }
223
+ }
224
+
225
+ export { OverrideTester };