repoburg 1.3.87 → 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 (544) hide show
  1. package/backend/.env +20 -0
  2. package/backend/.repoburg/hooks/README.md +53 -0
  3. package/backend/.repoburg/hooks/eslint-hook.ts +46 -0
  4. package/backend/.repoburg/hooks/example-hook.ts +62 -0
  5. package/backend/dist/src/ai-actions/ai-actions.controller.js +67 -0
  6. package/backend/dist/src/ai-actions/ai-actions.controller.js.map +1 -1
  7. package/backend/dist/src/application-state/application-state.controller.js +123 -0
  8. package/backend/dist/src/application-state/application-state.controller.js.map +1 -1
  9. package/backend/dist/src/application-state/dto/set-alibaba-config.dto.js +2 -0
  10. package/backend/dist/src/application-state/dto/set-alibaba-config.dto.js.map +1 -1
  11. package/backend/dist/src/application-state/dto/set-auto-context-fetch-enabled.dto.js +4 -0
  12. package/backend/dist/src/application-state/dto/set-auto-context-fetch-enabled.dto.js.map +1 -1
  13. package/backend/dist/src/application-state/dto/set-auto-send-to-ai-studio-enabled.dto.js +2 -0
  14. package/backend/dist/src/application-state/dto/set-auto-send-to-ai-studio-enabled.dto.js.map +1 -1
  15. package/backend/dist/src/application-state/dto/set-context-token-limit.dto.js +6 -0
  16. package/backend/dist/src/application-state/dto/set-context-token-limit.dto.js.map +1 -1
  17. package/backend/dist/src/application-state/dto/set-execution-strategy.dto.js +6 -0
  18. package/backend/dist/src/application-state/dto/set-execution-strategy.dto.js.map +1 -1
  19. package/backend/dist/src/application-state/dto/set-followup-token-limit.dto.js +5 -0
  20. package/backend/dist/src/application-state/dto/set-followup-token-limit.dto.js.map +1 -1
  21. package/backend/dist/src/application-state/dto/set-history-compression-enabled.dto.js +4 -0
  22. package/backend/dist/src/application-state/dto/set-history-compression-enabled.dto.js.map +1 -1
  23. package/backend/dist/src/application-state/dto/set-llm-retry-enabled.dto.js +4 -0
  24. package/backend/dist/src/application-state/dto/set-llm-retry-enabled.dto.js.map +1 -1
  25. package/backend/dist/src/application-state/dto/set-llm-retry-max-attempts.dto.js +6 -0
  26. package/backend/dist/src/application-state/dto/set-llm-retry-max-attempts.dto.js.map +1 -1
  27. package/backend/dist/src/application-state/dto/set-manual-llm-enabled.dto.js +4 -0
  28. package/backend/dist/src/application-state/dto/set-manual-llm-enabled.dto.js.map +1 -1
  29. package/backend/dist/src/application-state/dto/set-openrouter-config.dto.js +2 -0
  30. package/backend/dist/src/application-state/dto/set-openrouter-config.dto.js.map +1 -1
  31. package/backend/dist/src/application-state/dto/set-streaming-enabled.dto.js +2 -0
  32. package/backend/dist/src/application-state/dto/set-streaming-enabled.dto.js.map +1 -1
  33. package/backend/dist/src/application-state/dto/set-syntax-validation-enabled.dto.js +4 -0
  34. package/backend/dist/src/application-state/dto/set-syntax-validation-enabled.dto.js.map +1 -1
  35. package/backend/dist/src/application-state/dto/set-theme.dto.js +6 -0
  36. package/backend/dist/src/application-state/dto/set-theme.dto.js.map +1 -1
  37. package/backend/dist/src/application-state/dto/set-tools-enabled.dto.js +4 -0
  38. package/backend/dist/src/application-state/dto/set-tools-enabled.dto.js.map +1 -1
  39. package/backend/dist/src/application-state/dto/set-websocket-enabled.dto.js +2 -0
  40. package/backend/dist/src/application-state/dto/set-websocket-enabled.dto.js.map +1 -1
  41. package/backend/dist/src/application-state/dto/set-yolo-mode-message.dto.js +5 -0
  42. package/backend/dist/src/application-state/dto/set-yolo-mode-message.dto.js.map +1 -1
  43. package/backend/dist/src/application-state/dto/set-yolo-mode.dto.js +4 -0
  44. package/backend/dist/src/application-state/dto/set-yolo-mode.dto.js.map +1 -1
  45. package/backend/dist/src/application-state/dto/set-zai-config.dto.js +2 -0
  46. package/backend/dist/src/application-state/dto/set-zai-config.dto.js.map +1 -1
  47. package/backend/dist/src/context-snippets/context-snippets.controller.js +38 -0
  48. package/backend/dist/src/context-snippets/context-snippets.controller.js.map +1 -1
  49. package/backend/dist/src/context-templates/context-templates.controller.js +104 -0
  50. package/backend/dist/src/context-templates/context-templates.controller.js.map +1 -1
  51. package/backend/dist/src/context-templates/dto/context-template.dto.d.ts +1 -1
  52. package/backend/dist/src/context-templates/dto/context-template.dto.js +44 -1
  53. package/backend/dist/src/context-templates/dto/context-template.dto.js.map +1 -1
  54. package/backend/dist/src/core-entities/ai-action.entity.js +73 -0
  55. package/backend/dist/src/core-entities/ai-action.entity.js.map +1 -1
  56. package/backend/dist/src/core-entities/base.entity.js +18 -0
  57. package/backend/dist/src/core-entities/base.entity.js.map +1 -1
  58. package/backend/dist/src/core-entities/context-snippet.entity.js +12 -0
  59. package/backend/dist/src/core-entities/context-snippet.entity.js.map +1 -1
  60. package/backend/dist/src/core-entities/context-template.entity.d.ts +2 -4
  61. package/backend/dist/src/core-entities/context-template.entity.js +50 -7
  62. package/backend/dist/src/core-entities/context-template.entity.js.map +1 -1
  63. package/backend/dist/src/core-entities/custom-snippet.entity.js +16 -0
  64. package/backend/dist/src/core-entities/custom-snippet.entity.js.map +1 -1
  65. package/backend/dist/src/core-entities/custom-variable.entity.js +24 -0
  66. package/backend/dist/src/core-entities/custom-variable.entity.js.map +1 -1
  67. package/backend/dist/src/core-entities/enums.d.ts +64 -0
  68. package/backend/dist/src/core-entities/enums.js +77 -0
  69. package/backend/dist/src/core-entities/enums.js.map +1 -0
  70. package/backend/dist/src/core-entities/execution-log.entity.js +15 -0
  71. package/backend/dist/src/core-entities/execution-log.entity.js.map +1 -1
  72. package/backend/dist/src/core-entities/index.d.ts +1 -2
  73. package/backend/dist/src/core-entities/index.js +1 -2
  74. package/backend/dist/src/core-entities/index.js.map +1 -1
  75. package/backend/dist/src/core-entities/llm-call-log.entity.js +43 -0
  76. package/backend/dist/src/core-entities/llm-call-log.entity.js.map +1 -1
  77. package/backend/dist/src/core-entities/mcp-config.entity.js +27 -0
  78. package/backend/dist/src/core-entities/mcp-config.entity.js.map +1 -1
  79. package/backend/dist/src/core-entities/mcp-tool.entity.js +26 -0
  80. package/backend/dist/src/core-entities/mcp-tool.entity.js.map +1 -1
  81. package/backend/dist/src/core-entities/project.entity.js +13 -0
  82. package/backend/dist/src/core-entities/project.entity.js.map +1 -1
  83. package/backend/dist/src/core-entities/session-input.entity.js +94 -0
  84. package/backend/dist/src/core-entities/session-input.entity.js.map +1 -1
  85. package/backend/dist/src/core-entities/session.entity.d.ts +1 -1
  86. package/backend/dist/src/core-entities/session.entity.js +96 -1
  87. package/backend/dist/src/core-entities/session.entity.js.map +1 -1
  88. package/backend/dist/src/core-entities/system-prompt.entity.js +29 -0
  89. package/backend/dist/src/core-entities/system-prompt.entity.js.map +1 -1
  90. package/backend/dist/src/core-entities/tool-hook.entity.js +21 -0
  91. package/backend/dist/src/core-entities/tool-hook.entity.js.map +1 -1
  92. package/backend/dist/src/custom-snippets/custom-snippets.controller.js +48 -0
  93. package/backend/dist/src/custom-snippets/custom-snippets.controller.js.map +1 -1
  94. package/backend/dist/src/custom-variables/custom-variables.controller.js +46 -0
  95. package/backend/dist/src/custom-variables/custom-variables.controller.js.map +1 -1
  96. package/backend/dist/src/global-config/global-config.controller.js +12 -0
  97. package/backend/dist/src/global-config/global-config.controller.js.map +1 -1
  98. package/backend/dist/src/interactive-chat/streaming.controller.js +38 -0
  99. package/backend/dist/src/interactive-chat/streaming.controller.js.map +1 -1
  100. package/backend/dist/src/llm-call-logs/llm-call-logs.controller.js +96 -0
  101. package/backend/dist/src/llm-call-logs/llm-call-logs.controller.js.map +1 -1
  102. package/backend/dist/src/llm-provider/llm-provider.controller.js +18 -0
  103. package/backend/dist/src/llm-provider/llm-provider.controller.js.map +1 -1
  104. package/backend/dist/src/llm-provider/zai-llm.provider.js +0 -1
  105. package/backend/dist/src/llm-provider/zai-llm.provider.js.map +1 -1
  106. package/backend/dist/src/llm-responses/dto/submit-llm-response.dto.js +45 -0
  107. package/backend/dist/src/llm-responses/dto/submit-llm-response.dto.js.map +1 -1
  108. package/backend/dist/src/llm-responses/dto/sync-conversation.dto.js +24 -0
  109. package/backend/dist/src/llm-responses/dto/sync-conversation.dto.js.map +1 -1
  110. package/backend/dist/src/llm-responses/llm-responses.controller.js +32 -0
  111. package/backend/dist/src/llm-responses/llm-responses.controller.js.map +1 -1
  112. package/backend/dist/src/main.js +9 -0
  113. package/backend/dist/src/main.js.map +1 -1
  114. package/backend/dist/src/mcp/dto/batch-update-mcp-tools.dto.js +8 -0
  115. package/backend/dist/src/mcp/dto/batch-update-mcp-tools.dto.js.map +1 -1
  116. package/backend/dist/src/mcp/dto/create-mcp-config.dto.js +5 -0
  117. package/backend/dist/src/mcp/dto/create-mcp-config.dto.js.map +1 -1
  118. package/backend/dist/src/mcp/dto/update-mcp-config.dto.js +2 -0
  119. package/backend/dist/src/mcp/dto/update-mcp-config.dto.js.map +1 -1
  120. package/backend/dist/src/mcp/mcp.controller.js +21 -0
  121. package/backend/dist/src/mcp/mcp.controller.js.map +1 -1
  122. package/backend/dist/src/projects/dto/project.dto.js +14 -0
  123. package/backend/dist/src/projects/dto/project.dto.js.map +1 -1
  124. package/backend/dist/src/projects/projects.controller.js +31 -0
  125. package/backend/dist/src/projects/projects.controller.js.map +1 -1
  126. package/backend/dist/src/session-inputs/dto/session-input.dto.d.ts +12 -1
  127. package/backend/dist/src/session-inputs/dto/session-input.dto.js +103 -1
  128. package/backend/dist/src/session-inputs/dto/session-input.dto.js.map +1 -1
  129. package/backend/dist/src/session-inputs/session-input.subscriber.js.map +1 -1
  130. package/backend/dist/src/session-inputs/session-inputs.controller.d.ts +2 -1
  131. package/backend/dist/src/session-inputs/session-inputs.controller.js +84 -0
  132. package/backend/dist/src/session-inputs/session-inputs.controller.js.map +1 -1
  133. package/backend/dist/src/session-inputs/session-inputs.module.js +1 -0
  134. package/backend/dist/src/session-inputs/session-inputs.module.js.map +1 -1
  135. package/backend/dist/src/session-inputs/session-inputs.service.d.ts +7 -3
  136. package/backend/dist/src/session-inputs/session-inputs.service.js +51 -4
  137. package/backend/dist/src/session-inputs/session-inputs.service.js.map +1 -1
  138. package/backend/dist/src/sessions/dto/session.dto.js +91 -0
  139. package/backend/dist/src/sessions/dto/session.dto.js.map +1 -1
  140. package/backend/dist/src/sessions/sessions.controller.js +112 -0
  141. package/backend/dist/src/sessions/sessions.controller.js.map +1 -1
  142. package/backend/dist/src/sub-agents/dto/create-sub-agent.dto.js +26 -0
  143. package/backend/dist/src/sub-agents/dto/create-sub-agent.dto.js.map +1 -1
  144. package/backend/dist/src/sub-agents/dto/update-sub-agent.dto.js +22 -0
  145. package/backend/dist/src/sub-agents/dto/update-sub-agent.dto.js.map +1 -1
  146. package/backend/dist/src/sub-agents/sub-agent-run.entity.d.ts +2 -7
  147. package/backend/dist/src/sub-agents/sub-agent-run.entity.js +63 -9
  148. package/backend/dist/src/sub-agents/sub-agent-run.entity.js.map +1 -1
  149. package/backend/dist/src/sub-agents/sub-agent-runs.controller.js +63 -0
  150. package/backend/dist/src/sub-agents/sub-agent-runs.controller.js.map +1 -1
  151. package/backend/dist/src/sub-agents/sub-agent.entity.js +47 -0
  152. package/backend/dist/src/sub-agents/sub-agent.entity.js.map +1 -1
  153. package/backend/dist/src/sub-agents/sub-agents.controller.js +25 -0
  154. package/backend/dist/src/sub-agents/sub-agents.controller.js.map +1 -1
  155. package/backend/dist/src/system-prompts/dto/set-enabled-tools.dto.js +9 -0
  156. package/backend/dist/src/system-prompts/dto/set-enabled-tools.dto.js.map +1 -1
  157. package/backend/dist/src/system-prompts/dto/system-prompt.dto.js +43 -0
  158. package/backend/dist/src/system-prompts/dto/system-prompt.dto.js.map +1 -1
  159. package/backend/dist/src/system-prompts/dto/toggle-tool.dto.js +5 -0
  160. package/backend/dist/src/system-prompts/dto/toggle-tool.dto.js.map +1 -1
  161. package/backend/dist/src/system-prompts/system-prompts.controller.js +80 -0
  162. package/backend/dist/src/system-prompts/system-prompts.controller.js.map +1 -1
  163. package/backend/dist/src/tool-hooks/dto/create-tool-hook.dto.js +14 -0
  164. package/backend/dist/src/tool-hooks/dto/create-tool-hook.dto.js.map +1 -1
  165. package/backend/dist/src/tool-hooks/dto/update-tool-hook.dto.js +11 -0
  166. package/backend/dist/src/tool-hooks/dto/update-tool-hook.dto.js.map +1 -1
  167. package/backend/dist/src/tool-hooks/tool-hooks.controller.js +52 -0
  168. package/backend/dist/src/tool-hooks/tool-hooks.controller.js.map +1 -1
  169. package/backend/dist/src/visual-editor/visual-editor.controller.js +15 -0
  170. package/backend/dist/src/visual-editor/visual-editor.controller.js.map +1 -1
  171. package/backend/dist/src/workspace/workspace.controller.js +41 -0
  172. package/backend/dist/src/workspace/workspace.controller.js.map +1 -1
  173. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  174. package/{daemon/node_modules/undici-types → backend/node_modules/@eslint/eslintrc}/LICENSE +5 -7
  175. package/backend/node_modules/@eslint/eslintrc/README.md +115 -0
  176. package/backend/node_modules/@eslint/eslintrc/conf/config-schema.js +79 -0
  177. package/backend/node_modules/@eslint/eslintrc/conf/environments.js +215 -0
  178. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs +1104 -0
  179. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs.map +1 -0
  180. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc.cjs +4344 -0
  181. package/backend/node_modules/@eslint/eslintrc/dist/eslintrc.cjs.map +1 -0
  182. package/backend/node_modules/@eslint/eslintrc/lib/cascading-config-array-factory.js +532 -0
  183. package/backend/node_modules/@eslint/eslintrc/lib/config-array/config-array.js +523 -0
  184. package/backend/node_modules/@eslint/eslintrc/lib/config-array/config-dependency.js +124 -0
  185. package/backend/node_modules/@eslint/eslintrc/lib/config-array/extracted-config.js +145 -0
  186. package/backend/node_modules/@eslint/eslintrc/lib/config-array/ignore-pattern.js +238 -0
  187. package/backend/node_modules/@eslint/eslintrc/lib/config-array/index.js +19 -0
  188. package/backend/node_modules/@eslint/eslintrc/lib/config-array/override-tester.js +225 -0
  189. package/backend/node_modules/@eslint/eslintrc/lib/config-array-factory.js +1151 -0
  190. package/backend/node_modules/@eslint/eslintrc/lib/flat-compat.js +318 -0
  191. package/backend/node_modules/@eslint/eslintrc/lib/index-universal.js +29 -0
  192. package/backend/node_modules/@eslint/eslintrc/lib/index.js +56 -0
  193. package/backend/node_modules/@eslint/eslintrc/lib/shared/ajv.js +191 -0
  194. package/backend/node_modules/@eslint/eslintrc/lib/shared/config-ops.js +135 -0
  195. package/backend/node_modules/@eslint/eslintrc/lib/shared/config-validator.js +325 -0
  196. package/backend/node_modules/@eslint/eslintrc/lib/shared/deprecation-warnings.js +63 -0
  197. package/backend/node_modules/@eslint/eslintrc/lib/shared/naming.js +96 -0
  198. package/backend/node_modules/@eslint/eslintrc/lib/shared/relative-module-resolver.js +42 -0
  199. package/backend/node_modules/@eslint/eslintrc/lib/shared/types.js +149 -0
  200. package/backend/node_modules/@eslint/eslintrc/package.json +82 -0
  201. package/backend/node_modules/@eslint/eslintrc/universal.js +9 -0
  202. package/backend/package.json +1 -3
  203. package/daemon/dist/api/system.js +25 -0
  204. package/daemon/dist/daemon.blob +0 -0
  205. package/daemon/dist/index.js +0 -0
  206. package/package.json +3 -1
  207. package/visual-editor-proxy/.repoburg/data.sqlite +0 -0
  208. package/visual-editor-proxy/dist/tsconfig.tsbuildinfo +1 -1
  209. package/backend/node_modules/@types/node/LICENSE +0 -21
  210. package/backend/node_modules/@types/node/README.md +0 -15
  211. package/backend/node_modules/@types/node/assert/strict.d.ts +0 -8
  212. package/backend/node_modules/@types/node/assert.d.ts +0 -1044
  213. package/backend/node_modules/@types/node/async_hooks.d.ts +0 -605
  214. package/backend/node_modules/@types/node/buffer.buffer.d.ts +0 -462
  215. package/backend/node_modules/@types/node/buffer.d.ts +0 -1932
  216. package/backend/node_modules/@types/node/child_process.d.ts +0 -1452
  217. package/backend/node_modules/@types/node/cluster.d.ts +0 -578
  218. package/backend/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  219. package/backend/node_modules/@types/node/compatibility/index.d.ts +0 -9
  220. package/backend/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  221. package/backend/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  222. package/backend/node_modules/@types/node/console.d.ts +0 -452
  223. package/backend/node_modules/@types/node/constants.d.ts +0 -21
  224. package/backend/node_modules/@types/node/crypto.d.ts +0 -4570
  225. package/backend/node_modules/@types/node/dgram.d.ts +0 -596
  226. package/backend/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
  227. package/backend/node_modules/@types/node/dns/promises.d.ts +0 -479
  228. package/backend/node_modules/@types/node/dns.d.ts +0 -871
  229. package/backend/node_modules/@types/node/domain.d.ts +0 -170
  230. package/backend/node_modules/@types/node/events.d.ts +0 -931
  231. package/backend/node_modules/@types/node/fs/promises.d.ts +0 -1248
  232. package/backend/node_modules/@types/node/fs.d.ts +0 -4362
  233. package/backend/node_modules/@types/node/globals.d.ts +0 -170
  234. package/backend/node_modules/@types/node/globals.typedarray.d.ts +0 -21
  235. package/backend/node_modules/@types/node/http.d.ts +0 -2031
  236. package/backend/node_modules/@types/node/http2.d.ts +0 -2623
  237. package/backend/node_modules/@types/node/https.d.ts +0 -549
  238. package/backend/node_modules/@types/node/index.d.ts +0 -93
  239. package/backend/node_modules/@types/node/inspector.generated.d.ts +0 -3966
  240. package/backend/node_modules/@types/node/module.d.ts +0 -539
  241. package/backend/node_modules/@types/node/net.d.ts +0 -1011
  242. package/backend/node_modules/@types/node/os.d.ts +0 -495
  243. package/backend/node_modules/@types/node/package.json +0 -140
  244. package/backend/node_modules/@types/node/path.d.ts +0 -200
  245. package/backend/node_modules/@types/node/perf_hooks.d.ts +0 -963
  246. package/backend/node_modules/@types/node/process.d.ts +0 -1956
  247. package/backend/node_modules/@types/node/punycode.d.ts +0 -117
  248. package/backend/node_modules/@types/node/querystring.d.ts +0 -152
  249. package/backend/node_modules/@types/node/readline/promises.d.ts +0 -162
  250. package/backend/node_modules/@types/node/readline.d.ts +0 -589
  251. package/backend/node_modules/@types/node/repl.d.ts +0 -430
  252. package/backend/node_modules/@types/node/sea.d.ts +0 -153
  253. package/backend/node_modules/@types/node/stream/consumers.d.ts +0 -38
  254. package/backend/node_modules/@types/node/stream/promises.d.ts +0 -90
  255. package/backend/node_modules/@types/node/stream/web.d.ts +0 -533
  256. package/backend/node_modules/@types/node/stream.d.ts +0 -1668
  257. package/backend/node_modules/@types/node/string_decoder.d.ts +0 -67
  258. package/backend/node_modules/@types/node/test.d.ts +0 -1807
  259. package/backend/node_modules/@types/node/timers/promises.d.ts +0 -108
  260. package/backend/node_modules/@types/node/timers.d.ts +0 -286
  261. package/backend/node_modules/@types/node/tls.d.ts +0 -1231
  262. package/backend/node_modules/@types/node/trace_events.d.ts +0 -197
  263. package/backend/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -460
  264. package/backend/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -19
  265. package/backend/node_modules/@types/node/ts5.6/index.d.ts +0 -93
  266. package/backend/node_modules/@types/node/tty.d.ts +0 -208
  267. package/backend/node_modules/@types/node/url.d.ts +0 -964
  268. package/backend/node_modules/@types/node/util.d.ts +0 -2331
  269. package/backend/node_modules/@types/node/v8.d.ts +0 -808
  270. package/backend/node_modules/@types/node/vm.d.ts +0 -1030
  271. package/backend/node_modules/@types/node/wasi.d.ts +0 -181
  272. package/backend/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
  273. package/backend/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  274. package/backend/node_modules/@types/node/web-globals/events.d.ts +0 -94
  275. package/backend/node_modules/@types/node/web-globals/fetch.d.ts +0 -46
  276. package/backend/node_modules/@types/node/worker_threads.d.ts +0 -743
  277. package/backend/node_modules/@types/node/zlib.d.ts +0 -539
  278. package/backend/node_modules/debug/LICENSE +0 -20
  279. package/backend/node_modules/debug/README.md +0 -481
  280. package/backend/node_modules/debug/package.json +0 -64
  281. package/backend/node_modules/debug/src/browser.js +0 -272
  282. package/backend/node_modules/debug/src/common.js +0 -292
  283. package/backend/node_modules/debug/src/index.js +0 -10
  284. package/backend/node_modules/debug/src/node.js +0 -263
  285. package/backend/node_modules/undici-types/LICENSE +0 -21
  286. package/backend/node_modules/undici-types/README.md +0 -6
  287. package/backend/node_modules/undici-types/agent.d.ts +0 -31
  288. package/backend/node_modules/undici-types/api.d.ts +0 -43
  289. package/backend/node_modules/undici-types/balanced-pool.d.ts +0 -29
  290. package/backend/node_modules/undici-types/cache.d.ts +0 -36
  291. package/backend/node_modules/undici-types/client.d.ts +0 -108
  292. package/backend/node_modules/undici-types/connector.d.ts +0 -34
  293. package/backend/node_modules/undici-types/content-type.d.ts +0 -21
  294. package/backend/node_modules/undici-types/cookies.d.ts +0 -28
  295. package/backend/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
  296. package/backend/node_modules/undici-types/dispatcher.d.ts +0 -256
  297. package/backend/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
  298. package/backend/node_modules/undici-types/errors.d.ts +0 -149
  299. package/backend/node_modules/undici-types/eventsource.d.ts +0 -61
  300. package/backend/node_modules/undici-types/fetch.d.ts +0 -209
  301. package/backend/node_modules/undici-types/file.d.ts +0 -39
  302. package/backend/node_modules/undici-types/filereader.d.ts +0 -54
  303. package/backend/node_modules/undici-types/formdata.d.ts +0 -108
  304. package/backend/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  305. package/backend/node_modules/undici-types/global-origin.d.ts +0 -7
  306. package/backend/node_modules/undici-types/handlers.d.ts +0 -15
  307. package/backend/node_modules/undici-types/header.d.ts +0 -4
  308. package/backend/node_modules/undici-types/index.d.ts +0 -71
  309. package/backend/node_modules/undici-types/interceptors.d.ts +0 -17
  310. package/backend/node_modules/undici-types/mock-agent.d.ts +0 -50
  311. package/backend/node_modules/undici-types/mock-client.d.ts +0 -25
  312. package/backend/node_modules/undici-types/mock-errors.d.ts +0 -12
  313. package/backend/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  314. package/backend/node_modules/undici-types/mock-pool.d.ts +0 -25
  315. package/backend/node_modules/undici-types/package.json +0 -55
  316. package/backend/node_modules/undici-types/patch.d.ts +0 -33
  317. package/backend/node_modules/undici-types/pool-stats.d.ts +0 -19
  318. package/backend/node_modules/undici-types/pool.d.ts +0 -39
  319. package/backend/node_modules/undici-types/proxy-agent.d.ts +0 -28
  320. package/backend/node_modules/undici-types/readable.d.ts +0 -65
  321. package/backend/node_modules/undici-types/retry-agent.d.ts +0 -8
  322. package/backend/node_modules/undici-types/retry-handler.d.ts +0 -116
  323. package/backend/node_modules/undici-types/util.d.ts +0 -18
  324. package/backend/node_modules/undici-types/webidl.d.ts +0 -228
  325. package/backend/node_modules/undici-types/websocket.d.ts +0 -150
  326. package/daemon/node_modules/@types/node/LICENSE +0 -21
  327. package/daemon/node_modules/@types/node/README.md +0 -15
  328. package/daemon/node_modules/@types/node/assert/strict.d.ts +0 -8
  329. package/daemon/node_modules/@types/node/assert.d.ts +0 -1044
  330. package/daemon/node_modules/@types/node/async_hooks.d.ts +0 -605
  331. package/daemon/node_modules/@types/node/buffer.buffer.d.ts +0 -462
  332. package/daemon/node_modules/@types/node/buffer.d.ts +0 -1932
  333. package/daemon/node_modules/@types/node/child_process.d.ts +0 -1452
  334. package/daemon/node_modules/@types/node/cluster.d.ts +0 -578
  335. package/daemon/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  336. package/daemon/node_modules/@types/node/compatibility/index.d.ts +0 -9
  337. package/daemon/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  338. package/daemon/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  339. package/daemon/node_modules/@types/node/console.d.ts +0 -452
  340. package/daemon/node_modules/@types/node/constants.d.ts +0 -21
  341. package/daemon/node_modules/@types/node/crypto.d.ts +0 -4570
  342. package/daemon/node_modules/@types/node/dgram.d.ts +0 -596
  343. package/daemon/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
  344. package/daemon/node_modules/@types/node/dns/promises.d.ts +0 -479
  345. package/daemon/node_modules/@types/node/dns.d.ts +0 -871
  346. package/daemon/node_modules/@types/node/domain.d.ts +0 -170
  347. package/daemon/node_modules/@types/node/events.d.ts +0 -931
  348. package/daemon/node_modules/@types/node/fs/promises.d.ts +0 -1248
  349. package/daemon/node_modules/@types/node/fs.d.ts +0 -4362
  350. package/daemon/node_modules/@types/node/globals.d.ts +0 -170
  351. package/daemon/node_modules/@types/node/globals.typedarray.d.ts +0 -21
  352. package/daemon/node_modules/@types/node/http.d.ts +0 -2031
  353. package/daemon/node_modules/@types/node/http2.d.ts +0 -2623
  354. package/daemon/node_modules/@types/node/https.d.ts +0 -549
  355. package/daemon/node_modules/@types/node/index.d.ts +0 -93
  356. package/daemon/node_modules/@types/node/inspector.generated.d.ts +0 -3966
  357. package/daemon/node_modules/@types/node/module.d.ts +0 -539
  358. package/daemon/node_modules/@types/node/net.d.ts +0 -1011
  359. package/daemon/node_modules/@types/node/os.d.ts +0 -495
  360. package/daemon/node_modules/@types/node/package.json +0 -140
  361. package/daemon/node_modules/@types/node/path.d.ts +0 -200
  362. package/daemon/node_modules/@types/node/perf_hooks.d.ts +0 -963
  363. package/daemon/node_modules/@types/node/process.d.ts +0 -1956
  364. package/daemon/node_modules/@types/node/punycode.d.ts +0 -117
  365. package/daemon/node_modules/@types/node/querystring.d.ts +0 -152
  366. package/daemon/node_modules/@types/node/readline/promises.d.ts +0 -162
  367. package/daemon/node_modules/@types/node/readline.d.ts +0 -589
  368. package/daemon/node_modules/@types/node/repl.d.ts +0 -430
  369. package/daemon/node_modules/@types/node/sea.d.ts +0 -153
  370. package/daemon/node_modules/@types/node/stream/consumers.d.ts +0 -38
  371. package/daemon/node_modules/@types/node/stream/promises.d.ts +0 -90
  372. package/daemon/node_modules/@types/node/stream/web.d.ts +0 -533
  373. package/daemon/node_modules/@types/node/stream.d.ts +0 -1668
  374. package/daemon/node_modules/@types/node/string_decoder.d.ts +0 -67
  375. package/daemon/node_modules/@types/node/test.d.ts +0 -1807
  376. package/daemon/node_modules/@types/node/timers/promises.d.ts +0 -108
  377. package/daemon/node_modules/@types/node/timers.d.ts +0 -286
  378. package/daemon/node_modules/@types/node/tls.d.ts +0 -1231
  379. package/daemon/node_modules/@types/node/trace_events.d.ts +0 -197
  380. package/daemon/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -460
  381. package/daemon/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -19
  382. package/daemon/node_modules/@types/node/ts5.6/index.d.ts +0 -93
  383. package/daemon/node_modules/@types/node/tty.d.ts +0 -208
  384. package/daemon/node_modules/@types/node/url.d.ts +0 -964
  385. package/daemon/node_modules/@types/node/util.d.ts +0 -2331
  386. package/daemon/node_modules/@types/node/v8.d.ts +0 -808
  387. package/daemon/node_modules/@types/node/vm.d.ts +0 -1030
  388. package/daemon/node_modules/@types/node/wasi.d.ts +0 -181
  389. package/daemon/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
  390. package/daemon/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  391. package/daemon/node_modules/@types/node/web-globals/events.d.ts +0 -94
  392. package/daemon/node_modules/@types/node/web-globals/fetch.d.ts +0 -46
  393. package/daemon/node_modules/@types/node/worker_threads.d.ts +0 -743
  394. package/daemon/node_modules/@types/node/zlib.d.ts +0 -539
  395. package/daemon/node_modules/undici-types/README.md +0 -6
  396. package/daemon/node_modules/undici-types/agent.d.ts +0 -31
  397. package/daemon/node_modules/undici-types/api.d.ts +0 -43
  398. package/daemon/node_modules/undici-types/balanced-pool.d.ts +0 -29
  399. package/daemon/node_modules/undici-types/cache.d.ts +0 -36
  400. package/daemon/node_modules/undici-types/client.d.ts +0 -108
  401. package/daemon/node_modules/undici-types/connector.d.ts +0 -34
  402. package/daemon/node_modules/undici-types/content-type.d.ts +0 -21
  403. package/daemon/node_modules/undici-types/cookies.d.ts +0 -28
  404. package/daemon/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
  405. package/daemon/node_modules/undici-types/dispatcher.d.ts +0 -256
  406. package/daemon/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
  407. package/daemon/node_modules/undici-types/errors.d.ts +0 -149
  408. package/daemon/node_modules/undici-types/eventsource.d.ts +0 -61
  409. package/daemon/node_modules/undici-types/fetch.d.ts +0 -209
  410. package/daemon/node_modules/undici-types/file.d.ts +0 -39
  411. package/daemon/node_modules/undici-types/filereader.d.ts +0 -54
  412. package/daemon/node_modules/undici-types/formdata.d.ts +0 -108
  413. package/daemon/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  414. package/daemon/node_modules/undici-types/global-origin.d.ts +0 -7
  415. package/daemon/node_modules/undici-types/handlers.d.ts +0 -15
  416. package/daemon/node_modules/undici-types/header.d.ts +0 -4
  417. package/daemon/node_modules/undici-types/index.d.ts +0 -71
  418. package/daemon/node_modules/undici-types/interceptors.d.ts +0 -17
  419. package/daemon/node_modules/undici-types/mock-agent.d.ts +0 -50
  420. package/daemon/node_modules/undici-types/mock-client.d.ts +0 -25
  421. package/daemon/node_modules/undici-types/mock-errors.d.ts +0 -12
  422. package/daemon/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  423. package/daemon/node_modules/undici-types/mock-pool.d.ts +0 -25
  424. package/daemon/node_modules/undici-types/package.json +0 -55
  425. package/daemon/node_modules/undici-types/patch.d.ts +0 -33
  426. package/daemon/node_modules/undici-types/pool-stats.d.ts +0 -19
  427. package/daemon/node_modules/undici-types/pool.d.ts +0 -39
  428. package/daemon/node_modules/undici-types/proxy-agent.d.ts +0 -28
  429. package/daemon/node_modules/undici-types/readable.d.ts +0 -65
  430. package/daemon/node_modules/undici-types/retry-agent.d.ts +0 -8
  431. package/daemon/node_modules/undici-types/retry-handler.d.ts +0 -116
  432. package/daemon/node_modules/undici-types/util.d.ts +0 -18
  433. package/daemon/node_modules/undici-types/webidl.d.ts +0 -228
  434. package/daemon/node_modules/undici-types/websocket.d.ts +0 -150
  435. package/visual-editor-proxy/node_modules/@types/node/LICENSE +0 -21
  436. package/visual-editor-proxy/node_modules/@types/node/README.md +0 -15
  437. package/visual-editor-proxy/node_modules/@types/node/assert/strict.d.ts +0 -8
  438. package/visual-editor-proxy/node_modules/@types/node/assert.d.ts +0 -1062
  439. package/visual-editor-proxy/node_modules/@types/node/async_hooks.d.ts +0 -605
  440. package/visual-editor-proxy/node_modules/@types/node/buffer.buffer.d.ts +0 -462
  441. package/visual-editor-proxy/node_modules/@types/node/buffer.d.ts +0 -1932
  442. package/visual-editor-proxy/node_modules/@types/node/child_process.d.ts +0 -1458
  443. package/visual-editor-proxy/node_modules/@types/node/cluster.d.ts +0 -577
  444. package/visual-editor-proxy/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  445. package/visual-editor-proxy/node_modules/@types/node/compatibility/index.d.ts +0 -9
  446. package/visual-editor-proxy/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  447. package/visual-editor-proxy/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  448. package/visual-editor-proxy/node_modules/@types/node/console.d.ts +0 -452
  449. package/visual-editor-proxy/node_modules/@types/node/constants.d.ts +0 -21
  450. package/visual-editor-proxy/node_modules/@types/node/crypto.d.ts +0 -4570
  451. package/visual-editor-proxy/node_modules/@types/node/dgram.d.ts +0 -596
  452. package/visual-editor-proxy/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
  453. package/visual-editor-proxy/node_modules/@types/node/dns/promises.d.ts +0 -479
  454. package/visual-editor-proxy/node_modules/@types/node/dns.d.ts +0 -871
  455. package/visual-editor-proxy/node_modules/@types/node/domain.d.ts +0 -170
  456. package/visual-editor-proxy/node_modules/@types/node/events.d.ts +0 -977
  457. package/visual-editor-proxy/node_modules/@types/node/fs/promises.d.ts +0 -1248
  458. package/visual-editor-proxy/node_modules/@types/node/fs.d.ts +0 -4362
  459. package/visual-editor-proxy/node_modules/@types/node/globals.d.ts +0 -172
  460. package/visual-editor-proxy/node_modules/@types/node/globals.typedarray.d.ts +0 -21
  461. package/visual-editor-proxy/node_modules/@types/node/http.d.ts +0 -2030
  462. package/visual-editor-proxy/node_modules/@types/node/http2.d.ts +0 -2624
  463. package/visual-editor-proxy/node_modules/@types/node/https.d.ts +0 -546
  464. package/visual-editor-proxy/node_modules/@types/node/index.d.ts +0 -93
  465. package/visual-editor-proxy/node_modules/@types/node/inspector.generated.d.ts +0 -3966
  466. package/visual-editor-proxy/node_modules/@types/node/module.d.ts +0 -539
  467. package/visual-editor-proxy/node_modules/@types/node/net.d.ts +0 -1011
  468. package/visual-editor-proxy/node_modules/@types/node/os.d.ts +0 -505
  469. package/visual-editor-proxy/node_modules/@types/node/package.json +0 -140
  470. package/visual-editor-proxy/node_modules/@types/node/path.d.ts +0 -200
  471. package/visual-editor-proxy/node_modules/@types/node/perf_hooks.d.ts +0 -961
  472. package/visual-editor-proxy/node_modules/@types/node/process.d.ts +0 -1944
  473. package/visual-editor-proxy/node_modules/@types/node/punycode.d.ts +0 -117
  474. package/visual-editor-proxy/node_modules/@types/node/querystring.d.ts +0 -152
  475. package/visual-editor-proxy/node_modules/@types/node/readline/promises.d.ts +0 -162
  476. package/visual-editor-proxy/node_modules/@types/node/readline.d.ts +0 -589
  477. package/visual-editor-proxy/node_modules/@types/node/repl.d.ts +0 -430
  478. package/visual-editor-proxy/node_modules/@types/node/sea.d.ts +0 -153
  479. package/visual-editor-proxy/node_modules/@types/node/stream/consumers.d.ts +0 -38
  480. package/visual-editor-proxy/node_modules/@types/node/stream/promises.d.ts +0 -90
  481. package/visual-editor-proxy/node_modules/@types/node/stream/web.d.ts +0 -533
  482. package/visual-editor-proxy/node_modules/@types/node/stream.d.ts +0 -1675
  483. package/visual-editor-proxy/node_modules/@types/node/string_decoder.d.ts +0 -67
  484. package/visual-editor-proxy/node_modules/@types/node/test.d.ts +0 -1787
  485. package/visual-editor-proxy/node_modules/@types/node/timers/promises.d.ts +0 -108
  486. package/visual-editor-proxy/node_modules/@types/node/timers.d.ts +0 -286
  487. package/visual-editor-proxy/node_modules/@types/node/tls.d.ts +0 -1231
  488. package/visual-editor-proxy/node_modules/@types/node/trace_events.d.ts +0 -197
  489. package/visual-editor-proxy/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -460
  490. package/visual-editor-proxy/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -19
  491. package/visual-editor-proxy/node_modules/@types/node/ts5.6/index.d.ts +0 -93
  492. package/visual-editor-proxy/node_modules/@types/node/tty.d.ts +0 -208
  493. package/visual-editor-proxy/node_modules/@types/node/url.d.ts +0 -964
  494. package/visual-editor-proxy/node_modules/@types/node/util.d.ts +0 -2331
  495. package/visual-editor-proxy/node_modules/@types/node/v8.d.ts +0 -808
  496. package/visual-editor-proxy/node_modules/@types/node/vm.d.ts +0 -1000
  497. package/visual-editor-proxy/node_modules/@types/node/wasi.d.ts +0 -181
  498. package/visual-editor-proxy/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
  499. package/visual-editor-proxy/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  500. package/visual-editor-proxy/node_modules/@types/node/web-globals/events.d.ts +0 -97
  501. package/visual-editor-proxy/node_modules/@types/node/web-globals/fetch.d.ts +0 -46
  502. package/visual-editor-proxy/node_modules/@types/node/worker_threads.d.ts +0 -715
  503. package/visual-editor-proxy/node_modules/@types/node/zlib.d.ts +0 -539
  504. package/visual-editor-proxy/node_modules/undici-types/LICENSE +0 -21
  505. package/visual-editor-proxy/node_modules/undici-types/README.md +0 -6
  506. package/visual-editor-proxy/node_modules/undici-types/agent.d.ts +0 -31
  507. package/visual-editor-proxy/node_modules/undici-types/api.d.ts +0 -43
  508. package/visual-editor-proxy/node_modules/undici-types/balanced-pool.d.ts +0 -29
  509. package/visual-editor-proxy/node_modules/undici-types/cache.d.ts +0 -36
  510. package/visual-editor-proxy/node_modules/undici-types/client.d.ts +0 -108
  511. package/visual-editor-proxy/node_modules/undici-types/connector.d.ts +0 -34
  512. package/visual-editor-proxy/node_modules/undici-types/content-type.d.ts +0 -21
  513. package/visual-editor-proxy/node_modules/undici-types/cookies.d.ts +0 -28
  514. package/visual-editor-proxy/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
  515. package/visual-editor-proxy/node_modules/undici-types/dispatcher.d.ts +0 -256
  516. package/visual-editor-proxy/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
  517. package/visual-editor-proxy/node_modules/undici-types/errors.d.ts +0 -149
  518. package/visual-editor-proxy/node_modules/undici-types/eventsource.d.ts +0 -61
  519. package/visual-editor-proxy/node_modules/undici-types/fetch.d.ts +0 -209
  520. package/visual-editor-proxy/node_modules/undici-types/file.d.ts +0 -39
  521. package/visual-editor-proxy/node_modules/undici-types/filereader.d.ts +0 -54
  522. package/visual-editor-proxy/node_modules/undici-types/formdata.d.ts +0 -108
  523. package/visual-editor-proxy/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  524. package/visual-editor-proxy/node_modules/undici-types/global-origin.d.ts +0 -7
  525. package/visual-editor-proxy/node_modules/undici-types/handlers.d.ts +0 -15
  526. package/visual-editor-proxy/node_modules/undici-types/header.d.ts +0 -4
  527. package/visual-editor-proxy/node_modules/undici-types/index.d.ts +0 -71
  528. package/visual-editor-proxy/node_modules/undici-types/interceptors.d.ts +0 -17
  529. package/visual-editor-proxy/node_modules/undici-types/mock-agent.d.ts +0 -50
  530. package/visual-editor-proxy/node_modules/undici-types/mock-client.d.ts +0 -25
  531. package/visual-editor-proxy/node_modules/undici-types/mock-errors.d.ts +0 -12
  532. package/visual-editor-proxy/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  533. package/visual-editor-proxy/node_modules/undici-types/mock-pool.d.ts +0 -25
  534. package/visual-editor-proxy/node_modules/undici-types/package.json +0 -55
  535. package/visual-editor-proxy/node_modules/undici-types/patch.d.ts +0 -33
  536. package/visual-editor-proxy/node_modules/undici-types/pool-stats.d.ts +0 -19
  537. package/visual-editor-proxy/node_modules/undici-types/pool.d.ts +0 -39
  538. package/visual-editor-proxy/node_modules/undici-types/proxy-agent.d.ts +0 -28
  539. package/visual-editor-proxy/node_modules/undici-types/readable.d.ts +0 -65
  540. package/visual-editor-proxy/node_modules/undici-types/retry-agent.d.ts +0 -8
  541. package/visual-editor-proxy/node_modules/undici-types/retry-handler.d.ts +0 -116
  542. package/visual-editor-proxy/node_modules/undici-types/util.d.ts +0 -18
  543. package/visual-editor-proxy/node_modules/undici-types/webidl.d.ts +0 -228
  544. package/visual-editor-proxy/node_modules/undici-types/websocket.d.ts +0 -150
