@lvce-editor/static-server 0.76.6 → 0.76.8

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 (1973) hide show
  1. package/config.json +1992 -1992
  2. package/package.json +1 -1
  3. package/static/{0f871be → 10f95cc}/css/App.css +89 -89
  4. package/static/10f95cc/css/parts/ChatSendArea.css +29 -0
  5. package/static/{0f871be → 10f95cc}/css/parts/ChatTool.css +32 -0
  6. package/static/{0f871be → 10f95cc}/css/parts/ViewletChat.css +75 -3
  7. package/static/{0f871be → 10f95cc}/manifest.json +2 -2
  8. package/static/{0f871be → 10f95cc}/packages/about-view-worker/dist/aboutWorkerMain.js +3 -3
  9. package/static/{0f871be → 10f95cc}/packages/chat-tool-worker/dist/chatToolWorkerMain.js +644 -41
  10. package/static/{0f871be → 10f95cc}/packages/chat-view/dist/chatViewWorkerMain.js +1206 -560
  11. package/static/{0f871be → 10f95cc}/packages/editor-worker/dist/editorWorkerMain.js +355 -812
  12. package/static/{0f871be → 10f95cc}/packages/extension-host-worker/dist/extensionHostWorkerMain.js +3 -3
  13. package/static/{0f871be → 10f95cc}/packages/renderer-process/dist/rendererProcessMain.js +1 -1
  14. package/static/{0f871be → 10f95cc}/packages/renderer-worker/dist/rendererWorkerMain.js +384 -376
  15. package/static/{0f871be → 10f95cc}/packages/test-worker/dist/testWorkerMain.js +37 -9
  16. package/static/{0f871be → 10f95cc}/packages/text-search-worker/dist/textSearchWorkerMain.js +347 -267
  17. package/static/index.html +4 -4
  18. package/static/0f871be/css/parts/ChatSendArea.css +0 -26
  19. /package/static/{0f871be → 10f95cc}/config/colorTheme.json +0 -0
  20. /package/static/{0f871be → 10f95cc}/config/defaultSettings.json +0 -0
  21. /package/static/{0f871be → 10f95cc}/config/fileMap.json +0 -0
  22. /package/static/{0f871be → 10f95cc}/config/webExtensions.json +0 -0
  23. /package/static/{0f871be → 10f95cc}/css/parts/AdditionalDetails.css +0 -0
  24. /package/static/{0f871be → 10f95cc}/css/parts/Animation.css +0 -0
  25. /package/static/{0f871be → 10f95cc}/css/parts/BrowserScrollBar.css +0 -0
  26. /package/static/{0f871be → 10f95cc}/css/parts/Category.css +0 -0
  27. /package/static/{0f871be → 10f95cc}/css/parts/ChatHeader.css +0 -0
  28. /package/static/{0f871be → 10f95cc}/css/parts/DebugButtons.css +0 -0
  29. /package/static/{0f871be → 10f95cc}/css/parts/DebugValue.css +0 -0
  30. /package/static/{0f871be → 10f95cc}/css/parts/E2eTest.css +0 -0
  31. /package/static/{0f871be → 10f95cc}/css/parts/E2eTests.css +0 -0
  32. /package/static/{0f871be → 10f95cc}/css/parts/EditorHover.css +0 -0
  33. /package/static/{0f871be → 10f95cc}/css/parts/EditorMessage.css +0 -0
  34. /package/static/{0f871be → 10f95cc}/css/parts/FeatureContent.css +0 -0
  35. /package/static/{0f871be → 10f95cc}/css/parts/Features.css +0 -0
  36. /package/static/{0f871be → 10f95cc}/css/parts/ImagePreview.css +0 -0
  37. /package/static/{0f871be → 10f95cc}/css/parts/InlineDiffEditor.css +0 -0
  38. /package/static/{0f871be → 10f95cc}/css/parts/InputBadge.css +0 -0
  39. /package/static/{0f871be → 10f95cc}/css/parts/Key.css +0 -0
  40. /package/static/{0f871be → 10f95cc}/css/parts/KeyBindingsHeader.css +0 -0
  41. /package/static/{0f871be → 10f95cc}/css/parts/KeyBindingsTable.css +0 -0
  42. /package/static/{0f871be → 10f95cc}/css/parts/LegacyDialog.css +0 -0
  43. /package/static/{0f871be → 10f95cc}/css/parts/Markdown.css +0 -0
  44. /package/static/{0f871be → 10f95cc}/css/parts/Message.css +0 -0
  45. /package/static/{0f871be → 10f95cc}/css/parts/Preview.css +0 -0
  46. /package/static/{0f871be → 10f95cc}/css/parts/ScrollToTop.css +0 -0
  47. /package/static/{0f871be → 10f95cc}/css/parts/SearchToggleButton.css +0 -0
  48. /package/static/{0f871be → 10f95cc}/css/parts/Select.css +0 -0
  49. /package/static/{0f871be → 10f95cc}/css/parts/SettingsHeader.css +0 -0
  50. /package/static/{0f871be → 10f95cc}/css/parts/SettingsItems.css +0 -0
  51. /package/static/{0f871be → 10f95cc}/css/parts/SettingsSideBar.css +0 -0
  52. /package/static/{0f871be → 10f95cc}/css/parts/Table.css +0 -0
  53. /package/static/{0f871be → 10f95cc}/css/parts/ViewletAbout.css +0 -0
  54. /package/static/{0f871be → 10f95cc}/css/parts/ViewletBrowserViewOverview.css +0 -0
  55. /package/static/{0f871be → 10f95cc}/css/parts/ViewletDebugChat.css +0 -0
  56. /package/static/{0f871be → 10f95cc}/css/parts/ViewletDebugConsole.css +0 -0
  57. /package/static/{0f871be → 10f95cc}/css/parts/ViewletDefineKeyBinding.css +0 -0
  58. /package/static/{0f871be → 10f95cc}/css/parts/ViewletDialog.css +0 -0
  59. /package/static/{0f871be → 10f95cc}/css/parts/ViewletDiffEditor.css +0 -0
  60. /package/static/{0f871be → 10f95cc}/css/parts/ViewletEditorWidgetError.css +0 -0
  61. /package/static/{0f871be → 10f95cc}/css/parts/ViewletExtensionDetail.css +0 -0
  62. /package/static/{0f871be → 10f95cc}/css/parts/ViewletExtensionDetailHeader.css +0 -0
  63. /package/static/{0f871be → 10f95cc}/css/parts/ViewletExtensionDetailTabs.css +0 -0
  64. /package/static/{0f871be → 10f95cc}/css/parts/ViewletExtensions.css +0 -0
  65. /package/static/{0f871be → 10f95cc}/css/parts/ViewletIframeInspector.css +0 -0
  66. /package/static/{0f871be → 10f95cc}/css/parts/ViewletKeyBindings.css +0 -0
  67. /package/static/{0f871be → 10f95cc}/css/parts/ViewletLanguageModels.css +0 -0
  68. /package/static/{0f871be → 10f95cc}/css/parts/ViewletMedia.css +0 -0
  69. /package/static/{0f871be → 10f95cc}/css/parts/ViewletOutput.css +0 -0
  70. /package/static/{0f871be → 10f95cc}/css/parts/ViewletPanel.css +0 -0
  71. /package/static/{0f871be → 10f95cc}/css/parts/ViewletPanelTabs.css +0 -0
  72. /package/static/{0f871be → 10f95cc}/css/parts/ViewletPdf.css +0 -0
  73. /package/static/{0f871be → 10f95cc}/css/parts/ViewletProblems.css +0 -0
  74. /package/static/{0f871be → 10f95cc}/css/parts/ViewletReferences.css +0 -0
  75. /package/static/{0f871be → 10f95cc}/css/parts/ViewletRunAndDebug.css +0 -0
  76. /package/static/{0f871be → 10f95cc}/css/parts/ViewletScreenCapture.css +0 -0
  77. /package/static/{0f871be → 10f95cc}/css/parts/ViewletSearch.css +0 -0
  78. /package/static/{0f871be → 10f95cc}/css/parts/ViewletSettings.css +0 -0
  79. /package/static/{0f871be → 10f95cc}/css/parts/ViewletSimpleBrowser.css +0 -0
  80. /package/static/{0f871be → 10f95cc}/css/parts/ViewletSourceControl.css +0 -0
  81. /package/static/{0f871be → 10f95cc}/css/parts/ViewletStorage.css +0 -0
  82. /package/static/{0f871be → 10f95cc}/css/parts/ViewletTerminal.css +0 -0
  83. /package/static/{0f871be → 10f95cc}/css/parts/ViewletTerminalTabs.css +0 -0
  84. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-bat/README.md +0 -0
  85. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-bat/extension.json +0 -0
  86. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-bat/languageConfiguration.json +0 -0
  87. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-bat/src/tokenizeBat.js +0 -0
  88. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-c/README.md +0 -0
  89. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-c/extension.json +0 -0
  90. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-c/src/tokenizeC.js +0 -0
  91. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-coffeescript/README.md +0 -0
  92. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-coffeescript/extension.json +0 -0
  93. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-coffeescript/src/tokenizeCoffeeScript.js +0 -0
  94. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cpp/README.md +0 -0
  95. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cpp/extension.json +0 -0
  96. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cpp/languageConfiguration.json +0 -0
  97. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cpp/src/tokenizeCpp.js +0 -0
  98. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cson/README.md +0 -0
  99. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cson/extension.json +0 -0
  100. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cson/languageConfiguration.json +0 -0
  101. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-cson/src/tokenizeCson.js +0 -0
  102. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-css/README.md +0 -0
  103. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-css/extension.json +0 -0
  104. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-css/languageConfiguration.json +0 -0
  105. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-css/src/tokenizeCss.js +0 -0
  106. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-dart/README.md +0 -0
  107. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-dart/extension.json +0 -0
  108. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-dart/src/tokenizeDart.js +0 -0
  109. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-desktop/README.md +0 -0
  110. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-desktop/extension.json +0 -0
  111. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-desktop/src/tokenizeDesktop.js +0 -0
  112. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-docker/README.md +0 -0
  113. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-docker/extension.json +0 -0
  114. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-docker/src/tokenizeDockerfile.js +0 -0
  115. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-dotenv/README.md +0 -0
  116. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-dotenv/extension.json +0 -0
  117. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-dotenv/src/tokenizeDotenv.js +0 -0
  118. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-editorconfig/README.md +0 -0
  119. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-editorconfig/extension.json +0 -0
  120. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-editorconfig/src/tokenizeEditorConfig.js +0 -0
  121. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-elixir/README.md +0 -0
  122. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-elixir/extension.json +0 -0
  123. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-elixir/src/tokenizeElixir.js +0 -0
  124. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-elm/README.md +0 -0
  125. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-elm/extension.json +0 -0
  126. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-elm/src/tokenizeElm.js +0 -0
  127. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-gitattributes/README.md +0 -0
  128. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-gitattributes/extension.json +0 -0
  129. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-gitattributes/src/tokenizeGitAttributes.js +0 -0
  130. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-gn/README.md +0 -0
  131. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-gn/extension.json +0 -0
  132. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-gn/src/tokenizeGn.js +0 -0
  133. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-go/README.md +0 -0
  134. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-go/extension.json +0 -0
  135. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-go/src/tokenizeGo.js +0 -0
  136. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-graphql/README.md +0 -0
  137. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-graphql/extension.json +0 -0
  138. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-graphql/src/tokenizeGraphql.js +0 -0
  139. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-html/README.md +0 -0
  140. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-html/extension.json +0 -0
  141. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-html/languageConfiguration.json +0 -0
  142. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-html/src/tokenizeHtml.js +0 -0
  143. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-java/README.md +0 -0
  144. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-java/extension.json +0 -0
  145. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-java/languageConfiguration.json +0 -0
  146. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-java/src/tokenizeJava.js +0 -0
  147. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-javascript/README.md +0 -0
  148. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-javascript/extension.json +0 -0
  149. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-javascript/languageConfiguration.json +0 -0
  150. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-javascript/src/tokenizeJavaScript.js +0 -0
  151. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-json/README.md +0 -0
  152. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-json/extension.json +0 -0
  153. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-json/src/tokenizeJson.js +0 -0
  154. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-json5/README.md +0 -0
  155. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-json5/extension.json +0 -0
  156. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-json5/src/tokenizeJson5.js +0 -0
  157. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-jsx/README.md +0 -0
  158. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-jsx/extension.json +0 -0
  159. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-jsx/src/tokenizeJsx.js +0 -0
  160. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-julia/README.md +0 -0
  161. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-julia/extension.json +0 -0
  162. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-julia/src/tokenizeJulia.js +0 -0
  163. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-kotlin/README.md +0 -0
  164. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-kotlin/extension.json +0 -0
  165. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-kotlin/src/tokenizeKotlin.js +0 -0
  166. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-less/LICENSE +0 -0
  167. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-less/README.md +0 -0
  168. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-less/extension.json +0 -0
  169. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-less/languageConfiguration.json +0 -0
  170. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-less/src/tokenizeLess.js +0 -0
  171. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-markdown/README.md +0 -0
  172. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-markdown/extension.json +0 -0
  173. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-markdown/src/tokenizeMarkdown.js +0 -0
  174. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-mdx/README.md +0 -0
  175. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-mdx/extension.json +0 -0
  176. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-mdx/src/tokenizeMdx.js +0 -0
  177. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-nix/README.md +0 -0
  178. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-nix/extension.json +0 -0
  179. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-nix/languageConfiguration.json +0 -0
  180. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-nix/src/tokenizeNix.js +0 -0
  181. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-nvmrc/README.md +0 -0
  182. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-nvmrc/extension.json +0 -0
  183. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-nvmrc/src/tokenizeNvmrc.js +0 -0
  184. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-perl/README.md +0 -0
  185. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-perl/extension.json +0 -0
  186. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-perl/src/tokenizePerl.js +0 -0
  187. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-plaintext/README.md +0 -0
  188. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-plaintext/extension.json +0 -0
  189. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-plaintext/src/tokenizePlaintext.js +0 -0
  190. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-powershell/README.md +0 -0
  191. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-powershell/extension.json +0 -0
  192. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-powershell/src/tokenizePowershell.js +0 -0
  193. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-python/README.md +0 -0
  194. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-python/extension.json +0 -0
  195. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-python/languageConfiguration.json +0 -0
  196. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-python/src/tokenizePython.js +0 -0
  197. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-r/README.md +0 -0
  198. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-r/extension.json +0 -0
  199. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-r/src/tokenizeR.js +0 -0
  200. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-ruby/README.md +0 -0
  201. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-ruby/extension.json +0 -0
  202. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-ruby/src/tokenizeRuby.js +0 -0
  203. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-rust/LICENSE +0 -0
  204. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-rust/README.md +0 -0
  205. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-rust/extension.json +0 -0
  206. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-rust/languageConfiguration.json +0 -0
  207. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-rust/src/tokenizeRust.js +0 -0
  208. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-scss/README.md +0 -0
  209. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-scss/extension.json +0 -0
  210. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-scss/languageConfiguration.json +0 -0
  211. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-scss/src/tokenizeScss.js +0 -0
  212. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-shellscript/README.md +0 -0
  213. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-shellscript/extension.json +0 -0
  214. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-shellscript/src/tokenizeShellScript.js +0 -0
  215. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-svelte/README.md +0 -0
  216. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-svelte/extension.json +0 -0
  217. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-svelte/src/tokenizeSvelte.js +0 -0
  218. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-terraform/README.md +0 -0
  219. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-terraform/extension.json +0 -0
  220. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-terraform/src/tokenizeTerraform.js +0 -0
  221. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-toml/README.md +0 -0
  222. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-toml/extension.json +0 -0
  223. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-toml/src/tokenizeToml.js +0 -0
  224. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-typescript/README.md +0 -0
  225. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-typescript/extension.json +0 -0
  226. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-typescript/languageConfiguration.json +0 -0
  227. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-typescript/src/tokenizeTypeScript.js +0 -0
  228. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-vue/README.md +0 -0
  229. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-vue/extension.json +0 -0
  230. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-vue/src/tokenizeVue.js +0 -0
  231. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-wgsl/README.md +0 -0
  232. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-wgsl/extension.json +0 -0
  233. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-wgsl/languageConfiguration.json +0 -0
  234. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-wgsl/src/tokenizeWgsl.js +0 -0
  235. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-xml/README.md +0 -0
  236. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-xml/extension.json +0 -0
  237. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-xml/src/tokenizeXml.js +0 -0
  238. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-yaml/README.md +0 -0
  239. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-yaml/extension.json +0 -0
  240. /package/static/{0f871be → 10f95cc}/extensions/builtin.language-basics-yaml/src/tokenizeYaml.js +0 -0
  241. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-atom-one-dark/README.md +0 -0
  242. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-atom-one-dark/color-theme.json +0 -0
  243. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-atom-one-dark/extension.json +0 -0
  244. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-atom-one-dark/images/demo.png +0 -0
  245. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-ayu/README.md +0 -0
  246. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-ayu/color-theme.json +0 -0
  247. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-ayu/extension.json +0 -0
  248. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-ayu/images/demo.png +0 -0
  249. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-cobalt2/README.md +0 -0
  250. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-cobalt2/color-theme.json +0 -0
  251. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-cobalt2/extension.json +0 -0
  252. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-cobalt2/images/demo.png +0 -0
  253. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-cobalt2/images/logo.png +0 -0
  254. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-gruvbox/README.md +0 -0
  255. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-gruvbox/color-theme.json +0 -0
  256. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-gruvbox/extension.json +0 -0
  257. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-gruvbox/images/demo.png +0 -0
  258. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-high-contrast/README.md +0 -0
  259. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-high-contrast/color-theme.json +0 -0
  260. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-high-contrast/extension.json +0 -0
  261. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-material/README.md +0 -0
  262. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-material/color-theme.json +0 -0
  263. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-material/extension.json +0 -0
  264. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-monokai/README.md +0 -0
  265. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-monokai/color-theme.json +0 -0
  266. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-monokai/extension.json +0 -0
  267. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-noctis-uva/README.md +0 -0
  268. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-noctis-uva/color-theme.json +0 -0
  269. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-noctis-uva/extension.json +0 -0
  270. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-noctis-uva/images/demo.png +0 -0
  271. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-palenight/README.md +0 -0
  272. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-palenight/color-theme.json +0 -0
  273. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-palenight/extension.json +0 -0
  274. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-palenight/images/demo.png +0 -0
  275. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-slime/README.md +0 -0
  276. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-slime/color-theme.json +0 -0
  277. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-slime/extension.json +0 -0
  278. /package/static/{0f871be → 10f95cc}/extensions/builtin.theme-slime/icon.png +0 -0
  279. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/README.md +0 -0
  280. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/extension.json +0 -0
  281. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icon-theme.json +0 -0
  282. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icon.png +0 -0
  283. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/default_file.svg +0 -0
  284. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/default_folder.svg +0 -0
  285. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/default_folder_opened.svg +0 -0
  286. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/default_root_folder.svg +0 -0
  287. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/default_root_folder_opened.svg +0 -0
  288. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_access.svg +0 -0
  289. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_access2.svg +0 -0
  290. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_actionscript.svg +0 -0
  291. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_actionscript2.svg +0 -0
  292. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ada.svg +0 -0
  293. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_advpl.svg +0 -0
  294. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_affectscript.svg +0 -0
  295. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_affinity.svg +0 -0
  296. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_affinitydesigner.svg +0 -0
  297. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_affinityphoto.svg +0 -0
  298. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_affinitypublisher.svg +0 -0
  299. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_agda.svg +0 -0
  300. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_agents.svg +0 -0
  301. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ai.svg +0 -0
  302. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ai2.svg +0 -0
  303. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_al.svg +0 -0
  304. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_al_dal.svg +0 -0
  305. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_alchemy.svg +0 -0
  306. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_allcontributors.svg +0 -0
  307. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_alloy.svg +0 -0
  308. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_allure.svg +0 -0
  309. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_angular.svg +0 -0
  310. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ansible.svg +0 -0
  311. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_antlers_html.svg +0 -0
  312. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_antlr.svg +0 -0
  313. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_anyscript.svg +0 -0
  314. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_apache.svg +0 -0
  315. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_apex.svg +0 -0
  316. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_api_extractor.svg +0 -0
  317. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_apib.svg +0 -0
  318. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_apib2.svg +0 -0
  319. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_apl.svg +0 -0
  320. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_applescript.svg +0 -0
  321. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_appscript.svg +0 -0
  322. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_appsemble.svg +0 -0
  323. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_appveyor.svg +0 -0
  324. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_arduino.svg +0 -0
  325. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_asciidoc.svg +0 -0
  326. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_aseprite.svg +0 -0
  327. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_asp.svg +0 -0
  328. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_aspx.svg +0 -0
  329. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_assembly.svg +0 -0
  330. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_assembly_script.svg +0 -0
  331. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_astro.svg +0 -0
  332. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_astroconfig.svg +0 -0
  333. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_atom.svg +0 -0
  334. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ats.svg +0 -0
  335. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_attw.svg +0 -0
  336. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_audio.svg +0 -0
  337. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_aurelia.svg +0 -0
  338. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_autohotkey.svg +0 -0
  339. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_autoit.svg +0 -0
  340. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_avif.svg +0 -0
  341. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_avro.svg +0 -0
  342. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_awk.svg +0 -0
  343. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_aws.svg +0 -0
  344. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_azure.svg +0 -0
  345. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_azurepipelines.svg +0 -0
  346. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_babel.svg +0 -0
  347. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_babel2.svg +0 -0
  348. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bak.svg +0 -0
  349. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ballerina.svg +0 -0
  350. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bat.svg +0 -0
  351. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bats.svg +0 -0
  352. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bazaar.svg +0 -0
  353. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bazel.svg +0 -0
  354. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bazel_ignore.svg +0 -0
  355. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bazel_version.svg +0 -0
  356. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_befunge.svg +0 -0
  357. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bicep.svg +0 -0
  358. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_biml.svg +0 -0
  359. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_binary.svg +0 -0
  360. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_biome.svg +0 -0
  361. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bitbucketpipeline.svg +0 -0
  362. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bithound.svg +0 -0
  363. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_blade.svg +0 -0
  364. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_blender.svg +0 -0
  365. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_blitzbasic.svg +0 -0
  366. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bolt.svg +0 -0
  367. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bosque.svg +0 -0
  368. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bower.svg +0 -0
  369. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bower2.svg +0 -0
  370. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_browserslist.svg +0 -0
  371. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bruno.svg +0 -0
  372. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_buckbuild.svg +0 -0
  373. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_buf.svg +0 -0
  374. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bun.svg +0 -0
  375. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bundlemon.svg +0 -0
  376. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bundler.svg +0 -0
  377. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_bunfig.svg +0 -0
  378. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_c.svg +0 -0
  379. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_c2.svg +0 -0
  380. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_c3.svg +0 -0
  381. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_c_al.svg +0 -0
  382. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cabal.svg +0 -0
  383. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_caddy.svg +0 -0
  384. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cake.svg +0 -0
  385. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cakephp.svg +0 -0
  386. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_capacitor.svg +0 -0
  387. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_capnp.svg +0 -0
  388. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cargo.svg +0 -0
  389. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_casc.svg +0 -0
  390. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cddl.svg +0 -0
  391. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cert.svg +0 -0
  392. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ceylon.svg +0 -0
  393. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cf.svg +0 -0
  394. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cf2.svg +0 -0
  395. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cfc.svg +0 -0
  396. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cfc2.svg +0 -0
  397. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cfm.svg +0 -0
  398. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cfm2.svg +0 -0
  399. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_changie.svg +0 -0
  400. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cheader.svg +0 -0
  401. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_chef.svg +0 -0
  402. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_chef_cookbook.svg +0 -0
  403. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_circleci.svg +0 -0
  404. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_circom.svg +0 -0
  405. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_class.svg +0 -0
  406. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_claude.svg +0 -0
  407. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_clojure.svg +0 -0
  408. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_clojurescript.svg +0 -0
  409. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cloudflare.svg +0 -0
  410. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cloudfoundry.svg +0 -0
  411. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cmake.svg +0 -0
  412. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cobol.svg +0 -0
  413. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_codacy.svg +0 -0
  414. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_codeclimate.svg +0 -0
  415. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_codecov.svg +0 -0
  416. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_codekit.svg +0 -0
  417. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_codemagic.svg +0 -0
  418. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_codeowners.svg +0 -0
  419. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_codeql.svg +0 -0
  420. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_coderabbit.svg +0 -0
  421. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_coffeelint.svg +0 -0
  422. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_coffeescript.svg +0 -0
  423. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_commitizen.svg +0 -0
  424. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_commitlint.svg +0 -0
  425. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_compass.svg +0 -0
  426. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_composer.svg +0 -0
  427. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_conan.svg +0 -0
  428. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_conda.svg +0 -0
  429. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_config.svg +0 -0
  430. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_confluence.svg +0 -0
  431. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_copilot.svg +0 -0
  432. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_coverage.svg +0 -0
  433. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_coveralls.svg +0 -0
  434. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cpp.svg +0 -0
  435. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cpp2.svg +0 -0
  436. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cpp3.svg +0 -0
  437. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cppheader.svg +0 -0
  438. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_craco.svg +0 -0
  439. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_crowdin.svg +0 -0
  440. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_crystal.svg +0 -0
  441. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_csharp.svg +0 -0
  442. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_csharp2.svg +0 -0
  443. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cspell.svg +0 -0
  444. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_csproj.svg +0 -0
  445. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_css.svg +0 -0
  446. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_css2.svg +0 -0
  447. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_css2map.svg +0 -0
  448. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_csscomb.svg +0 -0
  449. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_csslint.svg +0 -0
  450. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cssmap.svg +0 -0
  451. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cucumber.svg +0 -0
  452. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cuda.svg +0 -0
  453. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cursorrules.svg +0 -0
  454. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cvs.svg +0 -0
  455. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cypress.svg +0 -0
  456. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cypress_spec.svg +0 -0
  457. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_cython.svg +0 -0
  458. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dal.svg +0 -0
  459. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_darcs.svg +0 -0
  460. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dartlang.svg +0 -0
  461. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dartlang_generated.svg +0 -0
  462. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dartlang_ignore.svg +0 -0
  463. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_datadog.svg +0 -0
  464. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_db.svg +0 -0
  465. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_debian.svg +0 -0
  466. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_delphi.svg +0 -0
  467. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_deno.svg +0 -0
  468. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_denoify.svg +0 -0
  469. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dependabot.svg +0 -0
  470. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dependencies.svg +0 -0
  471. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_design_tokens.svg +0 -0
  472. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_devcontainer.svg +0 -0
  473. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_devvit.svg +0 -0
  474. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dhall.svg +0 -0
  475. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_diff.svg +0 -0
  476. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_django.svg +0 -0
  477. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dlang.svg +0 -0
  478. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_docker.svg +0 -0
  479. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_docker2.svg +0 -0
  480. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dockertest.svg +0 -0
  481. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dockertest2.svg +0 -0
  482. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_docpad.svg +0 -0
  483. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_docusaurus.svg +0 -0
  484. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_docz.svg +0 -0
  485. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dojo.svg +0 -0
  486. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_doppler.svg +0 -0
  487. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dotenv.svg +0 -0
  488. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dotjs.svg +0 -0
  489. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_doxygen.svg +0 -0
  490. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_drawio.svg +0 -0
  491. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_drone.svg +0 -0
  492. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_drools.svg +0 -0
  493. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dtd.svg +0 -0
  494. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dune.svg +0 -0
  495. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dustjs.svg +0 -0
  496. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dvc.svg +0 -0
  497. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_dylan.svg +0 -0
  498. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_earthly.svg +0 -0
  499. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_eas-metadata.svg +0 -0
  500. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_edge.svg +0 -0
  501. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_edge2.svg +0 -0
  502. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_editorconfig.svg +0 -0
  503. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_eex.svg +0 -0
  504. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ejs.svg +0 -0
  505. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_elastic.svg +0 -0
  506. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_elasticbeanstalk.svg +0 -0
  507. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_electron.svg +0 -0
  508. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_eleventy.svg +0 -0
  509. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_eleventy2.svg +0 -0
  510. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_elixir.svg +0 -0
  511. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_elm.svg +0 -0
  512. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_elm2.svg +0 -0
  513. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_emacs.svg +0 -0
  514. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ember.svg +0 -0
  515. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ensime.svg +0 -0
  516. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_eps.svg +0 -0
  517. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_epub.svg +0 -0
  518. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_erb.svg +0 -0
  519. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_erlang.svg +0 -0
  520. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_erlang2.svg +0 -0
  521. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_esbuild.svg +0 -0
  522. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_eslint.svg +0 -0
  523. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_eslint2.svg +0 -0
  524. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_esphome.svg +0 -0
  525. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_excalidraw.svg +0 -0
  526. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_excel.svg +0 -0
  527. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_excel2.svg +0 -0
  528. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_expo.svg +0 -0
  529. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_falcon.svg +0 -0
  530. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fantasticon.svg +0 -0
  531. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fastly.svg +0 -0
  532. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fauna.svg +0 -0
  533. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_favicon.svg +0 -0
  534. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fbx.svg +0 -0
  535. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_firebase.svg +0 -0
  536. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_firebasehosting.svg +0 -0
  537. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_firebasestorage.svg +0 -0
  538. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_firestore.svg +0 -0
  539. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fitbit.svg +0 -0
  540. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fla.svg +0 -0
  541. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_flareact.svg +0 -0
  542. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_flash.svg +0 -0
  543. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_floobits.svg +0 -0
  544. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_flow.svg +0 -0
  545. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_flutter.svg +0 -0
  546. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_flutter_package.svg +0 -0
  547. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_flyio.svg +0 -0
  548. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_font.svg +0 -0
  549. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_formkit.svg +0 -0
  550. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fortran.svg +0 -0
  551. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fossa.svg +0 -0
  552. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fossil.svg +0 -0
  553. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_freemarker.svg +0 -0
  554. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_frontcommerce.svg +0 -0
  555. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fsharp.svg +0 -0
  556. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fsharp2.svg +0 -0
  557. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fsproj.svg +0 -0
  558. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fthtml.svg +0 -0
  559. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_funding.svg +0 -0
  560. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_fusebox.svg +0 -0
  561. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_galen.svg +0 -0
  562. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_galen2.svg +0 -0
  563. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gamemaker.svg +0 -0
  564. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gamemaker2.svg +0 -0
  565. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gamemaker81.svg +0 -0
  566. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gatsby.svg +0 -0
  567. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gcloud.svg +0 -0
  568. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gcode.svg +0 -0
  569. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gdscript.svg +0 -0
  570. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gduid.svg +0 -0
  571. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gemini.svg +0 -0
  572. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_genstat.svg +0 -0
  573. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_geojson.svg +0 -0
  574. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gimp.svg +0 -0
  575. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_git.svg +0 -0
  576. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_git2.svg +0 -0
  577. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gitlab.svg +0 -0
  578. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gitpod.svg +0 -0
  579. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gleam.svg +0 -0
  580. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gleamconfig.svg +0 -0
  581. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_glide.svg +0 -0
  582. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_glimmer.svg +0 -0
  583. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_glitter.svg +0 -0
  584. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_glsl.svg +0 -0
  585. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gltf.svg +0 -0
  586. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_glyphs.svg +0 -0
  587. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gnu.svg +0 -0
  588. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gnuplot.svg +0 -0
  589. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go.svg +0 -0
  590. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_aqua.svg +0 -0
  591. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_black.svg +0 -0
  592. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_fuchsia.svg +0 -0
  593. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_gopher.svg +0 -0
  594. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_lightblue.svg +0 -0
  595. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_package.svg +0 -0
  596. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_white.svg +0 -0
  597. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_work.svg +0 -0
  598. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_go_yellow.svg +0 -0
  599. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_goctl.svg +0 -0
  600. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_godot.svg +0 -0
  601. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gpg.svg +0 -0
  602. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gradle.svg +0 -0
  603. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gradle2.svg +0 -0
  604. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_grain.svg +0 -0
  605. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_graphql.svg +0 -0
  606. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_graphql_config.svg +0 -0
  607. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_graphviz.svg +0 -0
  608. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_greenkeeper.svg +0 -0
  609. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gridsome.svg +0 -0
  610. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_grit.svg +0 -0
  611. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_groovy.svg +0 -0
  612. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_groovy2.svg +0 -0
  613. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_grunt.svg +0 -0
  614. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_gulp.svg +0 -0
  615. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_haml.svg +0 -0
  616. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_handlebars.svg +0 -0
  617. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_handlebars2.svg +0 -0
  618. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_harbour.svg +0 -0
  619. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hardhat.svg +0 -0
  620. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hashicorp.svg +0 -0
  621. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_haskell.svg +0 -0
  622. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_haskell2.svg +0 -0
  623. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_haxe.svg +0 -0
  624. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_haxecheckstyle.svg +0 -0
  625. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_haxedevelop.svg +0 -0
  626. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_helix.svg +0 -0
  627. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_helm.svg +0 -0
  628. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_histoire.svg +0 -0
  629. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hjson.svg +0 -0
  630. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hlsl.svg +0 -0
  631. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_homeassistant.svg +0 -0
  632. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_horusec.svg +0 -0
  633. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_host.svg +0 -0
  634. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_html.svg +0 -0
  635. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_htmlhint.svg +0 -0
  636. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_htmlvalidate.svg +0 -0
  637. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_http.svg +0 -0
  638. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hugo.svg +0 -0
  639. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_humanstxt.svg +0 -0
  640. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hunspell.svg +0 -0
  641. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_husky.svg +0 -0
  642. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hy.svg +0 -0
  643. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hygen.svg +0 -0
  644. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_hypr.svg +0 -0
  645. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_icl.svg +0 -0
  646. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_idris.svg +0 -0
  647. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_idrisbin.svg +0 -0
  648. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_idrispkg.svg +0 -0
  649. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_image.svg +0 -0
  650. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_imba.svg +0 -0
  651. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_inc.svg +0 -0
  652. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_infopath.svg +0 -0
  653. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_informix.svg +0 -0
  654. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ini.svg +0 -0
  655. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ink.svg +0 -0
  656. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_innosetup.svg +0 -0
  657. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_io.svg +0 -0
  658. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_iodine.svg +0 -0
  659. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ionic.svg +0 -0
  660. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jake.svg +0 -0
  661. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_janet.svg +0 -0
  662. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jar.svg +0 -0
  663. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jasmine.svg +0 -0
  664. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_java.svg +0 -0
  665. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jbuilder.svg +0 -0
  666. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jekyll.svg +0 -0
  667. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jenkins.svg +0 -0
  668. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jest.svg +0 -0
  669. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jest_snapshot.svg +0 -0
  670. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jetbrains.svg +0 -0
  671. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jinja.svg +0 -0
  672. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jpm.svg +0 -0
  673. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_js.svg +0 -0
  674. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_js_official.svg +0 -0
  675. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jsbeautify.svg +0 -0
  676. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jsconfig.svg +0 -0
  677. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jscpd.svg +0 -0
  678. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jshint.svg +0 -0
  679. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jsmap.svg +0 -0
  680. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_json.svg +0 -0
  681. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_json2.svg +0 -0
  682. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_json5.svg +0 -0
  683. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_json_official.svg +0 -0
  684. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_json_schema.svg +0 -0
  685. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jsonld.svg +0 -0
  686. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jsonnet.svg +0 -0
  687. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jsp.svg +0 -0
  688. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jsr.svg +0 -0
  689. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jss.svg +0 -0
  690. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_juice.svg +0 -0
  691. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_julia.svg +0 -0
  692. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_julia2.svg +0 -0
  693. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_jupyter.svg +0 -0
  694. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_just.svg +0 -0
  695. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_k.svg +0 -0
  696. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_karma.svg +0 -0
  697. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_key.svg +0 -0
  698. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_kitchenci.svg +0 -0
  699. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_kite.svg +0 -0
  700. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_kivy.svg +0 -0
  701. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_knip.svg +0 -0
  702. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_kos.svg +0 -0
  703. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_kotlin.svg +0 -0
  704. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_kusto.svg +0 -0
  705. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_language_configuration.svg +0 -0
  706. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lark.svg +0 -0
  707. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_latino.svg +0 -0
  708. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_layout.svg +0 -0
  709. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lean.svg +0 -0
  710. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_leanconfig.svg +0 -0
  711. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lefthook.svg +0 -0
  712. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lerna.svg +0 -0
  713. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_less.svg +0 -0
  714. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lex.svg +0 -0
  715. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_liara.svg +0 -0
  716. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_base.svg +0 -0
  717. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_calc.svg +0 -0
  718. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_draw.svg +0 -0
  719. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_impress.svg +0 -0
  720. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_math.svg +0 -0
  721. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_writer.svg +0 -0
  722. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_license.svg +0 -0
  723. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_licensebat.svg +0 -0
  724. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_actionscript2.svg +0 -0
  725. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_ada.svg +0 -0
  726. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_agda.svg +0 -0
  727. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_agents.svg +0 -0
  728. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_apl.svg +0 -0
  729. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_astro.svg +0 -0
  730. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_astroconfig.svg +0 -0
  731. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_babel.svg +0 -0
  732. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_babel2.svg +0 -0
  733. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_cabal.svg +0 -0
  734. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_circleci.svg +0 -0
  735. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_cloudfoundry.svg +0 -0
  736. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_codacy.svg +0 -0
  737. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_codeclimate.svg +0 -0
  738. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_codeowners.svg +0 -0
  739. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_config.svg +0 -0
  740. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_copilot.svg +0 -0
  741. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_crystal.svg +0 -0
  742. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_cypress.svg +0 -0
  743. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_cypress_spec.svg +0 -0
  744. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_db.svg +0 -0
  745. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_deno.svg +0 -0
  746. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_dhall.svg +0 -0
  747. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_docpad.svg +0 -0
  748. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_drone.svg +0 -0
  749. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_eas-metadata.svg +0 -0
  750. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_eleventy.svg +0 -0
  751. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_eleventy2.svg +0 -0
  752. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_esphome.svg +0 -0
  753. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_expo.svg +0 -0
  754. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_firebasehosting.svg +0 -0
  755. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_fla.svg +0 -0
  756. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_font.svg +0 -0
  757. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_gamemaker2.svg +0 -0
  758. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_gradle.svg +0 -0
  759. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_hashicorp.svg +0 -0
  760. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_hjson.svg +0 -0
  761. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_ini.svg +0 -0
  762. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_io.svg +0 -0
  763. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_js.svg +0 -0
  764. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_jsconfig.svg +0 -0
  765. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_jsmap.svg +0 -0
  766. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_json.svg +0 -0
  767. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_json5.svg +0 -0
  768. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_json_schema.svg +0 -0
  769. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_jsonld.svg +0 -0
  770. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_kite.svg +0 -0
  771. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_lark.svg +0 -0
  772. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_lean.svg +0 -0
  773. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_leanconfig.svg +0 -0
  774. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_lerna.svg +0 -0
  775. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_mailing.svg +0 -0
  776. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_markuplint.svg +0 -0
  777. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_mcp.svg +0 -0
  778. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_mdx-components.svg +0 -0
  779. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_mdx.svg +0 -0
  780. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_mlang.svg +0 -0
  781. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_mustache.svg +0 -0
  782. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_mypy.svg +0 -0
  783. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_neo4j.svg +0 -0
  784. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_netlify.svg +0 -0
  785. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_next.svg +0 -0
  786. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_nim.svg +0 -0
  787. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_nx.svg +0 -0
  788. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_objidconfig.svg +0 -0
  789. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_openHAB.svg +0 -0
  790. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_packship.svg +0 -0
  791. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_pcl.svg +0 -0
  792. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_pnpm.svg +0 -0
  793. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_prettier.svg +0 -0
  794. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_prisma.svg +0 -0
  795. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_purescript.svg +0 -0
  796. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_quasar.svg +0 -0
  797. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_raku.svg +0 -0
  798. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_razzle.svg +0 -0
  799. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_reactrouter.svg +0 -0
  800. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_rehype.svg +0 -0
  801. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_remark.svg +0 -0
  802. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_replit.svg +0 -0
  803. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_retext.svg +0 -0
  804. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_rome.svg +0 -0
  805. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_rubocop.svg +0 -0
  806. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_rust.svg +0 -0
  807. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_rust_toolchain.svg +0 -0
  808. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_safetensors.svg +0 -0
  809. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_shadcn.svg +0 -0
  810. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_shaderlab.svg +0 -0
  811. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_solidity.svg +0 -0
  812. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_spin.svg +0 -0
  813. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_stylelint.svg +0 -0
  814. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_stylus.svg +0 -0
  815. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_symfony.svg +0 -0
  816. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_systemd.svg +0 -0
  817. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_systemverilog.svg +0 -0
  818. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_testcafe.svg +0 -0
  819. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_testjs.svg +0 -0
  820. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_tex.svg +0 -0
  821. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_tm.svg +0 -0
  822. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_tmux.svg +0 -0
  823. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_todo.svg +0 -0
  824. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_toit.svg +0 -0
  825. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_toml.svg +0 -0
  826. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_toon.svg +0 -0
  827. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_tree.svg +0 -0
  828. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_turbo.svg +0 -0
  829. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_unibeautify.svg +0 -0
  830. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_vash.svg +0 -0
  831. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_vercel.svg +0 -0
  832. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_vsix.svg +0 -0
  833. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_vsixmanifest.svg +0 -0
  834. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_xfl.svg +0 -0
  835. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_xorg.svg +0 -0
  836. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_yaml.svg +0 -0
  837. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_yaml_official.svg +0 -0
  838. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_light_zeit.svg +0 -0
  839. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lighthouse.svg +0 -0
  840. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lilypond.svg +0 -0
  841. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lime.svg +0 -0
  842. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lintstagedrc.svg +0 -0
  843. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_liquid.svg +0 -0
  844. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lisp.svg +0 -0
  845. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_livescript.svg +0 -0
  846. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lnk.svg +0 -0
  847. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_locale.svg +0 -0
  848. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_log.svg +0 -0
  849. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lolcode.svg +0 -0
  850. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lsl.svg +0 -0
  851. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lua.svg +0 -0
  852. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_luau.svg +0 -0
  853. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_lync.svg +0 -0
  854. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mailing.svg +0 -0
  855. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_makefile.svg +0 -0
  856. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_manifest.svg +0 -0
  857. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_manifest_bak.svg +0 -0
  858. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_manifest_skip.svg +0 -0
  859. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_map.svg +0 -0
  860. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mariadb.svg +0 -0
  861. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_markdown.svg +0 -0
  862. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_markdownlint.svg +0 -0
  863. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_markdownlint_ignore.svg +0 -0
  864. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_marko.svg +0 -0
  865. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_markojs.svg +0 -0
  866. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_markuplint.svg +0 -0
  867. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_master-co.svg +0 -0
  868. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_matlab.svg +0 -0
  869. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_maven.svg +0 -0
  870. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_maxscript.svg +0 -0
  871. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_maya.svg +0 -0
  872. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mcp.svg +0 -0
  873. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mdx-components.svg +0 -0
  874. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mdx.svg +0 -0
  875. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mdxlint.svg +0 -0
  876. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mediawiki.svg +0 -0
  877. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mercurial.svg +0 -0
  878. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mermaid.svg +0 -0
  879. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_meson.svg +0 -0
  880. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_metal.svg +0 -0
  881. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_meteor.svg +0 -0
  882. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_minecraft.svg +0 -0
  883. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mivascript.svg +0 -0
  884. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mjml.svg +0 -0
  885. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mlang.svg +0 -0
  886. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mocha.svg +0 -0
  887. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_modernizr.svg +0 -0
  888. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mojo.svg +0 -0
  889. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mojolicious.svg +0 -0
  890. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_moleculer.svg +0 -0
  891. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mondoo.svg +0 -0
  892. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mongo.svg +0 -0
  893. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_monotone.svg +0 -0
  894. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_motif.svg +0 -0
  895. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mson.svg +0 -0
  896. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mustache.svg +0 -0
  897. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mvt.svg +0 -0
  898. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mvtcss.svg +0 -0
  899. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mvtjs.svg +0 -0
  900. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mypy.svg +0 -0
  901. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_mysql.svg +0 -0
  902. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nanostaged.svg +0 -0
  903. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ndst.svg +0 -0
  904. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nearly.svg +0 -0
  905. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_neo4j.svg +0 -0
  906. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_adapter_js.svg +0 -0
  907. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_adapter_ts.svg +0 -0
  908. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_controller_js.svg +0 -0
  909. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_controller_ts.svg +0 -0
  910. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_decorator_js.svg +0 -0
  911. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_decorator_ts.svg +0 -0
  912. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_filter_js.svg +0 -0
  913. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_filter_ts.svg +0 -0
  914. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_gateway_js.svg +0 -0
  915. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_gateway_ts.svg +0 -0
  916. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_guard_js.svg +0 -0
  917. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_guard_ts.svg +0 -0
  918. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_interceptor_js.svg +0 -0
  919. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_interceptor_ts.svg +0 -0
  920. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_middleware_js.svg +0 -0
  921. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_middleware_ts.svg +0 -0
  922. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_module_js.svg +0 -0
  923. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_module_ts.svg +0 -0
  924. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_pipe_js.svg +0 -0
  925. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_pipe_ts.svg +0 -0
  926. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_service_js.svg +0 -0
  927. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nest_service_ts.svg +0 -0
  928. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nestjs.svg +0 -0
  929. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_netlify.svg +0 -0
  930. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_next.svg +0 -0
  931. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nextflow.svg +0 -0
  932. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_css.svg +0 -0
  933. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_dart.svg +0 -0
  934. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_html.svg +0 -0
  935. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_js.svg +0 -0
  936. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_js2.svg +0 -0
  937. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_less.svg +0 -0
  938. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_sass.svg +0 -0
  939. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_scss.svg +0 -0
  940. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_ts.svg +0 -0
  941. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_component_ts2.svg +0 -0
  942. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_controller_js.svg +0 -0
  943. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_controller_ts.svg +0 -0
  944. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_dart.svg +0 -0
  945. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_js.svg +0 -0
  946. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_js2.svg +0 -0
  947. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_ts.svg +0 -0
  948. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_ts2.svg +0 -0
  949. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_guard_dart.svg +0 -0
  950. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_guard_js.svg +0 -0
  951. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_guard_ts.svg +0 -0
  952. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_interceptor_dart.svg +0 -0
  953. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_interceptor_js.svg +0 -0
  954. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_interceptor_ts.svg +0 -0
  955. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_module_dart.svg +0 -0
  956. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_module_js.svg +0 -0
  957. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_module_js2.svg +0 -0
  958. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_module_ts.svg +0 -0
  959. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_module_ts2.svg +0 -0
  960. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_dart.svg +0 -0
  961. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_js.svg +0 -0
  962. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_js2.svg +0 -0
  963. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_ts.svg +0 -0
  964. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_ts2.svg +0 -0
  965. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_dart.svg +0 -0
  966. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_js.svg +0 -0
  967. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_js2.svg +0 -0
  968. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_ts.svg +0 -0
  969. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_ts2.svg +0 -0
  970. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_service_dart.svg +0 -0
  971. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_service_js.svg +0 -0
  972. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_service_js2.svg +0 -0
  973. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_service_ts.svg +0 -0
  974. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_service_ts2.svg +0 -0
  975. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_dart.svg +0 -0
  976. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_js.svg +0 -0
  977. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_js2.svg +0 -0
  978. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_ts.svg +0 -0
  979. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_ts2.svg +0 -0
  980. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ng_tailwind.svg +0 -0
  981. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nginx.svg +0 -0
  982. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nim.svg +0 -0
  983. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nimble.svg +0 -0
  984. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ninja.svg +0 -0
  985. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nix.svg +0 -0
  986. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_njsproj.svg +0 -0
  987. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_noc.svg +0 -0
  988. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_node.svg +0 -0
  989. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_node2.svg +0 -0
  990. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nodemon.svg +0 -0
  991. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_npm.svg +0 -0
  992. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_npmpackagejsonlint.svg +0 -0
  993. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nsi.svg +0 -0
  994. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nsri-integrity.svg +0 -0
  995. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nsri.svg +0 -0
  996. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nuget.svg +0 -0
  997. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_numpy.svg +0 -0
  998. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nunjucks.svg +0 -0
  999. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nushell.svg +0 -0
  1000. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nuxt.svg +0 -0
  1001. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nx.svg +0 -0
  1002. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_nyc.svg +0 -0
  1003. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_objectivec.svg +0 -0
  1004. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_objectivecpp.svg +0 -0
  1005. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_objidconfig.svg +0 -0
  1006. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ocaml.svg +0 -0
  1007. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ocaml_intf.svg +0 -0
  1008. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ogone.svg +0 -0
  1009. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_onenote.svg +0 -0
  1010. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_opam.svg +0 -0
  1011. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_openHAB.svg +0 -0
  1012. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_opencl.svg +0 -0
  1013. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_openscad.svg +0 -0
  1014. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_opentofu.svg +0 -0
  1015. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_org.svg +0 -0
  1016. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_outlook.svg +0 -0
  1017. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ovpn.svg +0 -0
  1018. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_oxc.svg +0 -0
  1019. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_oxlint.svg +0 -0
  1020. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_package.svg +0 -0
  1021. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_packship.svg +0 -0
  1022. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_paket.svg +0 -0
  1023. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pandacss.svg +0 -0
  1024. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_patch.svg +0 -0
  1025. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pcl.svg +0 -0
  1026. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pddl.svg +0 -0
  1027. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pddl_happenings.svg +0 -0
  1028. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pddl_plan.svg +0 -0
  1029. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pdf.svg +0 -0
  1030. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pdf2.svg +0 -0
  1031. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pdm.svg +0 -0
  1032. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_peeky.svg +0 -0
  1033. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_perl.svg +0 -0
  1034. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_perl2.svg +0 -0
  1035. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_perl6.svg +0 -0
  1036. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pgsql.svg +0 -0
  1037. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_photoshop.svg +0 -0
  1038. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_photoshop2.svg +0 -0
  1039. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_php.svg +0 -0
  1040. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_php2.svg +0 -0
  1041. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_php3.svg +0 -0
  1042. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_phpcsfixer.svg +0 -0
  1043. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_phpstan.svg +0 -0
  1044. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_phpunit.svg +0 -0
  1045. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_phraseapp.svg +0 -0
  1046. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pine.svg +0 -0
  1047. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pip.svg +0 -0
  1048. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pipeline.svg +0 -0
  1049. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_plantuml.svg +0 -0
  1050. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_platformio.svg +0 -0
  1051. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_playwright.svg +0 -0
  1052. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_plsql.svg +0 -0
  1053. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_plsql_package.svg +0 -0
  1054. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_plsql_package_body.svg +0 -0
  1055. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_plsql_package_header.svg +0 -0
  1056. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_plsql_package_spec.svg +0 -0
  1057. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pm2.svg +0 -0
  1058. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pnpm.svg +0 -0
  1059. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_poedit.svg +0 -0
  1060. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_poetry.svg +0 -0
  1061. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_polyglot.svg +0 -0
  1062. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_polymer.svg +0 -0
  1063. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pony.svg +0 -0
  1064. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_postcss.svg +0 -0
  1065. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_postcssconfig.svg +0 -0
  1066. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_postman.svg +0 -0
  1067. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powerpoint.svg +0 -0
  1068. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powerpoint2.svg +0 -0
  1069. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell.svg +0 -0
  1070. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell2.svg +0 -0
  1071. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell_format.svg +0 -0
  1072. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell_psd.svg +0 -0
  1073. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell_psd2.svg +0 -0
  1074. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell_psm.svg +0 -0
  1075. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell_psm2.svg +0 -0
  1076. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_powershell_types.svg +0 -0
  1077. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_preact.svg +0 -0
  1078. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_precommit.svg +0 -0
  1079. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_prettier.svg +0 -0
  1080. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_prisma.svg +0 -0
  1081. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_prismaconfig.svg +0 -0
  1082. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_processinglang.svg +0 -0
  1083. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_procfile.svg +0 -0
  1084. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_progress.svg +0 -0
  1085. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_prolog.svg +0 -0
  1086. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_prometheus.svg +0 -0
  1087. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_protobuf.svg +0 -0
  1088. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_protractor.svg +0 -0
  1089. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_publiccode.svg +0 -0
  1090. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_publisher.svg +0 -0
  1091. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pug.svg +0 -0
  1092. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pulumi.svg +0 -0
  1093. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_puppet.svg +0 -0
  1094. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_purescript.svg +0 -0
  1095. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_purgecss.svg +0 -0
  1096. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pyenv.svg +0 -0
  1097. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pyret.svg +0 -0
  1098. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pyscript.svg +0 -0
  1099. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pytest.svg +0 -0
  1100. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_python.svg +0 -0
  1101. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pythowo.svg +0 -0
  1102. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pytyped.svg +0 -0
  1103. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_pyup.svg +0 -0
  1104. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_q.svg +0 -0
  1105. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_qbs.svg +0 -0
  1106. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_qlikview.svg +0 -0
  1107. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_qml.svg +0 -0
  1108. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_qmldir.svg +0 -0
  1109. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_qsharp.svg +0 -0
  1110. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_quasar.svg +0 -0
  1111. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_r.svg +0 -0
  1112. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ra_syntax_tree.svg +0 -0
  1113. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_racket.svg +0 -0
  1114. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rails.svg +0 -0
  1115. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rake.svg +0 -0
  1116. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_raku.svg +0 -0
  1117. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_raml.svg +0 -0
  1118. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_razor.svg +0 -0
  1119. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_razzle.svg +0 -0
  1120. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_reactjs.svg +0 -0
  1121. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_reactrouter.svg +0 -0
  1122. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_reacttemplate.svg +0 -0
  1123. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_reactts.svg +0 -0
  1124. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_reason.svg +0 -0
  1125. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_red.svg +0 -0
  1126. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_registry.svg +0 -0
  1127. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rego.svg +0 -0
  1128. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rehype.svg +0 -0
  1129. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_remark.svg +0 -0
  1130. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_renovate.svg +0 -0
  1131. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_replit.svg +0 -0
  1132. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rescript.svg +0 -0
  1133. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rest.svg +0 -0
  1134. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_retext.svg +0 -0
  1135. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rexx.svg +0 -0
  1136. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_riot.svg +0 -0
  1137. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ripple.svg +0 -0
  1138. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rmd.svg +0 -0
  1139. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rnc.svg +0 -0
  1140. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_robotframework.svg +0 -0
  1141. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_robots.svg +0 -0
  1142. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rolldown.svg +0 -0
  1143. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rollup.svg +0 -0
  1144. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rome.svg +0 -0
  1145. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ron.svg +0 -0
  1146. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rproj.svg +0 -0
  1147. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rspec.svg +0 -0
  1148. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rss.svg +0 -0
  1149. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rubocop.svg +0 -0
  1150. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ruby.svg +0 -0
  1151. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rust.svg +0 -0
  1152. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_rust_toolchain.svg +0 -0
  1153. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_s-lang.svg +0 -0
  1154. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_safetensors.svg +0 -0
  1155. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sails.svg +0 -0
  1156. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_saltstack.svg +0 -0
  1157. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_san.svg +0 -0
  1158. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sapphire_framework_cli.svg +0 -0
  1159. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sas.svg +0 -0
  1160. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sass.svg +0 -0
  1161. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sbt.svg +0 -0
  1162. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_scala.svg +0 -0
  1163. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_scilab.svg +0 -0
  1164. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_script.svg +0 -0
  1165. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_scss.svg +0 -0
  1166. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_scss2.svg +0 -0
  1167. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sdlang.svg +0 -0
  1168. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_search_result.svg +0 -0
  1169. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_seedkit.svg +0 -0
  1170. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sentry.svg +0 -0
  1171. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sequelize.svg +0 -0
  1172. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_serverless.svg +0 -0
  1173. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_shadcn.svg +0 -0
  1174. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_shaderlab.svg +0 -0
  1175. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_shell.svg +0 -0
  1176. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_shellcheck.svg +0 -0
  1177. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_shuttle.svg +0 -0
  1178. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_silverstripe.svg +0 -0
  1179. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sino.svg +0 -0
  1180. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sitemap.svg +0 -0
  1181. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_siyuan.svg +0 -0
  1182. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sketch.svg +0 -0
  1183. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_skipper.svg +0 -0
  1184. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_slang.svg +0 -0
  1185. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_slashup.svg +0 -0
  1186. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_slice.svg +0 -0
  1187. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_slim.svg +0 -0
  1188. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_slint.svg +0 -0
  1189. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sln.svg +0 -0
  1190. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sln2.svg +0 -0
  1191. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_smarty.svg +0 -0
  1192. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_smithery.svg +0 -0
  1193. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_snakemake.svg +0 -0
  1194. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_snapcraft.svg +0 -0
  1195. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_snaplet.svg +0 -0
  1196. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_snort.svg +0 -0
  1197. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_snyk.svg +0 -0
  1198. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_solidarity.svg +0 -0
  1199. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_solidity.svg +0 -0
  1200. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_source.svg +0 -0
  1201. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_spacengine.svg +0 -0
  1202. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sparql.svg +0 -0
  1203. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_spin.svg +0 -0
  1204. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sqf.svg +0 -0
  1205. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sql.svg +0 -0
  1206. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sqlite.svg +0 -0
  1207. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_squirrel.svg +0 -0
  1208. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sss.svg +0 -0
  1209. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sst.svg +0 -0
  1210. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stackblitz.svg +0 -0
  1211. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stan.svg +0 -0
  1212. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stata.svg +0 -0
  1213. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stencil.svg +0 -0
  1214. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_storyboard.svg +0 -0
  1215. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_storybook.svg +0 -0
  1216. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stryker.svg +0 -0
  1217. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stylable.svg +0 -0
  1218. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_style.svg +0 -0
  1219. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_styled.svg +0 -0
  1220. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stylelint.svg +0 -0
  1221. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stylish_haskell.svg +0 -0
  1222. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_stylus.svg +0 -0
  1223. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_sublime.svg +0 -0
  1224. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_subversion.svg +0 -0
  1225. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_svelte.svg +0 -0
  1226. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_svelteconfig.svg +0 -0
  1227. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_svg.svg +0 -0
  1228. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_svgo.svg +0 -0
  1229. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_swagger.svg +0 -0
  1230. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_swc.svg +0 -0
  1231. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_swift.svg +0 -0
  1232. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_swig.svg +0 -0
  1233. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_symfony.svg +0 -0
  1234. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_syncpack.svg +0 -0
  1235. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_systemd.svg +0 -0
  1236. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_systemverilog.svg +0 -0
  1237. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_t4tt.svg +0 -0
  1238. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tailwind.svg +0 -0
  1239. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tamagui.svg +0 -0
  1240. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_taplo.svg +0 -0
  1241. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_taskfile.svg +0 -0
  1242. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tauri.svg +0 -0
  1243. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tcl.svg +0 -0
  1244. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_teal.svg +0 -0
  1245. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_templ.svg +0 -0
  1246. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tera.svg +0 -0
  1247. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_terraform.svg +0 -0
  1248. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_test.svg +0 -0
  1249. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_testcafe.svg +0 -0
  1250. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_testjs.svg +0 -0
  1251. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_testplane.svg +0 -0
  1252. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_testts.svg +0 -0
  1253. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tex.svg +0 -0
  1254. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_text.svg +0 -0
  1255. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_textile.svg +0 -0
  1256. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tfs.svg +0 -0
  1257. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tiltfile.svg +0 -0
  1258. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tm.svg +0 -0
  1259. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tmux.svg +0 -0
  1260. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_todo.svg +0 -0
  1261. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_toit.svg +0 -0
  1262. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_toml.svg +0 -0
  1263. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_toon.svg +0 -0
  1264. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tox.svg +0 -0
  1265. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_travis.svg +0 -0
  1266. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tree.svg +0 -0
  1267. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tres.svg +0 -0
  1268. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_truffle.svg +0 -0
  1269. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_trunk.svg +0 -0
  1270. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tsbuildinfo.svg +0 -0
  1271. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tscn.svg +0 -0
  1272. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tsconfig.svg +0 -0
  1273. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tsconfig_official.svg +0 -0
  1274. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tsdoc.svg +0 -0
  1275. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tsdown.svg +0 -0
  1276. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tslint.svg +0 -0
  1277. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tt.svg +0 -0
  1278. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_ttcn.svg +0 -0
  1279. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_tuc.svg +0 -0
  1280. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_turbo.svg +0 -0
  1281. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_twig.svg +0 -0
  1282. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_typedoc.svg +0 -0
  1283. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_typescript.svg +0 -0
  1284. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_typescript_official.svg +0 -0
  1285. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_typescriptdef.svg +0 -0
  1286. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_typescriptdef_official.svg +0 -0
  1287. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_typo3.svg +0 -0
  1288. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_uiua.svg +0 -0
  1289. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_unibeautify.svg +0 -0
  1290. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_unison.svg +0 -0
  1291. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_unlicense.svg +0 -0
  1292. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_unocss.svg +0 -0
  1293. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_uv.svg +0 -0
  1294. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vagrant.svg +0 -0
  1295. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vala.svg +0 -0
  1296. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vanilla_extract.svg +0 -0
  1297. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vapi.svg +0 -0
  1298. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vapor.svg +0 -0
  1299. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vash.svg +0 -0
  1300. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vb.svg +0 -0
  1301. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vba.svg +0 -0
  1302. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vbhtml.svg +0 -0
  1303. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vbproj.svg +0 -0
  1304. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vcxproj.svg +0 -0
  1305. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_velocity.svg +0 -0
  1306. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vento.svg +0 -0
  1307. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vercel.svg +0 -0
  1308. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_verilog.svg +0 -0
  1309. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vhdl.svg +0 -0
  1310. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_video.svg +0 -0
  1311. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_view.svg +0 -0
  1312. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vim.svg +0 -0
  1313. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vite.svg +0 -0
  1314. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vitest.svg +0 -0
  1315. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vlang.svg +0 -0
  1316. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_volt.svg +0 -0
  1317. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vroom.svg +0 -0
  1318. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vscode-insiders.svg +0 -0
  1319. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vscode.svg +0 -0
  1320. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vscode2.svg +0 -0
  1321. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vscode3.svg +0 -0
  1322. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vscode_test.svg +0 -0
  1323. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vsix.svg +0 -0
  1324. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vsixmanifest.svg +0 -0
  1325. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vue.svg +0 -0
  1326. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vueconfig.svg +0 -0
  1327. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vvvvvv.svg +0 -0
  1328. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_vyper.svg +0 -0
  1329. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wallaby.svg +0 -0
  1330. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wally.svg +0 -0
  1331. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wasm.svg +0 -0
  1332. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_watchmanconfig.svg +0 -0
  1333. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wdio.svg +0 -0
  1334. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_weblate.svg +0 -0
  1335. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_webpack.svg +0 -0
  1336. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wenyan.svg +0 -0
  1337. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wercker.svg +0 -0
  1338. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wgsl.svg +0 -0
  1339. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wikitext.svg +0 -0
  1340. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_windi.svg +0 -0
  1341. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wit.svg +0 -0
  1342. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wolfram.svg +0 -0
  1343. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_word.svg +0 -0
  1344. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_word2.svg +0 -0
  1345. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wpml.svg +0 -0
  1346. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wurst.svg +0 -0
  1347. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wxml.svg +0 -0
  1348. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wxss.svg +0 -0
  1349. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_wxt.svg +0 -0
  1350. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xaml.svg +0 -0
  1351. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xcode.svg +0 -0
  1352. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xfl.svg +0 -0
  1353. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xib.svg +0 -0
  1354. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xliff.svg +0 -0
  1355. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xmake.svg +0 -0
  1356. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xml.svg +0 -0
  1357. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xo.svg +0 -0
  1358. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xorg.svg +0 -0
  1359. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xquery.svg +0 -0
  1360. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_xsl.svg +0 -0
  1361. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yacc.svg +0 -0
  1362. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yaml.svg +0 -0
  1363. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yaml_official.svg +0 -0
  1364. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yamllint.svg +0 -0
  1365. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yandex.svg +0 -0
  1366. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yang.svg +0 -0
  1367. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yarn.svg +0 -0
  1368. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_yeoman.svg +0 -0
  1369. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_zeit.svg +0 -0
  1370. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_zig.svg +0 -0
  1371. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_zip.svg +0 -0
  1372. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/file_type_zip2.svg +0 -0
  1373. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_android.svg +0 -0
  1374. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_android_opened.svg +0 -0
  1375. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_angular.svg +0 -0
  1376. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_angular_opened.svg +0 -0
  1377. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_apache.svg +0 -0
  1378. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_apache_opened.svg +0 -0
  1379. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_api.svg +0 -0
  1380. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_api_opened.svg +0 -0
  1381. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_app.svg +0 -0
  1382. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_app_opened.svg +0 -0
  1383. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_arangodb.svg +0 -0
  1384. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_arangodb_opened.svg +0 -0
  1385. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_asset.svg +0 -0
  1386. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_asset_opened.svg +0 -0
  1387. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_astro.svg +0 -0
  1388. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_astro_opened.svg +0 -0
  1389. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_audio.svg +0 -0
  1390. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_audio_opened.svg +0 -0
  1391. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_aurelia.svg +0 -0
  1392. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_aurelia_opened.svg +0 -0
  1393. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_aws.svg +0 -0
  1394. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_aws_opened.svg +0 -0
  1395. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_azure.svg +0 -0
  1396. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_azure_opened.svg +0 -0
  1397. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_azurepipelines.svg +0 -0
  1398. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_azurepipelines_opened.svg +0 -0
  1399. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_binary.svg +0 -0
  1400. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_binary_opened.svg +0 -0
  1401. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_bloc.svg +0 -0
  1402. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_bloc_opened.svg +0 -0
  1403. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_blueprint.svg +0 -0
  1404. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_blueprint_opened.svg +0 -0
  1405. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_bot.svg +0 -0
  1406. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_bot_opened.svg +0 -0
  1407. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_bower.svg +0 -0
  1408. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_bower_opened.svg +0 -0
  1409. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_buildkite.svg +0 -0
  1410. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_buildkite_opened.svg +0 -0
  1411. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cake.svg +0 -0
  1412. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cake_opened.svg +0 -0
  1413. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cargo.svg +0 -0
  1414. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cargo_opened.svg +0 -0
  1415. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_certificate.svg +0 -0
  1416. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_certificate_opened.svg +0 -0
  1417. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_changesets.svg +0 -0
  1418. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_changesets_opened.svg +0 -0
  1419. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_chef.svg +0 -0
  1420. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_chef_opened.svg +0 -0
  1421. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_circleci.svg +0 -0
  1422. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_circleci_opened.svg +0 -0
  1423. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_claude.svg +0 -0
  1424. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_claude_opened.svg +0 -0
  1425. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cli.svg +0 -0
  1426. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cli_opened.svg +0 -0
  1427. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_client.svg +0 -0
  1428. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_client_opened.svg +0 -0
  1429. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cloudflare.svg +0 -0
  1430. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cloudflare_opened.svg +0 -0
  1431. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cmake.svg +0 -0
  1432. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cmake_opened.svg +0 -0
  1433. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_common.svg +0 -0
  1434. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_common_opened.svg +0 -0
  1435. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_component.svg +0 -0
  1436. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_component_opened.svg +0 -0
  1437. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_composer.svg +0 -0
  1438. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_composer_opened.svg +0 -0
  1439. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_config.svg +0 -0
  1440. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_config_opened.svg +0 -0
  1441. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_controller.svg +0 -0
  1442. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_controller_opened.svg +0 -0
  1443. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_coverage.svg +0 -0
  1444. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_coverage_opened.svg +0 -0
  1445. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_css.svg +0 -0
  1446. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_css2.svg +0 -0
  1447. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_css2_opened.svg +0 -0
  1448. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_css_opened.svg +0 -0
  1449. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cubit.svg +0 -0
  1450. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cubit_opened.svg +0 -0
  1451. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cursor.svg +0 -0
  1452. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cursor_opened.svg +0 -0
  1453. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cypress.svg +0 -0
  1454. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_cypress_opened.svg +0 -0
  1455. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dapr.svg +0 -0
  1456. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dapr_opened.svg +0 -0
  1457. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dart.svg +0 -0
  1458. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dart_opened.svg +0 -0
  1459. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_datadog.svg +0 -0
  1460. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_datadog_opened.svg +0 -0
  1461. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_db.svg +0 -0
  1462. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_db_opened.svg +0 -0
  1463. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_debian.svg +0 -0
  1464. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_debian_opened.svg +0 -0
  1465. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dependabot.svg +0 -0
  1466. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dependabot_opened.svg +0 -0
  1467. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_devcontainer.svg +0 -0
  1468. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_devcontainer_opened.svg +0 -0
  1469. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dist.svg +0 -0
  1470. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_dist_opened.svg +0 -0
  1471. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_docker.svg +0 -0
  1472. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_docker_opened.svg +0 -0
  1473. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_docs.svg +0 -0
  1474. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_docs_opened.svg +0 -0
  1475. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_e2e.svg +0 -0
  1476. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_e2e_opened.svg +0 -0
  1477. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_elasticbeanstalk.svg +0 -0
  1478. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_elasticbeanstalk_opened.svg +0 -0
  1479. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_electron.svg +0 -0
  1480. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_electron_opened.svg +0 -0
  1481. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_expo.svg +0 -0
  1482. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_expo_opened.svg +0 -0
  1483. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_favicon.svg +0 -0
  1484. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_favicon_opened.svg +0 -0
  1485. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_flow.svg +0 -0
  1486. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_flow_opened.svg +0 -0
  1487. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_flutter.svg +0 -0
  1488. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_flutter_opened.svg +0 -0
  1489. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_fonts.svg +0 -0
  1490. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_fonts_opened.svg +0 -0
  1491. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_frontcommerce.svg +0 -0
  1492. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_frontcommerce_opened.svg +0 -0
  1493. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gcp.svg +0 -0
  1494. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gcp_opened.svg +0 -0
  1495. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_git.svg +0 -0
  1496. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_git_opened.svg +0 -0
  1497. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_github.svg +0 -0
  1498. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_github_opened.svg +0 -0
  1499. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gitlab.svg +0 -0
  1500. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gitlab_opened.svg +0 -0
  1501. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_godot.svg +0 -0
  1502. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_godot_opened.svg +0 -0
  1503. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gradle.svg +0 -0
  1504. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gradle_opened.svg +0 -0
  1505. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_graphql.svg +0 -0
  1506. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_graphql_opened.svg +0 -0
  1507. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_grunt.svg +0 -0
  1508. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_grunt_opened.svg +0 -0
  1509. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gulp.svg +0 -0
  1510. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_gulp_opened.svg +0 -0
  1511. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_haxelib.svg +0 -0
  1512. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_haxelib_opened.svg +0 -0
  1513. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_helper.svg +0 -0
  1514. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_helper_opened.svg +0 -0
  1515. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_histoire.svg +0 -0
  1516. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_histoire_opened.svg +0 -0
  1517. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_hook.svg +0 -0
  1518. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_hook_opened.svg +0 -0
  1519. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_husky.svg +0 -0
  1520. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_husky_opened.svg +0 -0
  1521. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_idea.svg +0 -0
  1522. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_idea_opened.svg +0 -0
  1523. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_images.svg +0 -0
  1524. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_images_opened.svg +0 -0
  1525. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_include.svg +0 -0
  1526. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_include_opened.svg +0 -0
  1527. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_interfaces.svg +0 -0
  1528. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_interfaces_opened.svg +0 -0
  1529. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_ios.svg +0 -0
  1530. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_ios_opened.svg +0 -0
  1531. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_js.svg +0 -0
  1532. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_js_opened.svg +0 -0
  1533. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_json.svg +0 -0
  1534. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_json_official.svg +0 -0
  1535. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_json_official_opened.svg +0 -0
  1536. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_json_opened.svg +0 -0
  1537. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_junie.svg +0 -0
  1538. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_junie_opened.svg +0 -0
  1539. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_kotlin.svg +0 -0
  1540. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_kotlin_opened.svg +0 -0
  1541. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_kubernetes.svg +0 -0
  1542. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_kubernetes_opened.svg +0 -0
  1543. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_less.svg +0 -0
  1544. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_less_opened.svg +0 -0
  1545. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_library.svg +0 -0
  1546. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_library_opened.svg +0 -0
  1547. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_cursor.svg +0 -0
  1548. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_cursor_opened.svg +0 -0
  1549. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_cypress.svg +0 -0
  1550. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_cypress_opened.svg +0 -0
  1551. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_electron.svg +0 -0
  1552. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_electron_opened.svg +0 -0
  1553. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_expo.svg +0 -0
  1554. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_expo_opened.svg +0 -0
  1555. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_fonts.svg +0 -0
  1556. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_fonts_opened.svg +0 -0
  1557. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_gradle.svg +0 -0
  1558. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_gradle_opened.svg +0 -0
  1559. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_meteor.svg +0 -0
  1560. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_meteor_opened.svg +0 -0
  1561. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_mypy.svg +0 -0
  1562. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_mypy_opened.svg +0 -0
  1563. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_mysql.svg +0 -0
  1564. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_mysql_opened.svg +0 -0
  1565. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_node.svg +0 -0
  1566. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_node_opened.svg +0 -0
  1567. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_redux.svg +0 -0
  1568. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_redux_opened.svg +0 -0
  1569. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_sass.svg +0 -0
  1570. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_sass_opened.svg +0 -0
  1571. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_zed.svg +0 -0
  1572. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_light_zed_opened.svg +0 -0
  1573. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_linux.svg +0 -0
  1574. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_linux_opened.svg +0 -0
  1575. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_locale.svg +0 -0
  1576. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_locale_opened.svg +0 -0
  1577. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_log.svg +0 -0
  1578. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_log_opened.svg +0 -0
  1579. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_macos.svg +0 -0
  1580. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_macos_opened.svg +0 -0
  1581. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mariadb.svg +0 -0
  1582. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mariadb_opened.svg +0 -0
  1583. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_maven.svg +0 -0
  1584. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_maven_opened.svg +0 -0
  1585. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mediawiki.svg +0 -0
  1586. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mediawiki_opened.svg +0 -0
  1587. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_memcached.svg +0 -0
  1588. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_memcached_opened.svg +0 -0
  1589. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_meteor.svg +0 -0
  1590. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_meteor_opened.svg +0 -0
  1591. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_middleware.svg +0 -0
  1592. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_middleware_opened.svg +0 -0
  1593. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_minecraft.svg +0 -0
  1594. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_minecraft_opened.svg +0 -0
  1595. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_minikube.svg +0 -0
  1596. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_minikube_opened.svg +0 -0
  1597. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mjml.svg +0 -0
  1598. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mjml_opened.svg +0 -0
  1599. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mock.svg +0 -0
  1600. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mock_opened.svg +0 -0
  1601. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_model.svg +0 -0
  1602. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_model_opened.svg +0 -0
  1603. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_module.svg +0 -0
  1604. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_module_opened.svg +0 -0
  1605. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mojo.svg +0 -0
  1606. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mojo_opened.svg +0 -0
  1607. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mongodb.svg +0 -0
  1608. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mongodb_opened.svg +0 -0
  1609. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mypy.svg +0 -0
  1610. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mypy_opened.svg +0 -0
  1611. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mysql.svg +0 -0
  1612. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_mysql_opened.svg +0 -0
  1613. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_netlify.svg +0 -0
  1614. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_netlify_opened.svg +0 -0
  1615. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_next.svg +0 -0
  1616. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_next_opened.svg +0 -0
  1617. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nginx.svg +0 -0
  1618. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nginx_opened.svg +0 -0
  1619. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nix.svg +0 -0
  1620. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nix_opened.svg +0 -0
  1621. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_node.svg +0 -0
  1622. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_node_opened.svg +0 -0
  1623. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_notebooks.svg +0 -0
  1624. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_notebooks_opened.svg +0 -0
  1625. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_notification.svg +0 -0
  1626. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_notification_opened.svg +0 -0
  1627. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nuget.svg +0 -0
  1628. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nuget_opened.svg +0 -0
  1629. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nuxt.svg +0 -0
  1630. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_nuxt_opened.svg +0 -0
  1631. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_package.svg +0 -0
  1632. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_package_opened.svg +0 -0
  1633. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_paket.svg +0 -0
  1634. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_paket_opened.svg +0 -0
  1635. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_php.svg +0 -0
  1636. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_php_opened.svg +0 -0
  1637. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_platformio.svg +0 -0
  1638. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_platformio_opened.svg +0 -0
  1639. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_plugin.svg +0 -0
  1640. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_plugin_opened.svg +0 -0
  1641. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_prisma.svg +0 -0
  1642. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_prisma_opened.svg +0 -0
  1643. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_private.svg +0 -0
  1644. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_private_opened.svg +0 -0
  1645. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_public.svg +0 -0
  1646. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_public_opened.svg +0 -0
  1647. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_pytest.svg +0 -0
  1648. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_pytest_opened.svg +0 -0
  1649. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_python.svg +0 -0
  1650. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_python_opened.svg +0 -0
  1651. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_ravendb.svg +0 -0
  1652. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_ravendb_opened.svg +0 -0
  1653. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_redis.svg +0 -0
  1654. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_redis_opened.svg +0 -0
  1655. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_redux.svg +0 -0
  1656. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_redux_opened.svg +0 -0
  1657. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_route.svg +0 -0
  1658. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_route_opened.svg +0 -0
  1659. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_sass.svg +0 -0
  1660. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_sass_opened.svg +0 -0
  1661. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_script.svg +0 -0
  1662. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_script_opened.svg +0 -0
  1663. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_seedkit.svg +0 -0
  1664. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_seedkit_opened.svg +0 -0
  1665. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_server.svg +0 -0
  1666. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_server_opened.svg +0 -0
  1667. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_services.svg +0 -0
  1668. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_services_opened.svg +0 -0
  1669. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_shared.svg +0 -0
  1670. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_shared_opened.svg +0 -0
  1671. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_snaplet.svg +0 -0
  1672. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_snaplet_opened.svg +0 -0
  1673. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_spin.svg +0 -0
  1674. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_spin_opened.svg +0 -0
  1675. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_src.svg +0 -0
  1676. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_src_opened.svg +0 -0
  1677. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_sso.svg +0 -0
  1678. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_sso_opened.svg +0 -0
  1679. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_story.svg +0 -0
  1680. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_story_opened.svg +0 -0
  1681. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_style.svg +0 -0
  1682. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_style_opened.svg +0 -0
  1683. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_supabase.svg +0 -0
  1684. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_supabase_opened.svg +0 -0
  1685. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_svelte.svg +0 -0
  1686. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_svelte_opened.svg +0 -0
  1687. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_tauri.svg +0 -0
  1688. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_tauri_opened.svg +0 -0
  1689. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_temp.svg +0 -0
  1690. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_temp_opened.svg +0 -0
  1691. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_template.svg +0 -0
  1692. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_template_opened.svg +0 -0
  1693. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_test.svg +0 -0
  1694. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_test_opened.svg +0 -0
  1695. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_theme.svg +0 -0
  1696. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_theme_opened.svg +0 -0
  1697. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_tools.svg +0 -0
  1698. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_tools_opened.svg +0 -0
  1699. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_travis.svg +0 -0
  1700. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_travis_opened.svg +0 -0
  1701. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_trunk.svg +0 -0
  1702. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_trunk_opened.svg +0 -0
  1703. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_turbo.svg +0 -0
  1704. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_turbo_opened.svg +0 -0
  1705. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_typescript.svg +0 -0
  1706. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_typescript_opened.svg +0 -0
  1707. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_typings.svg +0 -0
  1708. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_typings2.svg +0 -0
  1709. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_typings2_opened.svg +0 -0
  1710. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_typings_opened.svg +0 -0
  1711. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vagrant.svg +0 -0
  1712. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vagrant_opened.svg +0 -0
  1713. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vercel.svg +0 -0
  1714. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vercel_opened.svg +0 -0
  1715. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_video.svg +0 -0
  1716. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_video_opened.svg +0 -0
  1717. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_view.svg +0 -0
  1718. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_view_opened.svg +0 -0
  1719. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vitepress.svg +0 -0
  1720. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vitepress_opened.svg +0 -0
  1721. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vs.svg +0 -0
  1722. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vs2.svg +0 -0
  1723. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vs2_opened.svg +0 -0
  1724. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vs_opened.svg +0 -0
  1725. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode.svg +0 -0
  1726. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode2.svg +0 -0
  1727. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode2_opened.svg +0 -0
  1728. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode3.svg +0 -0
  1729. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode3_opened.svg +0 -0
  1730. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode_opened.svg +0 -0
  1731. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test.svg +0 -0
  1732. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test2.svg +0 -0
  1733. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test2_opened.svg +0 -0
  1734. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test3.svg +0 -0
  1735. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test3_opened.svg +0 -0
  1736. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test_opened.svg +0 -0
  1737. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_wasm.svg +0 -0
  1738. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_wasm_opened.svg +0 -0
  1739. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_webpack.svg +0 -0
  1740. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_webpack_opened.svg +0 -0
  1741. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_windows.svg +0 -0
  1742. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_windows_opened.svg +0 -0
  1743. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_windsurf.svg +0 -0
  1744. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_windsurf_opened.svg +0 -0
  1745. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_wit.svg +0 -0
  1746. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_wit_opened.svg +0 -0
  1747. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_www.svg +0 -0
  1748. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_www_opened.svg +0 -0
  1749. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_yarn.svg +0 -0
  1750. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_yarn_opened.svg +0 -0
  1751. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_zed.svg +0 -0
  1752. /package/static/{0f871be → 10f95cc}/extensions/builtin.vscode-icons/icons/folder_type_zed_opened.svg +0 -0
  1753. /package/static/{0f871be → 10f95cc}/fonts/FiraCode-VariableFont.ttf +0 -0
  1754. /package/static/{0f871be → 10f95cc}/icons/add.svg +0 -0
  1755. /package/static/{0f871be → 10f95cc}/icons/arrow-down.svg +0 -0
  1756. /package/static/{0f871be → 10f95cc}/icons/arrow-left.svg +0 -0
  1757. /package/static/{0f871be → 10f95cc}/icons/arrow-right.svg +0 -0
  1758. /package/static/{0f871be → 10f95cc}/icons/arrow-up.svg +0 -0
  1759. /package/static/{0f871be → 10f95cc}/icons/blank.svg +0 -0
  1760. /package/static/{0f871be → 10f95cc}/icons/book.svg +0 -0
  1761. /package/static/{0f871be → 10f95cc}/icons/case-sensitive.svg +0 -0
  1762. /package/static/{0f871be → 10f95cc}/icons/check.svg +0 -0
  1763. /package/static/{0f871be → 10f95cc}/icons/chevron-down.svg +0 -0
  1764. /package/static/{0f871be → 10f95cc}/icons/chevron-left.svg +0 -0
  1765. /package/static/{0f871be → 10f95cc}/icons/chevron-right.svg +0 -0
  1766. /package/static/{0f871be → 10f95cc}/icons/chevron-up.svg +0 -0
  1767. /package/static/{0f871be → 10f95cc}/icons/chrome-close.svg +0 -0
  1768. /package/static/{0f871be → 10f95cc}/icons/chrome-maximize.svg +0 -0
  1769. /package/static/{0f871be → 10f95cc}/icons/chrome-minimize.svg +0 -0
  1770. /package/static/{0f871be → 10f95cc}/icons/chrome-restore.svg +0 -0
  1771. /package/static/{0f871be → 10f95cc}/icons/circle-filled.svg +0 -0
  1772. /package/static/{0f871be → 10f95cc}/icons/clear-all.svg +0 -0
  1773. /package/static/{0f871be → 10f95cc}/icons/close.svg +0 -0
  1774. /package/static/{0f871be → 10f95cc}/icons/cloud.svg +0 -0
  1775. /package/static/{0f871be → 10f95cc}/icons/collapse-all.svg +0 -0
  1776. /package/static/{0f871be → 10f95cc}/icons/debug-all.svg +0 -0
  1777. /package/static/{0f871be → 10f95cc}/icons/debug-alt-2.svg +0 -0
  1778. /package/static/{0f871be → 10f95cc}/icons/debug-alt-small.svg +0 -0
  1779. /package/static/{0f871be → 10f95cc}/icons/debug-alt.svg +0 -0
  1780. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-conditional-unverified.svg +0 -0
  1781. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-conditional.svg +0 -0
  1782. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-data-unverified.svg +0 -0
  1783. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-data.svg +0 -0
  1784. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-function-unverified.svg +0 -0
  1785. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-function.svg +0 -0
  1786. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-log-unverified.svg +0 -0
  1787. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-log.svg +0 -0
  1788. /package/static/{0f871be → 10f95cc}/icons/debug-breakpoint-unsupported.svg +0 -0
  1789. /package/static/{0f871be → 10f95cc}/icons/debug-console.svg +0 -0
  1790. /package/static/{0f871be → 10f95cc}/icons/debug-continue-small.svg +0 -0
  1791. /package/static/{0f871be → 10f95cc}/icons/debug-continue.svg +0 -0
  1792. /package/static/{0f871be → 10f95cc}/icons/debug-coverage.svg +0 -0
  1793. /package/static/{0f871be → 10f95cc}/icons/debug-disconnect.svg +0 -0
  1794. /package/static/{0f871be → 10f95cc}/icons/debug-line-by-line.svg +0 -0
  1795. /package/static/{0f871be → 10f95cc}/icons/debug-pause.svg +0 -0
  1796. /package/static/{0f871be → 10f95cc}/icons/debug-rerun.svg +0 -0
  1797. /package/static/{0f871be → 10f95cc}/icons/debug-restart-frame.svg +0 -0
  1798. /package/static/{0f871be → 10f95cc}/icons/debug-restart.svg +0 -0
  1799. /package/static/{0f871be → 10f95cc}/icons/debug-reverse-continue.svg +0 -0
  1800. /package/static/{0f871be → 10f95cc}/icons/debug-stackframe-active.svg +0 -0
  1801. /package/static/{0f871be → 10f95cc}/icons/debug-stackframe.svg +0 -0
  1802. /package/static/{0f871be → 10f95cc}/icons/debug-start.svg +0 -0
  1803. /package/static/{0f871be → 10f95cc}/icons/debug-step-back.svg +0 -0
  1804. /package/static/{0f871be → 10f95cc}/icons/debug-step-into.svg +0 -0
  1805. /package/static/{0f871be → 10f95cc}/icons/debug-step-out.svg +0 -0
  1806. /package/static/{0f871be → 10f95cc}/icons/debug-step-over.svg +0 -0
  1807. /package/static/{0f871be → 10f95cc}/icons/debug-stop.svg +0 -0
  1808. /package/static/{0f871be → 10f95cc}/icons/debug.svg +0 -0
  1809. /package/static/{0f871be → 10f95cc}/icons/discard.svg +0 -0
  1810. /package/static/{0f871be → 10f95cc}/icons/edit.svg +0 -0
  1811. /package/static/{0f871be → 10f95cc}/icons/ellipsis.svg +0 -0
  1812. /package/static/{0f871be → 10f95cc}/icons/error.svg +0 -0
  1813. /package/static/{0f871be → 10f95cc}/icons/exclude.svg +0 -0
  1814. /package/static/{0f871be → 10f95cc}/icons/extensionDefaultIcon.png +0 -0
  1815. /package/static/{0f871be → 10f95cc}/icons/extensions.svg +0 -0
  1816. /package/static/{0f871be → 10f95cc}/icons/files.svg +0 -0
  1817. /package/static/{0f871be → 10f95cc}/icons/filter.svg +0 -0
  1818. /package/static/{0f871be → 10f95cc}/icons/go-to-file.svg +0 -0
  1819. /package/static/{0f871be → 10f95cc}/icons/icon-close.svg +0 -0
  1820. /package/static/{0f871be → 10f95cc}/icons/icon-source-control.svg +0 -0
  1821. /package/static/{0f871be → 10f95cc}/icons/icon-sync.svg +0 -0
  1822. /package/static/{0f871be → 10f95cc}/icons/icon.png +0 -0
  1823. /package/static/{0f871be → 10f95cc}/icons/icon.svg +0 -0
  1824. /package/static/{0f871be → 10f95cc}/icons/info.svg +0 -0
  1825. /package/static/{0f871be → 10f95cc}/icons/language-icon.svg +0 -0
  1826. /package/static/{0f871be → 10f95cc}/icons/link-external.svg +0 -0
  1827. /package/static/{0f871be → 10f95cc}/icons/list-flat.svg +0 -0
  1828. /package/static/{0f871be → 10f95cc}/icons/list-tree.svg +0 -0
  1829. /package/static/{0f871be → 10f95cc}/icons/new-file.svg +0 -0
  1830. /package/static/{0f871be → 10f95cc}/icons/new-folder.svg +0 -0
  1831. /package/static/{0f871be → 10f95cc}/icons/newline.svg +0 -0
  1832. /package/static/{0f871be → 10f95cc}/icons/open-preview.svg +0 -0
  1833. /package/static/{0f871be → 10f95cc}/icons/play.svg +0 -0
  1834. /package/static/{0f871be → 10f95cc}/icons/preserve-case.svg +0 -0
  1835. /package/static/{0f871be → 10f95cc}/icons/progress.svg +0 -0
  1836. /package/static/{0f871be → 10f95cc}/icons/pwa-icon-192.png +0 -0
  1837. /package/static/{0f871be → 10f95cc}/icons/pwa-icon-512.png +0 -0
  1838. /package/static/{0f871be → 10f95cc}/icons/record-keys.svg +0 -0
  1839. /package/static/{0f871be → 10f95cc}/icons/refresh.svg +0 -0
  1840. /package/static/{0f871be → 10f95cc}/icons/regex.svg +0 -0
  1841. /package/static/{0f871be → 10f95cc}/icons/remove.svg +0 -0
  1842. /package/static/{0f871be → 10f95cc}/icons/replace-all.svg +0 -0
  1843. /package/static/{0f871be → 10f95cc}/icons/replace.svg +0 -0
  1844. /package/static/{0f871be → 10f95cc}/icons/repo.svg +0 -0
  1845. /package/static/{0f871be → 10f95cc}/icons/run-all.svg +0 -0
  1846. /package/static/{0f871be → 10f95cc}/icons/search.svg +0 -0
  1847. /package/static/{0f871be → 10f95cc}/icons/send.svg +0 -0
  1848. /package/static/{0f871be → 10f95cc}/icons/settings-gear.svg +0 -0
  1849. /package/static/{0f871be → 10f95cc}/icons/sort-precedence.svg +0 -0
  1850. /package/static/{0f871be → 10f95cc}/icons/source-control.svg +0 -0
  1851. /package/static/{0f871be → 10f95cc}/icons/split-horizontal.svg +0 -0
  1852. /package/static/{0f871be → 10f95cc}/icons/squiggly-error.svg +0 -0
  1853. /package/static/{0f871be → 10f95cc}/icons/squiggly-warning.svg +0 -0
  1854. /package/static/{0f871be → 10f95cc}/icons/symbol-array.svg +0 -0
  1855. /package/static/{0f871be → 10f95cc}/icons/symbol-boolean.svg +0 -0
  1856. /package/static/{0f871be → 10f95cc}/icons/symbol-class.svg +0 -0
  1857. /package/static/{0f871be → 10f95cc}/icons/symbol-color.svg +0 -0
  1858. /package/static/{0f871be → 10f95cc}/icons/symbol-constant.svg +0 -0
  1859. /package/static/{0f871be → 10f95cc}/icons/symbol-enum-member.svg +0 -0
  1860. /package/static/{0f871be → 10f95cc}/icons/symbol-enum.svg +0 -0
  1861. /package/static/{0f871be → 10f95cc}/icons/symbol-event.svg +0 -0
  1862. /package/static/{0f871be → 10f95cc}/icons/symbol-field.svg +0 -0
  1863. /package/static/{0f871be → 10f95cc}/icons/symbol-file.svg +0 -0
  1864. /package/static/{0f871be → 10f95cc}/icons/symbol-interface.svg +0 -0
  1865. /package/static/{0f871be → 10f95cc}/icons/symbol-key.svg +0 -0
  1866. /package/static/{0f871be → 10f95cc}/icons/symbol-keyword.svg +0 -0
  1867. /package/static/{0f871be → 10f95cc}/icons/symbol-method.svg +0 -0
  1868. /package/static/{0f871be → 10f95cc}/icons/symbol-misc.svg +0 -0
  1869. /package/static/{0f871be → 10f95cc}/icons/symbol-namespace.svg +0 -0
  1870. /package/static/{0f871be → 10f95cc}/icons/symbol-numeric.svg +0 -0
  1871. /package/static/{0f871be → 10f95cc}/icons/symbol-operator.svg +0 -0
  1872. /package/static/{0f871be → 10f95cc}/icons/symbol-parameter.svg +0 -0
  1873. /package/static/{0f871be → 10f95cc}/icons/symbol-property.svg +0 -0
  1874. /package/static/{0f871be → 10f95cc}/icons/symbol-ruler.svg +0 -0
  1875. /package/static/{0f871be → 10f95cc}/icons/symbol-snippet.svg +0 -0
  1876. /package/static/{0f871be → 10f95cc}/icons/symbol-string.svg +0 -0
  1877. /package/static/{0f871be → 10f95cc}/icons/symbol-structure.svg +0 -0
  1878. /package/static/{0f871be → 10f95cc}/icons/symbol-variable.svg +0 -0
  1879. /package/static/{0f871be → 10f95cc}/icons/tag.svg +0 -0
  1880. /package/static/{0f871be → 10f95cc}/icons/terminal-bash.svg +0 -0
  1881. /package/static/{0f871be → 10f95cc}/icons/terminal.svg +0 -0
  1882. /package/static/{0f871be → 10f95cc}/icons/theme-icon.png +0 -0
  1883. /package/static/{0f871be → 10f95cc}/icons/trash.svg +0 -0
  1884. /package/static/{0f871be → 10f95cc}/icons/triangle-down.svg +0 -0
  1885. /package/static/{0f871be → 10f95cc}/icons/triangle-left.svg +0 -0
  1886. /package/static/{0f871be → 10f95cc}/icons/triangle-right.svg +0 -0
  1887. /package/static/{0f871be → 10f95cc}/icons/triangle-up.svg +0 -0
  1888. /package/static/{0f871be → 10f95cc}/icons/warning.svg +0 -0
  1889. /package/static/{0f871be → 10f95cc}/icons/whole-word.svg +0 -0
  1890. /package/static/{0f871be → 10f95cc}/icons/zoom-in.svg +0 -0
  1891. /package/static/{0f871be → 10f95cc}/icons/zoom-out.svg +0 -0
  1892. /package/static/{0f871be → 10f95cc}/js/babel-parser.js +0 -0
  1893. /package/static/{0f871be → 10f95cc}/js/ky.js +0 -0
  1894. /package/static/{0f871be → 10f95cc}/js/lvce-editor-import-script.js +0 -0
  1895. /package/static/{0f871be → 10f95cc}/js/lvce-editor-ipc.js +0 -0
  1896. /package/static/{0f871be → 10f95cc}/js/lvce-editor-json-rpc.js +0 -0
  1897. /package/static/{0f871be → 10f95cc}/js/lvce-editor-rpc.js +0 -0
  1898. /package/static/{0f871be → 10f95cc}/js/lvce-editor-verror.js +0 -0
  1899. /package/static/{0f871be → 10f95cc}/js/p-min-delay.js +0 -0
  1900. /package/static/{0f871be → 10f95cc}/js/pretty-bytes.js +0 -0
  1901. /package/static/{0f871be → 10f95cc}/js/preview-injected.js +0 -0
  1902. /package/static/{0f871be → 10f95cc}/js/yoctodelay.js +0 -0
  1903. /package/static/{0f871be → 10f95cc}/lib-css/termterm.css +0 -0
  1904. /package/static/{0f871be → 10f95cc}/packages/activity-bar-worker/dist/activityBarWorkerMain.js +0 -0
  1905. /package/static/{0f871be → 10f95cc}/packages/chat-coordinator-worker/dist/chatCoordinatorWorkerMain.js +0 -0
  1906. /package/static/{0f871be → 10f95cc}/packages/chat-debug-view/dist/chatDebugViewWorkerMain.js +0 -0
  1907. /package/static/{0f871be → 10f95cc}/packages/chat-math-worker/dist/chatMathWorkerMain.js +0 -0
  1908. /package/static/{0f871be → 10f95cc}/packages/chat-network-worker/dist/chatNetworkWorkerMain.js +0 -0
  1909. /package/static/{0f871be → 10f95cc}/packages/clipboard-worker/dist/clipBoardWorkerMain.js +0 -0
  1910. /package/static/{0f871be → 10f95cc}/packages/color-picker-worker/dist/colorPickerWorkerMain.js +0 -0
  1911. /package/static/{0f871be → 10f95cc}/packages/completion-worker/dist/completionWorkerMain.js +0 -0
  1912. /package/static/{0f871be → 10f95cc}/packages/debug-worker/dist/debugWorkerMain.js +0 -0
  1913. /package/static/{0f871be → 10f95cc}/packages/embeds-worker/dist/embedsWorkerMain.js +0 -0
  1914. /package/static/{0f871be → 10f95cc}/packages/error-worker/dist/errorWorkerMain.js +0 -0
  1915. /package/static/{0f871be → 10f95cc}/packages/explorer-worker/dist/explorerViewWorkerMain.js +0 -0
  1916. /package/static/{0f871be → 10f95cc}/packages/extension-detail-view-worker/dist/extensionDetailViewWorkerMain.js +0 -0
  1917. /package/static/{0f871be → 10f95cc}/packages/extension-host-sub-worker/dist/extensionHostSubWorkerMain.js +0 -0
  1918. /package/static/{0f871be → 10f95cc}/packages/extension-management-worker/dist/extensionManagementWorkerMain.js +0 -0
  1919. /package/static/{0f871be → 10f95cc}/packages/extension-search-view-worker/dist/extensionSearchViewWorkerMain.js +0 -0
  1920. /package/static/{0f871be → 10f95cc}/packages/file-search-worker/dist/fileSearchWorkerMain.js +0 -0
  1921. /package/static/{0f871be → 10f95cc}/packages/file-system-worker/dist/fileSystemWorkerMain.js +0 -0
  1922. /package/static/{0f871be → 10f95cc}/packages/find-widget-worker/dist/findWidgetWorkerMain.js +0 -0
  1923. /package/static/{0f871be → 10f95cc}/packages/hover-worker/dist/hoverWorkerMain.js +0 -0
  1924. /package/static/{0f871be → 10f95cc}/packages/icon-theme-worker/dist/iconThemeWorkerMain.js +0 -0
  1925. /package/static/{0f871be → 10f95cc}/packages/iframe-inspector/dist/iframeInspectorWorkerMain.js +0 -0
  1926. /package/static/{0f871be → 10f95cc}/packages/iframe-worker/dist/iframeWorkerMain.js +0 -0
  1927. /package/static/{0f871be → 10f95cc}/packages/keybindings-view-worker/dist/keyBindingsViewWorkerMain.js +0 -0
  1928. /package/static/{0f871be → 10f95cc}/packages/language-models-view/dist/languageModelsViewMain.js +0 -0
  1929. /package/static/{0f871be → 10f95cc}/packages/main-area-worker/dist/mainAreaWorkerMain.js +0 -0
  1930. /package/static/{0f871be → 10f95cc}/packages/markdown-worker/dist/markdownWorkerMain.js +0 -0
  1931. /package/static/{0f871be → 10f95cc}/packages/menu-worker/dist/menuWorkerMain.js +0 -0
  1932. /package/static/{0f871be → 10f95cc}/packages/opener-worker/dist/openerWorkerMain.js +0 -0
  1933. /package/static/{0f871be → 10f95cc}/packages/output-view/dist/outputViewWorkerMain.js +0 -0
  1934. /package/static/{0f871be → 10f95cc}/packages/panel-worker/dist/panelWorkerMain.js +0 -0
  1935. /package/static/{0f871be → 10f95cc}/packages/preload/dist/index.js +0 -0
  1936. /package/static/{0f871be → 10f95cc}/packages/preview-sandbox-worker/dist/previewSandBoxWorkerMain.js +0 -0
  1937. /package/static/{0f871be → 10f95cc}/packages/preview-worker/dist/previewWorkerMain.js +0 -0
  1938. /package/static/{0f871be → 10f95cc}/packages/problems-view/dist/problemsViewWorkerMain.js +0 -0
  1939. /package/static/{0f871be → 10f95cc}/packages/quick-pick-worker/dist/quickPickWorkerMain.js +0 -0
  1940. /package/static/{0f871be → 10f95cc}/packages/references-view/dist/referencesViewWorkerMain.js +0 -0
  1941. /package/static/{0f871be → 10f95cc}/packages/rename-worker/dist/renameWorkerMain.js +0 -0
  1942. /package/static/{0f871be → 10f95cc}/packages/renderer-process/LICENSE +0 -0
  1943. /package/static/{0f871be → 10f95cc}/packages/renderer-process/README.md +0 -0
  1944. /package/static/{0f871be → 10f95cc}/packages/renderer-process/package.json +0 -0
  1945. /package/static/{0f871be → 10f95cc}/packages/settings-view/dist/settingsViewWorkerMain.js +0 -0
  1946. /package/static/{0f871be → 10f95cc}/packages/source-action-worker/dist/sourceActionWorkerMain.js +0 -0
  1947. /package/static/{0f871be → 10f95cc}/packages/source-control-worker/dist/sourceControlWorkerMain.js +0 -0
  1948. /package/static/{0f871be → 10f95cc}/packages/status-bar-worker/dist/statusBarWorkerMain.js +0 -0
  1949. /package/static/{0f871be → 10f95cc}/packages/syntax-highlighting-worker/dist/syntaxHighlightingWorkerMain.js +0 -0
  1950. /package/static/{0f871be → 10f95cc}/packages/terminal-worker/dist/terminalWorkerMain.js +0 -0
  1951. /package/static/{0f871be → 10f95cc}/packages/text-measurement-worker/dist/textMeasurementWorkerMain.js +0 -0
  1952. /package/static/{0f871be → 10f95cc}/packages/title-bar-worker/dist/titleBarWorkerMain.js +0 -0
  1953. /package/static/{0f871be → 10f95cc}/packages/update-worker/dist/updateWorkerMain.js +0 -0
  1954. /package/static/{0f871be → 10f95cc}/playground/languages/index.cpp +0 -0
  1955. /package/static/{0f871be → 10f95cc}/playground/languages/index.css +0 -0
  1956. /package/static/{0f871be → 10f95cc}/playground/languages/index.csv +0 -0
  1957. /package/static/{0f871be → 10f95cc}/playground/languages/index.dart +0 -0
  1958. /package/static/{0f871be → 10f95cc}/playground/languages/index.env +0 -0
  1959. /package/static/{0f871be → 10f95cc}/playground/languages/index.ex +0 -0
  1960. /package/static/{0f871be → 10f95cc}/playground/languages/index.html +0 -0
  1961. /package/static/{0f871be → 10f95cc}/playground/languages/index.java +0 -0
  1962. /package/static/{0f871be → 10f95cc}/playground/languages/index.jl +0 -0
  1963. /package/static/{0f871be → 10f95cc}/playground/languages/index.js +0 -0
  1964. /package/static/{0f871be → 10f95cc}/playground/languages/index.json +0 -0
  1965. /package/static/{0f871be → 10f95cc}/playground/languages/index.kt +0 -0
  1966. /package/static/{0f871be → 10f95cc}/playground/languages/index.pl +0 -0
  1967. /package/static/{0f871be → 10f95cc}/playground/languages/index.py +0 -0
  1968. /package/static/{0f871be → 10f95cc}/playground/languages/index.ts +0 -0
  1969. /package/static/{0f871be → 10f95cc}/playground/languages/scrolling.txt +0 -0
  1970. /package/static/{0f871be → 10f95cc}/playground/languages/tsconfig.json +0 -0
  1971. /package/static/{0f871be → 10f95cc}/playground/sample-folder/a.txt +0 -0
  1972. /package/static/{0f871be → 10f95cc}/playground/sample-folder/b.txt +0 -0
  1973. /package/static/{0f871be → 10f95cc}/playground/sample-folder/c.txt +0 -0