@@ -0,0 +1,135 @@
1
+ /**
2
+ * @fileoverview Config file operations. This file must be usable in the browser,
3
+ * so no Node-specific code can be here.
4
+ * @author Nicholas C. Zakas
5
+ */
6
+
7
+ //------------------------------------------------------------------------------
8
+ // Private
9
+ //------------------------------------------------------------------------------
10
+
11
+ const RULE_SEVERITY_STRINGS = ["off", "warn", "error"],
12
+ RULE_SEVERITY = RULE_SEVERITY_STRINGS.reduce((map, value, index) => {
13
+ map[value] = index;
14
+ return map;
15
+ }, {}),
16
+ VALID_SEVERITIES = [0, 1, 2, "off", "warn", "error"];
17
+
18
+ //------------------------------------------------------------------------------
19
+ // Public Interface
20
+ //------------------------------------------------------------------------------
21
+
22
+ /**
23
+ * Normalizes the severity value of a rule's configuration to a number
24
+ * @param {(number|string|[number, ...*]|[string, ...*])} ruleConfig A rule's configuration value, generally
25
+ * received from the user. A valid config value is either 0, 1, 2, the string "off" (treated the same as 0),
26
+ * the string "warn" (treated the same as 1), the string "error" (treated the same as 2), or an array
27
+ * whose first element is one of the above values. Strings are matched case-insensitively.
28
+ * @returns {(0|1|2)} The numeric severity value if the config value was valid, otherwise 0.
29
+ */
30
+ function getRuleSeverity(ruleConfig) {
31
+ const severityValue = Array.isArray(ruleConfig) ? ruleConfig[0] : ruleConfig;
32
+
33
+ if (severityValue === 0 || severityValue === 1 || severityValue === 2) {
34
+ return severityValue;
35
+ }
36
+
37
+ if (typeof severityValue === "string") {
38
+ return RULE_SEVERITY[severityValue.toLowerCase()] || 0;
39
+ }
40
+
41
+ return 0;
42
+ }
43
+
44
+ /**
45
+ * Converts old-style severity settings (0, 1, 2) into new-style
46
+ * severity settings (off, warn, error) for all rules. Assumption is that severity
47
+ * values have already been validated as correct.
48
+ * @param {Object} config The config object to normalize.
49
+ * @returns {void}
50
+ */
51
+ function normalizeToStrings(config) {
52
+
53
+ if (config.rules) {
54
+ Object.keys(config.rules).forEach(ruleId => {
55
+ const ruleConfig = config.rules[ruleId];
56
+
57
+ if (typeof ruleConfig === "number") {
58
+ config.rules[ruleId] = RULE_SEVERITY_STRINGS[ruleConfig] || RULE_SEVERITY_STRINGS[0];
59
+ } else if (Array.isArray(ruleConfig) && typeof ruleConfig[0] === "number") {
60
+ ruleConfig[0] = RULE_SEVERITY_STRINGS[ruleConfig[0]] || RULE_SEVERITY_STRINGS[0];
61
+ }
62
+ });
63
+ }
64
+ }
65
+
66
+ /**
67
+ * Determines if the severity for the given rule configuration represents an error.
68
+ * @param {int|string|Array} ruleConfig The configuration for an individual rule.
69
+ * @returns {boolean} True if the rule represents an error, false if not.
70
+ */
71
+ function isErrorSeverity(ruleConfig) {
72
+ return getRuleSeverity(ruleConfig) === 2;
73
+ }
74
+
75
+ /**
76
+ * Checks whether a given config has valid severity or not.
77
+ * @param {number|string|Array} ruleConfig The configuration for an individual rule.
78
+ * @returns {boolean} `true` if the configuration has valid severity.
79
+ */
80
+ function isValidSeverity(ruleConfig) {
81
+ let severity = Array.isArray(ruleConfig) ? ruleConfig[0] : ruleConfig;
82
+
83
+ if (typeof severity === "string") {
84
+ severity = severity.toLowerCase();
85
+ }
86
+ return VALID_SEVERITIES.indexOf(severity) !== -1;
87
+ }
88
+
89
+ /**
90
+ * Checks whether every rule of a given config has valid severity or not.
91
+ * @param {Object} config The configuration for rules.
92
+ * @returns {boolean} `true` if the configuration has valid severity.
93
+ */
94
+ function isEverySeverityValid(config) {
95
+ return Object.keys(config).every(ruleId => isValidSeverity(config[ruleId]));
96
+ }
97
+
98
+ /**
99
+ * Normalizes a value for a global in a config
100
+ * @param {(boolean|string|null)} configuredValue The value given for a global in configuration or in
101
+ * a global directive comment
102
+ * @returns {("readable"|"writeable"|"off")} The value normalized as a string
103
+ * @throws Error if global value is invalid
104
+ */
105
+ function normalizeConfigGlobal(configuredValue) {
106
+ switch (configuredValue) {
107
+ case "off":
108
+ return "off";
109
+
110
+ case true:
111
+ case "true":
112
+ case "writeable":
113
+ case "writable":
114
+ return "writable";
115
+
116
+ case null:
117
+ case false:
118
+ case "false":
119
+ case "readable":
120
+ case "readonly":
121
+ return "readonly";
122
+
123
+ default:
124
+ throw new Error(`'${configuredValue}' is not a valid configuration for a global (use 'readonly', 'writable', or 'off')`);
125
+ }
126
+ }
127
+
128
+ export {
129
+ getRuleSeverity,
130
+ normalizeToStrings,
131
+ isErrorSeverity,
132
+ isValidSeverity,
133
+ isEverySeverityValid,
134
+ normalizeConfigGlobal
135
+ };
@@ -0,0 +1,325 @@
1
+ /**
2
+ * @fileoverview Validates configs.
3
+ * @author Brandon Mills
4
+ */
5
+
6
+ /* eslint class-methods-use-this: "off" */
7
+
8
+ //------------------------------------------------------------------------------
9
+ // Requirements
10
+ //------------------------------------------------------------------------------
11
+
12
+ import util from "util";
13
+ import * as ConfigOps from "./config-ops.js";
14
+ import { emitDeprecationWarning } from "./deprecation-warnings.js";
15
+ import ajvOrig from "./ajv.js";
16
+ import configSchema from "../../conf/config-schema.js";
17
+ import BuiltInEnvironments from "../../conf/environments.js";
18
+
19
+ const ajv = ajvOrig();
20
+
21
+ const ruleValidators = new WeakMap();
22
+ const noop = Function.prototype;
23
+
24
+ //------------------------------------------------------------------------------
25
+ // Private
26
+ //------------------------------------------------------------------------------
27
+ let validateSchema;
28
+ const severityMap = {
29
+ error: 2,
30
+ warn: 1,
31
+ off: 0
32
+ };
33
+
34
+ const validated = new WeakSet();
35
+
36
+ //-----------------------------------------------------------------------------
37
+ // Exports
38
+ //-----------------------------------------------------------------------------
39
+
40
+ export default class ConfigValidator {
41
+ constructor({ builtInRules = new Map() } = {}) {
42
+ this.builtInRules = builtInRules;
43
+ }
44
+
45
+ /**
46
+ * Gets a complete options schema for a rule.
47
+ * @param {{create: Function, schema: (Array|null)}} rule A new-style rule object
48
+ * @returns {Object} JSON Schema for the rule's options.
49
+ */
50
+ getRuleOptionsSchema(rule) {
51
+ if (!rule) {
52
+ return null;
53
+ }
54
+
55
+ const schema = rule.schema || rule.meta && rule.meta.schema;
56
+
57
+ // Given a tuple of schemas, insert warning level at the beginning
58
+ if (Array.isArray(schema)) {
59
+ if (schema.length) {
60
+ return {
61
+ type: "array",
62
+ items: schema,
63
+ minItems: 0,
64
+ maxItems: schema.length
65
+ };
66
+ }
67
+ return {
68
+ type: "array",
69
+ minItems: 0,
70
+ maxItems: 0
71
+ };
72
+
73
+ }
74
+
75
+ // Given a full schema, leave it alone
76
+ return schema || null;
77
+ }
78
+
79
+ /**
80
+ * Validates a rule's severity and returns the severity value. Throws an error if the severity is invalid.
81
+ * @param {options} options The given options for the rule.
82
+ * @returns {number|string} The rule's severity value
83
+ */
84
+ validateRuleSeverity(options) {
85
+ const severity = Array.isArray(options) ? options[0] : options;
86
+ const normSeverity = typeof severity === "string" ? severityMap[severity.toLowerCase()] : severity;
87
+
88
+ if (normSeverity === 0 || normSeverity === 1 || normSeverity === 2) {
89
+ return normSeverity;
90
+ }
91
+
92
+ throw new Error(`\tSeverity should be one of the following: 0 = off, 1 = warn, 2 = error (you passed '${util.inspect(severity).replace(/'/gu, "\"").replace(/\n/gu, "")}').\n`);
93
+
94
+ }
95
+
96
+ /**
97
+ * Validates the non-severity options passed to a rule, based on its schema.
98
+ * @param {{create: Function}} rule The rule to validate
99
+ * @param {Array} localOptions The options for the rule, excluding severity
100
+ * @returns {void}
101
+ */
102
+ validateRuleSchema(rule, localOptions) {
103
+ if (!ruleValidators.has(rule)) {
104
+ const schema = this.getRuleOptionsSchema(rule);
105
+
106
+ if (schema) {
107
+ ruleValidators.set(rule, ajv.compile(schema));
108
+ }
109
+ }
110
+
111
+ const validateRule = ruleValidators.get(rule);
112
+
113
+ if (validateRule) {
114
+ validateRule(localOptions);
115
+ if (validateRule.errors) {
116
+ throw new Error(validateRule.errors.map(
117
+ error => `\tValue ${JSON.stringify(error.data)} ${error.message}.\n`
118
+ ).join(""));
119
+ }
120
+ }
121
+ }
122
+
123
+ /**
124
+ * Validates a rule's options against its schema.
125
+ * @param {{create: Function}|null} rule The rule that the config is being validated for
126
+ * @param {string} ruleId The rule's unique name.
127
+ * @param {Array|number} options The given options for the rule.
128
+ * @param {string|null} source The name of the configuration source to report in any errors. If null or undefined,
129
+ * no source is prepended to the message.
130
+ * @returns {void}
131
+ */
132
+ validateRuleOptions(rule, ruleId, options, source = null) {
133
+ try {
134
+ const severity = this.validateRuleSeverity(options);
135
+
136
+ if (severity !== 0) {
137
+ this.validateRuleSchema(rule, Array.isArray(options) ? options.slice(1) : []);
138
+ }
139
+ } catch (err) {
140
+ const enhancedMessage = `Configuration for rule "${ruleId}" is invalid:\n${err.message}`;
141
+
142
+ if (typeof source === "string") {
143
+ throw new Error(`${source}:\n\t${enhancedMessage}`);
144
+ } else {
145
+ throw new Error(enhancedMessage);
146
+ }
147
+ }
148
+ }
149
+
150
+ /**
151
+ * Validates an environment object
152
+ * @param {Object} environment The environment config object to validate.
153
+ * @param {string} source The name of the configuration source to report in any errors.
154
+ * @param {function(envId:string): Object} [getAdditionalEnv] A map from strings to loaded environments.
155
+ * @returns {void}
156
+ */
157
+ validateEnvironment(
158
+ environment,
159
+ source,
160
+ getAdditionalEnv = noop
161
+ ) {
162
+
163
+ // not having an environment is ok
164
+ if (!environment) {
165
+ return;
166
+ }
167
+
168
+ Object.keys(environment).forEach(id => {
169
+ const env = getAdditionalEnv(id) || BuiltInEnvironments.get(id) || null;
170
+
171
+ if (!env) {
172
+ const message = `${source}:\n\tEnvironment key "${id}" is unknown\n`;
173
+
174
+ throw new Error(message);
175
+ }
176
+ });
177
+ }
178
+
179
+ /**
180
+ * Validates a rules config object
181
+ * @param {Object} rulesConfig The rules config object to validate.
182
+ * @param {string} source The name of the configuration source to report in any errors.
183
+ * @param {function(ruleId:string): Object} getAdditionalRule A map from strings to loaded rules
184
+ * @returns {void}
185
+ */
186
+ validateRules(
187
+ rulesConfig,
188
+ source,
189
+ getAdditionalRule = noop
190
+ ) {
191
+ if (!rulesConfig) {
192
+ return;
193
+ }
194
+
195
+ Object.keys(rulesConfig).forEach(id => {
196
+ const rule = getAdditionalRule(id) || this.builtInRules.get(id) || null;
197
+
198
+ this.validateRuleOptions(rule, id, rulesConfig[id], source);
199
+ });
200
+ }
201
+
202
+ /**
203
+ * Validates a `globals` section of a config file
204
+ * @param {Object} globalsConfig The `globals` section
205
+ * @param {string|null} source The name of the configuration source to report in the event of an error.
206
+ * @returns {void}
207
+ */
208
+ validateGlobals(globalsConfig, source = null) {
209
+ if (!globalsConfig) {
210
+ return;
211
+ }
212
+
213
+ Object.entries(globalsConfig)
214
+ .forEach(([configuredGlobal, configuredValue]) => {
215
+ try {
216
+ ConfigOps.normalizeConfigGlobal(configuredValue);
217
+ } catch (err) {
218
+ throw new Error(`ESLint configuration of global '${configuredGlobal}' in ${source} is invalid:\n${err.message}`);
219
+ }
220
+ });
221
+ }
222
+
223
+ /**
224
+ * Validate `processor` configuration.
225
+ * @param {string|undefined} processorName The processor name.
226
+ * @param {string} source The name of config file.
227
+ * @param {function(id:string): Processor} getProcessor The getter of defined processors.
228
+ * @returns {void}
229
+ */
230
+ validateProcessor(processorName, source, getProcessor) {
231
+ if (processorName && !getProcessor(processorName)) {
232
+ throw new Error(`ESLint configuration of processor in '${source}' is invalid: '${processorName}' was not found.`);
233
+ }
234
+ }
235
+
236
+ /**
237
+ * Formats an array of schema validation errors.
238
+ * @param {Array} errors An array of error messages to format.
239
+ * @returns {string} Formatted error message
240
+ */
241
+ formatErrors(errors) {
242
+ return errors.map(error => {
243
+ if (error.keyword === "additionalProperties") {
244
+ const formattedPropertyPath = error.dataPath.length ? `${error.dataPath.slice(1)}.${error.params.additionalProperty}` : error.params.additionalProperty;
245
+
246
+ return `Unexpected top-level property "${formattedPropertyPath}"`;
247
+ }
248
+ if (error.keyword === "type") {
249
+ const formattedField = error.dataPath.slice(1);
250
+ const formattedExpectedType = Array.isArray(error.schema) ? error.schema.join("/") : error.schema;
251
+ const formattedValue = JSON.stringify(error.data);
252
+
253
+ return `Property "${formattedField}" is the wrong type (expected ${formattedExpectedType} but got \`${formattedValue}\`)`;
254
+ }
255
+
256
+ const field = error.dataPath[0] === "." ? error.dataPath.slice(1) : error.dataPath;
257
+
258
+ return `"${field}" ${error.message}. Value: ${JSON.stringify(error.data)}`;
259
+ }).map(message => `\t- ${message}.\n`).join("");
260
+ }
261
+
262
+ /**
263
+ * Validates the top level properties of the config object.
264
+ * @param {Object} config The config object to validate.
265
+ * @param {string} source The name of the configuration source to report in any errors.
266
+ * @returns {void}
267
+ */
268
+ validateConfigSchema(config, source = null) {
269
+ validateSchema = validateSchema || ajv.compile(configSchema);
270
+
271
+ if (!validateSchema(config)) {
272
+ throw new Error(`ESLint configuration in ${source} is invalid:\n${this.formatErrors(validateSchema.errors)}`);
273
+ }
274
+
275
+ if (Object.hasOwnProperty.call(config, "ecmaFeatures")) {
276
+ emitDeprecationWarning(source, "ESLINT_LEGACY_ECMAFEATURES");
277
+ }
278
+ }
279
+
280
+ /**
281
+ * Validates an entire config object.
282
+ * @param {Object} config The config object to validate.
283
+ * @param {string} source The name of the configuration source to report in any errors.
284
+ * @param {function(ruleId:string): Object} [getAdditionalRule] A map from strings to loaded rules.
285
+ * @param {function(envId:string): Object} [getAdditionalEnv] A map from strings to loaded envs.
286
+ * @returns {void}
287
+ */
288
+ validate(config, source, getAdditionalRule, getAdditionalEnv) {
289
+ this.validateConfigSchema(config, source);
290
+ this.validateRules(config.rules, source, getAdditionalRule);
291
+ this.validateEnvironment(config.env, source, getAdditionalEnv);
292
+ this.validateGlobals(config.globals, source);
293
+
294
+ for (const override of config.overrides || []) {
295
+ this.validateRules(override.rules, source, getAdditionalRule);
296
+ this.validateEnvironment(override.env, source, getAdditionalEnv);
297
+ this.validateGlobals(config.globals, source);
298
+ }
299
+ }
300
+
301
+ /**
302
+ * Validate config array object.
303
+ * @param {ConfigArray} configArray The config array to validate.
304
+ * @returns {void}
305
+ */
306
+ validateConfigArray(configArray) {
307
+ const getPluginEnv = Map.prototype.get.bind(configArray.pluginEnvironments);
308
+ const getPluginProcessor = Map.prototype.get.bind(configArray.pluginProcessors);
309
+ const getPluginRule = Map.prototype.get.bind(configArray.pluginRules);
310
+
311
+ // Validate.
312
+ for (const element of configArray) {
313
+ if (validated.has(element)) {
314
+ continue;
315
+ }
316
+ validated.add(element);
317
+
318
+ this.validateEnvironment(element.env, element.name, getPluginEnv);
319
+ this.validateGlobals(element.globals, element.name);
320
+ this.validateProcessor(element.processor, element.name, getPluginProcessor);
321
+ this.validateRules(element.rules, element.name, getPluginRule);
322
+ }
323
+ }
324
+
325
+ }
@@ -0,0 +1,63 @@
1
+ /**
2
+ * @fileoverview Provide the function that emits deprecation warnings.
3
+ * @author Toru Nagashima <http://github.com/mysticatea>
4
+ */
5
+
6
+ //------------------------------------------------------------------------------
7
+ // Requirements
8
+ //------------------------------------------------------------------------------
9
+
10
+ import path from "path";
11
+
12
+ //------------------------------------------------------------------------------
13
+ // Private
14
+ //------------------------------------------------------------------------------
15
+
16
+ // Defitions for deprecation warnings.
17
+ const deprecationWarningMessages = {
18
+ ESLINT_LEGACY_ECMAFEATURES:
19
+ "The 'ecmaFeatures' config file property is deprecated and has no effect.",
20
+ ESLINT_PERSONAL_CONFIG_LOAD:
21
+ "'~/.eslintrc.*' config files have been deprecated. " +
22
+ "Please use a config file per project or the '--config' option.",
23
+ ESLINT_PERSONAL_CONFIG_SUPPRESS:
24
+ "'~/.eslintrc.*' config files have been deprecated. " +
25
+ "Please remove it or add 'root:true' to the config files in your " +
26
+ "projects in order to avoid loading '~/.eslintrc.*' accidentally."
27
+ };
28
+
29
+ const sourceFileErrorCache = new Set();
30
+
31
+ /**
32
+ * Emits a deprecation warning containing a given filepath. A new deprecation warning is emitted
33
+ * for each unique file path, but repeated invocations with the same file path have no effect.
34
+ * No warnings are emitted if the `--no-deprecation` or `--no-warnings` Node runtime flags are active.
35
+ * @param {string} source The name of the configuration source to report the warning for.
36
+ * @param {string} errorCode The warning message to show.
37
+ * @returns {void}
38
+ */
39
+ function emitDeprecationWarning(source, errorCode) {
40
+ const cacheKey = JSON.stringify({ source, errorCode });
41
+
42
+ if (sourceFileErrorCache.has(cacheKey)) {
43
+ return;
44
+ }
45
+ sourceFileErrorCache.add(cacheKey);
46
+
47
+ const rel = path.relative(process.cwd(), source);
48
+ const message = deprecationWarningMessages[errorCode];
49
+
50
+ process.emitWarning(
51
+ `${message} (found in "${rel}")`,
52
+ "DeprecationWarning",
53
+ errorCode
54
+ );
55
+ }
56
+
57
+ //------------------------------------------------------------------------------
58
+ // Public Interface
59
+ //------------------------------------------------------------------------------
60
+
61
+ export {
62
+ emitDeprecationWarning
63
+ };
@@ -0,0 +1,96 @@
1
+ /**
2
+ * @fileoverview Common helpers for naming of plugins, formatters and configs
3
+ */
4
+
5
+ const NAMESPACE_REGEX = /^@.*\//iu;
6
+
7
+ /**
8
+ * Brings package name to correct format based on prefix
9
+ * @param {string} name The name of the package.
10
+ * @param {string} prefix Can be either "eslint-plugin", "eslint-config" or "eslint-formatter"
11
+ * @returns {string} Normalized name of the package
12
+ * @private
13
+ */
14
+ function normalizePackageName(name, prefix) {
15
+ let normalizedName = name;
16
+
17
+ /**
18
+ * On Windows, name can come in with Windows slashes instead of Unix slashes.
19
+ * Normalize to Unix first to avoid errors later on.
20
+ * https://github.com/eslint/eslint/issues/5644
21
+ */
22
+ if (normalizedName.includes("\\")) {
23
+ normalizedName = normalizedName.replace(/\\/gu, "/");
24
+ }
25
+
26
+ if (normalizedName.charAt(0) === "@") {
27
+
28
+ /**
29
+ * it's a scoped package
30
+ * package name is the prefix, or just a username
31
+ */
32
+ const scopedPackageShortcutRegex = new RegExp(`^(@[^/]+)(?:/(?:${prefix})?)?$`, "u"),
33
+ scopedPackageNameRegex = new RegExp(`^${prefix}(-|$)`, "u");
34
+
35
+ if (scopedPackageShortcutRegex.test(normalizedName)) {
36
+ normalizedName = normalizedName.replace(scopedPackageShortcutRegex, `$1/${prefix}`);
37
+ } else if (!scopedPackageNameRegex.test(normalizedName.split("/")[1])) {
38
+
39
+ /**
40
+ * for scoped packages, insert the prefix after the first / unless
41
+ * the path is already @scope/eslint or @scope/eslint-xxx-yyy
42
+ */
43
+ normalizedName = normalizedName.replace(/^@([^/]+)\/(.*)$/u, `@$1/${prefix}-$2`);
44
+ }
45
+ } else if (!normalizedName.startsWith(`${prefix}-`)) {
46
+ normalizedName = `${prefix}-${normalizedName}`;
47
+ }
48
+
49
+ return normalizedName;
50
+ }
51
+
52
+ /**
53
+ * Removes the prefix from a fullname.
54
+ * @param {string} fullname The term which may have the prefix.
55
+ * @param {string} prefix The prefix to remove.
56
+ * @returns {string} The term without prefix.
57
+ */
58
+ function getShorthandName(fullname, prefix) {
59
+ if (fullname[0] === "@") {
60
+ let matchResult = new RegExp(`^(@[^/]+)/${prefix}$`, "u").exec(fullname);
61
+
62
+ if (matchResult) {
63
+ return matchResult[1];
64
+ }
65
+
66
+ matchResult = new RegExp(`^(@[^/]+)/${prefix}-(.+)$`, "u").exec(fullname);
67
+ if (matchResult) {
68
+ return `${matchResult[1]}/${matchResult[2]}`;
69
+ }
70
+ } else if (fullname.startsWith(`${prefix}-`)) {
71
+ return fullname.slice(prefix.length + 1);
72
+ }
73
+
74
+ return fullname;
75
+ }
76
+
77
+ /**
78
+ * Gets the scope (namespace) of a term.
79
+ * @param {string} term The term which may have the namespace.
80
+ * @returns {string} The namespace of the term if it has one.
81
+ */
82
+ function getNamespaceFromTerm(term) {
83
+ const match = term.match(NAMESPACE_REGEX);
84
+
85
+ return match ? match[0] : "";
86
+ }
87
+
88
+ //------------------------------------------------------------------------------
89
+ // Public Interface
90
+ //------------------------------------------------------------------------------
91
+
92
+ export {
93
+ normalizePackageName,
94
+ getShorthandName,
95
+ getNamespaceFromTerm
96
+ };
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Utility for resolving a module relative to another module
3
+ * @author Teddy Katz
4
+ */
5
+
6
+ import Module from "module";
7
+
8
+ /*
9
+ * `Module.createRequire` is added in v12.2.0. It supports URL as well.
10
+ * We only support the case where the argument is a filepath, not a URL.
11
+ */
12
+ const createRequire = Module.createRequire;
13
+
14
+ /**
15
+ * Resolves a Node module relative to another module
16
+ * @param {string} moduleName The name of a Node module, or a path to a Node module.
17
+ * @param {string} relativeToPath An absolute path indicating the module that `moduleName` should be resolved relative to. This must be
18
+ * a file rather than a directory, but the file need not actually exist.
19
+ * @returns {string} The absolute path that would result from calling `require.resolve(moduleName)` in a file located at `relativeToPath`
20
+ */
21
+ function resolve(moduleName, relativeToPath) {
22
+ try {
23
+ return createRequire(relativeToPath).resolve(moduleName);
24
+ } catch (error) {
25
+
26
+ // This `if` block is for older Node.js than 12.0.0. We can remove this block in the future.
27
+ if (
28
+ typeof error === "object" &&
29
+ error !== null &&
30
+ error.code === "MODULE_NOT_FOUND" &&
31
+ !error.requireStack &&
32
+ error.message.includes(moduleName)
33
+ ) {
34
+ error.message += `\nRequire stack:\n- ${relativeToPath}`;
35
+ }
36
+ throw error;
37
+ }
38
+ }
39
+
40
+ export {
41
+ resolve
42
+ };