@@ -1269,15 +1269,9 @@ const sendMessagePortToChatNetworkWorker = async port => {
1269
1269
  const sendMessagePortToChatToolWorker = async port => {
1270
1270
  await invokeAndTransfer('SendMessagePortToExtensionHostWorker.sendMessagePortToChatToolWorker', port, 'HandleMessagePort.handleMessagePort');
1271
1271
  };
1272
- const writeFile = async (uri, text) => {
1273
- await invoke$1('FileSystem.writeFile', uri, text);
1274
- };
1275
1272
  const activateByEvent$1 = (event, assetDir, platform) => {
1276
1273
  return invoke$1('ExtensionHostManagement.activateByEvent', event, assetDir, platform);
1277
1274
  };
1278
- const getWorkspacePath = () => {
1279
- return invoke$1('Workspace.getPath');
1280
- };
1281
1275
  const getPreference = async key => {
1282
1276
  return await invoke$1('Preferences.get', key);
1283
1277
  };
@@ -1670,6 +1664,10 @@ const createDefaultState = () => {
1670
1664
  chatMessageFontFamily: 'system-ui',
1671
1665
  chatMessageFontSize,
1672
1666
  chatMessageLineHeight,
1667
+ chatSendAreaPaddingBottom: 10,
1668
+ chatSendAreaPaddingLeft: 8,
1669
+ chatSendAreaPaddingRight: 8,
1670
+ chatSendAreaPaddingTop: 10,
1673
1671
  composerDropActive: false,
1674
1672
  composerDropEnabled: true,
1675
1673
  composerFontFamily: 'system-ui',
@@ -1714,7 +1712,9 @@ const createDefaultState = () => {
1714
1712
  name: '_blank',
1715
1713
  uri: ''
1716
1714
  }],
1715
+ questionToolEnabled: false,
1717
1716
  renamingSessionId: '',
1717
+ runMode: 'local',
1718
1718
  selectedModelId: defaultModelId,
1719
1719
  selectedProjectId: defaultProjectId,
1720
1720
  selectedSessionId: defaultSessionId,
@@ -1724,15 +1724,21 @@ const createDefaultState = () => {
1724
1724
  projectId: defaultProjectId,
1725
1725
  title: defaultSessionTitle()
1726
1726
  }],
1727
+ showRunMode: false,
1727
1728
  streamingEnabled: true,
1729
+ textAreaPaddingBottom: 0,
1730
+ textAreaPaddingLeft: 12,
1731
+ textAreaPaddingRight: 12,
1732
+ textAreaPaddingTop: 0,
1733
+ todoListToolEnabled: false,
1728
1734
  tokensMax: 0,
1729
1735
  tokensUsed: 0,
1730
1736
  uid: 0,
1731
1737
  usageOverviewEnabled: false,
1732
- useChatCoordinatorWorker: true,
1738
+ useChatCoordinatorWorker: false,
1733
1739
  useChatMathWorker: true,
1734
1740
  useChatNetworkWorkerForRequests: false,
1735
- useChatToolWorker: false,
1741
+ useChatToolWorker: true,
1736
1742
  useMockApi: false,
1737
1743
  userName: '',
1738
1744
  userSubscriptionPlan: '',
@@ -2518,7 +2524,7 @@ const getRenderHtmlCss = (sessions, selectedSessionId) => {
2518
2524
  const isEqual$1 = (oldState, newState) => {
2519
2525
  const oldRenderHtmlCss = getRenderHtmlCss(oldState.sessions, oldState.selectedSessionId);
2520
2526
  const newRenderHtmlCss = getRenderHtmlCss(newState.sessions, newState.selectedSessionId);
2521
- return oldState.initial === newState.initial && oldState.chatMessageFontFamily === newState.chatMessageFontFamily && oldState.chatMessageFontSize === newState.chatMessageFontSize && oldState.chatMessageLineHeight === newState.chatMessageLineHeight && oldState.composerHeight === newState.composerHeight && oldState.composerLineHeight === newState.composerLineHeight && oldState.composerFontFamily === newState.composerFontFamily && oldState.composerFontSize === newState.composerFontSize && oldState.listItemHeight === newState.listItemHeight && oldRenderHtmlCss === newRenderHtmlCss;
2527
+ return oldState.initial === newState.initial && oldState.chatMessageFontFamily === newState.chatMessageFontFamily && oldState.chatMessageFontSize === newState.chatMessageFontSize && oldState.chatMessageLineHeight === newState.chatMessageLineHeight && oldState.chatSendAreaPaddingTop === newState.chatSendAreaPaddingTop && oldState.chatSendAreaPaddingLeft === newState.chatSendAreaPaddingLeft && oldState.chatSendAreaPaddingRight === newState.chatSendAreaPaddingRight && oldState.chatSendAreaPaddingBottom === newState.chatSendAreaPaddingBottom && oldState.composerHeight === newState.composerHeight && oldState.composerLineHeight === newState.composerLineHeight && oldState.composerFontFamily === newState.composerFontFamily && oldState.composerFontSize === newState.composerFontSize && oldState.listItemHeight === newState.listItemHeight && oldState.textAreaPaddingTop === newState.textAreaPaddingTop && oldState.textAreaPaddingLeft === newState.textAreaPaddingLeft && oldState.textAreaPaddingRight === newState.textAreaPaddingRight && oldState.textAreaPaddingBottom === newState.textAreaPaddingBottom && oldRenderHtmlCss === newRenderHtmlCss;
2522
2528
  };
2523
2529
 
2524
2530
  const diffFocus = (oldState, newState) => {
@@ -2540,7 +2546,7 @@ const isEqualProjectExpandedIds = (a, b) => {
2540
2546
  return true;
2541
2547
  };
2542
2548
  const isEqual = (oldState, newState) => {
2543
- return oldState.authEnabled === newState.authEnabled && oldState.authErrorMessage === newState.authErrorMessage && oldState.authStatus === newState.authStatus && oldState.composerDropActive === newState.composerDropActive && oldState.composerDropEnabled === newState.composerDropEnabled && oldState.composerValue === newState.composerValue && oldState.initial === newState.initial && isEqualProjectExpandedIds(oldState.projectExpandedIds, newState.projectExpandedIds) && oldState.projectListScrollTop === newState.projectListScrollTop && oldState.renamingSessionId === newState.renamingSessionId && oldState.selectedModelId === newState.selectedModelId && oldState.selectedProjectId === newState.selectedProjectId && oldState.selectedSessionId === newState.selectedSessionId && oldState.sessions === newState.sessions && oldState.tokensMax === newState.tokensMax && oldState.tokensUsed === newState.tokensUsed && oldState.usageOverviewEnabled === newState.usageOverviewEnabled && oldState.useChatMathWorker === newState.useChatMathWorker && oldState.viewMode === newState.viewMode && oldState.voiceDictationEnabled === newState.voiceDictationEnabled;
2549
+ return oldState.authEnabled === newState.authEnabled && oldState.authErrorMessage === newState.authErrorMessage && oldState.authStatus === newState.authStatus && oldState.composerDropActive === newState.composerDropActive && oldState.composerDropEnabled === newState.composerDropEnabled && oldState.composerValue === newState.composerValue && oldState.initial === newState.initial && isEqualProjectExpandedIds(oldState.projectExpandedIds, newState.projectExpandedIds) && oldState.projectListScrollTop === newState.projectListScrollTop && oldState.renamingSessionId === newState.renamingSessionId && oldState.selectedModelId === newState.selectedModelId && oldState.selectedProjectId === newState.selectedProjectId && oldState.selectedSessionId === newState.selectedSessionId && oldState.showRunMode === newState.showRunMode && oldState.runMode === newState.runMode && oldState.sessions === newState.sessions && oldState.tokensMax === newState.tokensMax && oldState.tokensUsed === newState.tokensUsed && oldState.usageOverviewEnabled === newState.usageOverviewEnabled && oldState.useChatMathWorker === newState.useChatMathWorker && oldState.viewMode === newState.viewMode && oldState.voiceDictationEnabled === newState.voiceDictationEnabled;
2544
2550
  };
2545
2551
 
2546
2552
  const diffScrollTop = (oldState, newState) => {
@@ -3131,12 +3137,14 @@ const selectProject = async (state, projectId) => {
3131
3137
  };
3132
3138
  };
3133
3139
 
3140
+ const fileSchemeRegex = /^file:\/\//;
3141
+ const trailingSlashesRegex$4 = /\/+$/;
3134
3142
  const getProjectName = (uri, fallbackIndex) => {
3135
3143
  if (!uri) {
3136
3144
  return `Project ${fallbackIndex}`;
3137
3145
  }
3138
- const withoutScheme = uri.replace(/^file:\/\//, '');
3139
- const normalized = withoutScheme.replace(/\/+$/, '');
3146
+ const withoutScheme = uri.replace(fileSchemeRegex, '');
3147
+ const normalized = withoutScheme.replace(trailingSlashesRegex$4, '');
3140
3148
  const lastSegment = normalized.split('/').pop();
3141
3149
  if (!lastSegment) {
3142
3150
  return `Project ${fallbackIndex}`;
@@ -3199,6 +3207,7 @@ const update = async settings => {
3199
3207
  await invoke$1('Preferences.update', settings);
3200
3208
  };
3201
3209
 
3210
+ const trailingSlashesRegex$3 = /\/+$/;
3202
3211
  const isLoginResponse = value => {
3203
3212
  if (!value || typeof value !== 'object') {
3204
3213
  return false;
@@ -3206,7 +3215,7 @@ const isLoginResponse = value => {
3206
3215
  return true;
3207
3216
  };
3208
3217
  const trimTrailingSlashes = value => {
3209
- return value.replace(/\/+$/, '');
3218
+ return value.replace(trailingSlashesRegex$3, '');
3210
3219
  };
3211
3220
  const handleClickLogin = async state => {
3212
3221
  if (!state.backendUrl) {
@@ -3344,216 +3353,31 @@ const getAiResponse$1 = async options => {
3344
3353
  const execute = async (name, rawArguments, options) => {
3345
3354
  return invoke$3('ChatTool.execute', name, rawArguments, options);
3346
3355
  };
3347
-
3348
- const getToolErrorPayload = error => {
3349
- const rawStack = error && typeof error === 'object' ? Reflect.get(error, 'stack') : undefined;
3350
- return {
3351
- error: String(error),
3352
- ...(typeof rawStack === 'string' && rawStack.trim() ? {
3353
- errorStack: rawStack,
3354
- stack: rawStack
3355
- } : {})
3356
- };
3357
- };
3358
-
3359
- const executeGetWorkspaceUriTool = async (_args, _options) => {
3360
- try {
3361
- const workspaceUri = await getWorkspacePath();
3362
- return JSON.stringify({
3363
- workspaceUri
3364
- });
3365
- } catch (error) {
3366
- return JSON.stringify(getToolErrorPayload(error));
3367
- }
3368
- };
3369
-
3370
- const isAbsoluteUri$1 = value => {
3371
- return /^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(value);
3372
- };
3373
- const executeListFilesTool = async (args, _options) => {
3374
- const uri = typeof args.uri === 'string' ? args.uri : '';
3375
- if (!uri || !isAbsoluteUri$1(uri)) {
3376
- return JSON.stringify({
3377
- error: 'Invalid argument: uri must be an absolute URI.'
3378
- });
3379
- }
3380
- try {
3381
- const entries = await invoke$1('FileSystem.readDirWithFileTypes', uri);
3382
- return JSON.stringify({
3383
- entries,
3384
- uri
3385
- });
3386
- } catch (error) {
3387
- return JSON.stringify({
3388
- ...getToolErrorPayload(error),
3389
- uri
3390
- });
3391
- }
3392
- };
3393
-
3394
- const isPathTraversalAttempt = path => {
3395
- if (!path) {
3396
- return false;
3397
- }
3398
- if (path.startsWith('/') || path.startsWith('\\')) {
3399
- return true;
3400
- }
3401
- if (path.startsWith('file://')) {
3402
- return true;
3403
- }
3404
- if (/^[a-zA-Z]:[\\/]/.test(path)) {
3405
- return true;
3406
- }
3407
- const segments = path.split(/[\\/]/);
3408
- return segments.includes('..');
3409
- };
3410
-
3411
- const normalizeRelativePath = path => {
3412
- const segments = path.split(/[\\/]/).filter(segment => segment && segment !== '.');
3413
- if (segments.length === 0) {
3414
- return '.';
3415
- }
3416
- return segments.join('/');
3417
- };
3418
-
3419
- const isAbsoluteUri = value => {
3420
- return /^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(value);
3421
- };
3422
- const executeReadFileTool = async (args, _options) => {
3423
- const uri = typeof args.uri === 'string' ? args.uri : '';
3424
- if (uri) {
3425
- if (!isAbsoluteUri(uri)) {
3426
- return JSON.stringify({
3427
- error: 'Invalid argument: uri must be an absolute URI.'
3428
- });
3429
- }
3430
- try {
3431
- const content = await readFile(uri);
3432
- return JSON.stringify({
3433
- content,
3434
- uri
3435
- });
3436
- } catch (error) {
3437
- return JSON.stringify({
3438
- ...getToolErrorPayload(error),
3439
- uri
3440
- });
3441
- }
3442
- }
3443
- const filePath = typeof args.path === 'string' ? args.path : '';
3444
- if (!filePath || isPathTraversalAttempt(filePath)) {
3445
- return JSON.stringify({
3446
- error: 'Access denied: path must be relative and stay within the open workspace folder.'
3447
- });
3448
- }
3449
- const normalizedPath = normalizeRelativePath(filePath);
3450
- try {
3451
- const content = await readFile(normalizedPath);
3452
- return JSON.stringify({
3453
- content,
3454
- path: normalizedPath
3455
- });
3456
- } catch (error) {
3457
- return JSON.stringify({
3458
- ...getToolErrorPayload(error),
3459
- path: normalizedPath
3460
- });
3461
- }
3462
- };
3463
-
3464
- const maxPayloadLength = 40_000;
3465
- const executeRenderHtmlTool = async (args, _options) => {
3466
- const html = typeof args.html === 'string' ? args.html : '';
3467
- const css = typeof args.css === 'string' ? args.css : '';
3468
- const title = typeof args.title === 'string' ? args.title : '';
3469
- if (!html) {
3470
- return JSON.stringify({
3471
- error: 'Missing required argument: html'
3472
- });
3473
- }
3474
- if (html.length > maxPayloadLength || css.length > maxPayloadLength) {
3475
- return JSON.stringify({
3476
- error: 'Payload too large: keep html/css under 40,000 characters each.'
3477
- });
3478
- }
3479
- return JSON.stringify({
3480
- css,
3481
- html,
3482
- ok: true,
3483
- title
3484
- });
3485
- };
3486
-
3487
- const executeWriteFileTool = async (args, _options) => {
3488
- const filePath = typeof args.path === 'string' ? args.path : '';
3489
- const content = typeof args.content === 'string' ? args.content : '';
3490
- if (!filePath || isPathTraversalAttempt(filePath)) {
3491
- return JSON.stringify({
3492
- error: 'Access denied: path must be relative and stay within the open workspace folder.'
3493
- });
3494
- }
3495
- const normalizedPath = normalizeRelativePath(filePath);
3496
- try {
3497
- await writeFile(normalizedPath, content);
3498
- return JSON.stringify({
3499
- ok: true,
3500
- path: normalizedPath
3501
- });
3502
- } catch (error) {
3503
- return JSON.stringify({
3504
- ...getToolErrorPayload(error),
3505
- path: normalizedPath
3506
- });
3507
- }
3356
+ const getTools = async () => {
3357
+ return invoke$3('ChatTool.getTools');
3508
3358
  };
3509
3359
 
3510
- const parseToolArguments = rawArguments => {
3511
- if (typeof rawArguments !== 'string') {
3512
- return {};
3513
- }
3514
- try {
3515
- const parsed = JSON.parse(rawArguments);
3516
- if (!parsed || typeof parsed !== 'object') {
3517
- return {};
3518
- }
3519
- return parsed;
3520
- } catch {
3521
- return {};
3360
+ const stringifyToolOutput = output => {
3361
+ if (typeof output === 'string') {
3362
+ return output;
3522
3363
  }
3364
+ return JSON.stringify(output) ?? 'null';
3523
3365
  };
3524
-
3525
3366
  const executeChatTool = async (name, rawArguments, options) => {
3526
- if (options.useChatToolWorker) {
3527
- return execute(name, rawArguments, {
3528
- assetDir: options.assetDir,
3529
- platform: options.platform
3530
- });
3531
- }
3532
- const args = parseToolArguments(rawArguments);
3533
- if (name === 'read_file') {
3534
- return executeReadFileTool(args);
3535
- }
3536
- if (name === 'write_file') {
3537
- return executeWriteFileTool(args);
3538
- }
3539
- if (name === 'list_files') {
3540
- return executeListFilesTool(args);
3367
+ if (!options.useChatToolWorker) {
3368
+ throw new Error('Chat tools must be executed in a web worker environment. Please set useChatToolWorker to true in the options.');
3541
3369
  }
3542
- if (name === 'getWorkspaceUri') {
3543
- return executeGetWorkspaceUriTool();
3544
- }
3545
- if (name === 'render_html') {
3546
- return executeRenderHtmlTool(args);
3547
- }
3548
- return JSON.stringify({
3549
- error: `Unknown tool: ${name}`
3370
+ const workerOutput = await execute(name, rawArguments, {
3371
+ assetDir: options.assetDir,
3372
+ platform: options.platform
3550
3373
  });
3374
+ return stringifyToolOutput(workerOutput);
3551
3375
  };
3552
3376
 
3553
3377
  const getReadFileTool = () => {
3554
3378
  return {
3555
3379
  function: {
3556
- description: 'Read UTF-8 text content from a file inside the currently open workspace folder. Only pass an absolute URI. When you reference files in your response, use markdown links like [index.ts](file:///workspace/src/index.ts).',
3380
+ description: 'Read UTF-8 text content from a file inside the currently open workspace folder. Only pass an absolute URI. When you reference files in your response, use markdown links like [index.ts](vscode-references:///workspace/src/index.ts).',
3557
3381
  name: 'read_file',
3558
3382
  parameters: {
3559
3383
  additionalProperties: false,
@@ -3656,8 +3480,53 @@ const getRenderHtmlTool = () => {
3656
3480
  type: 'function'
3657
3481
  };
3658
3482
  };
3659
- const getBasicChatTools = () => {
3660
- return [getReadFileTool(), getWriteFileTool(), getListFilesTool(), getGetWorkspaceUriTool(), getRenderHtmlTool()];
3483
+ const getAskQuestionTool = () => {
3484
+ return {
3485
+ function: {
3486
+ description: 'Ask the user a multiple-choice question in the chat UI. Use this when you need a user decision before continuing. Provide short answer options.',
3487
+ name: 'ask_question',
3488
+ parameters: {
3489
+ additionalProperties: false,
3490
+ properties: {
3491
+ answers: {
3492
+ description: 'List of answer options shown to the user.',
3493
+ items: {
3494
+ type: 'string'
3495
+ },
3496
+ type: 'array'
3497
+ },
3498
+ question: {
3499
+ description: 'The question text shown to the user.',
3500
+ type: 'string'
3501
+ }
3502
+ },
3503
+ required: ['question', 'answers'],
3504
+ type: 'object'
3505
+ }
3506
+ },
3507
+ type: 'function'
3508
+ };
3509
+ };
3510
+
3511
+ // eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
3512
+ const withQuestionTool = (tools, questionToolEnabled) => {
3513
+ if (!questionToolEnabled) {
3514
+ return tools;
3515
+ }
3516
+ for (const tool of tools) {
3517
+ if (tool.function.name === 'ask_question') {
3518
+ return tools;
3519
+ }
3520
+ }
3521
+ return [...tools, getAskQuestionTool()];
3522
+ };
3523
+ const getBasicChatTools = async (questionToolEnabled = false) => {
3524
+ const fallbackTools = [getReadFileTool(), getWriteFileTool(), getListFilesTool(), getGetWorkspaceUriTool(), getRenderHtmlTool()];
3525
+ try {
3526
+ return withQuestionTool(await getTools(), questionToolEnabled);
3527
+ } catch {
3528
+ return withQuestionTool(fallbackTools, questionToolEnabled);
3529
+ }
3661
3530
  };
3662
3531
 
3663
3532
  const getClientRequestIdHeader = () => {
@@ -4146,6 +4015,8 @@ const getTextContent = content => {
4146
4015
 
4147
4016
  /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
4148
4017
 
4018
+ const errorPrefixRegex = /^Error:\s*/;
4019
+ const notFoundErrorRegex = /not[\s_-]?found|enoent/i;
4149
4020
  const getOpenAiTools = tools => {
4150
4021
  return tools.map(tool => {
4151
4022
  if (!tool || typeof tool !== 'object') {
@@ -4211,7 +4082,7 @@ const getStreamChunkText = content => {
4211
4082
  }).join('');
4212
4083
  };
4213
4084
  const getShortToolErrorMessage = error => {
4214
- const trimmed = error.trim().replace(/^Error:\s*/, '');
4085
+ const trimmed = error.trim().replace(errorPrefixRegex, '');
4215
4086
  const firstLine = trimmed.split('\n')[0];
4216
4087
  if (firstLine.length <= 80) {
4217
4088
  return firstLine;
@@ -4243,7 +4114,7 @@ const getToolCallExecutionStatus = content => {
4243
4114
  const rawStack = Reflect.get(parsed, 'errorStack') ?? Reflect.get(parsed, 'stack');
4244
4115
  const errorStack = typeof rawStack === 'string' && rawStack.trim() ? rawStack : undefined;
4245
4116
  const errorMessage = getShortToolErrorMessage(rawError);
4246
- if (/not[\s_-]?found|enoent/i.test(errorMessage)) {
4117
+ if (notFoundErrorRegex.test(errorMessage)) {
4247
4118
  return {
4248
4119
  ...(errorStack ? {
4249
4120
  errorStack
@@ -4767,9 +4638,10 @@ const getOpenApiAssistantText = async (messages, modelId, openApiApiKey, openApi
4767
4638
  onEventStreamFinished,
4768
4639
  onTextChunk,
4769
4640
  onToolCallsChunk,
4641
+ questionToolEnabled = false,
4770
4642
  stream,
4771
4643
  useChatNetworkWorkerForRequests = false,
4772
- useChatToolWorker = false,
4644
+ useChatToolWorker = true,
4773
4645
  webSearchEnabled = false
4774
4646
  } = options ?? {
4775
4647
  stream: false
@@ -4778,7 +4650,7 @@ const getOpenApiAssistantText = async (messages, modelId, openApiApiKey, openApi
4778
4650
  content: message.text,
4779
4651
  role: message.role
4780
4652
  }));
4781
- const tools = getBasicChatTools();
4653
+ const tools = await getBasicChatTools(questionToolEnabled);
4782
4654
  const maxToolIterations = 4;
4783
4655
  let previousResponseId;
4784
4656
  for (let i = 0; i <= maxToolIterations; i++) {
@@ -5230,13 +5102,15 @@ const getOpenApiModelId = selectedModelId => {
5230
5102
  return selectedModelId;
5231
5103
  };
5232
5104
 
5105
+ const trailingSlashesRegex$2 = /\/+$/;
5233
5106
  const getOpenRouterApiEndpoint = openRouterApiBaseUrl => {
5234
- const trimmedBaseUrl = openRouterApiBaseUrl.replace(/\/+$/, '');
5107
+ const trimmedBaseUrl = openRouterApiBaseUrl.replace(trailingSlashesRegex$2, '');
5235
5108
  return `${trimmedBaseUrl}/chat/completions`;
5236
5109
  };
5237
5110
 
5111
+ const trailingSlashesRegex$1 = /\/+$/;
5238
5112
  const getOpenRouterKeyEndpoint = openRouterApiBaseUrl => {
5239
- const trimmedBaseUrl = openRouterApiBaseUrl.replace(/\/+$/, '');
5113
+ const trimmedBaseUrl = openRouterApiBaseUrl.replace(trailingSlashesRegex$1, '');
5240
5114
  return `${trimmedBaseUrl}/auth/key`;
5241
5115
  };
5242
5116
 
@@ -5356,12 +5230,12 @@ const getOpenRouterLimitInfo = async (openRouterApiKey, openRouterApiBaseUrl, us
5356
5230
  }
5357
5231
  return normalizedLimitInfo;
5358
5232
  };
5359
- const getOpenRouterAssistantText = async (messages, modelId, openRouterApiKey, openRouterApiBaseUrl, assetDir, platform, useChatNetworkWorkerForRequests = false, useChatToolWorker = false) => {
5233
+ const getOpenRouterAssistantText = async (messages, modelId, openRouterApiKey, openRouterApiBaseUrl, assetDir, platform, useChatNetworkWorkerForRequests = false, useChatToolWorker = true, questionToolEnabled = false) => {
5360
5234
  const completionMessages = messages.map(message => ({
5361
5235
  content: message.text,
5362
5236
  role: message.role
5363
5237
  }));
5364
- const tools = getBasicChatTools();
5238
+ const tools = await getBasicChatTools(questionToolEnabled);
5365
5239
  const maxToolIterations = 4;
5366
5240
  for (let i = 0; i <= maxToolIterations; i++) {
5367
5241
  let parsed;
@@ -5622,8 +5496,9 @@ const getAll = () => {
5622
5496
 
5623
5497
  /* eslint-disable prefer-destructuring */
5624
5498
 
5499
+ const trailingSlashesRegex = /\/+$/;
5625
5500
  const getBackendCompletionsEndpoint = backendUrl => {
5626
- const trimmedBackendUrl = backendUrl.replace(/\/+$/, '');
5501
+ const trimmedBackendUrl = backendUrl.replace(trailingSlashesRegex, '');
5627
5502
  return `${trimmedBackendUrl}/v1/chat/completions`;
5628
5503
  };
5629
5504
  const getEffectiveBackendModelId = selectedModelId => {
@@ -5683,11 +5558,12 @@ const getAiResponse = async ({
5683
5558
  openRouterApiKey,
5684
5559
  passIncludeObfuscation = false,
5685
5560
  platform,
5561
+ questionToolEnabled = false,
5686
5562
  selectedModelId,
5687
5563
  streamingEnabled = true,
5688
5564
  useChatCoordinatorWorker = false,
5689
5565
  useChatNetworkWorkerForRequests = false,
5690
- useChatToolWorker = false,
5566
+ useChatToolWorker = true,
5691
5567
  useMockApi,
5692
5568
  userText,
5693
5569
  webSearchEnabled = false
@@ -5710,6 +5586,7 @@ const getAiResponse = async ({
5710
5586
  openRouterApiKey,
5711
5587
  passIncludeObfuscation,
5712
5588
  platform,
5589
+ questionToolEnabled,
5713
5590
  selectedModelId,
5714
5591
  streamingEnabled,
5715
5592
  useChatNetworkWorkerForRequests,
@@ -5761,7 +5638,7 @@ const getAiResponse = async ({
5761
5638
  capture({
5762
5639
  headers,
5763
5640
  method: 'POST',
5764
- payload: getOpenAiParams(openAiInput, modelId, streamingEnabled, passIncludeObfuscation, getBasicChatTools(), webSearchEnabled, previousResponseId),
5641
+ payload: getOpenAiParams(openAiInput, modelId, streamingEnabled, passIncludeObfuscation, await getBasicChatTools(questionToolEnabled), webSearchEnabled, previousResponseId),
5765
5642
  url: getOpenApiApiEndpoint(openApiApiBaseUrl)
5766
5643
  });
5767
5644
  const result = await getMockOpenApiAssistantText(streamingEnabled, onTextChunk, onToolCallsChunk, onDataEvent, onEventStreamFinished);
@@ -5805,6 +5682,7 @@ const getAiResponse = async ({
5805
5682
  ...(onToolCallsChunk ? {
5806
5683
  onToolCallsChunk
5807
5684
  } : {}),
5685
+ questionToolEnabled,
5808
5686
  stream: streamingEnabled,
5809
5687
  useChatNetworkWorkerForRequests,
5810
5688
  useChatToolWorker,
@@ -5834,7 +5712,7 @@ const getAiResponse = async ({
5834
5712
  text = getOpenRouterErrorMessage(result);
5835
5713
  }
5836
5714
  } else if (openRouterApiKey) {
5837
- const result = await getOpenRouterAssistantText(messages, modelId, openRouterApiKey, openRouterApiBaseUrl, assetDir, platform, useChatNetworkWorkerForRequests, useChatToolWorker);
5715
+ const result = await getOpenRouterAssistantText(messages, modelId, openRouterApiKey, openRouterApiBaseUrl, assetDir, platform, useChatNetworkWorkerForRequests, useChatToolWorker, questionToolEnabled);
5838
5716
  if (result.type === 'success') {
5839
5717
  const {
5840
5718
  text: assistantText
@@ -6051,7 +5929,7 @@ const isAlphaNumeric = value => {
6051
5929
  };
6052
5930
  const sanitizeLinkUrl = url => {
6053
5931
  const normalized = url.trim().toLowerCase();
6054
- if (normalized.startsWith('http://') || normalized.startsWith('https://') || normalized.startsWith('file://')) {
5932
+ if (normalized.startsWith('http://') || normalized.startsWith('https://') || normalized.startsWith('file://') || normalized.startsWith('vscode-references://')) {
6055
5933
  return url;
6056
5934
  }
6057
5935
  return '#';
@@ -6063,6 +5941,73 @@ const sanitizeImageUrl = url => {
6063
5941
  }
6064
5942
  return '#';
6065
5943
  };
5944
+ const isOpenBracket = value => {
5945
+ return value === '(' || value === '[' || value === '{';
5946
+ };
5947
+ const isCloseBracket = value => {
5948
+ return value === ')' || value === ']' || value === '}';
5949
+ };
5950
+ const findRawUrlEnd = (value, start) => {
5951
+ let index = start;
5952
+ while (index < value.length) {
5953
+ const current = value[index];
5954
+ if (current === ' ' || current === '\n' || current === '\r' || current === '\t' || current === '"' || current === "'" || current === '`' || current === '<' || current === '>') {
5955
+ break;
5956
+ }
5957
+ index++;
5958
+ }
5959
+ return index;
5960
+ };
5961
+ const trimRawUrlEnd = url => {
5962
+ let end = url.length;
5963
+ while (end > 0) {
5964
+ const current = url[end - 1];
5965
+ if (current === '.' || current === ',' || current === ':' || current === ';' || current === '!' || current === '?') {
5966
+ end--;
5967
+ continue;
5968
+ }
5969
+ if (isCloseBracket(current)) {
5970
+ const inner = url.slice(0, end - 1);
5971
+ let openCount = 0;
5972
+ let closeCount = 0;
5973
+ for (let i = 0; i < inner.length; i++) {
5974
+ if (isOpenBracket(inner[i])) {
5975
+ openCount++;
5976
+ } else if (isCloseBracket(inner[i])) {
5977
+ closeCount++;
5978
+ }
5979
+ }
5980
+ if (closeCount >= openCount) {
5981
+ end--;
5982
+ continue;
5983
+ }
5984
+ }
5985
+ break;
5986
+ }
5987
+ return url.slice(0, end);
5988
+ };
5989
+ const parseRawLinkToken = (value, start) => {
5990
+ if (!value.startsWith('https://', start) && !value.startsWith('http://', start)) {
5991
+ return undefined;
5992
+ }
5993
+ if (start >= 2 && value[start - 1] === '(' && value[start - 2] === ']') {
5994
+ return undefined;
5995
+ }
5996
+ const end = findRawUrlEnd(value, start);
5997
+ const rawUrl = value.slice(start, end);
5998
+ const href = trimRawUrlEnd(rawUrl);
5999
+ if (!href) {
6000
+ return undefined;
6001
+ }
6002
+ return {
6003
+ length: href.length,
6004
+ node: {
6005
+ href: sanitizeLinkUrl(href),
6006
+ text: href,
6007
+ type: 'link'
6008
+ }
6009
+ };
6010
+ };
6066
6011
  const parseLinkToken = (value, start) => {
6067
6012
  if (value[start] !== '[') {
6068
6013
  return undefined;
@@ -6291,7 +6236,7 @@ const parseMathToken = (value, start) => {
6291
6236
  return undefined;
6292
6237
  };
6293
6238
  const parseInlineToken = (value, start) => {
6294
- return parseImageToken(value, start) || parseLinkToken(value, start) || parseBoldToken(value, start) || parseItalicToken(value, start) || parseLinkToken(value, start) || parseBoldToken(value, start) || parseItalicToken(value, start) || parseStrikethroughToken(value, start) || parseInlineCodeToken(value, start) || parseMathToken(value, start);
6239
+ return parseImageToken(value, start) || parseLinkToken(value, start) || parseRawLinkToken(value, start) || parseBoldToken(value, start) || parseItalicToken(value, start) || parseLinkToken(value, start) || parseBoldToken(value, start) || parseItalicToken(value, start) || parseStrikethroughToken(value, start) || parseInlineCodeToken(value, start) || parseMathToken(value, start);
6295
6240
  };
6296
6241
  const parseInlineNodes = value => {
6297
6242
  const nodes = [];
@@ -6328,21 +6273,25 @@ const parseInlineNodes = value => {
6328
6273
  };
6329
6274
 
6330
6275
  const markdownMathBlockDelimiter = '$$';
6276
+ const escapedNewlineRegex = /\\r\\n|\\n/g;
6277
+ const lineBreakRegex = /\r?\n/;
6278
+ const tableDelimiterRegex = /\|\s*[-:]{3,}/;
6279
+ const inlineTableCellRegex = /\|\s+\|/g;
6331
6280
  const normalizeEscapedNewlines = value => {
6332
6281
  if (value.includes('\\n')) {
6333
- return value.replaceAll(/\\r\\n|\\n/g, '\n');
6282
+ return value.replaceAll(escapedNewlineRegex, '\n');
6334
6283
  }
6335
6284
  return value;
6336
6285
  };
6337
6286
  const normalizeInlineTables = value => {
6338
- return value.split(/\r?\n/).map(line => {
6287
+ return value.split(lineBreakRegex).map(line => {
6339
6288
  if (!line.includes('|')) {
6340
6289
  return line;
6341
6290
  }
6342
- if (!/\|\s*[-:]{3,}/.test(line)) {
6291
+ if (!tableDelimiterRegex.test(line)) {
6343
6292
  return line;
6344
6293
  }
6345
- return line.replaceAll(/\|\s+\|/g, '|\n|');
6294
+ return line.replaceAll(inlineTableCellRegex, '|\n|');
6346
6295
  }).join('\n');
6347
6296
  };
6348
6297
  const parseHeadingLine = line => {
@@ -6421,6 +6370,33 @@ const parseBlockQuoteLine = line => {
6421
6370
  }
6422
6371
  return content;
6423
6372
  };
6373
+ const isThematicBreakLine = line => {
6374
+ const trimmedStart = line.trimStart();
6375
+ const leadingSpaces = line.length - trimmedStart.length;
6376
+ if (leadingSpaces > 3) {
6377
+ return false;
6378
+ }
6379
+ const trimmed = trimmedStart.trimEnd();
6380
+ if (!trimmed) {
6381
+ return false;
6382
+ }
6383
+ const marker = trimmed[0];
6384
+ if (marker !== '-' && marker !== '_' && marker !== '*') {
6385
+ return false;
6386
+ }
6387
+ let markerCount = 0;
6388
+ for (let i = 0; i < trimmed.length; i++) {
6389
+ const char = trimmed[i];
6390
+ if (char === marker) {
6391
+ markerCount++;
6392
+ continue;
6393
+ }
6394
+ if (char !== ' ') {
6395
+ return false;
6396
+ }
6397
+ }
6398
+ return markerCount >= 3;
6399
+ };
6424
6400
  const isTableRow = line => {
6425
6401
  const trimmed = line.trim();
6426
6402
  if (!trimmed.startsWith('|') || !trimmed.endsWith('|')) {
@@ -6434,7 +6410,7 @@ const getTableCells = line => {
6434
6410
  };
6435
6411
  const scanBlockTokens = rawMessage => {
6436
6412
  const normalizedMessage = normalizeInlineTables(normalizeEscapedNewlines(rawMessage));
6437
- const lines = normalizedMessage.split(/\r?\n/);
6413
+ const lines = normalizedMessage.split(lineBreakRegex);
6438
6414
  const tokens = [];
6439
6415
  for (let i = 0; i < lines.length; i++) {
6440
6416
  const line = lines[i];
@@ -6500,6 +6476,12 @@ const scanBlockTokens = rawMessage => {
6500
6476
  });
6501
6477
  continue;
6502
6478
  }
6479
+ if (isThematicBreakLine(line)) {
6480
+ tokens.push({
6481
+ type: 'thematic-break'
6482
+ });
6483
+ continue;
6484
+ }
6503
6485
  const ordered = parseOrderedListItemLine(line);
6504
6486
  if (ordered) {
6505
6487
  tokens.push({
@@ -6645,6 +6627,14 @@ const parseBlockTokens = tokens => {
6645
6627
  });
6646
6628
  continue;
6647
6629
  }
6630
+ if (token.type === 'thematic-break') {
6631
+ flushList();
6632
+ flushParagraph();
6633
+ nodes.push({
6634
+ type: 'thematic-break'
6635
+ });
6636
+ continue;
6637
+ }
6648
6638
  if (token.type === 'blockquote-line') {
6649
6639
  flushList();
6650
6640
  flushParagraph();
@@ -7018,12 +7008,16 @@ const executeSlashCommand = async (state, command) => {
7018
7008
  });
7019
7009
  };
7020
7010
 
7011
+ const defaultSessionTitleRegex = /^Chat \d+$/;
7021
7012
  const isDefaultSessionTitle = title => {
7022
- return /^Chat \d+$/.test(title);
7013
+ return defaultSessionTitleRegex.test(title);
7023
7014
  };
7024
7015
 
7016
+ const titlePrefixRegex = /^title:\s*/i;
7017
+ const wrappedQuotesAndWhitespaceRegex = /^['"`\s]+|['"`\s]+$/g;
7018
+ const consecutiveWhitespaceRegex = /\s+/g;
7025
7019
  const sanitizeGeneratedTitle = value => {
7026
- return value.replace(/^title:\s*/i, '').replaceAll(/^['"`\s]+|['"`\s]+$/g, '').replaceAll(/\s+/g, ' ').trim().slice(0, 80);
7020
+ return value.replace(titlePrefixRegex, '').replaceAll(wrappedQuotesAndWhitespaceRegex, '').replaceAll(consecutiveWhitespaceRegex, ' ').trim().slice(0, 80);
7027
7021
  };
7028
7022
 
7029
7023
  const getAiSessionTitle = async (state, userText, assistantText) => {
@@ -7094,14 +7088,43 @@ Assistant: ${assistantText}`;
7094
7088
  return title && !isDefaultSessionTitle(title) ? title : '';
7095
7089
  };
7096
7090
 
7091
+ const windowsAbsolutePathRegex = /^[a-zA-Z]:[\\/]/;
7092
+ const pathSeparatorRegex$1 = /[\\/]/;
7093
+ const isPathTraversalAttempt = path => {
7094
+ if (!path) {
7095
+ return false;
7096
+ }
7097
+ if (path.startsWith('/') || path.startsWith('\\')) {
7098
+ return true;
7099
+ }
7100
+ if (path.startsWith('file://')) {
7101
+ return true;
7102
+ }
7103
+ if (windowsAbsolutePathRegex.test(path)) {
7104
+ return true;
7105
+ }
7106
+ const segments = path.split(pathSeparatorRegex$1);
7107
+ return segments.includes('..');
7108
+ };
7109
+
7110
+ const pathSeparatorRegex = /[\\/]/;
7111
+ const normalizeRelativePath = path => {
7112
+ const segments = path.split(pathSeparatorRegex).filter(segment => segment && segment !== '.');
7113
+ if (segments.length === 0) {
7114
+ return '.';
7115
+ }
7116
+ return segments.join('/');
7117
+ };
7118
+
7097
7119
  const mentionRegex = /(^|\s)@([^\s]+)/g;
7120
+ const trailingPunctuationRegex = /[),.;:!?]+$/g;
7098
7121
  const maxMentionCount = 5;
7099
7122
  const parseMentionedPaths = value => {
7100
7123
  const matches = value.matchAll(mentionRegex);
7101
7124
  const paths = [];
7102
7125
  for (const match of matches) {
7103
7126
  const rawPath = match[2] || '';
7104
- const cleanedPath = rawPath.replaceAll(/[),.;:!?]+$/g, '');
7127
+ const cleanedPath = rawPath.replaceAll(trailingPunctuationRegex, '');
7105
7128
  if (!cleanedPath || isPathTraversalAttempt(cleanedPath)) {
7106
7129
  continue;
7107
7130
  }
@@ -7164,12 +7187,38 @@ const getSseEventType = value => {
7164
7187
  return value && typeof value === 'object' && Reflect.get(value, 'type') === 'response.completed' ? 'sse-response-completed' : 'sse-response-part';
7165
7188
  };
7166
7189
 
7190
+ const getMessageById = (messages, messageId) => {
7191
+ return messages.find(message => message.id === messageId);
7192
+ };
7193
+
7194
+ const getNextHandleTextChunkState = (latestState, parsedMessages, sessions) => {
7195
+ return {
7196
+ ...latestState,
7197
+ ...(latestState.messagesAutoScrollEnabled ? {
7198
+ messagesScrollTop: getNextAutoScrollTop(latestState.messagesScrollTop)
7199
+ } : {}),
7200
+ parsedMessages,
7201
+ sessions
7202
+ };
7203
+ };
7204
+
7205
+ const getSelectedSession = (sessions, selectedSessionId) => {
7206
+ return sessions.find(session => session.id === selectedSessionId);
7207
+ };
7208
+
7209
+ const setAndRerenderHandleTextChunkState = async (uid, previousState, nextState) => {
7210
+ set$1(uid, previousState, nextState);
7211
+ // @ts-ignore
7212
+ await invoke$1('Chat.rerender');
7213
+ };
7214
+
7167
7215
  const getToolCallMergeKey = toolCall => {
7168
7216
  if (toolCall.id) {
7169
7217
  return `id:${toolCall.id}`;
7170
7218
  }
7171
7219
  return `value:${toolCall.name}:${toolCall.arguments}`;
7172
7220
  };
7221
+
7173
7222
  const mergeToolCalls = (existing = [], incoming) => {
7174
7223
  if (incoming.length === 0) {
7175
7224
  return existing;
@@ -7191,36 +7240,7 @@ const mergeToolCalls = (existing = [], incoming) => {
7191
7240
  }
7192
7241
  return merged;
7193
7242
  };
7194
- const updateMessageTextInSelectedSession = async (sessions, parsedMessages, selectedSessionId, messageId, text, inProgress) => {
7195
- let updatedMessage;
7196
- const updatedSessions = sessions.map(session => {
7197
- if (session.id !== selectedSessionId) {
7198
- return session;
7199
- }
7200
- return {
7201
- ...session,
7202
- messages: session.messages.map(message => {
7203
- if (message.id !== messageId) {
7204
- return message;
7205
- }
7206
- updatedMessage = {
7207
- ...message,
7208
- inProgress,
7209
- text
7210
- };
7211
- return updatedMessage;
7212
- })
7213
- };
7214
- });
7215
- let nextParsedMessages = parsedMessages;
7216
- if (updatedMessage) {
7217
- nextParsedMessages = await parseAndStoreMessageContent(parsedMessages, updatedMessage);
7218
- }
7219
- return {
7220
- parsedMessages: nextParsedMessages,
7221
- sessions: updatedSessions
7222
- };
7223
- };
7243
+
7224
7244
  const updateMessageToolCallsInSelectedSession = (sessions, parsedMessages, selectedSessionId, messageId, toolCalls) => {
7225
7245
  let nextParsedMessages = parsedMessages;
7226
7246
  const updatedSessions = sessions.map(session => {
@@ -7247,40 +7267,62 @@ const updateMessageToolCallsInSelectedSession = (sessions, parsedMessages, selec
7247
7267
  sessions: updatedSessions
7248
7268
  };
7249
7269
  };
7250
- const handleTextChunkFunction = async (uid, assistantMessageId, chunk, handleTextChunkState) => {
7251
- const selectedSession = handleTextChunkState.latestState.sessions.find(session => session.id === handleTextChunkState.latestState.selectedSessionId);
7270
+
7271
+ const handleToolCallsChunkFunction = async (uid, assistantMessageId, toolCalls, handleTextChunkState) => {
7272
+ const selectedSession = getSelectedSession(handleTextChunkState.latestState.sessions, handleTextChunkState.latestState.selectedSessionId);
7252
7273
  if (!selectedSession) {
7253
7274
  return {
7254
7275
  latestState: handleTextChunkState.latestState,
7255
7276
  previousState: handleTextChunkState.previousState
7256
7277
  };
7257
7278
  }
7258
- const assistantMessage = selectedSession.messages.find(message => message.id === assistantMessageId);
7279
+ const assistantMessage = getMessageById(selectedSession.messages, assistantMessageId);
7259
7280
  if (!assistantMessage) {
7260
7281
  return {
7261
7282
  latestState: handleTextChunkState.latestState,
7262
7283
  previousState: handleTextChunkState.previousState
7263
7284
  };
7264
7285
  }
7265
- const updatedText = assistantMessage.text + chunk;
7266
- const updated = await updateMessageTextInSelectedSession(handleTextChunkState.latestState.sessions, handleTextChunkState.latestState.parsedMessages, handleTextChunkState.latestState.selectedSessionId, assistantMessageId, updatedText, true);
7267
- const nextState = {
7268
- ...handleTextChunkState.latestState,
7269
- ...(handleTextChunkState.latestState.messagesAutoScrollEnabled ? {
7270
- messagesScrollTop: getNextAutoScrollTop(handleTextChunkState.latestState.messagesScrollTop)
7271
- } : {}),
7272
- parsedMessages: updated.parsedMessages,
7273
- sessions: updated.sessions
7274
- };
7275
- set$1(uid, handleTextChunkState.previousState, nextState);
7276
- // @ts-ignore
7277
- await invoke$1('Chat.rerender');
7286
+ const updated = updateMessageToolCallsInSelectedSession(handleTextChunkState.latestState.sessions, handleTextChunkState.latestState.parsedMessages, handleTextChunkState.latestState.selectedSessionId, assistantMessageId, toolCalls);
7287
+ const nextState = getNextHandleTextChunkState(handleTextChunkState.latestState, updated.parsedMessages, updated.sessions);
7288
+ await setAndRerenderHandleTextChunkState(uid, handleTextChunkState.previousState, nextState);
7278
7289
  return {
7279
7290
  latestState: nextState,
7280
7291
  previousState: nextState
7281
7292
  };
7282
7293
  };
7283
- const handleToolCallsChunkFunction = async (uid, assistantMessageId, toolCalls, handleTextChunkState) => {
7294
+
7295
+ const updateMessageTextInSelectedSession = async (sessions, parsedMessages, selectedSessionId, messageId, text, inProgress) => {
7296
+ let updatedMessage;
7297
+ const updatedSessions = sessions.map(session => {
7298
+ if (session.id !== selectedSessionId) {
7299
+ return session;
7300
+ }
7301
+ return {
7302
+ ...session,
7303
+ messages: session.messages.map(message => {
7304
+ if (message.id !== messageId) {
7305
+ return message;
7306
+ }
7307
+ updatedMessage = {
7308
+ ...message,
7309
+ inProgress,
7310
+ text
7311
+ };
7312
+ return updatedMessage;
7313
+ })
7314
+ };
7315
+ });
7316
+ let nextParsedMessages = parsedMessages;
7317
+ if (updatedMessage) {
7318
+ nextParsedMessages = await parseAndStoreMessageContent(parsedMessages, updatedMessage);
7319
+ }
7320
+ return {
7321
+ parsedMessages: nextParsedMessages,
7322
+ sessions: updatedSessions
7323
+ };
7324
+ };
7325
+ const handleTextChunkFunction = async (uid, assistantMessageId, chunk, handleTextChunkState) => {
7284
7326
  const selectedSession = handleTextChunkState.latestState.sessions.find(session => session.id === handleTextChunkState.latestState.selectedSessionId);
7285
7327
  if (!selectedSession) {
7286
7328
  return {
@@ -7295,7 +7337,8 @@ const handleToolCallsChunkFunction = async (uid, assistantMessageId, toolCalls,
7295
7337
  previousState: handleTextChunkState.previousState
7296
7338
  };
7297
7339
  }
7298
- const updated = updateMessageToolCallsInSelectedSession(handleTextChunkState.latestState.sessions, handleTextChunkState.latestState.parsedMessages, handleTextChunkState.latestState.selectedSessionId, assistantMessageId, toolCalls);
7340
+ const updatedText = assistantMessage.text + chunk;
7341
+ const updated = await updateMessageTextInSelectedSession(handleTextChunkState.latestState.sessions, handleTextChunkState.latestState.parsedMessages, handleTextChunkState.latestState.selectedSessionId, assistantMessageId, updatedText, true);
7299
7342
  const nextState = {
7300
7343
  ...handleTextChunkState.latestState,
7301
7344
  ...(handleTextChunkState.latestState.messagesAutoScrollEnabled ? {
@@ -7394,6 +7437,7 @@ const handleSubmit = async state => {
7394
7437
  openRouterApiKey,
7395
7438
  passIncludeObfuscation,
7396
7439
  platform,
7440
+ questionToolEnabled,
7397
7441
  selectedModelId,
7398
7442
  selectedSessionId,
7399
7443
  sessions,
@@ -7562,6 +7606,9 @@ const handleSubmit = async state => {
7562
7606
  openRouterApiKey,
7563
7607
  passIncludeObfuscation,
7564
7608
  platform,
7609
+ ...(typeof questionToolEnabled === 'boolean' ? {
7610
+ questionToolEnabled
7611
+ } : {}),
7565
7612
  selectedModelId,
7566
7613
  streamingEnabled,
7567
7614
  useChatCoordinatorWorker,
@@ -7625,6 +7672,7 @@ const Dictate = 'dictate';
7625
7672
  const Send = 'send';
7626
7673
  const Back = 'back';
7627
7674
  const Model = 'model';
7675
+ const RunMode = 'runMode';
7628
7676
  const ToggleChatFocus = 'toggle-chat-focus';
7629
7677
  const CreateProject = 'create-project';
7630
7678
  const CreateSession = 'create-session';
@@ -7875,11 +7923,18 @@ const handleClickNew = async state => {
7875
7923
  return focusInput(clearedState);
7876
7924
  };
7877
7925
 
7926
+ const normalizeFileReferenceUri = uri => {
7927
+ if (uri.startsWith('vscode-references://')) {
7928
+ return `file://${uri.slice('vscode-references://'.length)}`;
7929
+ }
7930
+ return uri;
7931
+ };
7878
7932
  const handleClickReadFile = async uri => {
7879
7933
  if (!uri) {
7880
7934
  return;
7881
7935
  }
7882
- await invoke$1('Main.openUri', uri);
7936
+ const normalizedUri = normalizeFileReferenceUri(uri);
7937
+ await invoke$1('Main.openUri', normalizedUri);
7883
7938
  };
7884
7939
 
7885
7940
  const handleClickSessionDebug = async state => {
@@ -8135,6 +8190,19 @@ const handleProjectListContextMenu = async state => {
8135
8190
  return state;
8136
8191
  };
8137
8192
 
8193
+ const isRunMode = value => {
8194
+ return value === 'local' || value === 'background' || value === 'cloud';
8195
+ };
8196
+ const handleRunModeChange = async (state, value) => {
8197
+ if (!isRunMode(value)) {
8198
+ return state;
8199
+ }
8200
+ return {
8201
+ ...state,
8202
+ runMode: value
8203
+ };
8204
+ };
8205
+
8138
8206
  const handleChatListScroll = async (state, chatListScrollTop) => {
8139
8207
  if (state.chatListScrollTop === chatListScrollTop) {
8140
8208
  return state;
@@ -8376,6 +8444,15 @@ const loadStreamingEnabled = async () => {
8376
8444
  }
8377
8445
  };
8378
8446
 
8447
+ const loadTodoListToolEnabled = async () => {
8448
+ try {
8449
+ const savedTodoListToolEnabled = await get('chatView.todoListToolEnabled');
8450
+ return typeof savedTodoListToolEnabled === 'boolean' ? savedTodoListToolEnabled : false;
8451
+ } catch {
8452
+ return false;
8453
+ }
8454
+ };
8455
+
8379
8456
  const loadUseChatCoordinatorWorker = async () => {
8380
8457
  try {
8381
8458
  const savedUseChatCoordinatorWorker = await get('chatView.useChatCoordinatorWorker');
@@ -8406,9 +8483,9 @@ const loadUseChatNetworkWorkerForRequests = async () => {
8406
8483
  const loadUseChatToolWorker = async () => {
8407
8484
  try {
8408
8485
  const savedUseChatToolWorker = await get('chatView.useChatToolWorker');
8409
- return typeof savedUseChatToolWorker === 'boolean' ? savedUseChatToolWorker : false;
8486
+ return typeof savedUseChatToolWorker === 'boolean' ? savedUseChatToolWorker : true;
8410
8487
  } catch {
8411
- return false;
8488
+ return true;
8412
8489
  }
8413
8490
  };
8414
8491
 
@@ -8422,7 +8499,7 @@ const loadVoiceDictationEnabled = async () => {
8422
8499
  };
8423
8500
 
8424
8501
  const loadPreferences = async () => {
8425
- const [aiSessionTitleGenerationEnabled, authAccessToken, authEnabled, authRefreshToken, backendUrl, composerDropEnabled, openApiApiKey, openRouterApiKey, emitStreamingFunctionCallEvents, streamingEnabled, passIncludeObfuscation, useChatCoordinatorWorker, useChatMathWorker, useChatNetworkWorkerForRequests, useChatToolWorker, voiceDictationEnabled] = await Promise.all([loadAiSessionTitleGenerationEnabled(), loadBackendAccessToken(), loadAuthEnabled(), loadBackendRefreshToken(), loadBackendUrl(), loadComposerDropEnabled(), loadOpenApiApiKey(), loadOpenRouterApiKey(), loadEmitStreamingFunctionCallEvents(), loadStreamingEnabled(), loadPassIncludeObfuscation(), loadUseChatCoordinatorWorker(), loadUseChatMathWorker(), loadUseChatNetworkWorkerForRequests(), loadUseChatToolWorker(), loadVoiceDictationEnabled()]);
8502
+ const [aiSessionTitleGenerationEnabled, authAccessToken, authEnabled, authRefreshToken, backendUrl, composerDropEnabled, openApiApiKey, openRouterApiKey, emitStreamingFunctionCallEvents, streamingEnabled, todoListToolEnabled, passIncludeObfuscation, useChatCoordinatorWorker, useChatMathWorker, useChatNetworkWorkerForRequests, useChatToolWorker, voiceDictationEnabled] = await Promise.all([loadAiSessionTitleGenerationEnabled(), loadBackendAccessToken(), loadAuthEnabled(), loadBackendRefreshToken(), loadBackendUrl(), loadComposerDropEnabled(), loadOpenApiApiKey(), loadOpenRouterApiKey(), loadEmitStreamingFunctionCallEvents(), loadStreamingEnabled(), loadTodoListToolEnabled(), loadPassIncludeObfuscation(), loadUseChatCoordinatorWorker(), loadUseChatMathWorker(), loadUseChatNetworkWorkerForRequests(), loadUseChatToolWorker(), loadVoiceDictationEnabled()]);
8426
8503
  return {
8427
8504
  aiSessionTitleGenerationEnabled,
8428
8505
  authAccessToken,
@@ -8435,6 +8512,7 @@ const loadPreferences = async () => {
8435
8512
  openRouterApiKey,
8436
8513
  passIncludeObfuscation,
8437
8514
  streamingEnabled,
8515
+ todoListToolEnabled,
8438
8516
  useChatCoordinatorWorker,
8439
8517
  useChatMathWorker,
8440
8518
  useChatNetworkWorkerForRequests,
@@ -8580,6 +8658,7 @@ const loadContent = async (state, savedState) => {
8580
8658
  openRouterApiKey,
8581
8659
  passIncludeObfuscation,
8582
8660
  streamingEnabled,
8661
+ todoListToolEnabled,
8583
8662
  useChatCoordinatorWorker,
8584
8663
  useChatMathWorker,
8585
8664
  useChatNetworkWorkerForRequests,
@@ -8662,6 +8741,7 @@ const loadContent = async (state, savedState) => {
8662
8741
  selectedSessionId,
8663
8742
  sessions,
8664
8743
  streamingEnabled,
8744
+ todoListToolEnabled,
8665
8745
  useChatCoordinatorWorker,
8666
8746
  useChatMathWorker,
8667
8747
  useChatNetworkWorkerForRequests,
@@ -8778,278 +8858,184 @@ const registerMockResponse = (state, mockResponse) => {
8778
8858
  return state;
8779
8859
  };
8780
8860
 
8781
- const getCss = (composerHeight, listItemHeight, chatMessageFontSize, chatMessageLineHeight, chatMessageFontFamily, renderHtmlCss) => {
8861
+ const getCss = (composerHeight, listItemHeight, chatMessageFontSize, chatMessageLineHeight, chatMessageFontFamily, textAreaPaddingTop, textAreaPaddingLeft, textAreaPaddingRight, textAreaPaddingBottom, chatSendAreaPaddingTop, chatSendAreaPaddingLeft, chatSendAreaPaddingRight, chatSendAreaPaddingBottom, renderHtmlCss) => {
8782
8862
  const baseCss = `:root {
8783
8863
  --ChatInputBoxHeight: ${composerHeight}px;
8864
+ --ChatTextAreaHeight: ${composerHeight}px;
8865
+ --ChatSendAreaHeight: ${composerHeight + 62}px;
8866
+ --ChatTextAreaPaddingTop: ${textAreaPaddingTop}px;
8867
+ --ChatTextAreaPaddingLeft: ${textAreaPaddingLeft}px;
8868
+ --ChatTextAreaPaddingRight: ${textAreaPaddingRight}px;
8869
+ --ChatTextAreaPaddingBottom: ${textAreaPaddingBottom}px;
8870
+ --ChatSendAreaPaddingTop: ${chatSendAreaPaddingTop}px;
8871
+ --ChatSendAreaPaddingLeft: ${chatSendAreaPaddingLeft}px;
8872
+ --ChatSendAreaPaddingRight: ${chatSendAreaPaddingRight}px;
8873
+ --ChatSendAreaPaddingBottom: ${chatSendAreaPaddingBottom}px;
8784
8874
  --ChatListItemHeight: ${listItemHeight}px;
8785
8875
  --ChatMessageFontSize: ${chatMessageFontSize}px;
8786
8876
  --ChatMessageLineHeight: ${chatMessageLineHeight}px;
8787
8877
  --ChatMessageFontFamily: ${chatMessageFontFamily};
8788
- }
8789
-
8790
- .Viewlet.Chat.ChatFocus {
8791
- background: linear-gradient(180deg, var(--ColorViewBackground, #1d2229) 0%, #1f252d 100%);
8792
- display: grid;
8793
- grid-template-columns: 320px 1fr;
8794
- grid-template-rows: auto 1fr auto;
8795
- }
8878
+ }`;
8879
+ if (!renderHtmlCss.trim()) {
8880
+ return `${baseCss}
8796
8881
 
8797
- .Chat.ChatFocus .ChatHeader {
8798
- grid-column: 1 / 3;
8882
+ .ChatTodoList {
8883
+ background: var(--vscode-editorWidget-background);
8884
+ border: 1px solid var(--vscode-editorWidget-border);
8885
+ border-radius: 6px;
8886
+ margin-bottom: 8px;
8887
+ overflow: hidden;
8799
8888
  }
8800
8889
 
8801
- .Chat.ChatFocus .ProjectSidebar {
8802
- background: color-mix(in srgb, var(--ColorSideBarBackground, #232b35) 88%, #1f2b38 12%);
8803
- border-right: 1px solid var(--ColorBorder, #3a3d41);
8804
- box-shadow: inset -1px 0 0 rgba(0, 0, 0, 0.2);
8805
- display: flex;
8806
- flex-direction: column;
8807
- grid-column: 1;
8808
- grid-row: 2 / 4;
8809
- min-height: 0;
8890
+ .ChatTodoListHeader {
8891
+ border-bottom: 1px solid var(--vscode-editorWidget-border);
8892
+ color: var(--vscode-descriptionForeground);
8893
+ font-size: 12px;
8894
+ line-height: 18px;
8895
+ padding: 6px 10px;
8810
8896
  }
8811
8897
 
8812
- .Chat.ChatFocus .ProjectList {
8813
- min-height: 0;
8898
+ .ChatTodoListItems {
8899
+ list-style: none;
8900
+ margin: 0;
8901
+ max-height: 180px;
8814
8902
  overflow: auto;
8815
- padding: 10px 8px 12px;
8816
- scrollbar-color: color-mix(in srgb, var(--ColorScrollBarSliderBackground, #4b5563) 78%, transparent)
8817
- color-mix(in srgb, var(--ColorSideBarBackground, #232b35) 92%, transparent);
8818
- scrollbar-width: thin;
8819
- }
8820
-
8821
- .Chat.ChatFocus .ProjectList::-webkit-scrollbar {
8822
- height: 10px;
8823
- width: 10px;
8824
- }
8825
-
8826
- .Chat.ChatFocus .ProjectList::-webkit-scrollbar-track {
8827
- background: color-mix(in srgb, var(--ColorSideBarBackground, #232b35) 94%, transparent);
8828
- border-radius: 999px;
8903
+ padding: 4px 0;
8829
8904
  }
8830
8905
 
8831
- .Chat.ChatFocus .ProjectList::-webkit-scrollbar-thumb {
8832
- background: color-mix(in srgb, var(--ColorScrollBarSliderBackground, #4b5563) 70%, transparent);
8833
- border: 2px solid color-mix(in srgb, var(--ColorSideBarBackground, #232b35) 94%, transparent);
8834
- border-radius: 999px;
8835
- }
8836
-
8837
- .Chat.ChatFocus .ProjectList::-webkit-scrollbar-thumb:hover {
8838
- background: color-mix(in srgb, var(--ColorScrollBarSliderHoverBackground, #667284) 80%, transparent);
8839
- }
8840
-
8841
- .ProjectListGroup {
8842
- border: 1px solid transparent;
8843
- border-radius: 8px;
8844
- margin-bottom: 6px;
8845
- overflow: hidden;
8846
- }
8847
-
8848
- .ProjectListItem {
8906
+ .ChatTodoListItem {
8849
8907
  align-items: center;
8908
+ color: var(--vscode-foreground);
8850
8909
  display: flex;
8851
- gap: 6px;
8852
- min-height: calc(var(--ChatListItemHeight) - 2px);
8853
- }
8854
-
8855
- .ProjectListItemLabel {
8856
- align-items: center;
8857
- border-radius: 6px;
8858
- color: var(--ColorForeground, #d5dbe3);
8859
- cursor: pointer;
8860
- display: flex;
8861
- flex: 1;
8862
- font-weight: 500;
8863
- gap: 2px;
8864
- overflow: hidden;
8910
+ font-size: 12px;
8911
+ line-height: 18px;
8912
+ min-height: 24px;
8865
8913
  padding: 0 10px;
8866
- text-overflow: ellipsis;
8867
- transition: background-color 80ms ease, color 80ms ease;
8868
- white-space: nowrap;
8869
8914
  }
8870
8915
 
8871
- .ProjectListChevron {
8872
- color: color-mix(in srgb, var(--ColorForeground, #c8d0da) 70%, transparent);
8916
+ .ChatTodoListItem::before {
8917
+ color: var(--vscode-descriptionForeground);
8918
+ content: "○";
8873
8919
  display: inline-block;
8874
- flex: 0 0 12px;
8875
- font-size: 11px;
8876
- margin-right: 4px;
8877
- text-align: center;
8878
- width: 12px;
8920
+ margin-right: 8px;
8921
+ width: 1em;
8879
8922
  }
8880
8923
 
8881
- .ProjectListItemSelected {
8882
- background: color-mix(in srgb, var(--ColorListInactiveSelectionBackground, #39424d) 84%, #2f3741 16%);
8924
+ .ChatTodoListItemTodo::before {
8925
+ content: "○";
8883
8926
  }
8884
8927
 
8885
- .ProjectListItem:not(.ProjectListItemSelected):hover,
8886
- .ProjectListItem:not(.ProjectListItemSelected):focus-within {
8887
- background: color-mix(in srgb, var(--ColorListHoverBackground, #38414b) 50%, transparent);
8928
+ .ChatTodoListItem.todo::before {
8929
+ content: "○";
8888
8930
  }
8889
8931
 
8890
- .ProjectListItemSelected .ProjectListItemLabel {
8891
- color: var(--ColorListInactiveSelectionForeground, #e5ebf2);
8932
+ .ChatTodoListItemInProgress::before {
8933
+ color: var(--vscode-textLink-foreground);
8934
+ content: "◐";
8892
8935
  }
8893
8936
 
8894
- .ProjectListItemActions {
8895
- display: flex;
8896
- padding-right: 6px;
8937
+ .ChatTodoListItem.inProgress::before {
8938
+ color: var(--vscode-textLink-foreground);
8939
+ content: "◐";
8897
8940
  }
8898
8941
 
8899
- .ProjectListItemAddChatButton {
8900
- align-items: center;
8901
- background: color-mix(in srgb, var(--ColorButtonSecondaryBackground, #3a434f) 76%, transparent);
8902
- border: 0;
8903
- border-radius: 5px;
8904
- color: var(--ColorForeground, #d0d8e2);
8905
- cursor: pointer;
8906
- display: inline-flex;
8907
- font-size: 13px;
8908
- font-weight: 500;
8909
- height: 18px;
8910
- justify-content: center;
8911
- opacity: 0;
8912
- padding: 0;
8913
- transition: opacity 90ms ease, background-color 90ms ease;
8914
- visibility: hidden;
8915
- width: 18px;
8942
+ .ChatTodoListItemCompleted {
8943
+ color: var(--vscode-disabledForeground);
8916
8944
  }
8917
8945
 
8918
- .ProjectListItem:hover .ProjectListItemAddChatButton,
8919
- .ProjectListItem:focus-within .ProjectListItemAddChatButton {
8920
- opacity: 1;
8921
- visibility: visible;
8946
+ .ChatTodoListItem.completed {
8947
+ color: var(--vscode-disabledForeground);
8922
8948
  }
8923
8949
 
8924
- .ProjectListItemAddChatButton:hover,
8925
- .ProjectListItemAddChatButton:focus-visible {
8926
- background: color-mix(in srgb, var(--ColorButtonSecondaryHoverBackground, #4a5460) 82%, transparent);
8950
+ .ChatTodoListItemCompleted::before {
8951
+ color: var(--vscode-testing-iconPassed);
8952
+ content: "✓";
8927
8953
  }
8928
8954
 
8929
- .ProjectSessionItem {
8930
- align-items: center;
8931
- display: flex;
8932
- min-height: calc(var(--ChatListItemHeight) - 5px);
8933
- }
8955
+ .ChatTodoListItem.completed::before {
8956
+ color: var(--vscode-testing-iconPassed);
8957
+ content: "✓";
8958
+ }`;
8959
+ }
8960
+ return `${baseCss}
8934
8961
 
8935
- .ProjectSessionItemLabel {
8962
+ .ChatTodoList {
8963
+ background: var(--vscode-editorWidget-background);
8964
+ border: 1px solid var(--vscode-editorWidget-border);
8936
8965
  border-radius: 6px;
8937
- color: color-mix(in srgb, var(--ColorForeground, #cfd7df) 92%, transparent);
8938
- cursor: pointer;
8939
- display: block;
8940
- flex: 1;
8941
- font-size: 12.5px;
8966
+ margin-bottom: 8px;
8942
8967
  overflow: hidden;
8943
- padding: 0 10px 0 28px;
8944
- text-overflow: ellipsis;
8945
- transition: background-color 80ms ease, color 80ms ease;
8946
- white-space: nowrap;
8947
- }
8948
-
8949
- .ProjectSessionItemSelected {
8950
- background: color-mix(in srgb, var(--ColorListInactiveSelectionBackground, #353f4a) 86%, #2c3540 14%);
8951
- }
8952
-
8953
- .ProjectSessionItem:not(.ProjectSessionItemSelected):hover,
8954
- .ProjectSessionItem:not(.ProjectSessionItemSelected):focus-within {
8955
- background: color-mix(in srgb, var(--ColorListHoverBackground, #38414c) 46%, transparent);
8956
- }
8957
-
8958
- .ProjectSessionItemSelected .ProjectSessionItemLabel {
8959
- color: var(--ColorListInactiveSelectionForeground, #f2f6fc);
8960
- }
8961
-
8962
- .Chat.ChatFocus .ProjectAddButton {
8963
- background: color-mix(in srgb, var(--ColorButtonSecondaryBackground, #21252c) 72%, transparent);
8964
- border: 0;
8965
- border-top: 1px solid color-mix(in srgb, var(--ColorBorder, #3a3d41) 70%, transparent);
8966
- color: var(--ColorForeground, #d2d9e2);
8967
- cursor: pointer;
8968
- font-size: 12.5px;
8969
- letter-spacing: 0.01em;
8970
- margin-top: auto;
8971
- min-height: var(--ChatListItemHeight);
8972
- padding: 0 12px;
8973
- text-align: left;
8974
- transition: background-color 80ms ease;
8975
- }
8976
-
8977
- .Chat.ChatFocus .ProjectAddButton:hover,
8978
- .Chat.ChatFocus .ProjectAddButton:focus-visible {
8979
- background: color-mix(in srgb, var(--ColorButtonSecondaryHoverBackground, #2a3039) 78%, transparent);
8980
- }
8981
-
8982
- .ChatList,
8983
- .ChatListEmpty,
8984
- .ChatMessages {
8985
- min-height: 0;
8986
8968
  }
8987
8969
 
8988
- .Chat.ChatFocus .ChatList,
8989
- .Chat.ChatFocus .ChatListEmpty {
8990
- display: none;
8970
+ .ChatTodoListHeader {
8971
+ border-bottom: 1px solid var(--vscode-editorWidget-border);
8972
+ color: var(--vscode-descriptionForeground);
8973
+ font-size: 12px;
8974
+ line-height: 18px;
8975
+ padding: 6px 10px;
8991
8976
  }
8992
8977
 
8993
- .Chat.ChatFocus .ChatMessages {
8994
- grid-column: 2;
8995
- grid-row: 2;
8978
+ .ChatTodoListItems {
8979
+ list-style: none;
8980
+ margin: 0;
8981
+ max-height: 180px;
8982
+ overflow: auto;
8983
+ padding: 4px 0;
8996
8984
  }
8997
8985
 
8998
- .Chat.ChatFocus .ChatSendArea {
8999
- grid-column: 2;
9000
- grid-row: 3;
8986
+ .ChatTodoListItem {
8987
+ align-items: center;
8988
+ color: var(--vscode-foreground);
8989
+ display: flex;
8990
+ font-size: 12px;
8991
+ line-height: 18px;
8992
+ min-height: 24px;
8993
+ padding: 0 10px;
9001
8994
  }
9002
8995
 
9003
- .MarkdownMathInline {
8996
+ .ChatTodoListItem::before {
8997
+ color: var(--vscode-descriptionForeground);
8998
+ content: "○";
9004
8999
  display: inline-block;
9005
- max-width: 100%;
9006
- vertical-align: middle;
9000
+ margin-right: 8px;
9001
+ width: 1em;
9007
9002
  }
9008
9003
 
9009
- .MarkdownQuote {
9010
- border-left: 3px solid var(--ColorBorder, #3a3d41);
9011
- margin: 8px 0;
9012
- padding-left: 12px;
9004
+ .ChatTodoListItemTodo::before {
9005
+ content: "○";
9013
9006
  }
9014
9007
 
9015
- .MarkdownMathBlock {
9016
- margin: 8px 0;
9017
- overflow-x: auto;
9018
- overflow-y: hidden;
9008
+ .ChatTodoListItem.todo::before {
9009
+ content: "○";
9019
9010
  }
9020
9011
 
9021
- .StrikeThrough {
9022
- text-decoration: line-through;
9012
+ .ChatTodoListItemInProgress::before {
9013
+ color: var(--vscode-textLink-foreground);
9014
+ content: "◐";
9023
9015
  }
9024
9016
 
9025
- /* syntax highlight token colors */
9026
- .TokenComment {
9027
- color: var(--ColorSymbolIconColorForeground, #7f8794);
9017
+ .ChatTodoListItem.inProgress::before {
9018
+ color: var(--vscode-textLink-foreground);
9019
+ content: "◐";
9028
9020
  }
9029
9021
 
9030
- .TokenString {
9031
- color: var(--ColorChartsGreen, #a6d189);
9022
+ .ChatTodoListItemCompleted {
9023
+ color: var(--vscode-disabledForeground);
9032
9024
  }
9033
9025
 
9034
- .TokenNumber,
9035
- .TokenValue {
9036
- color: var(--ColorChartsBlue, #8caaee);
9026
+ .ChatTodoListItem.completed {
9027
+ color: var(--vscode-disabledForeground);
9037
9028
  }
9038
9029
 
9039
- .TokenKeyword,
9040
- .TokenTag {
9041
- color: var(--ColorChartsPurple, #ca9ee6);
9030
+ .ChatTodoListItemCompleted::before {
9031
+ color: var(--vscode-testing-iconPassed);
9032
+ content: "✓";
9042
9033
  }
9043
9034
 
9044
- .TokenAttribute,
9045
- .TokenProperty {
9046
- color: var(--ColorChartsOrange, #ef9f76);
9035
+ .ChatTodoListItem.completed::before {
9036
+ color: var(--vscode-testing-iconPassed);
9037
+ content: "✓";
9047
9038
  }
9048
- `;
9049
- if (!renderHtmlCss.trim()) {
9050
- return baseCss;
9051
- }
9052
- return `${baseCss}
9053
9039
 
9054
9040
  /* render_html tool css */
9055
9041
  ${renderHtmlCss}`;
@@ -9063,14 +9049,22 @@ const renderCss = (oldState, newState) => {
9063
9049
  chatMessageFontFamily,
9064
9050
  chatMessageFontSize,
9065
9051
  chatMessageLineHeight,
9052
+ chatSendAreaPaddingBottom,
9053
+ chatSendAreaPaddingLeft,
9054
+ chatSendAreaPaddingRight,
9055
+ chatSendAreaPaddingTop,
9066
9056
  composerHeight,
9067
9057
  listItemHeight,
9068
9058
  selectedSessionId,
9069
9059
  sessions,
9060
+ textAreaPaddingBottom,
9061
+ textAreaPaddingLeft,
9062
+ textAreaPaddingRight,
9063
+ textAreaPaddingTop,
9070
9064
  uid
9071
9065
  } = newState;
9072
9066
  const renderHtmlCss = getRenderHtmlCss(sessions, selectedSessionId);
9073
- const css = getCss(composerHeight, listItemHeight, chatMessageFontSize, chatMessageLineHeight, chatMessageFontFamily, renderHtmlCss);
9067
+ const css = getCss(composerHeight, listItemHeight, chatMessageFontSize, chatMessageLineHeight, chatMessageFontFamily, textAreaPaddingTop, textAreaPaddingLeft, textAreaPaddingRight, textAreaPaddingBottom, chatSendAreaPaddingTop, chatSendAreaPaddingLeft, chatSendAreaPaddingRight, chatSendAreaPaddingBottom, renderHtmlCss);
9074
9068
  return [SetCss, uid, css];
9075
9069
  };
9076
9070
 
@@ -9108,17 +9102,26 @@ const ChatViewDropOverlayActive = 'ChatViewDropOverlayActive';
9108
9102
  const SendButtonDisabled = 'SendButtonDisabled';
9109
9103
  const ChatSendAreaBottom = 'ChatSendAreaBottom';
9110
9104
  const ChatSendAreaContent = 'ChatSendAreaContent';
9105
+ const ChatTodoList = 'ChatTodoList';
9106
+ const ChatTodoListHeader = 'ChatTodoListHeader';
9107
+ const ChatTodoListItems = 'ChatTodoListItems';
9108
+ const ChatTodoListItem = 'ChatTodoListItem';
9109
+ const ChatTodoListItemTodo = 'ChatTodoListItemTodo';
9110
+ const ChatTodoListItemInProgress = 'ChatTodoListItemInProgress';
9111
+ const ChatTodoListItemCompleted = 'ChatTodoListItemCompleted';
9111
9112
  const Chat = 'Chat';
9112
9113
  const ChatHeader = 'ChatHeader';
9113
9114
  const Button = 'Button';
9114
9115
  const ButtonPrimary = 'ButtonPrimary';
9115
9116
  const ButtonSecondary = 'ButtonSecondary';
9117
+ const Deletion = 'Deletion';
9116
9118
  const Empty = '';
9117
9119
  const FileIcon = 'FileIcon';
9118
9120
  const IconButton = 'IconButton';
9119
9121
  const IconButtonDisabled = 'IconButtonDisabled';
9120
9122
  const ImageElement = 'ImageElement';
9121
9123
  const InputBox = 'InputBox';
9124
+ const Insertion = 'Insertion';
9122
9125
  const Label = 'Label';
9123
9126
  const LabelDetail = 'LabelDetail';
9124
9127
  const ChatList = 'ChatList';
@@ -9147,6 +9150,10 @@ const ChatMessageContent = 'ChatMessageContent';
9147
9150
  const ChatToolCalls = 'ChatToolCalls';
9148
9151
  const ChatToolCallsLabel = 'ChatToolCallsLabel';
9149
9152
  const ChatToolCallReadFileLink = 'ChatToolCallReadFileLink';
9153
+ const ChatToolCallFileName = 'ChatToolCallFileName';
9154
+ const ChatToolCallQuestionOption = 'ChatToolCallQuestionOption';
9155
+ const ChatToolCallQuestionOptions = 'ChatToolCallQuestionOptions';
9156
+ const ChatToolCallQuestionText = 'ChatToolCallQuestionText';
9150
9157
  const ChatToolCallRenderHtmlLabel = 'ChatToolCallRenderHtmlLabel';
9151
9158
  const ChatToolCallRenderHtmlContent = 'ChatToolCallRenderHtmlContent';
9152
9159
  const ChatToolCallRenderHtmlBody = 'ChatToolCallRenderHtmlBody';
@@ -9203,6 +9210,7 @@ const HandleProjectListScroll = 32;
9203
9210
  const HandleProjectListContextMenu = 33;
9204
9211
  const HandleClickDictationButton = 34;
9205
9212
  const HandleMissingApiKeySubmit = 35;
9213
+ const HandleRunModeChange = 36;
9206
9214
 
9207
9215
  const getModelLabel = model => {
9208
9216
  if (model.provider === 'openRouter') {
@@ -9236,6 +9244,28 @@ const getChatSelectVirtualDom = (models, selectedModelId) => {
9236
9244
  }, ...modelOptions];
9237
9245
  };
9238
9246
 
9247
+ const getRunModeOptionDom = (runMode, selectedRunMode) => {
9248
+ return [{
9249
+ childCount: 1,
9250
+ selected: runMode === selectedRunMode,
9251
+ type: Option$1,
9252
+ value: runMode
9253
+ }, text(runMode)];
9254
+ };
9255
+
9256
+ const runModes = ['local', 'background', 'cloud'];
9257
+ const getRunModeSelectVirtualDom = selectedRunMode => {
9258
+ const runModeOptions = runModes.flatMap(runMode => getRunModeOptionDom(runMode, selectedRunMode));
9259
+ return [{
9260
+ childCount: runModes.length,
9261
+ className: Select,
9262
+ name: RunMode,
9263
+ onInput: HandleRunModeChange,
9264
+ type: Select$1,
9265
+ value: selectedRunMode
9266
+ }, ...runModeOptions];
9267
+ };
9268
+
9239
9269
  const getSendButtonClassName = isSendDisabled => {
9240
9270
  return isSendDisabled ? `${IconButton} ${SendButtonDisabled}` : `${IconButton}`;
9241
9271
  };
@@ -9303,19 +9333,48 @@ const getUsageOverviewDom = (tokensUsed, tokensMax) => {
9303
9333
  }, text(usageLabel)];
9304
9334
  };
9305
9335
 
9306
- const getChatSendAreaDom = (composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, voiceDictationEnabled = false) => {
9336
+ const getChatSendAreaDom = (composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, showRunMode, runMode, todoListToolEnabled, todoListItems, voiceDictationEnabled = false) => {
9307
9337
  const isSendDisabled = composerValue.trim() === '';
9308
- const controlsCount = usageOverviewEnabled ? 3 : 2;
9338
+ const controlsCount = 2 + (usageOverviewEnabled ? 1 : 0) + (showRunMode ? 1 : 0);
9339
+ const hasTodoList = todoListToolEnabled && todoListItems.length > 0;
9340
+ const todoHeaderText = `Todos (${todoListItems.filter(item => item.status === 'completed').length}/${todoListItems.length})`;
9341
+ const getTodoItemClassName = status => {
9342
+ if (status === 'completed') {
9343
+ return `${ChatTodoListItem} ${ChatTodoListItemCompleted} completed`;
9344
+ }
9345
+ if (status === 'inProgress') {
9346
+ return `${ChatTodoListItem} ${ChatTodoListItemInProgress} inProgress`;
9347
+ }
9348
+ return `${ChatTodoListItem} ${ChatTodoListItemTodo} todo`;
9349
+ };
9309
9350
  return [{
9310
9351
  childCount: 1,
9311
9352
  className: ChatSendArea,
9312
9353
  onSubmit: HandleSubmit,
9313
9354
  type: Form
9314
9355
  }, {
9315
- childCount: 2,
9356
+ childCount: hasTodoList ? 3 : 2,
9316
9357
  className: ChatSendAreaContent,
9317
9358
  type: Div
9359
+ }, ...(hasTodoList ? [{
9360
+ childCount: 2,
9361
+ className: ChatTodoList,
9362
+ type: Div
9363
+ }, {
9364
+ childCount: 1,
9365
+ className: ChatTodoListHeader,
9366
+ type: Div
9318
9367
  }, {
9368
+ ...text(todoHeaderText)
9369
+ }, {
9370
+ childCount: todoListItems.length,
9371
+ className: ChatTodoListItems,
9372
+ type: Ul
9373
+ }, ...todoListItems.flatMap(item => [{
9374
+ childCount: 1,
9375
+ className: getTodoItemClassName(item.status),
9376
+ type: Li
9377
+ }, text(item.text)])] : []), {
9319
9378
  childCount: 0,
9320
9379
  className: MultilineInputBox,
9321
9380
  name: Composer,
@@ -9328,7 +9387,7 @@ const getChatSendAreaDom = (composerValue, models, selectedModelId, usageOvervie
9328
9387
  childCount: voiceDictationEnabled ? controlsCount + 1 : controlsCount,
9329
9388
  className: ChatSendAreaBottom,
9330
9389
  type: Div
9331
- }, ...getChatSelectVirtualDom(models, selectedModelId), ...(usageOverviewEnabled ? getUsageOverviewDom(tokensUsed, tokensMax) : []), ...getSendButtonDom(isSendDisabled, voiceDictationEnabled)];
9390
+ }, ...getChatSelectVirtualDom(models, selectedModelId), ...(showRunMode ? getRunModeSelectVirtualDom(runMode) : []), ...(usageOverviewEnabled ? getUsageOverviewDom(tokensUsed, tokensMax) : []), ...getSendButtonDom(isSendDisabled, voiceDictationEnabled)];
9332
9391
  };
9333
9392
 
9334
9393
  const getImageAltText = alt => {
@@ -9337,8 +9396,9 @@ const getImageAltText = alt => {
9337
9396
  }
9338
9397
  return `${alt} (image could not be loaded)`;
9339
9398
  };
9340
- const isFileUri = href => {
9341
- return href.trim().toLowerCase().startsWith('file://');
9399
+ const isFileReferenceUri = href => {
9400
+ const normalized = href.trim().toLowerCase();
9401
+ return normalized.startsWith('file://') || normalized.startsWith('vscode-references://');
9342
9402
  };
9343
9403
  const getInlineNodeDom = (inlineNode, useChatMathWorker = false) => {
9344
9404
  if (inlineNode.type === 'text') {
@@ -9385,7 +9445,7 @@ const getInlineNodeDom = (inlineNode, useChatMathWorker = false) => {
9385
9445
  if (inlineNode.type === 'math-inline-dom') {
9386
9446
  return inlineNode.dom;
9387
9447
  }
9388
- if (isFileUri(inlineNode.href)) {
9448
+ if (isFileReferenceUri(inlineNode.href)) {
9389
9449
  return [{
9390
9450
  childCount: 1,
9391
9451
  className: ChatMessageLink,
@@ -9486,6 +9546,19 @@ const pythonRules = [{
9486
9546
  className: TokenKeyword,
9487
9547
  regex: /\b(?:def|class|return|if|elif|else|for|while|in|import|from|as|with|try|except|finally|raise|lambda|yield|pass|break|continue|True|False|None|and|or|not|is)\b/
9488
9548
  }];
9549
+ const jsonRules = [{
9550
+ className: TokenProperty,
9551
+ regex: /"[^"\\]*(?:\\.[^"\\]*)*"(?=\s*:)/
9552
+ }, {
9553
+ className: TokenString,
9554
+ regex: /"[^"\\]*(?:\\.[^"\\]*)*"/
9555
+ }, {
9556
+ className: TokenNumber,
9557
+ regex: /-?\b\d+\.?\d*(?:[eE][+-]?\d+)?\b/
9558
+ }, {
9559
+ className: TokenKeyword,
9560
+ regex: /\b(?:true|false|null)\b/
9561
+ }];
9489
9562
  const tokenize = (code, rules) => {
9490
9563
  const tokens = [];
9491
9564
  let pos = 0;
@@ -9542,6 +9615,9 @@ const highlightCode = (code, language) => {
9542
9615
  if (normalized === 'py' || normalized === 'python') {
9543
9616
  return tokenize(code, pythonRules);
9544
9617
  }
9618
+ if (normalized === 'json') {
9619
+ return tokenize(code, jsonRules);
9620
+ }
9545
9621
  return [{
9546
9622
  className: '',
9547
9623
  text: code
@@ -9676,6 +9752,12 @@ const getMessageNodeDom = (node, useChatMathWorker = false) => {
9676
9752
  if (node.type === 'math-block-dom') {
9677
9753
  return node.dom;
9678
9754
  }
9755
+ if (node.type === 'thematic-break') {
9756
+ return [{
9757
+ childCount: 0,
9758
+ type: Hr
9759
+ }];
9760
+ }
9679
9761
  if (node.type === 'heading') {
9680
9762
  return getHeadingDom(node, useChatMathWorker);
9681
9763
  }
@@ -9810,31 +9892,70 @@ const getOpenRouterTooManyRequestsDom = () => {
9810
9892
  })];
9811
9893
  };
9812
9894
 
9813
- const getToolCallArgumentPreview = rawArguments => {
9814
- if (!rawArguments.trim()) {
9815
- return '""';
9895
+ const getToolCallStatusLabel = toolCall => {
9896
+ if (toolCall.status === 'not-found') {
9897
+ return ' (not-found)';
9816
9898
  }
9899
+ if (toolCall.status === 'error') {
9900
+ if (toolCall.errorMessage) {
9901
+ return ` (error: ${toolCall.errorMessage})`;
9902
+ }
9903
+ return ' (error)';
9904
+ }
9905
+ return '';
9906
+ };
9907
+
9908
+ const parseAskQuestionArguments = rawArguments => {
9817
9909
  let parsed;
9818
9910
  try {
9819
9911
  parsed = JSON.parse(rawArguments);
9820
9912
  } catch {
9821
- return rawArguments;
9913
+ return {
9914
+ answers: [],
9915
+ question: ''
9916
+ };
9822
9917
  }
9823
9918
  if (!parsed || typeof parsed !== 'object') {
9824
- return rawArguments;
9825
- }
9826
- const path = Reflect.get(parsed, 'path');
9827
- if (typeof path === 'string') {
9828
- return `"${path}"`;
9829
- }
9830
- const keys = Object.keys(parsed);
9831
- if (keys.length === 1) {
9832
- const value = Reflect.get(parsed, keys[0]);
9833
- if (typeof value === 'string') {
9834
- return `"${value}"`;
9835
- }
9919
+ return {
9920
+ answers: [],
9921
+ question: ''
9922
+ };
9836
9923
  }
9837
- return rawArguments;
9924
+ const question = Reflect.get(parsed, 'question');
9925
+ const rawAnswers = Reflect.get(parsed, 'answers');
9926
+ const rawChoices = Reflect.get(parsed, 'choices');
9927
+ const rawOptions = Reflect.get(parsed, 'options');
9928
+ const arrayValue = Array.isArray(rawAnswers) ? rawAnswers : Array.isArray(rawChoices) ? rawChoices : Array.isArray(rawOptions) ? rawOptions : [];
9929
+ const answers = arrayValue.filter(value => typeof value === 'string');
9930
+ return {
9931
+ answers,
9932
+ question: typeof question === 'string' ? question : ''
9933
+ };
9934
+ };
9935
+
9936
+ const getToolCallAskQuestionVirtualDom = toolCall => {
9937
+ const parsed = parseAskQuestionArguments(toolCall.arguments);
9938
+ const statusLabel = getToolCallStatusLabel(toolCall);
9939
+ const questionLabel = parsed.question.trim() ? parsed.question : '(empty question)';
9940
+ const answers = parsed.answers.length > 0 ? parsed.answers : ['(no answers)'];
9941
+ const childCount = 2;
9942
+ return [{
9943
+ childCount,
9944
+ className: ChatOrderedListItem,
9945
+ type: Li
9946
+ }, {
9947
+ childCount: 1,
9948
+ className: ChatToolCallQuestionText,
9949
+ type: Div
9950
+ }, text(`ask_question: ${questionLabel}${statusLabel}`), {
9951
+ childCount: answers.length,
9952
+ className: ChatToolCallQuestionOptions,
9953
+ type: Div
9954
+ }, ...answers.flatMap(answer => [{
9955
+ childCount: 1,
9956
+ className: ChatToolCallQuestionOption,
9957
+ type: Span
9958
+ }, text(answer.trim() ? answer : '(empty answer)')])];
9838
9959
  };
9839
9960
 
9840
9961
  const RE_QUERY_OR_HASH = /[?#].*$/;
@@ -9916,17 +10037,120 @@ const getReadFileTarget = rawArguments => {
9916
10037
  };
9917
10038
  };
9918
10039
 
9919
- const getToolCallStatusLabel = toolCall => {
9920
- if (toolCall.status === 'not-found') {
9921
- return ' (not-found)';
10040
+ const getToolCallEditFileVirtualDom = toolCall => {
10041
+ const target = getReadFileTarget(toolCall.arguments);
10042
+ if (!target) {
10043
+ return [];
9922
10044
  }
9923
- if (toolCall.status === 'error') {
9924
- if (toolCall.errorMessage) {
9925
- return ` (error: ${toolCall.errorMessage})`;
10045
+ const fileName = getFileNameFromUri(target.title);
10046
+ const fileNameClickableProps = target.clickableUri ? {
10047
+ 'data-uri': target.clickableUri,
10048
+ onClick: HandleClickReadFile
10049
+ } : {};
10050
+ return [{
10051
+ childCount: 3,
10052
+ className: ChatOrderedListItem,
10053
+ title: target.title,
10054
+ type: Li
10055
+ }, {
10056
+ childCount: 0,
10057
+ className: FileIcon,
10058
+ type: Div
10059
+ }, text('edit_file '), {
10060
+ childCount: 1,
10061
+ className: ChatToolCallReadFileLink,
10062
+ title: target.clickableUri,
10063
+ ...fileNameClickableProps,
10064
+ type: Span
10065
+ }, {
10066
+ childCount: 1,
10067
+ className: ChatToolCallFileName,
10068
+ type: Span
10069
+ }, text(fileName)];
10070
+ };
10071
+
10072
+ const getToolCallGetWorkspaceUriVirtualDom = toolCall => {
10073
+ if (!toolCall.result) {
10074
+ return [];
10075
+ }
10076
+ const statusLabel = getToolCallStatusLabel(toolCall);
10077
+ const fileName = getFileNameFromUri(toolCall.result);
10078
+ return [{
10079
+ childCount: statusLabel ? 4 : 3,
10080
+ className: ChatOrderedListItem,
10081
+ title: toolCall.result,
10082
+ type: Li
10083
+ }, {
10084
+ childCount: 0,
10085
+ className: FileIcon,
10086
+ type: Div
10087
+ }, text('get_workspace_uri '), {
10088
+ childCount: 1,
10089
+ className: ChatToolCallReadFileLink,
10090
+ 'data-uri': toolCall.result,
10091
+ onClick: HandleClickReadFile,
10092
+ type: Span
10093
+ }, {
10094
+ childCount: 1,
10095
+ className: ChatToolCallFileName,
10096
+ type: Span
10097
+ }, text(fileName), ...(statusLabel ? [text(statusLabel)] : [])];
10098
+ };
10099
+
10100
+ const getToolCallArgumentPreview = rawArguments => {
10101
+ if (!rawArguments.trim()) {
10102
+ return '""';
10103
+ }
10104
+ let parsed;
10105
+ try {
10106
+ parsed = JSON.parse(rawArguments);
10107
+ } catch {
10108
+ return rawArguments;
10109
+ }
10110
+ if (!parsed || typeof parsed !== 'object') {
10111
+ return rawArguments;
10112
+ }
10113
+ const path = Reflect.get(parsed, 'path');
10114
+ if (typeof path === 'string') {
10115
+ return `"${path}"`;
10116
+ }
10117
+ const keys = Object.keys(parsed);
10118
+ if (keys.length === 1) {
10119
+ const value = Reflect.get(parsed, keys[0]);
10120
+ if (typeof value === 'string') {
10121
+ return `"${value}"`;
9926
10122
  }
9927
- return ' (error)';
9928
10123
  }
9929
- return '';
10124
+ return rawArguments;
10125
+ };
10126
+
10127
+ const getToolCallDisplayName = name => {
10128
+ if (name === 'getWorkspaceUri') {
10129
+ return 'get_workspace_uri';
10130
+ }
10131
+ return name;
10132
+ };
10133
+
10134
+ const hasIncompleteJsonArguments = rawArguments => {
10135
+ try {
10136
+ JSON.parse(rawArguments);
10137
+ return false;
10138
+ } catch {
10139
+ return true;
10140
+ }
10141
+ };
10142
+
10143
+ const getToolCallLabel = toolCall => {
10144
+ const displayName = getToolCallDisplayName(toolCall.name);
10145
+ if (toolCall.name === 'write_file' && !toolCall.status && hasIncompleteJsonArguments(toolCall.arguments)) {
10146
+ return `${displayName} (in progress)`;
10147
+ }
10148
+ const argumentPreview = getToolCallArgumentPreview(toolCall.arguments);
10149
+ const statusLabel = getToolCallStatusLabel(toolCall);
10150
+ if (argumentPreview === '{}') {
10151
+ return `${displayName}${statusLabel}`;
10152
+ }
10153
+ return `${displayName} ${argumentPreview}${statusLabel}`;
9930
10154
  };
9931
10155
 
9932
10156
  const getToolCallReadFileVirtualDom = toolCall => {
@@ -9955,22 +10179,34 @@ const getToolCallReadFileVirtualDom = toolCall => {
9955
10179
  className: ChatToolCallReadFileLink,
9956
10180
  ...fileNameClickableProps,
9957
10181
  type: Span
10182
+ }, {
10183
+ childCount: 1,
10184
+ className: ChatToolCallFileName,
10185
+ type: Span
9958
10186
  }, text(fileName), ...(statusLabel ? [text(statusLabel)] : [])];
9959
10187
  };
9960
10188
 
9961
10189
  const maxHtmlLength = 40_000;
9962
10190
  const tokenRegex = /<!--[\s\S]*?-->|<\/?[a-zA-Z][\w:-]*(?:\s[^<>]*?)?>|[^<]+/g;
9963
10191
  const attributeRegex = /([^\s=/>]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+)))?/g;
10192
+ const scriptTagRegex = /<script\b[\s\S]*?<\/script>/gi;
10193
+ const styleTagRegex = /<style\b[\s\S]*?<\/style>/gi;
10194
+ const headTagRegex = /<head\b[\s\S]*?<\/head>/gi;
10195
+ const metaTagRegex = /<meta\b[^>]*>/gi;
10196
+ const linkTagRegex = /<link\b[^>]*>/gi;
10197
+ const tagPrefixRegex = /^<\/?\s*[a-zA-Z][\w:-]*/;
10198
+ const tagSuffixRegex = /\/?\s*>$/;
10199
+ const openTagNameRegex = /^<\s*([a-zA-Z][\w:-]*)/;
9964
10200
  const inlineTags = new Set(['a', 'abbr', 'b', 'code', 'em', 'i', 'label', 'small', 'span', 'strong', 'sub', 'sup', 'u']);
9965
10201
  const voidElements = new Set(['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'link', 'meta', 'param', 'source', 'track', 'wbr']);
9966
10202
  const sanitizeHtml = value => {
9967
- return value.slice(0, maxHtmlLength).replaceAll(/<script\b[\s\S]*?<\/script>/gi, '').replaceAll(/<style\b[\s\S]*?<\/style>/gi, '').replaceAll(/<head\b[\s\S]*?<\/head>/gi, '').replaceAll(/<meta\b[^>]*>/gi, '').replaceAll(/<link\b[^>]*>/gi, '');
10203
+ return value.slice(0, maxHtmlLength).replaceAll(scriptTagRegex, '').replaceAll(styleTagRegex, '').replaceAll(headTagRegex, '').replaceAll(metaTagRegex, '').replaceAll(linkTagRegex, '');
9968
10204
  };
9969
10205
  const decodeEntities = value => {
9970
10206
  return value.replaceAll('&nbsp;', ' ').replaceAll('&quot;', '"').replaceAll('&#39;', "'").replaceAll('&lt;', '<').replaceAll('&gt;', '>').replaceAll('&amp;', '&');
9971
10207
  };
9972
10208
  const parseAttributes = token => {
9973
- const withoutTag = token.replace(/^<\/?\s*[a-zA-Z][\w:-]*/, '').replace(/\/?\s*>$/, '').trim();
10209
+ const withoutTag = token.replace(tagPrefixRegex, '').replace(tagSuffixRegex, '').trim();
9974
10210
  if (!withoutTag) {
9975
10211
  return Object.create(null);
9976
10212
  }
@@ -10017,7 +10253,7 @@ const parseHtml = value => {
10017
10253
  continue;
10018
10254
  }
10019
10255
  if (token.startsWith('<')) {
10020
- const openTagNameMatch = /^<\s*([a-zA-Z][\w:-]*)/.exec(token);
10256
+ const openTagNameMatch = openTagNameRegex.exec(token);
10021
10257
  if (!openTagNameMatch) {
10022
10258
  continue;
10023
10259
  }
@@ -10261,37 +10497,117 @@ const getToolCallRenderHtmlVirtualDom = toolCall => {
10261
10497
  }, ...parsedHtml.virtualDom];
10262
10498
  };
10263
10499
 
10264
- const getToolCallDisplayName = name => {
10265
- if (name === 'getWorkspaceUri') {
10266
- return 'get_workspace_uri';
10500
+ const parseWriteFileLineCounts = rawResult => {
10501
+ if (!rawResult) {
10502
+ return {
10503
+ linesAdded: 0,
10504
+ linesDeleted: 0
10505
+ };
10267
10506
  }
10268
- return name;
10507
+ let parsed;
10508
+ try {
10509
+ parsed = JSON.parse(rawResult);
10510
+ } catch {
10511
+ return {
10512
+ linesAdded: 0,
10513
+ linesDeleted: 0
10514
+ };
10515
+ }
10516
+ if (!parsed || typeof parsed !== 'object') {
10517
+ return {
10518
+ linesAdded: 0,
10519
+ linesDeleted: 0
10520
+ };
10521
+ }
10522
+ const linesAdded = Reflect.get(parsed, 'linesAdded');
10523
+ const linesDeleted = Reflect.get(parsed, 'linesDeleted');
10524
+ return {
10525
+ linesAdded: typeof linesAdded === 'number' ? Math.max(0, linesAdded) : 0,
10526
+ linesDeleted: typeof linesDeleted === 'number' ? Math.max(0, linesDeleted) : 0
10527
+ };
10269
10528
  };
10270
- const getToolCallLabel = toolCall => {
10271
- const displayName = getToolCallDisplayName(toolCall.name);
10272
- if (toolCall.name === 'getWorkspaceUri' && toolCall.result) {
10273
- return `${displayName} ${toolCall.result}`;
10529
+
10530
+ const getToolCallWriteFileVirtualDom = toolCall => {
10531
+ const target = getReadFileTarget(toolCall.arguments);
10532
+ if (!target) {
10533
+ return [];
10274
10534
  }
10275
- const argumentPreview = getToolCallArgumentPreview(toolCall.arguments);
10535
+ const fileName = getFileNameFromUri(target.title);
10276
10536
  const statusLabel = getToolCallStatusLabel(toolCall);
10277
- if (argumentPreview === '{}') {
10278
- return `${displayName}${statusLabel}`;
10279
- }
10280
- return `${displayName} ${argumentPreview}${statusLabel}`;
10537
+ const {
10538
+ linesAdded,
10539
+ linesDeleted
10540
+ } = parseWriteFileLineCounts(toolCall.result);
10541
+ const fileNameClickableProps = target.clickableUri ? {
10542
+ 'data-uri': target.clickableUri,
10543
+ onClick: HandleClickReadFile
10544
+ } : {};
10545
+ return [{
10546
+ childCount: statusLabel ? 6 : 5,
10547
+ className: ChatOrderedListItem,
10548
+ title: target.title,
10549
+ type: Li
10550
+ }, {
10551
+ childCount: 0,
10552
+ className: FileIcon,
10553
+ type: Div
10554
+ }, text('write_file '), {
10555
+ childCount: 1,
10556
+ className: ChatToolCallReadFileLink,
10557
+ ...fileNameClickableProps,
10558
+ type: Span
10559
+ }, {
10560
+ childCount: 1,
10561
+ className: ChatToolCallFileName,
10562
+ type: Span
10563
+ }, text(fileName), {
10564
+ childCount: 1,
10565
+ className: Insertion,
10566
+ type: Span
10567
+ }, text(` +${linesAdded}`), {
10568
+ childCount: 1,
10569
+ className: Deletion,
10570
+ type: Span
10571
+ }, text(` -${linesDeleted}`), ...(statusLabel ? [text(statusLabel)] : [])];
10281
10572
  };
10573
+
10282
10574
  const getToolCallDom = toolCall => {
10575
+ if (toolCall.name === 'getWorkspaceUri') {
10576
+ const virtualDom = getToolCallGetWorkspaceUriVirtualDom(toolCall);
10577
+ if (virtualDom.length > 0) {
10578
+ return virtualDom;
10579
+ }
10580
+ }
10283
10581
  if (toolCall.name === 'read_file' || toolCall.name === 'list_files' || toolCall.name === 'list_file') {
10284
10582
  const virtualDom = getToolCallReadFileVirtualDom(toolCall);
10285
10583
  if (virtualDom.length > 0) {
10286
10584
  return virtualDom;
10287
10585
  }
10288
10586
  }
10587
+ if (toolCall.name === 'write_file') {
10588
+ const virtualDom = getToolCallWriteFileVirtualDom(toolCall);
10589
+ if (virtualDom.length > 0) {
10590
+ return virtualDom;
10591
+ }
10592
+ }
10593
+ if (toolCall.name === 'edit_file') {
10594
+ const virtualDom = getToolCallEditFileVirtualDom(toolCall);
10595
+ if (virtualDom.length > 0) {
10596
+ return virtualDom;
10597
+ }
10598
+ }
10289
10599
  if (toolCall.name === 'render_html') {
10290
10600
  const virtualDom = getToolCallRenderHtmlVirtualDom(toolCall);
10291
10601
  if (virtualDom.length > 0) {
10292
10602
  return virtualDom;
10293
10603
  }
10294
10604
  }
10605
+ if (toolCall.name === 'ask_question') {
10606
+ const virtualDom = getToolCallAskQuestionVirtualDom(toolCall);
10607
+ if (virtualDom.length > 0) {
10608
+ return virtualDom;
10609
+ }
10610
+ }
10295
10611
  const label = getToolCallLabel(toolCall);
10296
10612
  return [{
10297
10613
  childCount: 1,
@@ -10389,9 +10705,9 @@ const getDisplayMessages = (messages, parsedMessages) => {
10389
10705
  }
10390
10706
  return displayMessages;
10391
10707
  };
10392
- const getMessagesDom = (messages, parsedMessages, openRouterApiKeyInput, openApiApiKeyInput = '', openRouterApiKeyState = 'idle', messagesScrollTop = 0, useChatMathWorker = false) => {
10708
+ const getMessagesDom = (messages, parsedMessages, openRouterApiKeyInput, openApiApiKeyInput = '', openRouterApiKeyState = 'idle', messagesScrollTop = 0, useChatMathWorker = false, hideWelcomeMessage = false) => {
10393
10709
  if (messages.length === 0) {
10394
- return getEmptyMessagesDom();
10710
+ return hideWelcomeMessage ? [] : getEmptyMessagesDom();
10395
10711
  }
10396
10712
  const displayMessages = getDisplayMessages(messages, parsedMessages);
10397
10713
  return [{
@@ -10489,7 +10805,40 @@ const getProjectListDom = (projects, sessions, projectExpandedIds, selectedProje
10489
10805
  }, text('+ Add Project')];
10490
10806
  };
10491
10807
 
10492
- const getChatModeChatFocusVirtualDom = (sessions, selectedSessionId, composerValue, openRouterApiKeyInput, openApiApiKeyInput, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, openRouterApiKeyState = 'idle', composerHeight = 28, composerFontSize = 13, composerFontFamily = 'system-ui', composerLineHeight = 20, messagesScrollTop = 0, composerDropActive = false, composerDropEnabled = true, projects = [], projectExpandedIds = [], selectedProjectId = '', projectListScrollTop = 0, voiceDictationEnabled = false, useChatMathWorker = false, parsedMessages = [], authEnabled = false, authStatus = 'signed-out', authErrorMessage = '') => {
10808
+ const getChatModeChatFocusVirtualDom = ({
10809
+ authEnabled = false,
10810
+ authErrorMessage = '',
10811
+ authStatus = 'signed-out',
10812
+ composerDropActive = false,
10813
+ composerDropEnabled = true,
10814
+ composerFontFamily = 'system-ui',
10815
+ composerFontSize = 13,
10816
+ composerHeight = 28,
10817
+ composerLineHeight = 20,
10818
+ composerValue,
10819
+ messagesScrollTop = 0,
10820
+ models,
10821
+ openApiApiKeyInput,
10822
+ openRouterApiKeyInput,
10823
+ openRouterApiKeyState = 'idle',
10824
+ parsedMessages = [],
10825
+ projectExpandedIds = [],
10826
+ projectListScrollTop = 0,
10827
+ projects = [],
10828
+ runMode,
10829
+ selectedModelId,
10830
+ selectedProjectId = '',
10831
+ selectedSessionId,
10832
+ sessions,
10833
+ showRunMode,
10834
+ todoListItems,
10835
+ todoListToolEnabled,
10836
+ tokensMax,
10837
+ tokensUsed,
10838
+ usageOverviewEnabled,
10839
+ useChatMathWorker = false,
10840
+ voiceDictationEnabled = false
10841
+ }) => {
10493
10842
  const selectedSession = sessions.find(session => session.id === selectedSessionId);
10494
10843
  const messages = selectedSession ? selectedSession.messages : [];
10495
10844
  const isDropOverlayVisible = composerDropEnabled && composerDropActive;
@@ -10499,7 +10848,7 @@ const getChatModeChatFocusVirtualDom = (sessions, selectedSessionId, composerVal
10499
10848
  onDragEnter: HandleDragEnterChatView,
10500
10849
  onDragOver: HandleDragOverChatView,
10501
10850
  type: Div
10502
- }, ...getProjectListDom(projects, sessions, projectExpandedIds, selectedProjectId, selectedSessionId, projectListScrollTop), ...getMessagesDom(messages, parsedMessages, openRouterApiKeyInput, openApiApiKeyInput, openRouterApiKeyState, messagesScrollTop, useChatMathWorker), ...getChatSendAreaDom(composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, voiceDictationEnabled), ...(isDropOverlayVisible ? [{
10851
+ }, ...getProjectListDom(projects, sessions, projectExpandedIds, selectedProjectId, selectedSessionId, projectListScrollTop), ...getMessagesDom(messages, parsedMessages, openRouterApiKeyInput, openApiApiKeyInput, openRouterApiKeyState, messagesScrollTop, useChatMathWorker, true), ...getChatSendAreaDom(composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, showRunMode, runMode, todoListToolEnabled, todoListItems, voiceDictationEnabled), ...(isDropOverlayVisible ? [{
10503
10852
  childCount: 1,
10504
10853
  className: mergeClassNames(ChatViewDropOverlay, ChatViewDropOverlayActive),
10505
10854
  name: ComposerDropTarget,
@@ -10615,7 +10964,36 @@ const getChatHeaderDomDetailMode = (selectedSessionTitle, authEnabled = false, a
10615
10964
  }, text(authErrorMessage)] : [])];
10616
10965
  };
10617
10966
 
10618
- const getChatModeDetailVirtualDom = (sessions, selectedSessionId, composerValue, openRouterApiKeyInput, openApiApiKeyInput, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, openRouterApiKeyState = 'idle', composerHeight = 28, composerFontSize = 13, composerFontFamily = 'system-ui', composerLineHeight = 20, messagesScrollTop = 0, composerDropActive = false, composerDropEnabled = true, voiceDictationEnabled = false, useChatMathWorker = false, parsedMessages = [], authEnabled = false, authStatus = 'signed-out', authErrorMessage = '') => {
10967
+ const getChatModeDetailVirtualDom = ({
10968
+ authEnabled = false,
10969
+ authErrorMessage = '',
10970
+ authStatus = 'signed-out',
10971
+ composerDropActive = false,
10972
+ composerDropEnabled = true,
10973
+ composerFontFamily = 'system-ui',
10974
+ composerFontSize = 13,
10975
+ composerHeight = 28,
10976
+ composerLineHeight = 20,
10977
+ composerValue,
10978
+ messagesScrollTop = 0,
10979
+ models,
10980
+ openApiApiKeyInput,
10981
+ openRouterApiKeyInput,
10982
+ openRouterApiKeyState = 'idle',
10983
+ parsedMessages = [],
10984
+ runMode,
10985
+ selectedModelId,
10986
+ selectedSessionId,
10987
+ sessions,
10988
+ showRunMode,
10989
+ todoListItems,
10990
+ todoListToolEnabled,
10991
+ tokensMax,
10992
+ tokensUsed,
10993
+ usageOverviewEnabled,
10994
+ useChatMathWorker = false,
10995
+ voiceDictationEnabled = false
10996
+ }) => {
10619
10997
  const selectedSession = sessions.find(session => session.id === selectedSessionId);
10620
10998
  const selectedSessionTitle = selectedSession?.title || chatTitle();
10621
10999
  const messages = selectedSession ? selectedSession.messages : [];
@@ -10626,7 +11004,7 @@ const getChatModeDetailVirtualDom = (sessions, selectedSessionId, composerValue,
10626
11004
  onDragEnter: HandleDragEnterChatView,
10627
11005
  onDragOver: HandleDragOverChatView,
10628
11006
  type: Div
10629
- }, ...getChatHeaderDomDetailMode(selectedSessionTitle, authEnabled, authStatus, authErrorMessage), ...getMessagesDom(messages, parsedMessages, openRouterApiKeyInput, openApiApiKeyInput, openRouterApiKeyState, messagesScrollTop, useChatMathWorker), ...getChatSendAreaDom(composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, voiceDictationEnabled), ...(isDropOverlayVisible ? [{
11007
+ }, ...getChatHeaderDomDetailMode(selectedSessionTitle, authEnabled, authStatus, authErrorMessage), ...getMessagesDom(messages, parsedMessages, openRouterApiKeyInput, openApiApiKeyInput, openRouterApiKeyState, messagesScrollTop, useChatMathWorker), ...getChatSendAreaDom(composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, showRunMode, runMode, todoListToolEnabled, todoListItems, voiceDictationEnabled), ...(isDropOverlayVisible ? [{
10630
11008
  childCount: 1,
10631
11009
  className: mergeClassNames(ChatViewDropOverlay, ChatViewDropOverlayActive),
10632
11010
  name: ComposerDropTarget,
@@ -10674,7 +11052,7 @@ const getSessionDom = session => {
10674
11052
  return [{
10675
11053
  childCount: 2,
10676
11054
  className: sessionClassName,
10677
- type: Div
11055
+ type: Li
10678
11056
  }, {
10679
11057
  childCount: 1,
10680
11058
  className: ChatListItemLabel,
@@ -10708,11 +11086,35 @@ const getChatListDom = (sessions, selectedSessionId, chatListScrollTop = 0) => {
10708
11086
  onClick: HandleClickList,
10709
11087
  onScroll: HandleChatListScroll,
10710
11088
  scrollTop: chatListScrollTop,
10711
- type: Div
11089
+ type: Ul
10712
11090
  }, ...sessions.flatMap(getSessionDom)];
10713
11091
  };
10714
11092
 
10715
- const getChatModeListVirtualDom = (sessions, selectedSessionId, composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, composerHeight = 28, composerFontSize = 13, composerFontFamily = 'system-ui', composerLineHeight = 20, chatListScrollTop = 0, composerDropActive = false, composerDropEnabled = true, voiceDictationEnabled = false, authEnabled = false, authStatus = 'signed-out', authErrorMessage = '') => {
11093
+ const getChatModeListVirtualDom = ({
11094
+ authEnabled = false,
11095
+ authErrorMessage = '',
11096
+ authStatus = 'signed-out',
11097
+ chatListScrollTop = 0,
11098
+ composerDropActive = false,
11099
+ composerDropEnabled = true,
11100
+ composerFontFamily = 'system-ui',
11101
+ composerFontSize = 13,
11102
+ composerHeight = 28,
11103
+ composerLineHeight = 20,
11104
+ composerValue,
11105
+ models,
11106
+ runMode,
11107
+ selectedModelId,
11108
+ selectedSessionId,
11109
+ sessions,
11110
+ showRunMode,
11111
+ todoListItems,
11112
+ todoListToolEnabled,
11113
+ tokensMax,
11114
+ tokensUsed,
11115
+ usageOverviewEnabled,
11116
+ voiceDictationEnabled = false
11117
+ }) => {
10716
11118
  const isDropOverlayVisible = composerDropEnabled && composerDropActive;
10717
11119
  return [{
10718
11120
  childCount: isDropOverlayVisible ? 4 : 3,
@@ -10720,7 +11122,7 @@ const getChatModeListVirtualDom = (sessions, selectedSessionId, composerValue, m
10720
11122
  onDragEnter: HandleDragEnterChatView,
10721
11123
  onDragOver: HandleDragOverChatView,
10722
11124
  type: Div
10723
- }, ...getChatHeaderListModeDom(authEnabled, authStatus, authErrorMessage), ...getChatListDom(sessions, selectedSessionId, chatListScrollTop), ...getChatSendAreaDom(composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, voiceDictationEnabled), ...(isDropOverlayVisible ? [{
11125
+ }, ...getChatHeaderListModeDom(authEnabled, authStatus, authErrorMessage), ...getChatListDom(sessions, selectedSessionId, chatListScrollTop), ...getChatSendAreaDom(composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, showRunMode, runMode, todoListToolEnabled, todoListItems, voiceDictationEnabled), ...(isDropOverlayVisible ? [{
10724
11126
  childCount: 1,
10725
11127
  className: mergeClassNames(ChatViewDropOverlay, ChatViewDropOverlayActive),
10726
11128
  name: ComposerDropTarget,
@@ -10741,6 +11143,62 @@ const getChatModeUnsupportedVirtualDom = () => {
10741
11143
  }, text(unknownViewMode())];
10742
11144
  };
10743
11145
 
11146
+ const isTodoStatus = status => {
11147
+ return status === 'todo' || status === 'inProgress' || status === 'completed';
11148
+ };
11149
+ const parseTodoListArguments = rawArguments => {
11150
+ let parsed;
11151
+ try {
11152
+ parsed = JSON.parse(rawArguments);
11153
+ } catch {
11154
+ return [];
11155
+ }
11156
+ if (!parsed || typeof parsed !== 'object') {
11157
+ return [];
11158
+ }
11159
+ const rawTodos = Reflect.get(parsed, 'todos');
11160
+ if (!Array.isArray(rawTodos)) {
11161
+ return [];
11162
+ }
11163
+ const todos = [];
11164
+ for (const rawTodo of rawTodos) {
11165
+ if (!rawTodo || typeof rawTodo !== 'object') {
11166
+ continue;
11167
+ }
11168
+ const text = Reflect.get(rawTodo, 'text');
11169
+ const status = Reflect.get(rawTodo, 'status');
11170
+ if (typeof text !== 'string' || !isTodoStatus(status)) {
11171
+ continue;
11172
+ }
11173
+ todos.push({
11174
+ status,
11175
+ text
11176
+ });
11177
+ }
11178
+ return todos;
11179
+ };
11180
+
11181
+ const getTodoListItems = (sessions, selectedSessionId) => {
11182
+ const selectedSession = sessions.find(session => session.id === selectedSessionId);
11183
+ if (!selectedSession) {
11184
+ return [];
11185
+ }
11186
+ let todoItems = [];
11187
+ for (const message of selectedSession.messages) {
11188
+ if (message.role !== 'assistant' || !message.toolCalls) {
11189
+ continue;
11190
+ }
11191
+ for (const toolCall of message.toolCalls) {
11192
+ if (toolCall.name !== 'todo_list') {
11193
+ continue;
11194
+ }
11195
+ const parsedTodos = parseTodoListArguments(toolCall.arguments);
11196
+ todoItems = parsedTodos;
11197
+ }
11198
+ }
11199
+ return todoItems;
11200
+ };
11201
+
10744
11202
  const getFallbackParsedMessages = sessions => {
10745
11203
  const parsedMessages = [];
10746
11204
  for (const session of sessions) {
@@ -10757,15 +11215,137 @@ const getFallbackParsedMessages = sessions => {
10757
11215
  }
10758
11216
  return parsedMessages;
10759
11217
  };
10760
- const getChatVirtualDom = (sessions, selectedSessionId, composerValue, openRouterApiKeyInput, viewMode, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, openApiApiKeyInput, openRouterApiKeyState, composerHeight, composerFontSize, composerFontFamily, composerLineHeight, chatListScrollTop, messagesScrollTop, composerDropActive = false, composerDropEnabled = true, projects = [], projectExpandedIds = [], selectedProjectId = '', projectListScrollTop = 0, voiceDictationEnabled = false, useChatMathWorker = false, parsedMessages, authEnabled = false, authStatus = 'signed-out', authErrorMessage = '') => {
10761
- const effectiveParsedMessages = parsedMessages || getFallbackParsedMessages(sessions);
11218
+ const getChatVirtualDom = options => {
11219
+ const {
11220
+ authEnabled = false,
11221
+ authErrorMessage = '',
11222
+ authStatus = 'signed-out',
11223
+ chatListScrollTop,
11224
+ composerDropActive = false,
11225
+ composerDropEnabled = true,
11226
+ composerFontFamily,
11227
+ composerFontSize,
11228
+ composerHeight,
11229
+ composerLineHeight,
11230
+ composerValue,
11231
+ messagesScrollTop,
11232
+ models,
11233
+ openApiApiKeyInput,
11234
+ openRouterApiKeyInput,
11235
+ openRouterApiKeyState,
11236
+ parsedMessages: parsedMessagesInput,
11237
+ projectExpandedIds = [],
11238
+ projectListScrollTop = 0,
11239
+ projects = [],
11240
+ runMode,
11241
+ selectedModelId,
11242
+ selectedProjectId = '',
11243
+ selectedSessionId,
11244
+ sessions,
11245
+ showRunMode,
11246
+ todoListToolEnabled,
11247
+ tokensMax,
11248
+ tokensUsed,
11249
+ usageOverviewEnabled,
11250
+ useChatMathWorker = false,
11251
+ viewMode,
11252
+ voiceDictationEnabled = false
11253
+ } = options;
11254
+ const parsedMessages = parsedMessagesInput ?? getFallbackParsedMessages(sessions);
11255
+ const todoListItems = getTodoListItems(sessions, selectedSessionId);
10762
11256
  switch (viewMode) {
10763
11257
  case 'chat-focus':
10764
- return getChatModeChatFocusVirtualDom(sessions, selectedSessionId, composerValue, openRouterApiKeyInput, openApiApiKeyInput, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, openRouterApiKeyState, composerHeight, composerFontSize, composerFontFamily, composerLineHeight, messagesScrollTop, composerDropActive, composerDropEnabled, projects, projectExpandedIds, selectedProjectId, projectListScrollTop, voiceDictationEnabled, useChatMathWorker, effectiveParsedMessages, authEnabled, authStatus, authErrorMessage);
11258
+ return getChatModeChatFocusVirtualDom({
11259
+ authEnabled,
11260
+ authErrorMessage,
11261
+ authStatus,
11262
+ composerDropActive,
11263
+ composerDropEnabled,
11264
+ composerFontFamily,
11265
+ composerFontSize,
11266
+ composerHeight,
11267
+ composerLineHeight,
11268
+ composerValue,
11269
+ messagesScrollTop,
11270
+ models,
11271
+ openApiApiKeyInput,
11272
+ openRouterApiKeyInput,
11273
+ openRouterApiKeyState,
11274
+ parsedMessages,
11275
+ projectExpandedIds,
11276
+ projectListScrollTop,
11277
+ projects,
11278
+ runMode,
11279
+ selectedModelId,
11280
+ selectedProjectId,
11281
+ selectedSessionId,
11282
+ sessions,
11283
+ showRunMode,
11284
+ todoListItems,
11285
+ todoListToolEnabled,
11286
+ tokensMax,
11287
+ tokensUsed,
11288
+ usageOverviewEnabled,
11289
+ useChatMathWorker,
11290
+ voiceDictationEnabled
11291
+ });
10765
11292
  case 'detail':
10766
- return getChatModeDetailVirtualDom(sessions, selectedSessionId, composerValue, openRouterApiKeyInput, openApiApiKeyInput, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, openRouterApiKeyState, composerHeight, composerFontSize, composerFontFamily, composerLineHeight, messagesScrollTop, composerDropActive, composerDropEnabled, voiceDictationEnabled, useChatMathWorker, effectiveParsedMessages, authEnabled, authStatus, authErrorMessage);
11293
+ return getChatModeDetailVirtualDom({
11294
+ authEnabled,
11295
+ authErrorMessage,
11296
+ authStatus,
11297
+ composerDropActive,
11298
+ composerDropEnabled,
11299
+ composerFontFamily,
11300
+ composerFontSize,
11301
+ composerHeight,
11302
+ composerLineHeight,
11303
+ composerValue,
11304
+ messagesScrollTop,
11305
+ models,
11306
+ openApiApiKeyInput,
11307
+ openRouterApiKeyInput,
11308
+ openRouterApiKeyState,
11309
+ parsedMessages,
11310
+ runMode,
11311
+ selectedModelId,
11312
+ selectedSessionId,
11313
+ sessions,
11314
+ showRunMode,
11315
+ todoListItems,
11316
+ todoListToolEnabled,
11317
+ tokensMax,
11318
+ tokensUsed,
11319
+ usageOverviewEnabled,
11320
+ useChatMathWorker,
11321
+ voiceDictationEnabled
11322
+ });
10767
11323
  case 'list':
10768
- return getChatModeListVirtualDom(sessions, selectedSessionId, composerValue, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, composerHeight, composerFontSize, composerFontFamily, composerLineHeight, chatListScrollTop, composerDropActive, composerDropEnabled, voiceDictationEnabled, authEnabled, authStatus, authErrorMessage);
11324
+ return getChatModeListVirtualDom({
11325
+ authEnabled,
11326
+ authErrorMessage,
11327
+ authStatus,
11328
+ chatListScrollTop,
11329
+ composerDropActive,
11330
+ composerDropEnabled,
11331
+ composerFontFamily,
11332
+ composerFontSize,
11333
+ composerHeight,
11334
+ composerLineHeight,
11335
+ composerValue,
11336
+ models,
11337
+ runMode,
11338
+ selectedModelId,
11339
+ selectedSessionId,
11340
+ sessions,
11341
+ showRunMode,
11342
+ todoListItems,
11343
+ todoListToolEnabled,
11344
+ tokensMax,
11345
+ tokensUsed,
11346
+ usageOverviewEnabled,
11347
+ voiceDictationEnabled
11348
+ });
10769
11349
  default:
10770
11350
  return getChatModeUnsupportedVirtualDom();
10771
11351
  }
@@ -10794,10 +11374,13 @@ const renderItems = (oldState, newState) => {
10794
11374
  projectExpandedIds,
10795
11375
  projectListScrollTop,
10796
11376
  projects,
11377
+ runMode,
10797
11378
  selectedModelId,
10798
11379
  selectedProjectId,
10799
11380
  selectedSessionId,
10800
11381
  sessions,
11382
+ showRunMode,
11383
+ todoListToolEnabled,
10801
11384
  tokensMax,
10802
11385
  tokensUsed,
10803
11386
  uid,
@@ -10809,7 +11392,41 @@ const renderItems = (oldState, newState) => {
10809
11392
  if (initial) {
10810
11393
  return [SetDom2, uid, []];
10811
11394
  }
10812
- const dom = getChatVirtualDom(sessions, selectedSessionId, composerValue, openRouterApiKeyInput, viewMode, models, selectedModelId, usageOverviewEnabled, tokensUsed, tokensMax, openApiApiKeyInput, openRouterApiKeyState, composerHeight, composerFontSize, composerFontFamily, composerLineHeight, chatListScrollTop, messagesScrollTop, composerDropActive, composerDropEnabled, projects, projectExpandedIds, selectedProjectId, projectListScrollTop, voiceDictationEnabled, useChatMathWorker, parsedMessages, authEnabled, authStatus, authErrorMessage);
11395
+ const dom = getChatVirtualDom({
11396
+ authEnabled,
11397
+ authErrorMessage,
11398
+ authStatus,
11399
+ chatListScrollTop,
11400
+ composerDropActive,
11401
+ composerDropEnabled,
11402
+ composerFontFamily,
11403
+ composerFontSize,
11404
+ composerHeight,
11405
+ composerLineHeight,
11406
+ composerValue,
11407
+ messagesScrollTop,
11408
+ models,
11409
+ openApiApiKeyInput,
11410
+ openRouterApiKeyInput,
11411
+ openRouterApiKeyState,
11412
+ parsedMessages,
11413
+ projectExpandedIds,
11414
+ projectListScrollTop,
11415
+ projects,
11416
+ runMode,
11417
+ selectedModelId,
11418
+ selectedProjectId,
11419
+ selectedSessionId,
11420
+ sessions,
11421
+ showRunMode,
11422
+ todoListToolEnabled,
11423
+ tokensMax,
11424
+ tokensUsed,
11425
+ usageOverviewEnabled,
11426
+ useChatMathWorker,
11427
+ viewMode,
11428
+ voiceDictationEnabled
11429
+ });
10813
11430
  return [SetDom2, uid, dom];
10814
11431
  };
10815
11432
 
@@ -11013,6 +11630,9 @@ const renderEventListeners = () => {
11013
11630
  }, {
11014
11631
  name: HandleModelChange,
11015
11632
  params: ['handleModelChange', TargetValue]
11633
+ }, {
11634
+ name: HandleRunModeChange,
11635
+ params: ['handleRunModeChange', TargetValue]
11016
11636
  }, {
11017
11637
  name: HandleChatListScroll,
11018
11638
  params: ['handleChatListScroll', 'event.target.scrollTop']
@@ -11038,7 +11658,8 @@ const renderEventListeners = () => {
11038
11658
  params: ['handleKeyDown', Key, ShiftKey]
11039
11659
  }, {
11040
11660
  name: HandleSubmit,
11041
- params: ['handleSubmit']
11661
+ params: ['handleSubmit'],
11662
+ preventDefault: true
11042
11663
  }, {
11043
11664
  name: HandleMissingApiKeySubmit,
11044
11665
  params: ['handleMissingApiKeySubmit', 'event.submitter?.name || ""'],
@@ -11151,6 +11772,20 @@ const setEmitStreamingFunctionCallEvents = (state, emitStreamingFunctionCallEven
11151
11772
  };
11152
11773
  };
11153
11774
 
11775
+ const setQuestionToolEnabled = (state, questionToolEnabled) => {
11776
+ return {
11777
+ ...state,
11778
+ questionToolEnabled
11779
+ };
11780
+ };
11781
+
11782
+ const setShowRunMode = (state, showRunMode) => {
11783
+ return {
11784
+ ...state,
11785
+ showRunMode
11786
+ };
11787
+ };
11788
+
11154
11789
  const setStreamingEnabled = (state, streamingEnabled) => {
11155
11790
  return {
11156
11791
  ...state,
@@ -11158,6 +11793,13 @@ const setStreamingEnabled = (state, streamingEnabled) => {
11158
11793
  };
11159
11794
  };
11160
11795
 
11796
+ const setTodoListToolEnabled = (state, todoListToolEnabled) => {
11797
+ return {
11798
+ ...state,
11799
+ todoListToolEnabled
11800
+ };
11801
+ };
11802
+
11161
11803
  const setUseChatCoordinatorWorker = async (state, useChatCoordinatorWorker, persist = true) => {
11162
11804
  if (persist) {
11163
11805
  await update({
@@ -11247,6 +11889,7 @@ const commandMap = {
11247
11889
  'Chat.handleModelChange': wrapCommand(handleModelChange),
11248
11890
  'Chat.handleProjectListContextMenu': wrapCommand(handleProjectListContextMenu),
11249
11891
  'Chat.handleProjectListScroll': wrapCommand(handleProjectListScroll),
11892
+ 'Chat.handleRunModeChange': wrapCommand(handleRunModeChange),
11250
11893
  'Chat.handleSubmit': wrapCommand(handleSubmit),
11251
11894
  'Chat.initialize': initialize,
11252
11895
  'Chat.loadContent': wrapCommand(loadContent),
@@ -11272,7 +11915,10 @@ const commandMap = {
11272
11915
  'Chat.setChatList': wrapCommand(setChatList),
11273
11916
  'Chat.setEmitStreamingFunctionCallEvents': wrapCommand(setEmitStreamingFunctionCallEvents),
11274
11917
  'Chat.setOpenRouterApiKey': wrapCommand(setOpenRouterApiKey),
11918
+ 'Chat.setQuestionToolEnabled': wrapCommand(setQuestionToolEnabled),
11919
+ 'Chat.setShowRunMode': wrapCommand(setShowRunMode),
11275
11920
  'Chat.setStreamingEnabled': wrapCommand(setStreamingEnabled),
11921
+ 'Chat.setTodoListToolEnabled': wrapCommand(setTodoListToolEnabled),
11276
11922
  'Chat.setUseChatCoordinatorWorker': wrapCommand(setUseChatCoordinatorWorker),
11277
11923
  'Chat.setUseChatMathWorker': wrapCommand(setUseChatMathWorker),
11278
11924
  'Chat.setUseChatNetworkWorkerForRequests': wrapCommand(setUseChatNetworkWorkerForRequests),