@lvce-editor/static-server 0.100.22 → 0.100.24

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 (2546) hide show
  1. package/config.json +2537 -2444
  2. package/dist/static-server.js +1 -1
  3. package/package.json +1 -1
  4. package/static/372a290/css/App.css +6037 -0
  5. package/static/372a290/css/parts/ViewletExtensions.css +234 -0
  6. package/static/372a290/css/parts/ViewletRunningExtensions.css +176 -0
  7. package/static/372a290/extensions/builtin.language-basics-zig/LICENSE +21 -0
  8. package/static/372a290/extensions/builtin.language-basics-zig/README.md +12 -0
  9. package/static/372a290/extensions/builtin.language-basics-zig/extension.json +19 -0
  10. package/static/372a290/extensions/builtin.language-basics-zig/languageConfiguration.json +28 -0
  11. package/static/372a290/extensions/builtin.language-basics-zig/src/tokenizeZig.js +201 -0
  12. package/static/372a290/extensions/builtin.vscode-icons/extension.json +17 -0
  13. package/static/372a290/extensions/builtin.vscode-icons/icon-theme.json +5153 -0
  14. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_al_dal.svg +1 -0
  15. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_apache.svg +1 -0
  16. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_azurestreamanalytics.svg +1 -0
  17. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_brew.svg +1 -0
  18. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_cangjie.svg +1 -0
  19. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_clangd.svg +1 -0
  20. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_context7.svg +1 -0
  21. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_cue.svg +1 -0
  22. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_databricks.svg +1 -0
  23. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_dbt.svg +1 -0
  24. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_devenv.svg +1 -0
  25. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_doxyfile.svg +1 -0
  26. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_drizzle_orm.svg +1 -0
  27. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_duckdb.svg +1 -0
  28. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_flatbuffers.svg +1 -0
  29. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_fleet.svg +1 -0
  30. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_flowgorithm.svg +1 -0
  31. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_fritzing.svg +1 -0
  32. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_gemini.svg +1 -0
  33. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_godot.svg +1 -0
  34. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_huff.svg +1 -0
  35. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_hurl.svg +1 -0
  36. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_knex.svg +1 -0
  37. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_lemon.svg +1 -0
  38. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_cue.svg +1 -0
  39. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_devenv.svg +1 -0
  40. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_drizzle_orm.svg +1 -0
  41. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_duckdb.svg +1 -0
  42. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_huff.svg +1 -0
  43. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_mikro_orm.svg +1 -0
  44. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_opencode.svg +1 -0
  45. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_oxc.svg +1 -0
  46. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_railway.svg +1 -0
  47. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_readthedocs.svg +1 -0
  48. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_render.svg +1 -0
  49. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_rolldown.svg +1 -0
  50. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_skill.svg +1 -0
  51. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_tm.svg +1 -0
  52. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_trivy.svg +1 -0
  53. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_vite.svg +1 -0
  54. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_vitest.svg +1 -0
  55. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_warp.svg +1 -0
  56. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_wesl.svg +1 -0
  57. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_light_yaml.svg +1 -0
  58. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_lychee.svg +1 -0
  59. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_metro.svg +1 -0
  60. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_mikro_orm.svg +1 -0
  61. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_mise.svg +1 -0
  62. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_modernjs.svg +1 -0
  63. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_msw.svg +1 -0
  64. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_n64.svg +1 -0
  65. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_ndst.svg +1 -0
  66. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_opencode.svg +1 -0
  67. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_orval.svg +1 -0
  68. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_oxc.svg +1 -0
  69. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_parcel.svg +1 -0
  70. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_parquet.svg +1 -0
  71. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_pawn.svg +1 -0
  72. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_pixi.svg +1 -0
  73. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_postscript.svg +1 -0
  74. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_powerbi.svg +1 -0
  75. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_pypi.svg +1 -0
  76. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_pythonconfig.svg +1 -0
  77. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_qrc.svg +1 -0
  78. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_quokka.svg +1 -0
  79. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_railway.svg +1 -0
  80. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_readthedocs.svg +1 -0
  81. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_render.svg +1 -0
  82. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_rolldown.svg +1 -0
  83. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_ruff.svg +1 -0
  84. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_shellcheck.svg +1 -0
  85. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_skill.svg +1 -0
  86. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_sss.svg +1 -0
  87. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_textlint.svg +1 -0
  88. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_thinkscript.svg +1 -0
  89. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_tm.svg +1 -0
  90. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_tox.svg +1 -0
  91. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_tres.svg +1 -0
  92. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_trivy.svg +1 -0
  93. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_tscn.svg +1 -0
  94. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_vale.svg +1 -0
  95. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_vbproj.svg +1 -0
  96. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_vcxproj.svg +1 -0
  97. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_vite.svg +1 -0
  98. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_vitest.svg +1 -0
  99. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_warp.svg +1 -0
  100. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_wasp.svg +1 -0
  101. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_wesl.svg +1 -0
  102. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_xaml.svg +1 -0
  103. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_yaml.svg +1 -0
  104. package/static/372a290/extensions/builtin.vscode-icons/icons/file_type_zizmor.svg +1 -0
  105. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_databricks.svg +1 -0
  106. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_databricks_opened.svg +1 -0
  107. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_datadog.svg +1 -0
  108. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_devenv.svg +1 -0
  109. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_devenv_opened.svg +1 -0
  110. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_environments.svg +1 -0
  111. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_environments_opened.svg +1 -0
  112. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_gemini.svg +1 -0
  113. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_gemini_opened.svg +1 -0
  114. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_kiro.svg +1 -0
  115. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_kiro_opened.svg +1 -0
  116. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_light_devenv.svg +1 -0
  117. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_light_devenv_opened.svg +1 -0
  118. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_mediawiki.svg +1 -0
  119. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_mediawiki_opened.svg +1 -0
  120. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_mobile.svg +1 -0
  121. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_mobile_opened.svg +1 -0
  122. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_swagger.svg +1 -0
  123. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_swagger_opened.svg +1 -0
  124. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_wasp.svg +1 -0
  125. package/static/372a290/extensions/builtin.vscode-icons/icons/folder_type_wasp_opened.svg +1 -0
  126. package/static/372a290/manifest.json +26 -0
  127. package/static/372a290/packages/about-view-worker/dist/aboutWorkerMain.js +2592 -0
  128. package/static/372a290/packages/extension-detail-view-worker/dist/extensionDetailViewWorkerMain.js +7741 -0
  129. package/static/372a290/packages/extension-management-worker/dist/extensionManagementWorkerMain.js +4980 -0
  130. package/static/372a290/packages/extension-search-view-worker/dist/extensionSearchViewWorkerMain.js +5312 -0
  131. package/static/372a290/packages/main-area-worker/dist/mainAreaWorkerMain.js +8452 -0
  132. package/static/372a290/packages/output-view/dist/outputViewWorkerMain.js +2655 -0
  133. package/static/372a290/packages/problems-view/dist/problemsViewWorkerMain.js +3844 -0
  134. package/static/372a290/packages/quick-pick-worker/dist/quickPickWorkerMain.js +4811 -0
  135. package/static/372a290/packages/renderer-process/dist/rendererProcessMain.js +10611 -0
  136. package/static/372a290/packages/renderer-worker/dist/rendererWorkerMain.js +32438 -0
  137. package/static/372a290/packages/source-control-worker/dist/sourceControlWorkerMain.js +4061 -0
  138. package/static/372a290/packages/status-bar-worker/dist/statusBarWorkerMain.js +2058 -0
  139. package/static/372a290/packages/title-bar-worker/dist/titleBarWorkerMain.js +5527 -0
  140. package/static/index.html +4 -4
  141. package/static/ba49c92/css/App.css +0 -6037
  142. package/static/ba49c92/css/parts/ViewletExtensions.css +0 -234
  143. package/static/ba49c92/css/parts/ViewletRunningExtensions.css +0 -176
  144. package/static/ba49c92/extensions/builtin.vscode-icons/extension.json +0 -17
  145. package/static/ba49c92/extensions/builtin.vscode-icons/icon-theme.json +0 -4821
  146. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_al_dal.svg +0 -1
  147. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_apache.svg +0 -1
  148. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_gemini.svg +0 -1
  149. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_godot.svg +0 -1
  150. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_light_tm.svg +0 -1
  151. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_light_yaml.svg +0 -1
  152. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_ndst.svg +0 -1
  153. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_oxc.svg +0 -1
  154. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_rolldown.svg +0 -1
  155. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_shellcheck.svg +0 -1
  156. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_sss.svg +0 -1
  157. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_tm.svg +0 -1
  158. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_tox.svg +0 -1
  159. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_tres.svg +0 -1
  160. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_tscn.svg +0 -1
  161. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_vbproj.svg +0 -1
  162. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_vcxproj.svg +0 -1
  163. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_vite.svg +0 -1
  164. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_vitest.svg +0 -1
  165. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_xaml.svg +0 -1
  166. package/static/ba49c92/extensions/builtin.vscode-icons/icons/file_type_yaml.svg +0 -1
  167. package/static/ba49c92/extensions/builtin.vscode-icons/icons/folder_type_datadog.svg +0 -1
  168. package/static/ba49c92/extensions/builtin.vscode-icons/icons/folder_type_mediawiki.svg +0 -1
  169. package/static/ba49c92/extensions/builtin.vscode-icons/icons/folder_type_mediawiki_opened.svg +0 -1
  170. package/static/ba49c92/manifest.json +0 -26
  171. package/static/ba49c92/packages/about-view-worker/dist/aboutWorkerMain.js +0 -2552
  172. package/static/ba49c92/packages/extension-detail-view-worker/dist/extensionDetailViewWorkerMain.js +0 -7703
  173. package/static/ba49c92/packages/extension-management-worker/dist/extensionManagementWorkerMain.js +0 -4854
  174. package/static/ba49c92/packages/extension-search-view-worker/dist/extensionSearchViewWorkerMain.js +0 -5273
  175. package/static/ba49c92/packages/main-area-worker/dist/mainAreaWorkerMain.js +0 -8447
  176. package/static/ba49c92/packages/output-view/dist/outputViewWorkerMain.js +0 -2614
  177. package/static/ba49c92/packages/problems-view/dist/problemsViewWorkerMain.js +0 -3802
  178. package/static/ba49c92/packages/quick-pick-worker/dist/quickPickWorkerMain.js +0 -4756
  179. package/static/ba49c92/packages/renderer-process/dist/rendererProcessMain.js +0 -10611
  180. package/static/ba49c92/packages/renderer-worker/dist/rendererWorkerMain.js +0 -32334
  181. package/static/ba49c92/packages/source-control-worker/dist/sourceControlWorkerMain.js +0 -4020
  182. package/static/ba49c92/packages/status-bar-worker/dist/statusBarWorkerMain.js +0 -1945
  183. package/static/ba49c92/packages/title-bar-worker/dist/titleBarWorkerMain.js +0 -5486
  184. /package/static/{ba49c92 → 372a290}/LICENSE +0 -0
  185. /package/static/{ba49c92 → 372a290}/config/colorTheme.json +0 -0
  186. /package/static/{ba49c92 → 372a290}/config/defaultSettings.json +0 -0
  187. /package/static/{ba49c92 → 372a290}/config/fileMap.json +0 -0
  188. /package/static/{ba49c92 → 372a290}/config/webExtensions.json +0 -0
  189. /package/static/{ba49c92 → 372a290}/css/parts/AdditionalDetails.css +0 -0
  190. /package/static/{ba49c92 → 372a290}/css/parts/Animation.css +0 -0
  191. /package/static/{ba49c92 → 372a290}/css/parts/BrowserScrollBar.css +0 -0
  192. /package/static/{ba49c92 → 372a290}/css/parts/Category.css +0 -0
  193. /package/static/{ba49c92 → 372a290}/css/parts/Changelog.css +0 -0
  194. /package/static/{ba49c92 → 372a290}/css/parts/DebugButtons.css +0 -0
  195. /package/static/{ba49c92 → 372a290}/css/parts/DebugChatDetails.css +0 -0
  196. /package/static/{ba49c92 → 372a290}/css/parts/DebugChatDetailsClose.css +0 -0
  197. /package/static/{ba49c92 → 372a290}/css/parts/DebugChatImagePreview.css +0 -0
  198. /package/static/{ba49c92 → 372a290}/css/parts/DebugChatTable.css +0 -0
  199. /package/static/{ba49c92 → 372a290}/css/parts/DebugChatTimeline.css +0 -0
  200. /package/static/{ba49c92 → 372a290}/css/parts/DebugChatTop.css +0 -0
  201. /package/static/{ba49c92 → 372a290}/css/parts/DebugValue.css +0 -0
  202. /package/static/{ba49c92 → 372a290}/css/parts/E2eTest.css +0 -0
  203. /package/static/{ba49c92 → 372a290}/css/parts/E2eTests.css +0 -0
  204. /package/static/{ba49c92 → 372a290}/css/parts/EditorHover.css +0 -0
  205. /package/static/{ba49c92 → 372a290}/css/parts/EditorMessage.css +0 -0
  206. /package/static/{ba49c92 → 372a290}/css/parts/FeatureContent.css +0 -0
  207. /package/static/{ba49c92 → 372a290}/css/parts/Features.css +0 -0
  208. /package/static/{ba49c92 → 372a290}/css/parts/ImagePreview.css +0 -0
  209. /package/static/{ba49c92 → 372a290}/css/parts/InlineDiffEditor.css +0 -0
  210. /package/static/{ba49c92 → 372a290}/css/parts/InputBadge.css +0 -0
  211. /package/static/{ba49c92 → 372a290}/css/parts/Key.css +0 -0
  212. /package/static/{ba49c92 → 372a290}/css/parts/KeyBindingsHeader.css +0 -0
  213. /package/static/{ba49c92 → 372a290}/css/parts/KeyBindingsTable.css +0 -0
  214. /package/static/{ba49c92 → 372a290}/css/parts/LegacyDialog.css +0 -0
  215. /package/static/{ba49c92 → 372a290}/css/parts/Markdown.css +0 -0
  216. /package/static/{ba49c92 → 372a290}/css/parts/Message.css +0 -0
  217. /package/static/{ba49c92 → 372a290}/css/parts/Preview.css +0 -0
  218. /package/static/{ba49c92 → 372a290}/css/parts/ScrollToTop.css +0 -0
  219. /package/static/{ba49c92 → 372a290}/css/parts/SettingsHeader.css +0 -0
  220. /package/static/{ba49c92 → 372a290}/css/parts/SettingsItems.css +0 -0
  221. /package/static/{ba49c92 → 372a290}/css/parts/SettingsSideBar.css +0 -0
  222. /package/static/{ba49c92 → 372a290}/css/parts/SourceControlListItem.css +0 -0
  223. /package/static/{ba49c92 → 372a290}/css/parts/Table.css +0 -0
  224. /package/static/{ba49c92 → 372a290}/css/parts/ViewletAbout.css +0 -0
  225. /package/static/{ba49c92 → 372a290}/css/parts/ViewletBrowserViewOverview.css +0 -0
  226. /package/static/{ba49c92 → 372a290}/css/parts/ViewletDebugConsole.css +0 -0
  227. /package/static/{ba49c92 → 372a290}/css/parts/ViewletDefineKeyBinding.css +0 -0
  228. /package/static/{ba49c92 → 372a290}/css/parts/ViewletDiffEditor.css +0 -0
  229. /package/static/{ba49c92 → 372a290}/css/parts/ViewletEditorWidgetError.css +0 -0
  230. /package/static/{ba49c92 → 372a290}/css/parts/ViewletExtensionDetail.css +0 -0
  231. /package/static/{ba49c92 → 372a290}/css/parts/ViewletExtensionDetailHeader.css +0 -0
  232. /package/static/{ba49c92 → 372a290}/css/parts/ViewletExtensionDetailTabs.css +0 -0
  233. /package/static/{ba49c92 → 372a290}/css/parts/ViewletIframeInspector.css +0 -0
  234. /package/static/{ba49c92 → 372a290}/css/parts/ViewletKeyBindings.css +0 -0
  235. /package/static/{ba49c92 → 372a290}/css/parts/ViewletLanguageModels.css +0 -0
  236. /package/static/{ba49c92 → 372a290}/css/parts/ViewletMedia.css +0 -0
  237. /package/static/{ba49c92 → 372a290}/css/parts/ViewletOutput.css +0 -0
  238. /package/static/{ba49c92 → 372a290}/css/parts/ViewletPanel.css +0 -0
  239. /package/static/{ba49c92 → 372a290}/css/parts/ViewletPanelTabs.css +0 -0
  240. /package/static/{ba49c92 → 372a290}/css/parts/ViewletPdf.css +0 -0
  241. /package/static/{ba49c92 → 372a290}/css/parts/ViewletProblems.css +0 -0
  242. /package/static/{ba49c92 → 372a290}/css/parts/ViewletProcessExplorer.css +0 -0
  243. /package/static/{ba49c92 → 372a290}/css/parts/ViewletReferences.css +0 -0
  244. /package/static/{ba49c92 → 372a290}/css/parts/ViewletRunAndDebug.css +0 -0
  245. /package/static/{ba49c92 → 372a290}/css/parts/ViewletScreenCapture.css +0 -0
  246. /package/static/{ba49c92 → 372a290}/css/parts/ViewletSearch.css +0 -0
  247. /package/static/{ba49c92 → 372a290}/css/parts/ViewletSettings.css +0 -0
  248. /package/static/{ba49c92 → 372a290}/css/parts/ViewletSimpleBrowser.css +0 -0
  249. /package/static/{ba49c92 → 372a290}/css/parts/ViewletSourceControl.css +0 -0
  250. /package/static/{ba49c92 → 372a290}/css/parts/ViewletStorage.css +0 -0
  251. /package/static/{ba49c92 → 372a290}/css/parts/ViewletTerminal.css +0 -0
  252. /package/static/{ba49c92 → 372a290}/css/parts/ViewletTerminalTabs.css +0 -0
  253. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-bat/README.md +0 -0
  254. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-bat/extension.json +0 -0
  255. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-bat/languageConfiguration.json +0 -0
  256. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-bat/src/tokenizeBat.js +0 -0
  257. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-c/README.md +0 -0
  258. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-c/extension.json +0 -0
  259. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-c/src/tokenizeC.js +0 -0
  260. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-coffeescript/README.md +0 -0
  261. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-coffeescript/extension.json +0 -0
  262. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-coffeescript/src/tokenizeCoffeeScript.js +0 -0
  263. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cpp/README.md +0 -0
  264. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cpp/extension.json +0 -0
  265. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cpp/languageConfiguration.json +0 -0
  266. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cpp/src/tokenizeCpp.js +0 -0
  267. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cson/README.md +0 -0
  268. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cson/extension.json +0 -0
  269. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cson/languageConfiguration.json +0 -0
  270. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-cson/src/tokenizeCson.js +0 -0
  271. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-css/README.md +0 -0
  272. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-css/extension.json +0 -0
  273. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-css/languageConfiguration.json +0 -0
  274. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-css/src/tokenizeCss.js +0 -0
  275. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-dart/README.md +0 -0
  276. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-dart/extension.json +0 -0
  277. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-dart/src/tokenizeDart.js +0 -0
  278. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-desktop/README.md +0 -0
  279. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-desktop/extension.json +0 -0
  280. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-desktop/src/tokenizeDesktop.js +0 -0
  281. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-docker/README.md +0 -0
  282. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-docker/extension.json +0 -0
  283. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-docker/src/tokenizeDockerfile.js +0 -0
  284. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-dotenv/README.md +0 -0
  285. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-dotenv/extension.json +0 -0
  286. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-dotenv/src/tokenizeDotenv.js +0 -0
  287. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-editorconfig/README.md +0 -0
  288. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-editorconfig/extension.json +0 -0
  289. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-editorconfig/src/tokenizeEditorConfig.js +0 -0
  290. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-elixir/README.md +0 -0
  291. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-elixir/extension.json +0 -0
  292. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-elixir/src/tokenizeElixir.js +0 -0
  293. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-elm/README.md +0 -0
  294. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-elm/extension.json +0 -0
  295. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-elm/src/tokenizeElm.js +0 -0
  296. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-erlang/README.md +0 -0
  297. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-erlang/extension.json +0 -0
  298. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-erlang/languageConfiguration.json +0 -0
  299. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-erlang/src/tokenizeErlang.js +0 -0
  300. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-gitattributes/README.md +0 -0
  301. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-gitattributes/extension.json +0 -0
  302. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-gitattributes/src/tokenizeGitAttributes.js +0 -0
  303. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-gn/README.md +0 -0
  304. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-gn/extension.json +0 -0
  305. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-gn/src/tokenizeGn.js +0 -0
  306. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-go/README.md +0 -0
  307. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-go/extension.json +0 -0
  308. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-go/src/tokenizeGo.js +0 -0
  309. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-graphql/README.md +0 -0
  310. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-graphql/extension.json +0 -0
  311. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-graphql/src/tokenizeGraphql.js +0 -0
  312. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-html/README.md +0 -0
  313. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-html/extension.json +0 -0
  314. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-html/languageConfiguration.json +0 -0
  315. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-html/src/tokenizeHtml.js +0 -0
  316. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-java/README.md +0 -0
  317. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-java/extension.json +0 -0
  318. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-java/languageConfiguration.json +0 -0
  319. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-java/src/tokenizeJava.js +0 -0
  320. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-javascript/README.md +0 -0
  321. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-javascript/extension.json +0 -0
  322. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-javascript/languageConfiguration.json +0 -0
  323. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-javascript/src/tokenizeJavaScript.js +0 -0
  324. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-json/README.md +0 -0
  325. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-json/extension.json +0 -0
  326. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-json/src/tokenizeJson.js +0 -0
  327. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-json5/README.md +0 -0
  328. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-json5/extension.json +0 -0
  329. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-json5/src/tokenizeJson5.js +0 -0
  330. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-jsx/README.md +0 -0
  331. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-jsx/extension.json +0 -0
  332. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-jsx/src/tokenizeJsx.js +0 -0
  333. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-julia/README.md +0 -0
  334. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-julia/extension.json +0 -0
  335. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-julia/src/tokenizeJulia.js +0 -0
  336. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-kotlin/README.md +0 -0
  337. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-kotlin/extension.json +0 -0
  338. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-kotlin/src/tokenizeKotlin.js +0 -0
  339. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-less/LICENSE +0 -0
  340. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-less/README.md +0 -0
  341. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-less/extension.json +0 -0
  342. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-less/languageConfiguration.json +0 -0
  343. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-less/src/tokenizeLess.js +0 -0
  344. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-markdown/README.md +0 -0
  345. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-markdown/extension.json +0 -0
  346. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-markdown/src/tokenizeMarkdown.js +0 -0
  347. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-mdx/README.md +0 -0
  348. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-mdx/extension.json +0 -0
  349. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-mdx/src/tokenizeMdx.js +0 -0
  350. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-nix/README.md +0 -0
  351. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-nix/extension.json +0 -0
  352. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-nix/languageConfiguration.json +0 -0
  353. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-nix/src/tokenizeNix.js +0 -0
  354. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-nvmrc/README.md +0 -0
  355. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-nvmrc/extension.json +0 -0
  356. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-nvmrc/src/tokenizeNvmrc.js +0 -0
  357. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-perl/README.md +0 -0
  358. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-perl/extension.json +0 -0
  359. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-perl/src/tokenizePerl.js +0 -0
  360. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-plaintext/README.md +0 -0
  361. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-plaintext/extension.json +0 -0
  362. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-plaintext/src/tokenizePlaintext.js +0 -0
  363. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-powershell/README.md +0 -0
  364. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-powershell/extension.json +0 -0
  365. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-powershell/src/tokenizePowershell.js +0 -0
  366. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-python/README.md +0 -0
  367. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-python/extension.json +0 -0
  368. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-python/languageConfiguration.json +0 -0
  369. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-python/src/tokenizePython.js +0 -0
  370. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-r/README.md +0 -0
  371. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-r/extension.json +0 -0
  372. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-r/src/tokenizeR.js +0 -0
  373. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-ruby/README.md +0 -0
  374. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-ruby/extension.json +0 -0
  375. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-ruby/src/tokenizeRuby.js +0 -0
  376. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-rust/LICENSE +0 -0
  377. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-rust/README.md +0 -0
  378. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-rust/extension.json +0 -0
  379. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-rust/languageConfiguration.json +0 -0
  380. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-rust/src/tokenizeRust.js +0 -0
  381. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-scss/README.md +0 -0
  382. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-scss/extension.json +0 -0
  383. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-scss/languageConfiguration.json +0 -0
  384. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-scss/src/tokenizeScss.js +0 -0
  385. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-shellscript/README.md +0 -0
  386. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-shellscript/extension.json +0 -0
  387. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-shellscript/src/tokenizeShellScript.js +0 -0
  388. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-svelte/README.md +0 -0
  389. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-svelte/extension.json +0 -0
  390. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-svelte/src/tokenizeSvelte.js +0 -0
  391. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-terraform/README.md +0 -0
  392. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-terraform/extension.json +0 -0
  393. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-terraform/src/tokenizeTerraform.js +0 -0
  394. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-toml/README.md +0 -0
  395. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-toml/extension.json +0 -0
  396. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-toml/src/tokenizeToml.js +0 -0
  397. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-typescript/README.md +0 -0
  398. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-typescript/extension.json +0 -0
  399. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-typescript/languageConfiguration.json +0 -0
  400. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-typescript/src/tokenizeTypeScript.js +0 -0
  401. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-typescript/src/tokenizeTypeScriptReact.js +0 -0
  402. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-vue/README.md +0 -0
  403. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-vue/extension.json +0 -0
  404. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-vue/src/tokenizeVue.js +0 -0
  405. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-wgsl/README.md +0 -0
  406. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-wgsl/extension.json +0 -0
  407. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-wgsl/languageConfiguration.json +0 -0
  408. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-wgsl/src/tokenizeWgsl.js +0 -0
  409. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-xml/README.md +0 -0
  410. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-xml/extension.json +0 -0
  411. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-xml/src/tokenizeXml.js +0 -0
  412. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-yaml/README.md +0 -0
  413. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-yaml/extension.json +0 -0
  414. /package/static/{ba49c92 → 372a290}/extensions/builtin.language-basics-yaml/src/tokenizeYaml.js +0 -0
  415. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-atom-one-dark/README.md +0 -0
  416. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-atom-one-dark/color-theme.json +0 -0
  417. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-atom-one-dark/extension.json +0 -0
  418. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-atom-one-dark/images/demo.png +0 -0
  419. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-ayu/README.md +0 -0
  420. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-ayu/color-theme.json +0 -0
  421. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-ayu/extension.json +0 -0
  422. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-ayu/images/demo.png +0 -0
  423. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-cobalt2/README.md +0 -0
  424. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-cobalt2/color-theme.json +0 -0
  425. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-cobalt2/extension.json +0 -0
  426. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-cobalt2/images/demo.png +0 -0
  427. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-cobalt2/images/logo.png +0 -0
  428. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-gruvbox/README.md +0 -0
  429. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-gruvbox/color-theme.json +0 -0
  430. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-gruvbox/extension.json +0 -0
  431. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-gruvbox/images/demo.png +0 -0
  432. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-material/README.md +0 -0
  433. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-material/color-theme.json +0 -0
  434. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-material/extension.json +0 -0
  435. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-monokai/README.md +0 -0
  436. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-monokai/color-theme.json +0 -0
  437. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-monokai/extension.json +0 -0
  438. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-noctis-uva/README.md +0 -0
  439. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-noctis-uva/color-theme.json +0 -0
  440. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-noctis-uva/extension.json +0 -0
  441. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-noctis-uva/images/demo.png +0 -0
  442. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-palenight/README.md +0 -0
  443. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-palenight/color-theme.json +0 -0
  444. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-palenight/extension.json +0 -0
  445. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-palenight/images/demo.png +0 -0
  446. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-slime/README.md +0 -0
  447. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-slime/color-theme.json +0 -0
  448. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-slime/extension.json +0 -0
  449. /package/static/{ba49c92 → 372a290}/extensions/builtin.theme-slime/icon.png +0 -0
  450. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/README.md +0 -0
  451. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icon.png +0 -0
  452. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/default_file.svg +0 -0
  453. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/default_folder.svg +0 -0
  454. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/default_folder_opened.svg +0 -0
  455. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/default_root_folder.svg +0 -0
  456. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/default_root_folder_opened.svg +0 -0
  457. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_access.svg +0 -0
  458. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_access2.svg +0 -0
  459. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_actionscript.svg +0 -0
  460. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_actionscript2.svg +0 -0
  461. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ada.svg +0 -0
  462. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_advpl.svg +0 -0
  463. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_affectscript.svg +0 -0
  464. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_affinity.svg +0 -0
  465. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_affinitydesigner.svg +0 -0
  466. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_affinityphoto.svg +0 -0
  467. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_affinitypublisher.svg +0 -0
  468. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_agda.svg +0 -0
  469. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_agents.svg +0 -0
  470. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ai.svg +0 -0
  471. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ai2.svg +0 -0
  472. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_al.svg +0 -0
  473. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_alchemy.svg +0 -0
  474. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_allcontributors.svg +0 -0
  475. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_alloy.svg +0 -0
  476. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_allure.svg +0 -0
  477. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_angular.svg +0 -0
  478. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ansible.svg +0 -0
  479. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_antlers_html.svg +0 -0
  480. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_antlr.svg +0 -0
  481. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_anyscript.svg +0 -0
  482. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_apex.svg +0 -0
  483. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_api_extractor.svg +0 -0
  484. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_apib.svg +0 -0
  485. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_apib2.svg +0 -0
  486. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_apl.svg +0 -0
  487. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_applescript.svg +0 -0
  488. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_appscript.svg +0 -0
  489. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_appsemble.svg +0 -0
  490. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_appveyor.svg +0 -0
  491. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_arduino.svg +0 -0
  492. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_asciidoc.svg +0 -0
  493. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_aseprite.svg +0 -0
  494. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_asp.svg +0 -0
  495. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_aspx.svg +0 -0
  496. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_assembly.svg +0 -0
  497. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_assembly_script.svg +0 -0
  498. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_astro.svg +0 -0
  499. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_astroconfig.svg +0 -0
  500. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_atom.svg +0 -0
  501. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ats.svg +0 -0
  502. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_attw.svg +0 -0
  503. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_audio.svg +0 -0
  504. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_aurelia.svg +0 -0
  505. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_autohotkey.svg +0 -0
  506. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_autoit.svg +0 -0
  507. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_avif.svg +0 -0
  508. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_avro.svg +0 -0
  509. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_awk.svg +0 -0
  510. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_aws.svg +0 -0
  511. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_azure.svg +0 -0
  512. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_azurepipelines.svg +0 -0
  513. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_babel.svg +0 -0
  514. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_babel2.svg +0 -0
  515. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bak.svg +0 -0
  516. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ballerina.svg +0 -0
  517. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bat.svg +0 -0
  518. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bats.svg +0 -0
  519. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bazaar.svg +0 -0
  520. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bazel.svg +0 -0
  521. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bazel_ignore.svg +0 -0
  522. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bazel_version.svg +0 -0
  523. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_befunge.svg +0 -0
  524. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bicep.svg +0 -0
  525. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_biml.svg +0 -0
  526. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_binary.svg +0 -0
  527. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_biome.svg +0 -0
  528. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bitbucketpipeline.svg +0 -0
  529. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bithound.svg +0 -0
  530. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_blade.svg +0 -0
  531. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_blender.svg +0 -0
  532. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_blitzbasic.svg +0 -0
  533. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bolt.svg +0 -0
  534. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bosque.svg +0 -0
  535. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bower.svg +0 -0
  536. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bower2.svg +0 -0
  537. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_browserslist.svg +0 -0
  538. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bruno.svg +0 -0
  539. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_buckbuild.svg +0 -0
  540. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_buf.svg +0 -0
  541. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bun.svg +0 -0
  542. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bundlemon.svg +0 -0
  543. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bundler.svg +0 -0
  544. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_bunfig.svg +0 -0
  545. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_c.svg +0 -0
  546. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_c2.svg +0 -0
  547. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_c3.svg +0 -0
  548. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_c_al.svg +0 -0
  549. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cabal.svg +0 -0
  550. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_caddy.svg +0 -0
  551. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cake.svg +0 -0
  552. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cakephp.svg +0 -0
  553. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_capacitor.svg +0 -0
  554. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_capnp.svg +0 -0
  555. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cargo.svg +0 -0
  556. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_casc.svg +0 -0
  557. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cddl.svg +0 -0
  558. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cert.svg +0 -0
  559. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ceylon.svg +0 -0
  560. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cf.svg +0 -0
  561. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cf2.svg +0 -0
  562. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cfc.svg +0 -0
  563. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cfc2.svg +0 -0
  564. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cfm.svg +0 -0
  565. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cfm2.svg +0 -0
  566. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_changie.svg +0 -0
  567. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cheader.svg +0 -0
  568. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_chef.svg +0 -0
  569. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_chef_cookbook.svg +0 -0
  570. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_circleci.svg +0 -0
  571. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_circom.svg +0 -0
  572. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_class.svg +0 -0
  573. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_claude.svg +0 -0
  574. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_clojure.svg +0 -0
  575. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_clojurescript.svg +0 -0
  576. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cloudflare.svg +0 -0
  577. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cloudfoundry.svg +0 -0
  578. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cmake.svg +0 -0
  579. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cobol.svg +0 -0
  580. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_codacy.svg +0 -0
  581. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_codeclimate.svg +0 -0
  582. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_codecov.svg +0 -0
  583. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_codekit.svg +0 -0
  584. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_codemagic.svg +0 -0
  585. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_codeowners.svg +0 -0
  586. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_codeql.svg +0 -0
  587. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_coderabbit.svg +0 -0
  588. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_coffeelint.svg +0 -0
  589. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_coffeescript.svg +0 -0
  590. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_commitizen.svg +0 -0
  591. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_commitlint.svg +0 -0
  592. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_compass.svg +0 -0
  593. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_composer.svg +0 -0
  594. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_conan.svg +0 -0
  595. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_conda.svg +0 -0
  596. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_config.svg +0 -0
  597. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_confluence.svg +0 -0
  598. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_copilot.svg +0 -0
  599. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_coverage.svg +0 -0
  600. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_coveralls.svg +0 -0
  601. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cpp.svg +0 -0
  602. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cpp2.svg +0 -0
  603. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cpp3.svg +0 -0
  604. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cppheader.svg +0 -0
  605. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_craco.svg +0 -0
  606. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_crowdin.svg +0 -0
  607. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_crystal.svg +0 -0
  608. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_csharp.svg +0 -0
  609. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_csharp2.svg +0 -0
  610. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cspell.svg +0 -0
  611. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_csproj.svg +0 -0
  612. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_css.svg +0 -0
  613. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_css2.svg +0 -0
  614. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_css2map.svg +0 -0
  615. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_csscomb.svg +0 -0
  616. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_csslint.svg +0 -0
  617. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cssmap.svg +0 -0
  618. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cucumber.svg +0 -0
  619. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cuda.svg +0 -0
  620. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cursorrules.svg +0 -0
  621. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cvs.svg +0 -0
  622. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cypress.svg +0 -0
  623. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cypress_spec.svg +0 -0
  624. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_cython.svg +0 -0
  625. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dal.svg +0 -0
  626. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_darcs.svg +0 -0
  627. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dartlang.svg +0 -0
  628. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dartlang_generated.svg +0 -0
  629. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dartlang_ignore.svg +0 -0
  630. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_datadog.svg +0 -0
  631. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_db.svg +0 -0
  632. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_debian.svg +0 -0
  633. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_delphi.svg +0 -0
  634. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_deno.svg +0 -0
  635. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_denoify.svg +0 -0
  636. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dependabot.svg +0 -0
  637. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dependencies.svg +0 -0
  638. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_design_tokens.svg +0 -0
  639. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_devcontainer.svg +0 -0
  640. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_devvit.svg +0 -0
  641. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dhall.svg +0 -0
  642. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_diff.svg +0 -0
  643. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_django.svg +0 -0
  644. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dlang.svg +0 -0
  645. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_docker.svg +0 -0
  646. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_docker2.svg +0 -0
  647. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dockertest.svg +0 -0
  648. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dockertest2.svg +0 -0
  649. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_docpad.svg +0 -0
  650. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_docusaurus.svg +0 -0
  651. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_docz.svg +0 -0
  652. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dojo.svg +0 -0
  653. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_doppler.svg +0 -0
  654. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dotenv.svg +0 -0
  655. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dotjs.svg +0 -0
  656. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_doxygen.svg +0 -0
  657. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_drawio.svg +0 -0
  658. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_drone.svg +0 -0
  659. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_drools.svg +0 -0
  660. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dtd.svg +0 -0
  661. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dune.svg +0 -0
  662. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dustjs.svg +0 -0
  663. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dvc.svg +0 -0
  664. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_dylan.svg +0 -0
  665. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_earthly.svg +0 -0
  666. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_eas-metadata.svg +0 -0
  667. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_edge.svg +0 -0
  668. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_edge2.svg +0 -0
  669. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_editorconfig.svg +0 -0
  670. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_eex.svg +0 -0
  671. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ejs.svg +0 -0
  672. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_elastic.svg +0 -0
  673. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_elasticbeanstalk.svg +0 -0
  674. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_electron.svg +0 -0
  675. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_eleventy.svg +0 -0
  676. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_eleventy2.svg +0 -0
  677. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_elixir.svg +0 -0
  678. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_elm.svg +0 -0
  679. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_elm2.svg +0 -0
  680. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_emacs.svg +0 -0
  681. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ember.svg +0 -0
  682. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ensime.svg +0 -0
  683. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_eps.svg +0 -0
  684. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_epub.svg +0 -0
  685. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_erb.svg +0 -0
  686. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_erlang.svg +0 -0
  687. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_erlang2.svg +0 -0
  688. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_esbuild.svg +0 -0
  689. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_eslint.svg +0 -0
  690. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_eslint2.svg +0 -0
  691. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_esphome.svg +0 -0
  692. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_excalidraw.svg +0 -0
  693. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_excel.svg +0 -0
  694. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_excel2.svg +0 -0
  695. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_expo.svg +0 -0
  696. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_falcon.svg +0 -0
  697. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fantasticon.svg +0 -0
  698. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fastly.svg +0 -0
  699. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fauna.svg +0 -0
  700. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_favicon.svg +0 -0
  701. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fbx.svg +0 -0
  702. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_firebase.svg +0 -0
  703. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_firebasehosting.svg +0 -0
  704. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_firebasestorage.svg +0 -0
  705. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_firestore.svg +0 -0
  706. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fitbit.svg +0 -0
  707. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fla.svg +0 -0
  708. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_flareact.svg +0 -0
  709. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_flash.svg +0 -0
  710. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_floobits.svg +0 -0
  711. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_flow.svg +0 -0
  712. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_flutter.svg +0 -0
  713. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_flutter_package.svg +0 -0
  714. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_flyio.svg +0 -0
  715. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_font.svg +0 -0
  716. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_formkit.svg +0 -0
  717. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fortran.svg +0 -0
  718. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fossa.svg +0 -0
  719. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fossil.svg +0 -0
  720. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_freemarker.svg +0 -0
  721. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_frontcommerce.svg +0 -0
  722. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fsharp.svg +0 -0
  723. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fsharp2.svg +0 -0
  724. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fsproj.svg +0 -0
  725. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fthtml.svg +0 -0
  726. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_funding.svg +0 -0
  727. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_fusebox.svg +0 -0
  728. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_galen.svg +0 -0
  729. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_galen2.svg +0 -0
  730. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gamemaker.svg +0 -0
  731. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gamemaker2.svg +0 -0
  732. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gamemaker81.svg +0 -0
  733. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gatsby.svg +0 -0
  734. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gcloud.svg +0 -0
  735. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gcode.svg +0 -0
  736. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gdscript.svg +0 -0
  737. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gduid.svg +0 -0
  738. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_genstat.svg +0 -0
  739. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_geojson.svg +0 -0
  740. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gimp.svg +0 -0
  741. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_git.svg +0 -0
  742. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_git2.svg +0 -0
  743. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gitlab.svg +0 -0
  744. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gitpod.svg +0 -0
  745. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gleam.svg +0 -0
  746. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gleamconfig.svg +0 -0
  747. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_glide.svg +0 -0
  748. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_glimmer.svg +0 -0
  749. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_glitter.svg +0 -0
  750. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_glsl.svg +0 -0
  751. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gltf.svg +0 -0
  752. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_glyphs.svg +0 -0
  753. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gnu.svg +0 -0
  754. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gnuplot.svg +0 -0
  755. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go.svg +0 -0
  756. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_aqua.svg +0 -0
  757. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_black.svg +0 -0
  758. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_fuchsia.svg +0 -0
  759. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_gopher.svg +0 -0
  760. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_lightblue.svg +0 -0
  761. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_package.svg +0 -0
  762. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_white.svg +0 -0
  763. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_work.svg +0 -0
  764. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_go_yellow.svg +0 -0
  765. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_goctl.svg +0 -0
  766. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gpg.svg +0 -0
  767. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gradle.svg +0 -0
  768. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gradle2.svg +0 -0
  769. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_grain.svg +0 -0
  770. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_graphql.svg +0 -0
  771. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_graphql_config.svg +0 -0
  772. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_graphviz.svg +0 -0
  773. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_greenkeeper.svg +0 -0
  774. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gridsome.svg +0 -0
  775. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_grit.svg +0 -0
  776. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_groovy.svg +0 -0
  777. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_groovy2.svg +0 -0
  778. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_grunt.svg +0 -0
  779. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_gulp.svg +0 -0
  780. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_haml.svg +0 -0
  781. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_handlebars.svg +0 -0
  782. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_handlebars2.svg +0 -0
  783. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_harbour.svg +0 -0
  784. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hardhat.svg +0 -0
  785. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hashicorp.svg +0 -0
  786. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_haskell.svg +0 -0
  787. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_haskell2.svg +0 -0
  788. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_haxe.svg +0 -0
  789. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_haxecheckstyle.svg +0 -0
  790. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_haxedevelop.svg +0 -0
  791. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_helix.svg +0 -0
  792. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_helm.svg +0 -0
  793. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_histoire.svg +0 -0
  794. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hjson.svg +0 -0
  795. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hlsl.svg +0 -0
  796. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_homeassistant.svg +0 -0
  797. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_horusec.svg +0 -0
  798. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_host.svg +0 -0
  799. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_html.svg +0 -0
  800. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_htmlhint.svg +0 -0
  801. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_htmlvalidate.svg +0 -0
  802. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_http.svg +0 -0
  803. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hugo.svg +0 -0
  804. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_humanstxt.svg +0 -0
  805. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hunspell.svg +0 -0
  806. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_husky.svg +0 -0
  807. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hy.svg +0 -0
  808. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hygen.svg +0 -0
  809. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_hypr.svg +0 -0
  810. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_icl.svg +0 -0
  811. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_idris.svg +0 -0
  812. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_idrisbin.svg +0 -0
  813. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_idrispkg.svg +0 -0
  814. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_image.svg +0 -0
  815. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_imba.svg +0 -0
  816. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_inc.svg +0 -0
  817. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_infopath.svg +0 -0
  818. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_informix.svg +0 -0
  819. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ini.svg +0 -0
  820. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ink.svg +0 -0
  821. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_innosetup.svg +0 -0
  822. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_io.svg +0 -0
  823. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_iodine.svg +0 -0
  824. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ionic.svg +0 -0
  825. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jake.svg +0 -0
  826. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_janet.svg +0 -0
  827. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jar.svg +0 -0
  828. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jasmine.svg +0 -0
  829. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_java.svg +0 -0
  830. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jbuilder.svg +0 -0
  831. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jekyll.svg +0 -0
  832. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jenkins.svg +0 -0
  833. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jest.svg +0 -0
  834. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jest_snapshot.svg +0 -0
  835. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jetbrains.svg +0 -0
  836. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jinja.svg +0 -0
  837. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jpm.svg +0 -0
  838. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_js.svg +0 -0
  839. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_js_official.svg +0 -0
  840. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jsbeautify.svg +0 -0
  841. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jsconfig.svg +0 -0
  842. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jscpd.svg +0 -0
  843. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jshint.svg +0 -0
  844. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jsmap.svg +0 -0
  845. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_json.svg +0 -0
  846. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_json2.svg +0 -0
  847. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_json5.svg +0 -0
  848. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_json_official.svg +0 -0
  849. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_json_schema.svg +0 -0
  850. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jsonld.svg +0 -0
  851. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jsonnet.svg +0 -0
  852. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jsp.svg +0 -0
  853. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jsr.svg +0 -0
  854. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jss.svg +0 -0
  855. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_juice.svg +0 -0
  856. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_julia.svg +0 -0
  857. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_julia2.svg +0 -0
  858. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_jupyter.svg +0 -0
  859. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_just.svg +0 -0
  860. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_k.svg +0 -0
  861. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_karma.svg +0 -0
  862. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_key.svg +0 -0
  863. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_kitchenci.svg +0 -0
  864. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_kite.svg +0 -0
  865. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_kivy.svg +0 -0
  866. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_knip.svg +0 -0
  867. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_kos.svg +0 -0
  868. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_kotlin.svg +0 -0
  869. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_kusto.svg +0 -0
  870. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_language_configuration.svg +0 -0
  871. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lark.svg +0 -0
  872. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_latino.svg +0 -0
  873. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_layout.svg +0 -0
  874. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lean.svg +0 -0
  875. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_leanconfig.svg +0 -0
  876. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lefthook.svg +0 -0
  877. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lerna.svg +0 -0
  878. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_less.svg +0 -0
  879. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lex.svg +0 -0
  880. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_liara.svg +0 -0
  881. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_base.svg +0 -0
  882. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_calc.svg +0 -0
  883. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_draw.svg +0 -0
  884. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_impress.svg +0 -0
  885. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_math.svg +0 -0
  886. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_libreoffice_writer.svg +0 -0
  887. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_license.svg +0 -0
  888. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_licensebat.svg +0 -0
  889. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_actionscript2.svg +0 -0
  890. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_ada.svg +0 -0
  891. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_agda.svg +0 -0
  892. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_agents.svg +0 -0
  893. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_apl.svg +0 -0
  894. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_astro.svg +0 -0
  895. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_astroconfig.svg +0 -0
  896. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_babel.svg +0 -0
  897. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_babel2.svg +0 -0
  898. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_cabal.svg +0 -0
  899. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_circleci.svg +0 -0
  900. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_cloudfoundry.svg +0 -0
  901. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_codacy.svg +0 -0
  902. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_codeclimate.svg +0 -0
  903. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_codeowners.svg +0 -0
  904. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_config.svg +0 -0
  905. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_copilot.svg +0 -0
  906. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_crystal.svg +0 -0
  907. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_cypress.svg +0 -0
  908. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_cypress_spec.svg +0 -0
  909. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_db.svg +0 -0
  910. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_deno.svg +0 -0
  911. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_dhall.svg +0 -0
  912. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_docpad.svg +0 -0
  913. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_drone.svg +0 -0
  914. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_eas-metadata.svg +0 -0
  915. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_eleventy.svg +0 -0
  916. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_eleventy2.svg +0 -0
  917. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_esphome.svg +0 -0
  918. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_expo.svg +0 -0
  919. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_firebasehosting.svg +0 -0
  920. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_fla.svg +0 -0
  921. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_font.svg +0 -0
  922. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_gamemaker2.svg +0 -0
  923. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_gradle.svg +0 -0
  924. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_hashicorp.svg +0 -0
  925. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_hjson.svg +0 -0
  926. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_ini.svg +0 -0
  927. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_io.svg +0 -0
  928. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_js.svg +0 -0
  929. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_jsconfig.svg +0 -0
  930. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_jsmap.svg +0 -0
  931. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_json.svg +0 -0
  932. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_json5.svg +0 -0
  933. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_json_schema.svg +0 -0
  934. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_jsonld.svg +0 -0
  935. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_kite.svg +0 -0
  936. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_lark.svg +0 -0
  937. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_lean.svg +0 -0
  938. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_leanconfig.svg +0 -0
  939. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_lerna.svg +0 -0
  940. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_mailing.svg +0 -0
  941. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_markuplint.svg +0 -0
  942. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_mcp.svg +0 -0
  943. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_mdx-components.svg +0 -0
  944. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_mdx.svg +0 -0
  945. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_mlang.svg +0 -0
  946. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_mustache.svg +0 -0
  947. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_mypy.svg +0 -0
  948. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_neo4j.svg +0 -0
  949. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_netlify.svg +0 -0
  950. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_next.svg +0 -0
  951. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_nim.svg +0 -0
  952. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_nx.svg +0 -0
  953. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_objidconfig.svg +0 -0
  954. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_openHAB.svg +0 -0
  955. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_packship.svg +0 -0
  956. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_pcl.svg +0 -0
  957. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_pnpm.svg +0 -0
  958. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_prettier.svg +0 -0
  959. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_prisma.svg +0 -0
  960. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_purescript.svg +0 -0
  961. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_quasar.svg +0 -0
  962. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_raku.svg +0 -0
  963. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_razzle.svg +0 -0
  964. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_reactrouter.svg +0 -0
  965. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_rehype.svg +0 -0
  966. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_remark.svg +0 -0
  967. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_replit.svg +0 -0
  968. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_retext.svg +0 -0
  969. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_rome.svg +0 -0
  970. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_rubocop.svg +0 -0
  971. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_rust.svg +0 -0
  972. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_rust_toolchain.svg +0 -0
  973. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_safetensors.svg +0 -0
  974. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_shadcn.svg +0 -0
  975. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_shaderlab.svg +0 -0
  976. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_solidity.svg +0 -0
  977. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_spin.svg +0 -0
  978. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_stylelint.svg +0 -0
  979. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_stylus.svg +0 -0
  980. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_symfony.svg +0 -0
  981. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_systemd.svg +0 -0
  982. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_systemverilog.svg +0 -0
  983. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_testcafe.svg +0 -0
  984. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_testjs.svg +0 -0
  985. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_tex.svg +0 -0
  986. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_tmux.svg +0 -0
  987. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_todo.svg +0 -0
  988. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_toit.svg +0 -0
  989. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_toml.svg +0 -0
  990. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_toon.svg +0 -0
  991. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_tree.svg +0 -0
  992. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_turbo.svg +0 -0
  993. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_unibeautify.svg +0 -0
  994. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_vash.svg +0 -0
  995. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_vercel.svg +0 -0
  996. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_vsix.svg +0 -0
  997. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_vsixmanifest.svg +0 -0
  998. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_xfl.svg +0 -0
  999. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_xorg.svg +0 -0
  1000. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_yaml_official.svg +0 -0
  1001. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_light_zeit.svg +0 -0
  1002. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lighthouse.svg +0 -0
  1003. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lilypond.svg +0 -0
  1004. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lime.svg +0 -0
  1005. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lintstagedrc.svg +0 -0
  1006. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_liquid.svg +0 -0
  1007. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lisp.svg +0 -0
  1008. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_livescript.svg +0 -0
  1009. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lnk.svg +0 -0
  1010. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_locale.svg +0 -0
  1011. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_log.svg +0 -0
  1012. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lolcode.svg +0 -0
  1013. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lsl.svg +0 -0
  1014. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lua.svg +0 -0
  1015. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_luau.svg +0 -0
  1016. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_lync.svg +0 -0
  1017. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mailing.svg +0 -0
  1018. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_makefile.svg +0 -0
  1019. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_manifest.svg +0 -0
  1020. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_manifest_bak.svg +0 -0
  1021. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_manifest_skip.svg +0 -0
  1022. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_map.svg +0 -0
  1023. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mariadb.svg +0 -0
  1024. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_markdown.svg +0 -0
  1025. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_markdownlint.svg +0 -0
  1026. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_markdownlint_ignore.svg +0 -0
  1027. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_marko.svg +0 -0
  1028. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_markojs.svg +0 -0
  1029. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_markuplint.svg +0 -0
  1030. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_master-co.svg +0 -0
  1031. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_matlab.svg +0 -0
  1032. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_maven.svg +0 -0
  1033. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_maxscript.svg +0 -0
  1034. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_maya.svg +0 -0
  1035. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mcp.svg +0 -0
  1036. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mdx-components.svg +0 -0
  1037. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mdx.svg +0 -0
  1038. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mdxlint.svg +0 -0
  1039. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mediawiki.svg +0 -0
  1040. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mercurial.svg +0 -0
  1041. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mermaid.svg +0 -0
  1042. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_meson.svg +0 -0
  1043. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_metal.svg +0 -0
  1044. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_meteor.svg +0 -0
  1045. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_minecraft.svg +0 -0
  1046. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mivascript.svg +0 -0
  1047. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mjml.svg +0 -0
  1048. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mlang.svg +0 -0
  1049. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mocha.svg +0 -0
  1050. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_modernizr.svg +0 -0
  1051. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mojo.svg +0 -0
  1052. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mojolicious.svg +0 -0
  1053. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_moleculer.svg +0 -0
  1054. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mondoo.svg +0 -0
  1055. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mongo.svg +0 -0
  1056. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_monotone.svg +0 -0
  1057. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_motif.svg +0 -0
  1058. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mson.svg +0 -0
  1059. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mustache.svg +0 -0
  1060. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mvt.svg +0 -0
  1061. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mvtcss.svg +0 -0
  1062. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mvtjs.svg +0 -0
  1063. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mypy.svg +0 -0
  1064. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_mysql.svg +0 -0
  1065. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nanostaged.svg +0 -0
  1066. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nearly.svg +0 -0
  1067. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_neo4j.svg +0 -0
  1068. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_adapter_js.svg +0 -0
  1069. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_adapter_ts.svg +0 -0
  1070. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_controller_js.svg +0 -0
  1071. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_controller_ts.svg +0 -0
  1072. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_decorator_js.svg +0 -0
  1073. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_decorator_ts.svg +0 -0
  1074. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_filter_js.svg +0 -0
  1075. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_filter_ts.svg +0 -0
  1076. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_gateway_js.svg +0 -0
  1077. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_gateway_ts.svg +0 -0
  1078. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_guard_js.svg +0 -0
  1079. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_guard_ts.svg +0 -0
  1080. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_interceptor_js.svg +0 -0
  1081. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_interceptor_ts.svg +0 -0
  1082. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_middleware_js.svg +0 -0
  1083. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_middleware_ts.svg +0 -0
  1084. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_module_js.svg +0 -0
  1085. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_module_ts.svg +0 -0
  1086. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_pipe_js.svg +0 -0
  1087. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_pipe_ts.svg +0 -0
  1088. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_service_js.svg +0 -0
  1089. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nest_service_ts.svg +0 -0
  1090. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nestjs.svg +0 -0
  1091. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_netlify.svg +0 -0
  1092. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_next.svg +0 -0
  1093. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nextflow.svg +0 -0
  1094. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_css.svg +0 -0
  1095. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_dart.svg +0 -0
  1096. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_html.svg +0 -0
  1097. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_js.svg +0 -0
  1098. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_js2.svg +0 -0
  1099. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_less.svg +0 -0
  1100. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_sass.svg +0 -0
  1101. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_scss.svg +0 -0
  1102. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_ts.svg +0 -0
  1103. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_component_ts2.svg +0 -0
  1104. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_controller_js.svg +0 -0
  1105. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_controller_ts.svg +0 -0
  1106. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_dart.svg +0 -0
  1107. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_js.svg +0 -0
  1108. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_js2.svg +0 -0
  1109. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_ts.svg +0 -0
  1110. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_directive_ts2.svg +0 -0
  1111. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_guard_dart.svg +0 -0
  1112. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_guard_js.svg +0 -0
  1113. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_guard_ts.svg +0 -0
  1114. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_interceptor_dart.svg +0 -0
  1115. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_interceptor_js.svg +0 -0
  1116. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_interceptor_ts.svg +0 -0
  1117. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_module_dart.svg +0 -0
  1118. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_module_js.svg +0 -0
  1119. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_module_js2.svg +0 -0
  1120. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_module_ts.svg +0 -0
  1121. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_module_ts2.svg +0 -0
  1122. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_dart.svg +0 -0
  1123. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_js.svg +0 -0
  1124. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_js2.svg +0 -0
  1125. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_ts.svg +0 -0
  1126. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_pipe_ts2.svg +0 -0
  1127. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_dart.svg +0 -0
  1128. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_js.svg +0 -0
  1129. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_js2.svg +0 -0
  1130. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_ts.svg +0 -0
  1131. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_routing_ts2.svg +0 -0
  1132. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_service_dart.svg +0 -0
  1133. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_service_js.svg +0 -0
  1134. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_service_js2.svg +0 -0
  1135. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_service_ts.svg +0 -0
  1136. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_service_ts2.svg +0 -0
  1137. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_dart.svg +0 -0
  1138. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_js.svg +0 -0
  1139. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_js2.svg +0 -0
  1140. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_ts.svg +0 -0
  1141. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_smart_component_ts2.svg +0 -0
  1142. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ng_tailwind.svg +0 -0
  1143. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nginx.svg +0 -0
  1144. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nim.svg +0 -0
  1145. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nimble.svg +0 -0
  1146. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ninja.svg +0 -0
  1147. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nix.svg +0 -0
  1148. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_njsproj.svg +0 -0
  1149. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_noc.svg +0 -0
  1150. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_node.svg +0 -0
  1151. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_node2.svg +0 -0
  1152. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nodemon.svg +0 -0
  1153. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_npm.svg +0 -0
  1154. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_npmpackagejsonlint.svg +0 -0
  1155. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nsi.svg +0 -0
  1156. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nsri-integrity.svg +0 -0
  1157. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nsri.svg +0 -0
  1158. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nuget.svg +0 -0
  1159. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_numpy.svg +0 -0
  1160. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nunjucks.svg +0 -0
  1161. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nushell.svg +0 -0
  1162. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nuxt.svg +0 -0
  1163. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nx.svg +0 -0
  1164. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_nyc.svg +0 -0
  1165. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_objectivec.svg +0 -0
  1166. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_objectivecpp.svg +0 -0
  1167. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_objidconfig.svg +0 -0
  1168. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ocaml.svg +0 -0
  1169. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ocaml_intf.svg +0 -0
  1170. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ogone.svg +0 -0
  1171. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_onenote.svg +0 -0
  1172. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_opam.svg +0 -0
  1173. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_openHAB.svg +0 -0
  1174. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_opencl.svg +0 -0
  1175. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_openscad.svg +0 -0
  1176. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_opentofu.svg +0 -0
  1177. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_org.svg +0 -0
  1178. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_outlook.svg +0 -0
  1179. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ovpn.svg +0 -0
  1180. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_oxlint.svg +0 -0
  1181. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_package.svg +0 -0
  1182. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_packship.svg +0 -0
  1183. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_paket.svg +0 -0
  1184. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pandacss.svg +0 -0
  1185. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_patch.svg +0 -0
  1186. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pcl.svg +0 -0
  1187. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pddl.svg +0 -0
  1188. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pddl_happenings.svg +0 -0
  1189. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pddl_plan.svg +0 -0
  1190. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pdf.svg +0 -0
  1191. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pdf2.svg +0 -0
  1192. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pdm.svg +0 -0
  1193. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_peeky.svg +0 -0
  1194. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_perl.svg +0 -0
  1195. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_perl2.svg +0 -0
  1196. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_perl6.svg +0 -0
  1197. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pgsql.svg +0 -0
  1198. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_photoshop.svg +0 -0
  1199. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_photoshop2.svg +0 -0
  1200. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_php.svg +0 -0
  1201. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_php2.svg +0 -0
  1202. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_php3.svg +0 -0
  1203. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_phpcsfixer.svg +0 -0
  1204. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_phpstan.svg +0 -0
  1205. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_phpunit.svg +0 -0
  1206. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_phraseapp.svg +0 -0
  1207. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pine.svg +0 -0
  1208. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pip.svg +0 -0
  1209. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pipeline.svg +0 -0
  1210. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_plantuml.svg +0 -0
  1211. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_platformio.svg +0 -0
  1212. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_playwright.svg +0 -0
  1213. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_plsql.svg +0 -0
  1214. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_plsql_package.svg +0 -0
  1215. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_plsql_package_body.svg +0 -0
  1216. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_plsql_package_header.svg +0 -0
  1217. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_plsql_package_spec.svg +0 -0
  1218. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pm2.svg +0 -0
  1219. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pnpm.svg +0 -0
  1220. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_poedit.svg +0 -0
  1221. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_poetry.svg +0 -0
  1222. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_polyglot.svg +0 -0
  1223. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_polymer.svg +0 -0
  1224. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pony.svg +0 -0
  1225. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_postcss.svg +0 -0
  1226. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_postcssconfig.svg +0 -0
  1227. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_postman.svg +0 -0
  1228. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powerpoint.svg +0 -0
  1229. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powerpoint2.svg +0 -0
  1230. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell.svg +0 -0
  1231. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell2.svg +0 -0
  1232. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell_format.svg +0 -0
  1233. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell_psd.svg +0 -0
  1234. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell_psd2.svg +0 -0
  1235. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell_psm.svg +0 -0
  1236. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell_psm2.svg +0 -0
  1237. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_powershell_types.svg +0 -0
  1238. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_preact.svg +0 -0
  1239. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_precommit.svg +0 -0
  1240. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_prettier.svg +0 -0
  1241. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_prisma.svg +0 -0
  1242. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_prismaconfig.svg +0 -0
  1243. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_processinglang.svg +0 -0
  1244. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_procfile.svg +0 -0
  1245. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_progress.svg +0 -0
  1246. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_prolog.svg +0 -0
  1247. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_prometheus.svg +0 -0
  1248. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_protobuf.svg +0 -0
  1249. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_protractor.svg +0 -0
  1250. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_publiccode.svg +0 -0
  1251. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_publisher.svg +0 -0
  1252. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pug.svg +0 -0
  1253. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pulumi.svg +0 -0
  1254. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_puppet.svg +0 -0
  1255. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_purescript.svg +0 -0
  1256. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_purgecss.svg +0 -0
  1257. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pyenv.svg +0 -0
  1258. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pyret.svg +0 -0
  1259. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pyscript.svg +0 -0
  1260. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pytest.svg +0 -0
  1261. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_python.svg +0 -0
  1262. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pythowo.svg +0 -0
  1263. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pytyped.svg +0 -0
  1264. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_pyup.svg +0 -0
  1265. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_q.svg +0 -0
  1266. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_qbs.svg +0 -0
  1267. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_qlikview.svg +0 -0
  1268. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_qml.svg +0 -0
  1269. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_qmldir.svg +0 -0
  1270. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_qsharp.svg +0 -0
  1271. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_quasar.svg +0 -0
  1272. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_r.svg +0 -0
  1273. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ra_syntax_tree.svg +0 -0
  1274. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_racket.svg +0 -0
  1275. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rails.svg +0 -0
  1276. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rake.svg +0 -0
  1277. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_raku.svg +0 -0
  1278. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_raml.svg +0 -0
  1279. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_razor.svg +0 -0
  1280. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_razzle.svg +0 -0
  1281. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_reactjs.svg +0 -0
  1282. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_reactrouter.svg +0 -0
  1283. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_reacttemplate.svg +0 -0
  1284. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_reactts.svg +0 -0
  1285. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_reason.svg +0 -0
  1286. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_red.svg +0 -0
  1287. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_registry.svg +0 -0
  1288. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rego.svg +0 -0
  1289. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rehype.svg +0 -0
  1290. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_remark.svg +0 -0
  1291. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_renovate.svg +0 -0
  1292. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_replit.svg +0 -0
  1293. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rescript.svg +0 -0
  1294. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rest.svg +0 -0
  1295. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_retext.svg +0 -0
  1296. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rexx.svg +0 -0
  1297. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_riot.svg +0 -0
  1298. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ripple.svg +0 -0
  1299. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rmd.svg +0 -0
  1300. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rnc.svg +0 -0
  1301. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_robotframework.svg +0 -0
  1302. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_robots.svg +0 -0
  1303. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rollup.svg +0 -0
  1304. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rome.svg +0 -0
  1305. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ron.svg +0 -0
  1306. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rproj.svg +0 -0
  1307. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rspec.svg +0 -0
  1308. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rss.svg +0 -0
  1309. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rubocop.svg +0 -0
  1310. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ruby.svg +0 -0
  1311. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rust.svg +0 -0
  1312. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_rust_toolchain.svg +0 -0
  1313. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_s-lang.svg +0 -0
  1314. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_safetensors.svg +0 -0
  1315. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sails.svg +0 -0
  1316. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_saltstack.svg +0 -0
  1317. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_san.svg +0 -0
  1318. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sapphire_framework_cli.svg +0 -0
  1319. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sas.svg +0 -0
  1320. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sass.svg +0 -0
  1321. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sbt.svg +0 -0
  1322. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_scala.svg +0 -0
  1323. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_scilab.svg +0 -0
  1324. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_script.svg +0 -0
  1325. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_scss.svg +0 -0
  1326. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_scss2.svg +0 -0
  1327. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sdlang.svg +0 -0
  1328. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_search_result.svg +0 -0
  1329. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_seedkit.svg +0 -0
  1330. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sentry.svg +0 -0
  1331. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sequelize.svg +0 -0
  1332. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_serverless.svg +0 -0
  1333. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_shadcn.svg +0 -0
  1334. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_shaderlab.svg +0 -0
  1335. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_shell.svg +0 -0
  1336. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_shuttle.svg +0 -0
  1337. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_silverstripe.svg +0 -0
  1338. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sino.svg +0 -0
  1339. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sitemap.svg +0 -0
  1340. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_siyuan.svg +0 -0
  1341. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sketch.svg +0 -0
  1342. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_skipper.svg +0 -0
  1343. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_slang.svg +0 -0
  1344. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_slashup.svg +0 -0
  1345. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_slice.svg +0 -0
  1346. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_slim.svg +0 -0
  1347. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_slint.svg +0 -0
  1348. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sln.svg +0 -0
  1349. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sln2.svg +0 -0
  1350. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_smarty.svg +0 -0
  1351. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_smithery.svg +0 -0
  1352. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_snakemake.svg +0 -0
  1353. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_snapcraft.svg +0 -0
  1354. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_snaplet.svg +0 -0
  1355. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_snort.svg +0 -0
  1356. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_snyk.svg +0 -0
  1357. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_solidarity.svg +0 -0
  1358. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_solidity.svg +0 -0
  1359. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_source.svg +0 -0
  1360. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_spacengine.svg +0 -0
  1361. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sparql.svg +0 -0
  1362. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_spin.svg +0 -0
  1363. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sqf.svg +0 -0
  1364. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sql.svg +0 -0
  1365. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sqlite.svg +0 -0
  1366. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_squirrel.svg +0 -0
  1367. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sst.svg +0 -0
  1368. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stackblitz.svg +0 -0
  1369. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stan.svg +0 -0
  1370. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stata.svg +0 -0
  1371. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stencil.svg +0 -0
  1372. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_storyboard.svg +0 -0
  1373. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_storybook.svg +0 -0
  1374. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stryker.svg +0 -0
  1375. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stylable.svg +0 -0
  1376. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_style.svg +0 -0
  1377. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_styled.svg +0 -0
  1378. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stylelint.svg +0 -0
  1379. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stylish_haskell.svg +0 -0
  1380. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_stylus.svg +0 -0
  1381. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_sublime.svg +0 -0
  1382. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_subversion.svg +0 -0
  1383. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_svelte.svg +0 -0
  1384. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_svelteconfig.svg +0 -0
  1385. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_svg.svg +0 -0
  1386. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_svgo.svg +0 -0
  1387. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_swagger.svg +0 -0
  1388. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_swc.svg +0 -0
  1389. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_swift.svg +0 -0
  1390. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_swig.svg +0 -0
  1391. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_symfony.svg +0 -0
  1392. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_syncpack.svg +0 -0
  1393. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_systemd.svg +0 -0
  1394. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_systemverilog.svg +0 -0
  1395. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_t4tt.svg +0 -0
  1396. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tailwind.svg +0 -0
  1397. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tamagui.svg +0 -0
  1398. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_taplo.svg +0 -0
  1399. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_taskfile.svg +0 -0
  1400. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tauri.svg +0 -0
  1401. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tcl.svg +0 -0
  1402. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_teal.svg +0 -0
  1403. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_templ.svg +0 -0
  1404. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tera.svg +0 -0
  1405. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_terraform.svg +0 -0
  1406. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_test.svg +0 -0
  1407. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_testcafe.svg +0 -0
  1408. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_testjs.svg +0 -0
  1409. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_testplane.svg +0 -0
  1410. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_testts.svg +0 -0
  1411. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tex.svg +0 -0
  1412. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_text.svg +0 -0
  1413. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_textile.svg +0 -0
  1414. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tfs.svg +0 -0
  1415. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tiltfile.svg +0 -0
  1416. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tmux.svg +0 -0
  1417. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_todo.svg +0 -0
  1418. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_toit.svg +0 -0
  1419. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_toml.svg +0 -0
  1420. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_toon.svg +0 -0
  1421. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_travis.svg +0 -0
  1422. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tree.svg +0 -0
  1423. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_truffle.svg +0 -0
  1424. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_trunk.svg +0 -0
  1425. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tsbuildinfo.svg +0 -0
  1426. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tsconfig.svg +0 -0
  1427. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tsconfig_official.svg +0 -0
  1428. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tsdoc.svg +0 -0
  1429. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tsdown.svg +0 -0
  1430. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tslint.svg +0 -0
  1431. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tt.svg +0 -0
  1432. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_ttcn.svg +0 -0
  1433. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_tuc.svg +0 -0
  1434. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_turbo.svg +0 -0
  1435. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_twig.svg +0 -0
  1436. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_typedoc.svg +0 -0
  1437. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_typescript.svg +0 -0
  1438. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_typescript_official.svg +0 -0
  1439. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_typescriptdef.svg +0 -0
  1440. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_typescriptdef_official.svg +0 -0
  1441. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_typo3.svg +0 -0
  1442. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_uiua.svg +0 -0
  1443. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_unibeautify.svg +0 -0
  1444. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_unison.svg +0 -0
  1445. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_unlicense.svg +0 -0
  1446. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_unocss.svg +0 -0
  1447. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_uv.svg +0 -0
  1448. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vagrant.svg +0 -0
  1449. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vala.svg +0 -0
  1450. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vanilla_extract.svg +0 -0
  1451. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vapi.svg +0 -0
  1452. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vapor.svg +0 -0
  1453. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vash.svg +0 -0
  1454. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vb.svg +0 -0
  1455. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vba.svg +0 -0
  1456. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vbhtml.svg +0 -0
  1457. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_velocity.svg +0 -0
  1458. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vento.svg +0 -0
  1459. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vercel.svg +0 -0
  1460. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_verilog.svg +0 -0
  1461. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vhdl.svg +0 -0
  1462. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_video.svg +0 -0
  1463. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_view.svg +0 -0
  1464. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vim.svg +0 -0
  1465. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vlang.svg +0 -0
  1466. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_volt.svg +0 -0
  1467. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vroom.svg +0 -0
  1468. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vscode-insiders.svg +0 -0
  1469. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vscode.svg +0 -0
  1470. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vscode2.svg +0 -0
  1471. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vscode3.svg +0 -0
  1472. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vscode_test.svg +0 -0
  1473. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vsix.svg +0 -0
  1474. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vsixmanifest.svg +0 -0
  1475. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vue.svg +0 -0
  1476. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vueconfig.svg +0 -0
  1477. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vvvvvv.svg +0 -0
  1478. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_vyper.svg +0 -0
  1479. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wallaby.svg +0 -0
  1480. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wally.svg +0 -0
  1481. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wasm.svg +0 -0
  1482. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_watchmanconfig.svg +0 -0
  1483. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wdio.svg +0 -0
  1484. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_weblate.svg +0 -0
  1485. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_webpack.svg +0 -0
  1486. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wenyan.svg +0 -0
  1487. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wercker.svg +0 -0
  1488. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wgsl.svg +0 -0
  1489. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wikitext.svg +0 -0
  1490. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_windi.svg +0 -0
  1491. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wit.svg +0 -0
  1492. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wolfram.svg +0 -0
  1493. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_word.svg +0 -0
  1494. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_word2.svg +0 -0
  1495. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wpml.svg +0 -0
  1496. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wurst.svg +0 -0
  1497. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wxml.svg +0 -0
  1498. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wxss.svg +0 -0
  1499. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_wxt.svg +0 -0
  1500. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xcode.svg +0 -0
  1501. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xfl.svg +0 -0
  1502. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xib.svg +0 -0
  1503. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xliff.svg +0 -0
  1504. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xmake.svg +0 -0
  1505. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xml.svg +0 -0
  1506. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xo.svg +0 -0
  1507. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xorg.svg +0 -0
  1508. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xquery.svg +0 -0
  1509. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_xsl.svg +0 -0
  1510. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_yacc.svg +0 -0
  1511. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_yaml_official.svg +0 -0
  1512. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_yamllint.svg +0 -0
  1513. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_yandex.svg +0 -0
  1514. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_yang.svg +0 -0
  1515. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_yarn.svg +0 -0
  1516. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_yeoman.svg +0 -0
  1517. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_zeit.svg +0 -0
  1518. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_zig.svg +0 -0
  1519. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_zip.svg +0 -0
  1520. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/file_type_zip2.svg +0 -0
  1521. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_android.svg +0 -0
  1522. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_android_opened.svg +0 -0
  1523. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_angular.svg +0 -0
  1524. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_angular_opened.svg +0 -0
  1525. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_apache.svg +0 -0
  1526. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_apache_opened.svg +0 -0
  1527. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_api.svg +0 -0
  1528. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_api_opened.svg +0 -0
  1529. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_app.svg +0 -0
  1530. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_app_opened.svg +0 -0
  1531. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_arangodb.svg +0 -0
  1532. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_arangodb_opened.svg +0 -0
  1533. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_asset.svg +0 -0
  1534. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_asset_opened.svg +0 -0
  1535. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_astro.svg +0 -0
  1536. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_astro_opened.svg +0 -0
  1537. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_audio.svg +0 -0
  1538. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_audio_opened.svg +0 -0
  1539. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_aurelia.svg +0 -0
  1540. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_aurelia_opened.svg +0 -0
  1541. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_aws.svg +0 -0
  1542. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_aws_opened.svg +0 -0
  1543. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_azure.svg +0 -0
  1544. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_azure_opened.svg +0 -0
  1545. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_azurepipelines.svg +0 -0
  1546. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_azurepipelines_opened.svg +0 -0
  1547. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_binary.svg +0 -0
  1548. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_binary_opened.svg +0 -0
  1549. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_bloc.svg +0 -0
  1550. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_bloc_opened.svg +0 -0
  1551. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_blueprint.svg +0 -0
  1552. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_blueprint_opened.svg +0 -0
  1553. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_bot.svg +0 -0
  1554. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_bot_opened.svg +0 -0
  1555. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_bower.svg +0 -0
  1556. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_bower_opened.svg +0 -0
  1557. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_buildkite.svg +0 -0
  1558. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_buildkite_opened.svg +0 -0
  1559. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cake.svg +0 -0
  1560. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cake_opened.svg +0 -0
  1561. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cargo.svg +0 -0
  1562. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cargo_opened.svg +0 -0
  1563. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_certificate.svg +0 -0
  1564. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_certificate_opened.svg +0 -0
  1565. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_changesets.svg +0 -0
  1566. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_changesets_opened.svg +0 -0
  1567. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_chef.svg +0 -0
  1568. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_chef_opened.svg +0 -0
  1569. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_circleci.svg +0 -0
  1570. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_circleci_opened.svg +0 -0
  1571. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_claude.svg +0 -0
  1572. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_claude_opened.svg +0 -0
  1573. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cli.svg +0 -0
  1574. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cli_opened.svg +0 -0
  1575. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_client.svg +0 -0
  1576. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_client_opened.svg +0 -0
  1577. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cloudflare.svg +0 -0
  1578. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cloudflare_opened.svg +0 -0
  1579. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cmake.svg +0 -0
  1580. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cmake_opened.svg +0 -0
  1581. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_common.svg +0 -0
  1582. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_common_opened.svg +0 -0
  1583. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_component.svg +0 -0
  1584. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_component_opened.svg +0 -0
  1585. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_composer.svg +0 -0
  1586. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_composer_opened.svg +0 -0
  1587. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_config.svg +0 -0
  1588. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_config_opened.svg +0 -0
  1589. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_controller.svg +0 -0
  1590. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_controller_opened.svg +0 -0
  1591. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_coverage.svg +0 -0
  1592. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_coverage_opened.svg +0 -0
  1593. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_css.svg +0 -0
  1594. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_css2.svg +0 -0
  1595. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_css2_opened.svg +0 -0
  1596. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_css_opened.svg +0 -0
  1597. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cubit.svg +0 -0
  1598. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cubit_opened.svg +0 -0
  1599. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cursor.svg +0 -0
  1600. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cursor_opened.svg +0 -0
  1601. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cypress.svg +0 -0
  1602. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_cypress_opened.svg +0 -0
  1603. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dapr.svg +0 -0
  1604. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dapr_opened.svg +0 -0
  1605. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dart.svg +0 -0
  1606. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dart_opened.svg +0 -0
  1607. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_datadog_opened.svg +0 -0
  1608. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_db.svg +0 -0
  1609. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_db_opened.svg +0 -0
  1610. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_debian.svg +0 -0
  1611. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_debian_opened.svg +0 -0
  1612. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dependabot.svg +0 -0
  1613. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dependabot_opened.svg +0 -0
  1614. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_devcontainer.svg +0 -0
  1615. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_devcontainer_opened.svg +0 -0
  1616. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dist.svg +0 -0
  1617. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_dist_opened.svg +0 -0
  1618. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_docker.svg +0 -0
  1619. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_docker_opened.svg +0 -0
  1620. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_docs.svg +0 -0
  1621. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_docs_opened.svg +0 -0
  1622. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_e2e.svg +0 -0
  1623. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_e2e_opened.svg +0 -0
  1624. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_elasticbeanstalk.svg +0 -0
  1625. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_elasticbeanstalk_opened.svg +0 -0
  1626. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_electron.svg +0 -0
  1627. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_electron_opened.svg +0 -0
  1628. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_expo.svg +0 -0
  1629. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_expo_opened.svg +0 -0
  1630. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_favicon.svg +0 -0
  1631. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_favicon_opened.svg +0 -0
  1632. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_flow.svg +0 -0
  1633. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_flow_opened.svg +0 -0
  1634. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_flutter.svg +0 -0
  1635. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_flutter_opened.svg +0 -0
  1636. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_fonts.svg +0 -0
  1637. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_fonts_opened.svg +0 -0
  1638. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_frontcommerce.svg +0 -0
  1639. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_frontcommerce_opened.svg +0 -0
  1640. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gcp.svg +0 -0
  1641. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gcp_opened.svg +0 -0
  1642. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_git.svg +0 -0
  1643. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_git_opened.svg +0 -0
  1644. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_github.svg +0 -0
  1645. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_github_opened.svg +0 -0
  1646. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gitlab.svg +0 -0
  1647. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gitlab_opened.svg +0 -0
  1648. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_godot.svg +0 -0
  1649. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_godot_opened.svg +0 -0
  1650. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gradle.svg +0 -0
  1651. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gradle_opened.svg +0 -0
  1652. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_graphql.svg +0 -0
  1653. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_graphql_opened.svg +0 -0
  1654. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_grunt.svg +0 -0
  1655. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_grunt_opened.svg +0 -0
  1656. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gulp.svg +0 -0
  1657. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_gulp_opened.svg +0 -0
  1658. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_haxelib.svg +0 -0
  1659. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_haxelib_opened.svg +0 -0
  1660. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_helper.svg +0 -0
  1661. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_helper_opened.svg +0 -0
  1662. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_histoire.svg +0 -0
  1663. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_histoire_opened.svg +0 -0
  1664. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_hook.svg +0 -0
  1665. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_hook_opened.svg +0 -0
  1666. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_husky.svg +0 -0
  1667. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_husky_opened.svg +0 -0
  1668. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_idea.svg +0 -0
  1669. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_idea_opened.svg +0 -0
  1670. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_images.svg +0 -0
  1671. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_images_opened.svg +0 -0
  1672. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_include.svg +0 -0
  1673. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_include_opened.svg +0 -0
  1674. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_interfaces.svg +0 -0
  1675. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_interfaces_opened.svg +0 -0
  1676. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_ios.svg +0 -0
  1677. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_ios_opened.svg +0 -0
  1678. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_js.svg +0 -0
  1679. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_js_opened.svg +0 -0
  1680. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_json.svg +0 -0
  1681. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_json_official.svg +0 -0
  1682. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_json_official_opened.svg +0 -0
  1683. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_json_opened.svg +0 -0
  1684. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_junie.svg +0 -0
  1685. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_junie_opened.svg +0 -0
  1686. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_kotlin.svg +0 -0
  1687. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_kotlin_opened.svg +0 -0
  1688. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_kubernetes.svg +0 -0
  1689. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_kubernetes_opened.svg +0 -0
  1690. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_less.svg +0 -0
  1691. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_less_opened.svg +0 -0
  1692. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_library.svg +0 -0
  1693. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_library_opened.svg +0 -0
  1694. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_cursor.svg +0 -0
  1695. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_cursor_opened.svg +0 -0
  1696. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_cypress.svg +0 -0
  1697. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_cypress_opened.svg +0 -0
  1698. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_electron.svg +0 -0
  1699. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_electron_opened.svg +0 -0
  1700. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_expo.svg +0 -0
  1701. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_expo_opened.svg +0 -0
  1702. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_fonts.svg +0 -0
  1703. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_fonts_opened.svg +0 -0
  1704. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_gradle.svg +0 -0
  1705. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_gradle_opened.svg +0 -0
  1706. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_meteor.svg +0 -0
  1707. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_meteor_opened.svg +0 -0
  1708. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_mypy.svg +0 -0
  1709. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_mypy_opened.svg +0 -0
  1710. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_mysql.svg +0 -0
  1711. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_mysql_opened.svg +0 -0
  1712. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_node.svg +0 -0
  1713. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_node_opened.svg +0 -0
  1714. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_redux.svg +0 -0
  1715. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_redux_opened.svg +0 -0
  1716. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_sass.svg +0 -0
  1717. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_sass_opened.svg +0 -0
  1718. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_zed.svg +0 -0
  1719. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_light_zed_opened.svg +0 -0
  1720. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_linux.svg +0 -0
  1721. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_linux_opened.svg +0 -0
  1722. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_locale.svg +0 -0
  1723. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_locale_opened.svg +0 -0
  1724. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_log.svg +0 -0
  1725. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_log_opened.svg +0 -0
  1726. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_macos.svg +0 -0
  1727. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_macos_opened.svg +0 -0
  1728. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mariadb.svg +0 -0
  1729. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mariadb_opened.svg +0 -0
  1730. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_maven.svg +0 -0
  1731. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_maven_opened.svg +0 -0
  1732. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_memcached.svg +0 -0
  1733. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_memcached_opened.svg +0 -0
  1734. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_meteor.svg +0 -0
  1735. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_meteor_opened.svg +0 -0
  1736. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_middleware.svg +0 -0
  1737. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_middleware_opened.svg +0 -0
  1738. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_minecraft.svg +0 -0
  1739. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_minecraft_opened.svg +0 -0
  1740. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_minikube.svg +0 -0
  1741. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_minikube_opened.svg +0 -0
  1742. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mjml.svg +0 -0
  1743. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mjml_opened.svg +0 -0
  1744. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mock.svg +0 -0
  1745. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mock_opened.svg +0 -0
  1746. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_model.svg +0 -0
  1747. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_model_opened.svg +0 -0
  1748. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_module.svg +0 -0
  1749. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_module_opened.svg +0 -0
  1750. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mojo.svg +0 -0
  1751. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mojo_opened.svg +0 -0
  1752. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mongodb.svg +0 -0
  1753. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mongodb_opened.svg +0 -0
  1754. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mypy.svg +0 -0
  1755. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mypy_opened.svg +0 -0
  1756. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mysql.svg +0 -0
  1757. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_mysql_opened.svg +0 -0
  1758. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_netlify.svg +0 -0
  1759. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_netlify_opened.svg +0 -0
  1760. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_next.svg +0 -0
  1761. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_next_opened.svg +0 -0
  1762. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nginx.svg +0 -0
  1763. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nginx_opened.svg +0 -0
  1764. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nix.svg +0 -0
  1765. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nix_opened.svg +0 -0
  1766. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_node.svg +0 -0
  1767. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_node_opened.svg +0 -0
  1768. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_notebooks.svg +0 -0
  1769. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_notebooks_opened.svg +0 -0
  1770. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_notification.svg +0 -0
  1771. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_notification_opened.svg +0 -0
  1772. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nuget.svg +0 -0
  1773. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nuget_opened.svg +0 -0
  1774. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nuxt.svg +0 -0
  1775. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_nuxt_opened.svg +0 -0
  1776. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_package.svg +0 -0
  1777. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_package_opened.svg +0 -0
  1778. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_paket.svg +0 -0
  1779. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_paket_opened.svg +0 -0
  1780. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_php.svg +0 -0
  1781. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_php_opened.svg +0 -0
  1782. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_platformio.svg +0 -0
  1783. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_platformio_opened.svg +0 -0
  1784. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_plugin.svg +0 -0
  1785. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_plugin_opened.svg +0 -0
  1786. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_prisma.svg +0 -0
  1787. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_prisma_opened.svg +0 -0
  1788. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_private.svg +0 -0
  1789. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_private_opened.svg +0 -0
  1790. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_public.svg +0 -0
  1791. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_public_opened.svg +0 -0
  1792. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_pytest.svg +0 -0
  1793. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_pytest_opened.svg +0 -0
  1794. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_python.svg +0 -0
  1795. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_python_opened.svg +0 -0
  1796. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_ravendb.svg +0 -0
  1797. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_ravendb_opened.svg +0 -0
  1798. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_redis.svg +0 -0
  1799. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_redis_opened.svg +0 -0
  1800. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_redux.svg +0 -0
  1801. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_redux_opened.svg +0 -0
  1802. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_route.svg +0 -0
  1803. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_route_opened.svg +0 -0
  1804. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_sass.svg +0 -0
  1805. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_sass_opened.svg +0 -0
  1806. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_script.svg +0 -0
  1807. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_script_opened.svg +0 -0
  1808. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_seedkit.svg +0 -0
  1809. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_seedkit_opened.svg +0 -0
  1810. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_server.svg +0 -0
  1811. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_server_opened.svg +0 -0
  1812. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_services.svg +0 -0
  1813. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_services_opened.svg +0 -0
  1814. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_shared.svg +0 -0
  1815. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_shared_opened.svg +0 -0
  1816. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_snaplet.svg +0 -0
  1817. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_snaplet_opened.svg +0 -0
  1818. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_spin.svg +0 -0
  1819. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_spin_opened.svg +0 -0
  1820. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_src.svg +0 -0
  1821. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_src_opened.svg +0 -0
  1822. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_sso.svg +0 -0
  1823. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_sso_opened.svg +0 -0
  1824. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_story.svg +0 -0
  1825. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_story_opened.svg +0 -0
  1826. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_style.svg +0 -0
  1827. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_style_opened.svg +0 -0
  1828. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_supabase.svg +0 -0
  1829. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_supabase_opened.svg +0 -0
  1830. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_svelte.svg +0 -0
  1831. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_svelte_opened.svg +0 -0
  1832. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_tauri.svg +0 -0
  1833. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_tauri_opened.svg +0 -0
  1834. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_temp.svg +0 -0
  1835. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_temp_opened.svg +0 -0
  1836. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_template.svg +0 -0
  1837. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_template_opened.svg +0 -0
  1838. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_test.svg +0 -0
  1839. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_test_opened.svg +0 -0
  1840. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_theme.svg +0 -0
  1841. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_theme_opened.svg +0 -0
  1842. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_tools.svg +0 -0
  1843. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_tools_opened.svg +0 -0
  1844. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_travis.svg +0 -0
  1845. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_travis_opened.svg +0 -0
  1846. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_trunk.svg +0 -0
  1847. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_trunk_opened.svg +0 -0
  1848. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_turbo.svg +0 -0
  1849. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_turbo_opened.svg +0 -0
  1850. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_typescript.svg +0 -0
  1851. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_typescript_opened.svg +0 -0
  1852. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_typings.svg +0 -0
  1853. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_typings2.svg +0 -0
  1854. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_typings2_opened.svg +0 -0
  1855. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_typings_opened.svg +0 -0
  1856. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vagrant.svg +0 -0
  1857. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vagrant_opened.svg +0 -0
  1858. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vercel.svg +0 -0
  1859. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vercel_opened.svg +0 -0
  1860. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_video.svg +0 -0
  1861. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_video_opened.svg +0 -0
  1862. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_view.svg +0 -0
  1863. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_view_opened.svg +0 -0
  1864. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vitepress.svg +0 -0
  1865. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vitepress_opened.svg +0 -0
  1866. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vs.svg +0 -0
  1867. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vs2.svg +0 -0
  1868. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vs2_opened.svg +0 -0
  1869. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vs_opened.svg +0 -0
  1870. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode.svg +0 -0
  1871. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode2.svg +0 -0
  1872. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode2_opened.svg +0 -0
  1873. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode3.svg +0 -0
  1874. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode3_opened.svg +0 -0
  1875. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode_opened.svg +0 -0
  1876. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test.svg +0 -0
  1877. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test2.svg +0 -0
  1878. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test2_opened.svg +0 -0
  1879. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test3.svg +0 -0
  1880. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test3_opened.svg +0 -0
  1881. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_vscode_test_opened.svg +0 -0
  1882. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_wasm.svg +0 -0
  1883. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_wasm_opened.svg +0 -0
  1884. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_webpack.svg +0 -0
  1885. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_webpack_opened.svg +0 -0
  1886. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_windows.svg +0 -0
  1887. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_windows_opened.svg +0 -0
  1888. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_windsurf.svg +0 -0
  1889. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_windsurf_opened.svg +0 -0
  1890. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_wit.svg +0 -0
  1891. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_wit_opened.svg +0 -0
  1892. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_www.svg +0 -0
  1893. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_www_opened.svg +0 -0
  1894. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_yarn.svg +0 -0
  1895. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_yarn_opened.svg +0 -0
  1896. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_zed.svg +0 -0
  1897. /package/static/{ba49c92 → 372a290}/extensions/builtin.vscode-icons/icons/folder_type_zed_opened.svg +0 -0
  1898. /package/static/{ba49c92 → 372a290}/fonts/FiraCode-VariableFont.ttf +0 -0
  1899. /package/static/{ba49c92 → 372a290}/icons/account.svg +0 -0
  1900. /package/static/{ba49c92 → 372a290}/icons/activate-breakpoints.svg +0 -0
  1901. /package/static/{ba49c92 → 372a290}/icons/add-small.svg +0 -0
  1902. /package/static/{ba49c92 → 372a290}/icons/add.svg +0 -0
  1903. /package/static/{ba49c92 → 372a290}/icons/agent.svg +0 -0
  1904. /package/static/{ba49c92 → 372a290}/icons/archive.svg +0 -0
  1905. /package/static/{ba49c92 → 372a290}/icons/arrow-both.svg +0 -0
  1906. /package/static/{ba49c92 → 372a290}/icons/arrow-circle-down.svg +0 -0
  1907. /package/static/{ba49c92 → 372a290}/icons/arrow-circle-left.svg +0 -0
  1908. /package/static/{ba49c92 → 372a290}/icons/arrow-circle-right.svg +0 -0
  1909. /package/static/{ba49c92 → 372a290}/icons/arrow-circle-up.svg +0 -0
  1910. /package/static/{ba49c92 → 372a290}/icons/arrow-down.svg +0 -0
  1911. /package/static/{ba49c92 → 372a290}/icons/arrow-left.svg +0 -0
  1912. /package/static/{ba49c92 → 372a290}/icons/arrow-right.svg +0 -0
  1913. /package/static/{ba49c92 → 372a290}/icons/arrow-small-down.svg +0 -0
  1914. /package/static/{ba49c92 → 372a290}/icons/arrow-small-left.svg +0 -0
  1915. /package/static/{ba49c92 → 372a290}/icons/arrow-small-right.svg +0 -0
  1916. /package/static/{ba49c92 → 372a290}/icons/arrow-small-up.svg +0 -0
  1917. /package/static/{ba49c92 → 372a290}/icons/arrow-swap.svg +0 -0
  1918. /package/static/{ba49c92 → 372a290}/icons/arrow-up.svg +0 -0
  1919. /package/static/{ba49c92 → 372a290}/icons/ask.svg +0 -0
  1920. /package/static/{ba49c92 → 372a290}/icons/attach.svg +0 -0
  1921. /package/static/{ba49c92 → 372a290}/icons/azure-devops.svg +0 -0
  1922. /package/static/{ba49c92 → 372a290}/icons/azure.svg +0 -0
  1923. /package/static/{ba49c92 → 372a290}/icons/beaker-stop.svg +0 -0
  1924. /package/static/{ba49c92 → 372a290}/icons/beaker.svg +0 -0
  1925. /package/static/{ba49c92 → 372a290}/icons/bell-dot.svg +0 -0
  1926. /package/static/{ba49c92 → 372a290}/icons/bell-slash-dot.svg +0 -0
  1927. /package/static/{ba49c92 → 372a290}/icons/bell-slash.svg +0 -0
  1928. /package/static/{ba49c92 → 372a290}/icons/bell.svg +0 -0
  1929. /package/static/{ba49c92 → 372a290}/icons/blank.svg +0 -0
  1930. /package/static/{ba49c92 → 372a290}/icons/bold.svg +0 -0
  1931. /package/static/{ba49c92 → 372a290}/icons/book.svg +0 -0
  1932. /package/static/{ba49c92 → 372a290}/icons/bookmark.svg +0 -0
  1933. /package/static/{ba49c92 → 372a290}/icons/bracket-dot.svg +0 -0
  1934. /package/static/{ba49c92 → 372a290}/icons/bracket-error.svg +0 -0
  1935. /package/static/{ba49c92 → 372a290}/icons/briefcase.svg +0 -0
  1936. /package/static/{ba49c92 → 372a290}/icons/broadcast.svg +0 -0
  1937. /package/static/{ba49c92 → 372a290}/icons/browser.svg +0 -0
  1938. /package/static/{ba49c92 → 372a290}/icons/bug.svg +0 -0
  1939. /package/static/{ba49c92 → 372a290}/icons/build.svg +0 -0
  1940. /package/static/{ba49c92 → 372a290}/icons/calendar.svg +0 -0
  1941. /package/static/{ba49c92 → 372a290}/icons/call-incoming.svg +0 -0
  1942. /package/static/{ba49c92 → 372a290}/icons/call-outgoing.svg +0 -0
  1943. /package/static/{ba49c92 → 372a290}/icons/case-sensitive.svg +0 -0
  1944. /package/static/{ba49c92 → 372a290}/icons/chat-sparkle-error.svg +0 -0
  1945. /package/static/{ba49c92 → 372a290}/icons/chat-sparkle-warning.svg +0 -0
  1946. /package/static/{ba49c92 → 372a290}/icons/chat-sparkle.svg +0 -0
  1947. /package/static/{ba49c92 → 372a290}/icons/check-all.svg +0 -0
  1948. /package/static/{ba49c92 → 372a290}/icons/check.svg +0 -0
  1949. /package/static/{ba49c92 → 372a290}/icons/checklist.svg +0 -0
  1950. /package/static/{ba49c92 → 372a290}/icons/chevron-down.svg +0 -0
  1951. /package/static/{ba49c92 → 372a290}/icons/chevron-left.svg +0 -0
  1952. /package/static/{ba49c92 → 372a290}/icons/chevron-right.svg +0 -0
  1953. /package/static/{ba49c92 → 372a290}/icons/chevron-up.svg +0 -0
  1954. /package/static/{ba49c92 → 372a290}/icons/chip.svg +0 -0
  1955. /package/static/{ba49c92 → 372a290}/icons/chrome-close.svg +0 -0
  1956. /package/static/{ba49c92 → 372a290}/icons/chrome-maximize.svg +0 -0
  1957. /package/static/{ba49c92 → 372a290}/icons/chrome-minimize.svg +0 -0
  1958. /package/static/{ba49c92 → 372a290}/icons/chrome-restore.svg +0 -0
  1959. /package/static/{ba49c92 → 372a290}/icons/circle-filled.svg +0 -0
  1960. /package/static/{ba49c92 → 372a290}/icons/circle-large-filled.svg +0 -0
  1961. /package/static/{ba49c92 → 372a290}/icons/circle-large.svg +0 -0
  1962. /package/static/{ba49c92 → 372a290}/icons/circle-slash.svg +0 -0
  1963. /package/static/{ba49c92 → 372a290}/icons/circle-small-filled.svg +0 -0
  1964. /package/static/{ba49c92 → 372a290}/icons/circle-small.svg +0 -0
  1965. /package/static/{ba49c92 → 372a290}/icons/circle.svg +0 -0
  1966. /package/static/{ba49c92 → 372a290}/icons/circuit-board.svg +0 -0
  1967. /package/static/{ba49c92 → 372a290}/icons/claude.svg +0 -0
  1968. /package/static/{ba49c92 → 372a290}/icons/clear-all.svg +0 -0
  1969. /package/static/{ba49c92 → 372a290}/icons/clippy.svg +0 -0
  1970. /package/static/{ba49c92 → 372a290}/icons/clockface.svg +0 -0
  1971. /package/static/{ba49c92 → 372a290}/icons/close-all.svg +0 -0
  1972. /package/static/{ba49c92 → 372a290}/icons/close.svg +0 -0
  1973. /package/static/{ba49c92 → 372a290}/icons/cloud-download.svg +0 -0
  1974. /package/static/{ba49c92 → 372a290}/icons/cloud-small.svg +0 -0
  1975. /package/static/{ba49c92 → 372a290}/icons/cloud-upload.svg +0 -0
  1976. /package/static/{ba49c92 → 372a290}/icons/cloud.svg +0 -0
  1977. /package/static/{ba49c92 → 372a290}/icons/code-oss.svg +0 -0
  1978. /package/static/{ba49c92 → 372a290}/icons/code-review.svg +0 -0
  1979. /package/static/{ba49c92 → 372a290}/icons/code.svg +0 -0
  1980. /package/static/{ba49c92 → 372a290}/icons/coffee.svg +0 -0
  1981. /package/static/{ba49c92 → 372a290}/icons/collapse-all.svg +0 -0
  1982. /package/static/{ba49c92 → 372a290}/icons/collection-small.svg +0 -0
  1983. /package/static/{ba49c92 → 372a290}/icons/collection.svg +0 -0
  1984. /package/static/{ba49c92 → 372a290}/icons/color-mode.svg +0 -0
  1985. /package/static/{ba49c92 → 372a290}/icons/combine.svg +0 -0
  1986. /package/static/{ba49c92 → 372a290}/icons/comment-discussion-quote.svg +0 -0
  1987. /package/static/{ba49c92 → 372a290}/icons/comment-discussion-sparkle.svg +0 -0
  1988. /package/static/{ba49c92 → 372a290}/icons/comment-discussion.svg +0 -0
  1989. /package/static/{ba49c92 → 372a290}/icons/comment-draft.svg +0 -0
  1990. /package/static/{ba49c92 → 372a290}/icons/comment-unresolved.svg +0 -0
  1991. /package/static/{ba49c92 → 372a290}/icons/comment.svg +0 -0
  1992. /package/static/{ba49c92 → 372a290}/icons/compass-active.svg +0 -0
  1993. /package/static/{ba49c92 → 372a290}/icons/compass-dot.svg +0 -0
  1994. /package/static/{ba49c92 → 372a290}/icons/compass.svg +0 -0
  1995. /package/static/{ba49c92 → 372a290}/icons/copilot-blocked.svg +0 -0
  1996. /package/static/{ba49c92 → 372a290}/icons/copilot-error.svg +0 -0
  1997. /package/static/{ba49c92 → 372a290}/icons/copilot-in-progress.svg +0 -0
  1998. /package/static/{ba49c92 → 372a290}/icons/copilot-large.svg +0 -0
  1999. /package/static/{ba49c92 → 372a290}/icons/copilot-not-connected.svg +0 -0
  2000. /package/static/{ba49c92 → 372a290}/icons/copilot-snooze.svg +0 -0
  2001. /package/static/{ba49c92 → 372a290}/icons/copilot-success.svg +0 -0
  2002. /package/static/{ba49c92 → 372a290}/icons/copilot-unavailable.svg +0 -0
  2003. /package/static/{ba49c92 → 372a290}/icons/copilot-warning-large.svg +0 -0
  2004. /package/static/{ba49c92 → 372a290}/icons/copilot-warning.svg +0 -0
  2005. /package/static/{ba49c92 → 372a290}/icons/copilot.svg +0 -0
  2006. /package/static/{ba49c92 → 372a290}/icons/copy.svg +0 -0
  2007. /package/static/{ba49c92 → 372a290}/icons/coverage.svg +0 -0
  2008. /package/static/{ba49c92 → 372a290}/icons/credit-card.svg +0 -0
  2009. /package/static/{ba49c92 → 372a290}/icons/cursor.svg +0 -0
  2010. /package/static/{ba49c92 → 372a290}/icons/dash.svg +0 -0
  2011. /package/static/{ba49c92 → 372a290}/icons/dashboard.svg +0 -0
  2012. /package/static/{ba49c92 → 372a290}/icons/database.svg +0 -0
  2013. /package/static/{ba49c92 → 372a290}/icons/debug-all.svg +0 -0
  2014. /package/static/{ba49c92 → 372a290}/icons/debug-alt-2.svg +0 -0
  2015. /package/static/{ba49c92 → 372a290}/icons/debug-alt-small.svg +0 -0
  2016. /package/static/{ba49c92 → 372a290}/icons/debug-alt.svg +0 -0
  2017. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-conditional-unverified.svg +0 -0
  2018. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-conditional.svg +0 -0
  2019. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-data-unverified.svg +0 -0
  2020. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-data.svg +0 -0
  2021. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-function-unverified.svg +0 -0
  2022. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-function.svg +0 -0
  2023. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-log-unverified.svg +0 -0
  2024. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-log.svg +0 -0
  2025. /package/static/{ba49c92 → 372a290}/icons/debug-breakpoint-unsupported.svg +0 -0
  2026. /package/static/{ba49c92 → 372a290}/icons/debug-connected.svg +0 -0
  2027. /package/static/{ba49c92 → 372a290}/icons/debug-console.svg +0 -0
  2028. /package/static/{ba49c92 → 372a290}/icons/debug-continue-small.svg +0 -0
  2029. /package/static/{ba49c92 → 372a290}/icons/debug-continue.svg +0 -0
  2030. /package/static/{ba49c92 → 372a290}/icons/debug-coverage.svg +0 -0
  2031. /package/static/{ba49c92 → 372a290}/icons/debug-disconnect.svg +0 -0
  2032. /package/static/{ba49c92 → 372a290}/icons/debug-line-by-line.svg +0 -0
  2033. /package/static/{ba49c92 → 372a290}/icons/debug-pause.svg +0 -0
  2034. /package/static/{ba49c92 → 372a290}/icons/debug-rerun.svg +0 -0
  2035. /package/static/{ba49c92 → 372a290}/icons/debug-restart-frame.svg +0 -0
  2036. /package/static/{ba49c92 → 372a290}/icons/debug-restart.svg +0 -0
  2037. /package/static/{ba49c92 → 372a290}/icons/debug-reverse-continue.svg +0 -0
  2038. /package/static/{ba49c92 → 372a290}/icons/debug-stackframe-active.svg +0 -0
  2039. /package/static/{ba49c92 → 372a290}/icons/debug-stackframe.svg +0 -0
  2040. /package/static/{ba49c92 → 372a290}/icons/debug-start.svg +0 -0
  2041. /package/static/{ba49c92 → 372a290}/icons/debug-step-back.svg +0 -0
  2042. /package/static/{ba49c92 → 372a290}/icons/debug-step-into.svg +0 -0
  2043. /package/static/{ba49c92 → 372a290}/icons/debug-step-out.svg +0 -0
  2044. /package/static/{ba49c92 → 372a290}/icons/debug-step-over.svg +0 -0
  2045. /package/static/{ba49c92 → 372a290}/icons/debug-stop.svg +0 -0
  2046. /package/static/{ba49c92 → 372a290}/icons/debug.svg +0 -0
  2047. /package/static/{ba49c92 → 372a290}/icons/desktop-download.svg +0 -0
  2048. /package/static/{ba49c92 → 372a290}/icons/device-camera-video.svg +0 -0
  2049. /package/static/{ba49c92 → 372a290}/icons/device-camera.svg +0 -0
  2050. /package/static/{ba49c92 → 372a290}/icons/device-mobile.svg +0 -0
  2051. /package/static/{ba49c92 → 372a290}/icons/diff-added.svg +0 -0
  2052. /package/static/{ba49c92 → 372a290}/icons/diff-ignored.svg +0 -0
  2053. /package/static/{ba49c92 → 372a290}/icons/diff-modified.svg +0 -0
  2054. /package/static/{ba49c92 → 372a290}/icons/diff-multiple.svg +0 -0
  2055. /package/static/{ba49c92 → 372a290}/icons/diff-removed.svg +0 -0
  2056. /package/static/{ba49c92 → 372a290}/icons/diff-renamed.svg +0 -0
  2057. /package/static/{ba49c92 → 372a290}/icons/diff-single.svg +0 -0
  2058. /package/static/{ba49c92 → 372a290}/icons/diff.svg +0 -0
  2059. /package/static/{ba49c92 → 372a290}/icons/discard.svg +0 -0
  2060. /package/static/{ba49c92 → 372a290}/icons/download.svg +0 -0
  2061. /package/static/{ba49c92 → 372a290}/icons/edit-code.svg +0 -0
  2062. /package/static/{ba49c92 → 372a290}/icons/edit-session.svg +0 -0
  2063. /package/static/{ba49c92 → 372a290}/icons/edit-sparkle.svg +0 -0
  2064. /package/static/{ba49c92 → 372a290}/icons/edit.svg +0 -0
  2065. /package/static/{ba49c92 → 372a290}/icons/editor-layout.svg +0 -0
  2066. /package/static/{ba49c92 → 372a290}/icons/ellipsis.svg +0 -0
  2067. /package/static/{ba49c92 → 372a290}/icons/empty-window.svg +0 -0
  2068. /package/static/{ba49c92 → 372a290}/icons/eraser.svg +0 -0
  2069. /package/static/{ba49c92 → 372a290}/icons/error-small.svg +0 -0
  2070. /package/static/{ba49c92 → 372a290}/icons/error.svg +0 -0
  2071. /package/static/{ba49c92 → 372a290}/icons/exclude.svg +0 -0
  2072. /package/static/{ba49c92 → 372a290}/icons/expand-all.svg +0 -0
  2073. /package/static/{ba49c92 → 372a290}/icons/export.svg +0 -0
  2074. /package/static/{ba49c92 → 372a290}/icons/extensionDefaultIcon.png +0 -0
  2075. /package/static/{ba49c92 → 372a290}/icons/extensions-large.svg +0 -0
  2076. /package/static/{ba49c92 → 372a290}/icons/extensions.svg +0 -0
  2077. /package/static/{ba49c92 → 372a290}/icons/eye-closed.svg +0 -0
  2078. /package/static/{ba49c92 → 372a290}/icons/eye.svg +0 -0
  2079. /package/static/{ba49c92 → 372a290}/icons/feedback.svg +0 -0
  2080. /package/static/{ba49c92 → 372a290}/icons/file-binary.svg +0 -0
  2081. /package/static/{ba49c92 → 372a290}/icons/file-code.svg +0 -0
  2082. /package/static/{ba49c92 → 372a290}/icons/file-media.svg +0 -0
  2083. /package/static/{ba49c92 → 372a290}/icons/file-pdf.svg +0 -0
  2084. /package/static/{ba49c92 → 372a290}/icons/file-submodule.svg +0 -0
  2085. /package/static/{ba49c92 → 372a290}/icons/file-symlink-directory.svg +0 -0
  2086. /package/static/{ba49c92 → 372a290}/icons/file-symlink-file.svg +0 -0
  2087. /package/static/{ba49c92 → 372a290}/icons/file-text.svg +0 -0
  2088. /package/static/{ba49c92 → 372a290}/icons/file-zip.svg +0 -0
  2089. /package/static/{ba49c92 → 372a290}/icons/file.svg +0 -0
  2090. /package/static/{ba49c92 → 372a290}/icons/files.svg +0 -0
  2091. /package/static/{ba49c92 → 372a290}/icons/filter-filled.svg +0 -0
  2092. /package/static/{ba49c92 → 372a290}/icons/filter.svg +0 -0
  2093. /package/static/{ba49c92 → 372a290}/icons/flag.svg +0 -0
  2094. /package/static/{ba49c92 → 372a290}/icons/flame.svg +0 -0
  2095. /package/static/{ba49c92 → 372a290}/icons/fold-down.svg +0 -0
  2096. /package/static/{ba49c92 → 372a290}/icons/fold-up.svg +0 -0
  2097. /package/static/{ba49c92 → 372a290}/icons/fold.svg +0 -0
  2098. /package/static/{ba49c92 → 372a290}/icons/folder-active.svg +0 -0
  2099. /package/static/{ba49c92 → 372a290}/icons/folder-library.svg +0 -0
  2100. /package/static/{ba49c92 → 372a290}/icons/folder-opened.svg +0 -0
  2101. /package/static/{ba49c92 → 372a290}/icons/folder.svg +0 -0
  2102. /package/static/{ba49c92 → 372a290}/icons/forward.svg +0 -0
  2103. /package/static/{ba49c92 → 372a290}/icons/game.svg +0 -0
  2104. /package/static/{ba49c92 → 372a290}/icons/gear.svg +0 -0
  2105. /package/static/{ba49c92 → 372a290}/icons/gift.svg +0 -0
  2106. /package/static/{ba49c92 → 372a290}/icons/gist-secret.svg +0 -0
  2107. /package/static/{ba49c92 → 372a290}/icons/gist.svg +0 -0
  2108. /package/static/{ba49c92 → 372a290}/icons/git-branch-changes.svg +0 -0
  2109. /package/static/{ba49c92 → 372a290}/icons/git-branch-conflicts.svg +0 -0
  2110. /package/static/{ba49c92 → 372a290}/icons/git-branch-staged-changes.svg +0 -0
  2111. /package/static/{ba49c92 → 372a290}/icons/git-branch.svg +0 -0
  2112. /package/static/{ba49c92 → 372a290}/icons/git-commit.svg +0 -0
  2113. /package/static/{ba49c92 → 372a290}/icons/git-compare.svg +0 -0
  2114. /package/static/{ba49c92 → 372a290}/icons/git-fetch.svg +0 -0
  2115. /package/static/{ba49c92 → 372a290}/icons/git-merge.svg +0 -0
  2116. /package/static/{ba49c92 → 372a290}/icons/git-pull-request-closed.svg +0 -0
  2117. /package/static/{ba49c92 → 372a290}/icons/git-pull-request-create.svg +0 -0
  2118. /package/static/{ba49c92 → 372a290}/icons/git-pull-request-done.svg +0 -0
  2119. /package/static/{ba49c92 → 372a290}/icons/git-pull-request-draft.svg +0 -0
  2120. /package/static/{ba49c92 → 372a290}/icons/git-pull-request-go-to-changes.svg +0 -0
  2121. /package/static/{ba49c92 → 372a290}/icons/git-pull-request-new-changes.svg +0 -0
  2122. /package/static/{ba49c92 → 372a290}/icons/git-pull-request.svg +0 -0
  2123. /package/static/{ba49c92 → 372a290}/icons/git-stash-apply.svg +0 -0
  2124. /package/static/{ba49c92 → 372a290}/icons/git-stash-pop.svg +0 -0
  2125. /package/static/{ba49c92 → 372a290}/icons/git-stash.svg +0 -0
  2126. /package/static/{ba49c92 → 372a290}/icons/github-action.svg +0 -0
  2127. /package/static/{ba49c92 → 372a290}/icons/github-alt.svg +0 -0
  2128. /package/static/{ba49c92 → 372a290}/icons/github-inverted.svg +0 -0
  2129. /package/static/{ba49c92 → 372a290}/icons/github-project.svg +0 -0
  2130. /package/static/{ba49c92 → 372a290}/icons/github.svg +0 -0
  2131. /package/static/{ba49c92 → 372a290}/icons/globe.svg +0 -0
  2132. /package/static/{ba49c92 → 372a290}/icons/go-to-editing-session.svg +0 -0
  2133. /package/static/{ba49c92 → 372a290}/icons/go-to-file.svg +0 -0
  2134. /package/static/{ba49c92 → 372a290}/icons/go-to-search.svg +0 -0
  2135. /package/static/{ba49c92 → 372a290}/icons/grabber.svg +0 -0
  2136. /package/static/{ba49c92 → 372a290}/icons/graph-left.svg +0 -0
  2137. /package/static/{ba49c92 → 372a290}/icons/graph-line.svg +0 -0
  2138. /package/static/{ba49c92 → 372a290}/icons/graph-scatter.svg +0 -0
  2139. /package/static/{ba49c92 → 372a290}/icons/graph.svg +0 -0
  2140. /package/static/{ba49c92 → 372a290}/icons/gripper.svg +0 -0
  2141. /package/static/{ba49c92 → 372a290}/icons/group-by-ref-type.svg +0 -0
  2142. /package/static/{ba49c92 → 372a290}/icons/heart-filled.svg +0 -0
  2143. /package/static/{ba49c92 → 372a290}/icons/heart.svg +0 -0
  2144. /package/static/{ba49c92 → 372a290}/icons/history.svg +0 -0
  2145. /package/static/{ba49c92 → 372a290}/icons/home.svg +0 -0
  2146. /package/static/{ba49c92 → 372a290}/icons/horizontal-rule.svg +0 -0
  2147. /package/static/{ba49c92 → 372a290}/icons/hubot.svg +0 -0
  2148. /package/static/{ba49c92 → 372a290}/icons/icon-close.svg +0 -0
  2149. /package/static/{ba49c92 → 372a290}/icons/icon-source-control.svg +0 -0
  2150. /package/static/{ba49c92 → 372a290}/icons/icon-sync.svg +0 -0
  2151. /package/static/{ba49c92 → 372a290}/icons/icon.png +0 -0
  2152. /package/static/{ba49c92 → 372a290}/icons/icon.svg +0 -0
  2153. /package/static/{ba49c92 → 372a290}/icons/inbox.svg +0 -0
  2154. /package/static/{ba49c92 → 372a290}/icons/indent.svg +0 -0
  2155. /package/static/{ba49c92 → 372a290}/icons/index-zero.svg +0 -0
  2156. /package/static/{ba49c92 → 372a290}/icons/info.svg +0 -0
  2157. /package/static/{ba49c92 → 372a290}/icons/insert.svg +0 -0
  2158. /package/static/{ba49c92 → 372a290}/icons/inspect.svg +0 -0
  2159. /package/static/{ba49c92 → 372a290}/icons/issue-draft.svg +0 -0
  2160. /package/static/{ba49c92 → 372a290}/icons/issue-reopened.svg +0 -0
  2161. /package/static/{ba49c92 → 372a290}/icons/issues.svg +0 -0
  2162. /package/static/{ba49c92 → 372a290}/icons/italic.svg +0 -0
  2163. /package/static/{ba49c92 → 372a290}/icons/jersey.svg +0 -0
  2164. /package/static/{ba49c92 → 372a290}/icons/json.svg +0 -0
  2165. /package/static/{ba49c92 → 372a290}/icons/kebab-vertical.svg +0 -0
  2166. /package/static/{ba49c92 → 372a290}/icons/key.svg +0 -0
  2167. /package/static/{ba49c92 → 372a290}/icons/keyboard-tab-above.svg +0 -0
  2168. /package/static/{ba49c92 → 372a290}/icons/keyboard-tab-below.svg +0 -0
  2169. /package/static/{ba49c92 → 372a290}/icons/keyboard-tab.svg +0 -0
  2170. /package/static/{ba49c92 → 372a290}/icons/language-icon.svg +0 -0
  2171. /package/static/{ba49c92 → 372a290}/icons/law.svg +0 -0
  2172. /package/static/{ba49c92 → 372a290}/icons/layers-active.svg +0 -0
  2173. /package/static/{ba49c92 → 372a290}/icons/layers-dot.svg +0 -0
  2174. /package/static/{ba49c92 → 372a290}/icons/layers.svg +0 -0
  2175. /package/static/{ba49c92 → 372a290}/icons/layout-activitybar-left.svg +0 -0
  2176. /package/static/{ba49c92 → 372a290}/icons/layout-activitybar-right.svg +0 -0
  2177. /package/static/{ba49c92 → 372a290}/icons/layout-centered.svg +0 -0
  2178. /package/static/{ba49c92 → 372a290}/icons/layout-menubar.svg +0 -0
  2179. /package/static/{ba49c92 → 372a290}/icons/layout-panel-center.svg +0 -0
  2180. /package/static/{ba49c92 → 372a290}/icons/layout-panel-dock.svg +0 -0
  2181. /package/static/{ba49c92 → 372a290}/icons/layout-panel-justify.svg +0 -0
  2182. /package/static/{ba49c92 → 372a290}/icons/layout-panel-left.svg +0 -0
  2183. /package/static/{ba49c92 → 372a290}/icons/layout-panel-off.svg +0 -0
  2184. /package/static/{ba49c92 → 372a290}/icons/layout-panel-right.svg +0 -0
  2185. /package/static/{ba49c92 → 372a290}/icons/layout-panel.svg +0 -0
  2186. /package/static/{ba49c92 → 372a290}/icons/layout-sidebar-left-dock.svg +0 -0
  2187. /package/static/{ba49c92 → 372a290}/icons/layout-sidebar-left-off.svg +0 -0
  2188. /package/static/{ba49c92 → 372a290}/icons/layout-sidebar-left.svg +0 -0
  2189. /package/static/{ba49c92 → 372a290}/icons/layout-sidebar-right-dock.svg +0 -0
  2190. /package/static/{ba49c92 → 372a290}/icons/layout-sidebar-right-off.svg +0 -0
  2191. /package/static/{ba49c92 → 372a290}/icons/layout-sidebar-right.svg +0 -0
  2192. /package/static/{ba49c92 → 372a290}/icons/layout-statusbar.svg +0 -0
  2193. /package/static/{ba49c92 → 372a290}/icons/layout.svg +0 -0
  2194. /package/static/{ba49c92 → 372a290}/icons/library.svg +0 -0
  2195. /package/static/{ba49c92 → 372a290}/icons/lightbulb-autofix.svg +0 -0
  2196. /package/static/{ba49c92 → 372a290}/icons/lightbulb-empty.svg +0 -0
  2197. /package/static/{ba49c92 → 372a290}/icons/lightbulb-sparkle.svg +0 -0
  2198. /package/static/{ba49c92 → 372a290}/icons/lightbulb.svg +0 -0
  2199. /package/static/{ba49c92 → 372a290}/icons/link-external.svg +0 -0
  2200. /package/static/{ba49c92 → 372a290}/icons/link.svg +0 -0
  2201. /package/static/{ba49c92 → 372a290}/icons/list-filter.svg +0 -0
  2202. /package/static/{ba49c92 → 372a290}/icons/list-flat.svg +0 -0
  2203. /package/static/{ba49c92 → 372a290}/icons/list-ordered.svg +0 -0
  2204. /package/static/{ba49c92 → 372a290}/icons/list-selection.svg +0 -0
  2205. /package/static/{ba49c92 → 372a290}/icons/list-tree.svg +0 -0
  2206. /package/static/{ba49c92 → 372a290}/icons/list-unordered.svg +0 -0
  2207. /package/static/{ba49c92 → 372a290}/icons/live-share.svg +0 -0
  2208. /package/static/{ba49c92 → 372a290}/icons/loading.svg +0 -0
  2209. /package/static/{ba49c92 → 372a290}/icons/location.svg +0 -0
  2210. /package/static/{ba49c92 → 372a290}/icons/lock-small.svg +0 -0
  2211. /package/static/{ba49c92 → 372a290}/icons/lock.svg +0 -0
  2212. /package/static/{ba49c92 → 372a290}/icons/magnet.svg +0 -0
  2213. /package/static/{ba49c92 → 372a290}/icons/mail-read.svg +0 -0
  2214. /package/static/{ba49c92 → 372a290}/icons/mail.svg +0 -0
  2215. /package/static/{ba49c92 → 372a290}/icons/map-filled.svg +0 -0
  2216. /package/static/{ba49c92 → 372a290}/icons/map-vertical-filled.svg +0 -0
  2217. /package/static/{ba49c92 → 372a290}/icons/map-vertical.svg +0 -0
  2218. /package/static/{ba49c92 → 372a290}/icons/map.svg +0 -0
  2219. /package/static/{ba49c92 → 372a290}/icons/markdown.svg +0 -0
  2220. /package/static/{ba49c92 → 372a290}/icons/mcp.svg +0 -0
  2221. /package/static/{ba49c92 → 372a290}/icons/megaphone.svg +0 -0
  2222. /package/static/{ba49c92 → 372a290}/icons/mention.svg +0 -0
  2223. /package/static/{ba49c92 → 372a290}/icons/menu.svg +0 -0
  2224. /package/static/{ba49c92 → 372a290}/icons/merge-into.svg +0 -0
  2225. /package/static/{ba49c92 → 372a290}/icons/merge.svg +0 -0
  2226. /package/static/{ba49c92 → 372a290}/icons/mic-filled.svg +0 -0
  2227. /package/static/{ba49c92 → 372a290}/icons/mic.svg +0 -0
  2228. /package/static/{ba49c92 → 372a290}/icons/milestone.svg +0 -0
  2229. /package/static/{ba49c92 → 372a290}/icons/mirror.svg +0 -0
  2230. /package/static/{ba49c92 → 372a290}/icons/mortar-board.svg +0 -0
  2231. /package/static/{ba49c92 → 372a290}/icons/move.svg +0 -0
  2232. /package/static/{ba49c92 → 372a290}/icons/multiple-windows.svg +0 -0
  2233. /package/static/{ba49c92 → 372a290}/icons/music.svg +0 -0
  2234. /package/static/{ba49c92 → 372a290}/icons/mute.svg +0 -0
  2235. /package/static/{ba49c92 → 372a290}/icons/new-collection.svg +0 -0
  2236. /package/static/{ba49c92 → 372a290}/icons/new-file.svg +0 -0
  2237. /package/static/{ba49c92 → 372a290}/icons/new-folder.svg +0 -0
  2238. /package/static/{ba49c92 → 372a290}/icons/new-session.svg +0 -0
  2239. /package/static/{ba49c92 → 372a290}/icons/newline.svg +0 -0
  2240. /package/static/{ba49c92 → 372a290}/icons/no-newline.svg +0 -0
  2241. /package/static/{ba49c92 → 372a290}/icons/note.svg +0 -0
  2242. /package/static/{ba49c92 → 372a290}/icons/notebook-template.svg +0 -0
  2243. /package/static/{ba49c92 → 372a290}/icons/notebook.svg +0 -0
  2244. /package/static/{ba49c92 → 372a290}/icons/octoface.svg +0 -0
  2245. /package/static/{ba49c92 → 372a290}/icons/open-in-product.svg +0 -0
  2246. /package/static/{ba49c92 → 372a290}/icons/open-in-window.svg +0 -0
  2247. /package/static/{ba49c92 → 372a290}/icons/open-preview.svg +0 -0
  2248. /package/static/{ba49c92 → 372a290}/icons/openai.svg +0 -0
  2249. /package/static/{ba49c92 → 372a290}/icons/organization.svg +0 -0
  2250. /package/static/{ba49c92 → 372a290}/icons/output.svg +0 -0
  2251. /package/static/{ba49c92 → 372a290}/icons/package.svg +0 -0
  2252. /package/static/{ba49c92 → 372a290}/icons/paintcan.svg +0 -0
  2253. /package/static/{ba49c92 → 372a290}/icons/pass-filled.svg +0 -0
  2254. /package/static/{ba49c92 → 372a290}/icons/pass.svg +0 -0
  2255. /package/static/{ba49c92 → 372a290}/icons/percentage.svg +0 -0
  2256. /package/static/{ba49c92 → 372a290}/icons/person-add.svg +0 -0
  2257. /package/static/{ba49c92 → 372a290}/icons/person.svg +0 -0
  2258. /package/static/{ba49c92 → 372a290}/icons/piano.svg +0 -0
  2259. /package/static/{ba49c92 → 372a290}/icons/pie-chart.svg +0 -0
  2260. /package/static/{ba49c92 → 372a290}/icons/pin.svg +0 -0
  2261. /package/static/{ba49c92 → 372a290}/icons/pinned-dirty.svg +0 -0
  2262. /package/static/{ba49c92 → 372a290}/icons/pinned.svg +0 -0
  2263. /package/static/{ba49c92 → 372a290}/icons/play-circle.svg +0 -0
  2264. /package/static/{ba49c92 → 372a290}/icons/play.svg +0 -0
  2265. /package/static/{ba49c92 → 372a290}/icons/plug.svg +0 -0
  2266. /package/static/{ba49c92 → 372a290}/icons/preserve-case.svg +0 -0
  2267. /package/static/{ba49c92 → 372a290}/icons/preview.svg +0 -0
  2268. /package/static/{ba49c92 → 372a290}/icons/primitive-square.svg +0 -0
  2269. /package/static/{ba49c92 → 372a290}/icons/progress.svg +0 -0
  2270. /package/static/{ba49c92 → 372a290}/icons/project.svg +0 -0
  2271. /package/static/{ba49c92 → 372a290}/icons/pulse.svg +0 -0
  2272. /package/static/{ba49c92 → 372a290}/icons/pwa-icon-192.png +0 -0
  2273. /package/static/{ba49c92 → 372a290}/icons/pwa-icon-512.png +0 -0
  2274. /package/static/{ba49c92 → 372a290}/icons/python.svg +0 -0
  2275. /package/static/{ba49c92 → 372a290}/icons/question.svg +0 -0
  2276. /package/static/{ba49c92 → 372a290}/icons/quote.svg +0 -0
  2277. /package/static/{ba49c92 → 372a290}/icons/quotes.svg +0 -0
  2278. /package/static/{ba49c92 → 372a290}/icons/radio-tower.svg +0 -0
  2279. /package/static/{ba49c92 → 372a290}/icons/reactions.svg +0 -0
  2280. /package/static/{ba49c92 → 372a290}/icons/record-keys.svg +0 -0
  2281. /package/static/{ba49c92 → 372a290}/icons/record-small.svg +0 -0
  2282. /package/static/{ba49c92 → 372a290}/icons/record.svg +0 -0
  2283. /package/static/{ba49c92 → 372a290}/icons/redo.svg +0 -0
  2284. /package/static/{ba49c92 → 372a290}/icons/references.svg +0 -0
  2285. /package/static/{ba49c92 → 372a290}/icons/refresh.svg +0 -0
  2286. /package/static/{ba49c92 → 372a290}/icons/regex.svg +0 -0
  2287. /package/static/{ba49c92 → 372a290}/icons/remote-explorer.svg +0 -0
  2288. /package/static/{ba49c92 → 372a290}/icons/remote.svg +0 -0
  2289. /package/static/{ba49c92 → 372a290}/icons/remove-small.svg +0 -0
  2290. /package/static/{ba49c92 → 372a290}/icons/remove.svg +0 -0
  2291. /package/static/{ba49c92 → 372a290}/icons/rename.svg +0 -0
  2292. /package/static/{ba49c92 → 372a290}/icons/replace-all.svg +0 -0
  2293. /package/static/{ba49c92 → 372a290}/icons/replace.svg +0 -0
  2294. /package/static/{ba49c92 → 372a290}/icons/reply.svg +0 -0
  2295. /package/static/{ba49c92 → 372a290}/icons/repo-clone.svg +0 -0
  2296. /package/static/{ba49c92 → 372a290}/icons/repo-fetch.svg +0 -0
  2297. /package/static/{ba49c92 → 372a290}/icons/repo-force-push.svg +0 -0
  2298. /package/static/{ba49c92 → 372a290}/icons/repo-forked.svg +0 -0
  2299. /package/static/{ba49c92 → 372a290}/icons/repo-pinned.svg +0 -0
  2300. /package/static/{ba49c92 → 372a290}/icons/repo-pull.svg +0 -0
  2301. /package/static/{ba49c92 → 372a290}/icons/repo-push.svg +0 -0
  2302. /package/static/{ba49c92 → 372a290}/icons/repo-selected.svg +0 -0
  2303. /package/static/{ba49c92 → 372a290}/icons/repo.svg +0 -0
  2304. /package/static/{ba49c92 → 372a290}/icons/report.svg +0 -0
  2305. /package/static/{ba49c92 → 372a290}/icons/request-changes.svg +0 -0
  2306. /package/static/{ba49c92 → 372a290}/icons/robot.svg +0 -0
  2307. /package/static/{ba49c92 → 372a290}/icons/rocket.svg +0 -0
  2308. /package/static/{ba49c92 → 372a290}/icons/root-folder-opened.svg +0 -0
  2309. /package/static/{ba49c92 → 372a290}/icons/root-folder.svg +0 -0
  2310. /package/static/{ba49c92 → 372a290}/icons/rss.svg +0 -0
  2311. /package/static/{ba49c92 → 372a290}/icons/ruby.svg +0 -0
  2312. /package/static/{ba49c92 → 372a290}/icons/run-above.svg +0 -0
  2313. /package/static/{ba49c92 → 372a290}/icons/run-all-coverage.svg +0 -0
  2314. /package/static/{ba49c92 → 372a290}/icons/run-all.svg +0 -0
  2315. /package/static/{ba49c92 → 372a290}/icons/run-below.svg +0 -0
  2316. /package/static/{ba49c92 → 372a290}/icons/run-coverage.svg +0 -0
  2317. /package/static/{ba49c92 → 372a290}/icons/run-errors.svg +0 -0
  2318. /package/static/{ba49c92 → 372a290}/icons/run-with-deps.svg +0 -0
  2319. /package/static/{ba49c92 → 372a290}/icons/save-all.svg +0 -0
  2320. /package/static/{ba49c92 → 372a290}/icons/save-as.svg +0 -0
  2321. /package/static/{ba49c92 → 372a290}/icons/save.svg +0 -0
  2322. /package/static/{ba49c92 → 372a290}/icons/screen-cut.svg +0 -0
  2323. /package/static/{ba49c92 → 372a290}/icons/screen-full.svg +0 -0
  2324. /package/static/{ba49c92 → 372a290}/icons/screen-normal.svg +0 -0
  2325. /package/static/{ba49c92 → 372a290}/icons/search-fuzzy.svg +0 -0
  2326. /package/static/{ba49c92 → 372a290}/icons/search-large.svg +0 -0
  2327. /package/static/{ba49c92 → 372a290}/icons/search-sparkle.svg +0 -0
  2328. /package/static/{ba49c92 → 372a290}/icons/search-stop.svg +0 -0
  2329. /package/static/{ba49c92 → 372a290}/icons/search.svg +0 -0
  2330. /package/static/{ba49c92 → 372a290}/icons/send-to-remote-agent.svg +0 -0
  2331. /package/static/{ba49c92 → 372a290}/icons/send.svg +0 -0
  2332. /package/static/{ba49c92 → 372a290}/icons/server-environment.svg +0 -0
  2333. /package/static/{ba49c92 → 372a290}/icons/server-process.svg +0 -0
  2334. /package/static/{ba49c92 → 372a290}/icons/server.svg +0 -0
  2335. /package/static/{ba49c92 → 372a290}/icons/session-in-progress.svg +0 -0
  2336. /package/static/{ba49c92 → 372a290}/icons/settings-gear.svg +0 -0
  2337. /package/static/{ba49c92 → 372a290}/icons/settings.svg +0 -0
  2338. /package/static/{ba49c92 → 372a290}/icons/share.svg +0 -0
  2339. /package/static/{ba49c92 → 372a290}/icons/shield.svg +0 -0
  2340. /package/static/{ba49c92 → 372a290}/icons/sign-in.svg +0 -0
  2341. /package/static/{ba49c92 → 372a290}/icons/sign-out.svg +0 -0
  2342. /package/static/{ba49c92 → 372a290}/icons/skip.svg +0 -0
  2343. /package/static/{ba49c92 → 372a290}/icons/smiley.svg +0 -0
  2344. /package/static/{ba49c92 → 372a290}/icons/snake.svg +0 -0
  2345. /package/static/{ba49c92 → 372a290}/icons/sort-precedence.svg +0 -0
  2346. /package/static/{ba49c92 → 372a290}/icons/source-control.svg +0 -0
  2347. /package/static/{ba49c92 → 372a290}/icons/sparkle-filled.svg +0 -0
  2348. /package/static/{ba49c92 → 372a290}/icons/sparkle.svg +0 -0
  2349. /package/static/{ba49c92 → 372a290}/icons/split-horizontal.svg +0 -0
  2350. /package/static/{ba49c92 → 372a290}/icons/split-vertical.svg +0 -0
  2351. /package/static/{ba49c92 → 372a290}/icons/squiggly-error.svg +0 -0
  2352. /package/static/{ba49c92 → 372a290}/icons/squiggly-warning.svg +0 -0
  2353. /package/static/{ba49c92 → 372a290}/icons/squirrel.svg +0 -0
  2354. /package/static/{ba49c92 → 372a290}/icons/star-empty.svg +0 -0
  2355. /package/static/{ba49c92 → 372a290}/icons/star-full.svg +0 -0
  2356. /package/static/{ba49c92 → 372a290}/icons/star-half.svg +0 -0
  2357. /package/static/{ba49c92 → 372a290}/icons/stop-circle.svg +0 -0
  2358. /package/static/{ba49c92 → 372a290}/icons/strikethrough.svg +0 -0
  2359. /package/static/{ba49c92 → 372a290}/icons/surround-with.svg +0 -0
  2360. /package/static/{ba49c92 → 372a290}/icons/symbol-array.svg +0 -0
  2361. /package/static/{ba49c92 → 372a290}/icons/symbol-boolean.svg +0 -0
  2362. /package/static/{ba49c92 → 372a290}/icons/symbol-class.svg +0 -0
  2363. /package/static/{ba49c92 → 372a290}/icons/symbol-color.svg +0 -0
  2364. /package/static/{ba49c92 → 372a290}/icons/symbol-constant.svg +0 -0
  2365. /package/static/{ba49c92 → 372a290}/icons/symbol-enum-member.svg +0 -0
  2366. /package/static/{ba49c92 → 372a290}/icons/symbol-enum.svg +0 -0
  2367. /package/static/{ba49c92 → 372a290}/icons/symbol-event.svg +0 -0
  2368. /package/static/{ba49c92 → 372a290}/icons/symbol-field.svg +0 -0
  2369. /package/static/{ba49c92 → 372a290}/icons/symbol-file.svg +0 -0
  2370. /package/static/{ba49c92 → 372a290}/icons/symbol-interface.svg +0 -0
  2371. /package/static/{ba49c92 → 372a290}/icons/symbol-key.svg +0 -0
  2372. /package/static/{ba49c92 → 372a290}/icons/symbol-keyword.svg +0 -0
  2373. /package/static/{ba49c92 → 372a290}/icons/symbol-method-arrow.svg +0 -0
  2374. /package/static/{ba49c92 → 372a290}/icons/symbol-method.svg +0 -0
  2375. /package/static/{ba49c92 → 372a290}/icons/symbol-misc.svg +0 -0
  2376. /package/static/{ba49c92 → 372a290}/icons/symbol-namespace.svg +0 -0
  2377. /package/static/{ba49c92 → 372a290}/icons/symbol-numeric.svg +0 -0
  2378. /package/static/{ba49c92 → 372a290}/icons/symbol-operator.svg +0 -0
  2379. /package/static/{ba49c92 → 372a290}/icons/symbol-parameter.svg +0 -0
  2380. /package/static/{ba49c92 → 372a290}/icons/symbol-property.svg +0 -0
  2381. /package/static/{ba49c92 → 372a290}/icons/symbol-ruler.svg +0 -0
  2382. /package/static/{ba49c92 → 372a290}/icons/symbol-snippet.svg +0 -0
  2383. /package/static/{ba49c92 → 372a290}/icons/symbol-string.svg +0 -0
  2384. /package/static/{ba49c92 → 372a290}/icons/symbol-structure.svg +0 -0
  2385. /package/static/{ba49c92 → 372a290}/icons/symbol-variable.svg +0 -0
  2386. /package/static/{ba49c92 → 372a290}/icons/sync-ignored.svg +0 -0
  2387. /package/static/{ba49c92 → 372a290}/icons/sync.svg +0 -0
  2388. /package/static/{ba49c92 → 372a290}/icons/table.svg +0 -0
  2389. /package/static/{ba49c92 → 372a290}/icons/tag.svg +0 -0
  2390. /package/static/{ba49c92 → 372a290}/icons/target.svg +0 -0
  2391. /package/static/{ba49c92 → 372a290}/icons/tasklist.svg +0 -0
  2392. /package/static/{ba49c92 → 372a290}/icons/telescope.svg +0 -0
  2393. /package/static/{ba49c92 → 372a290}/icons/terminal-bash.svg +0 -0
  2394. /package/static/{ba49c92 → 372a290}/icons/terminal-cmd.svg +0 -0
  2395. /package/static/{ba49c92 → 372a290}/icons/terminal-debian.svg +0 -0
  2396. /package/static/{ba49c92 → 372a290}/icons/terminal-git-bash.svg +0 -0
  2397. /package/static/{ba49c92 → 372a290}/icons/terminal-linux.svg +0 -0
  2398. /package/static/{ba49c92 → 372a290}/icons/terminal-powershell.svg +0 -0
  2399. /package/static/{ba49c92 → 372a290}/icons/terminal-tmux.svg +0 -0
  2400. /package/static/{ba49c92 → 372a290}/icons/terminal-ubuntu.svg +0 -0
  2401. /package/static/{ba49c92 → 372a290}/icons/terminal.svg +0 -0
  2402. /package/static/{ba49c92 → 372a290}/icons/text-size.svg +0 -0
  2403. /package/static/{ba49c92 → 372a290}/icons/theme-icon.png +0 -0
  2404. /package/static/{ba49c92 → 372a290}/icons/thinking.svg +0 -0
  2405. /package/static/{ba49c92 → 372a290}/icons/three-bars.svg +0 -0
  2406. /package/static/{ba49c92 → 372a290}/icons/thumbsdown-filled.svg +0 -0
  2407. /package/static/{ba49c92 → 372a290}/icons/thumbsdown.svg +0 -0
  2408. /package/static/{ba49c92 → 372a290}/icons/thumbsup-filled.svg +0 -0
  2409. /package/static/{ba49c92 → 372a290}/icons/thumbsup.svg +0 -0
  2410. /package/static/{ba49c92 → 372a290}/icons/tools.svg +0 -0
  2411. /package/static/{ba49c92 → 372a290}/icons/trash.svg +0 -0
  2412. /package/static/{ba49c92 → 372a290}/icons/triangle-down.svg +0 -0
  2413. /package/static/{ba49c92 → 372a290}/icons/triangle-left.svg +0 -0
  2414. /package/static/{ba49c92 → 372a290}/icons/triangle-right.svg +0 -0
  2415. /package/static/{ba49c92 → 372a290}/icons/triangle-up.svg +0 -0
  2416. /package/static/{ba49c92 → 372a290}/icons/twitter.svg +0 -0
  2417. /package/static/{ba49c92 → 372a290}/icons/type-hierarchy-sub.svg +0 -0
  2418. /package/static/{ba49c92 → 372a290}/icons/type-hierarchy-super.svg +0 -0
  2419. /package/static/{ba49c92 → 372a290}/icons/type-hierarchy.svg +0 -0
  2420. /package/static/{ba49c92 → 372a290}/icons/unarchive.svg +0 -0
  2421. /package/static/{ba49c92 → 372a290}/icons/unfold.svg +0 -0
  2422. /package/static/{ba49c92 → 372a290}/icons/ungroup-by-ref-type.svg +0 -0
  2423. /package/static/{ba49c92 → 372a290}/icons/unlock.svg +0 -0
  2424. /package/static/{ba49c92 → 372a290}/icons/unmute.svg +0 -0
  2425. /package/static/{ba49c92 → 372a290}/icons/unverified.svg +0 -0
  2426. /package/static/{ba49c92 → 372a290}/icons/variable-group.svg +0 -0
  2427. /package/static/{ba49c92 → 372a290}/icons/verified-filled.svg +0 -0
  2428. /package/static/{ba49c92 → 372a290}/icons/verified.svg +0 -0
  2429. /package/static/{ba49c92 → 372a290}/icons/versions.svg +0 -0
  2430. /package/static/{ba49c92 → 372a290}/icons/vm-active.svg +0 -0
  2431. /package/static/{ba49c92 → 372a290}/icons/vm-connect.svg +0 -0
  2432. /package/static/{ba49c92 → 372a290}/icons/vm-outline.svg +0 -0
  2433. /package/static/{ba49c92 → 372a290}/icons/vm-pending.svg +0 -0
  2434. /package/static/{ba49c92 → 372a290}/icons/vm-running.svg +0 -0
  2435. /package/static/{ba49c92 → 372a290}/icons/vm-small.svg +0 -0
  2436. /package/static/{ba49c92 → 372a290}/icons/vm.svg +0 -0
  2437. /package/static/{ba49c92 → 372a290}/icons/vr.svg +0 -0
  2438. /package/static/{ba49c92 → 372a290}/icons/vscode-insiders.svg +0 -0
  2439. /package/static/{ba49c92 → 372a290}/icons/vscode.svg +0 -0
  2440. /package/static/{ba49c92 → 372a290}/icons/wand.svg +0 -0
  2441. /package/static/{ba49c92 → 372a290}/icons/warning.svg +0 -0
  2442. /package/static/{ba49c92 → 372a290}/icons/watch.svg +0 -0
  2443. /package/static/{ba49c92 → 372a290}/icons/whitespace.svg +0 -0
  2444. /package/static/{ba49c92 → 372a290}/icons/whole-word.svg +0 -0
  2445. /package/static/{ba49c92 → 372a290}/icons/window-active.svg +0 -0
  2446. /package/static/{ba49c92 → 372a290}/icons/window.svg +0 -0
  2447. /package/static/{ba49c92 → 372a290}/icons/word-wrap.svg +0 -0
  2448. /package/static/{ba49c92 → 372a290}/icons/workspace-trusted.svg +0 -0
  2449. /package/static/{ba49c92 → 372a290}/icons/workspace-unknown.svg +0 -0
  2450. /package/static/{ba49c92 → 372a290}/icons/workspace-untrusted.svg +0 -0
  2451. /package/static/{ba49c92 → 372a290}/icons/worktree-small.svg +0 -0
  2452. /package/static/{ba49c92 → 372a290}/icons/worktree.svg +0 -0
  2453. /package/static/{ba49c92 → 372a290}/icons/zoom-in.svg +0 -0
  2454. /package/static/{ba49c92 → 372a290}/icons/zoom-out.svg +0 -0
  2455. /package/static/{ba49c92 → 372a290}/js/babel-parser.js +0 -0
  2456. /package/static/{ba49c92 → 372a290}/js/ky.js +0 -0
  2457. /package/static/{ba49c92 → 372a290}/js/lvce-editor-import-script.js +0 -0
  2458. /package/static/{ba49c92 → 372a290}/js/lvce-editor-ipc.js +0 -0
  2459. /package/static/{ba49c92 → 372a290}/js/lvce-editor-json-rpc.js +0 -0
  2460. /package/static/{ba49c92 → 372a290}/js/lvce-editor-rpc.js +0 -0
  2461. /package/static/{ba49c92 → 372a290}/js/lvce-editor-verror.js +0 -0
  2462. /package/static/{ba49c92 → 372a290}/js/p-min-delay.js +0 -0
  2463. /package/static/{ba49c92 → 372a290}/js/pretty-bytes.js +0 -0
  2464. /package/static/{ba49c92 → 372a290}/js/preview-injected.js +0 -0
  2465. /package/static/{ba49c92 → 372a290}/js/yoctodelay.js +0 -0
  2466. /package/static/{ba49c92 → 372a290}/lib-css/xterm.css +0 -0
  2467. /package/static/{ba49c92 → 372a290}/packages/activity-bar-worker/dist/activityBarWorkerMain.js +0 -0
  2468. /package/static/{ba49c92 → 372a290}/packages/auth-worker/dist/authWorkerMain.js +0 -0
  2469. /package/static/{ba49c92 → 372a290}/packages/chat-coordinator-worker/dist/chatCoordinatorWorkerMain.js +0 -0
  2470. /package/static/{ba49c92 → 372a290}/packages/chat-debug-view/dist/chatDebugViewWorkerMain.js +0 -0
  2471. /package/static/{ba49c92 → 372a290}/packages/chat-math-worker/dist/chatMathWorkerMain.js +0 -0
  2472. /package/static/{ba49c92 → 372a290}/packages/chat-message-parsing-worker/dist/chatMessageParsingWorkerMain.js +0 -0
  2473. /package/static/{ba49c92 → 372a290}/packages/chat-network-worker/dist/chatNetworkWorkerMain.js +0 -0
  2474. /package/static/{ba49c92 → 372a290}/packages/chat-storage-worker/dist/chatStorageWorkerMain.js +0 -0
  2475. /package/static/{ba49c92 → 372a290}/packages/chat-tool-worker/dist/chatToolWorkerMain.js +0 -0
  2476. /package/static/{ba49c92 → 372a290}/packages/chat-view/dist/chatViewWorkerMain.js +0 -0
  2477. /package/static/{ba49c92 → 372a290}/packages/chat-view-model/dist/chatViewModelWorkerMain.js +0 -0
  2478. /package/static/{ba49c92 → 372a290}/packages/clipboard-worker/dist/clipBoardWorkerMain.js +0 -0
  2479. /package/static/{ba49c92 → 372a290}/packages/color-picker-worker/dist/colorPickerWorkerMain.js +0 -0
  2480. /package/static/{ba49c92 → 372a290}/packages/completion-worker/dist/completionWorkerMain.js +0 -0
  2481. /package/static/{ba49c92 → 372a290}/packages/debug-worker/dist/debugWorkerMain.js +0 -0
  2482. /package/static/{ba49c92 → 372a290}/packages/dialog-worker/dist/dialogWorkerMain.js +0 -0
  2483. /package/static/{ba49c92 → 372a290}/packages/diff-view/dist/diffViewWorkerMain.js +0 -0
  2484. /package/static/{ba49c92 → 372a290}/packages/diff-worker/dist/diffWorkerMain.js +0 -0
  2485. /package/static/{ba49c92 → 372a290}/packages/drag-and-drop-worker/dist/dragAndDropWorkerMain.js +0 -0
  2486. /package/static/{ba49c92 → 372a290}/packages/editor-worker/dist/editorWorkerMain.js +0 -0
  2487. /package/static/{ba49c92 → 372a290}/packages/embeds-worker/dist/embedsWorkerMain.js +0 -0
  2488. /package/static/{ba49c92 → 372a290}/packages/error-worker/dist/errorWorkerMain.js +0 -0
  2489. /package/static/{ba49c92 → 372a290}/packages/explorer-worker/dist/explorerViewWorkerMain.js +0 -0
  2490. /package/static/{ba49c92 → 372a290}/packages/extension-host-sub-worker/dist/extensionHostSubWorkerMain.js +0 -0
  2491. /package/static/{ba49c92 → 372a290}/packages/file-search-worker/dist/fileSearchWorkerMain.js +0 -0
  2492. /package/static/{ba49c92 → 372a290}/packages/file-system-worker/dist/fileSystemWorkerMain.js +0 -0
  2493. /package/static/{ba49c92 → 372a290}/packages/find-widget-worker/dist/findWidgetWorkerMain.js +0 -0
  2494. /package/static/{ba49c92 → 372a290}/packages/hover-worker/dist/hoverWorkerMain.js +0 -0
  2495. /package/static/{ba49c92 → 372a290}/packages/icon-theme-worker/dist/iconThemeWorkerMain.js +0 -0
  2496. /package/static/{ba49c92 → 372a290}/packages/iframe-inspector/dist/iframeInspectorWorkerMain.js +0 -0
  2497. /package/static/{ba49c92 → 372a290}/packages/iframe-worker/dist/iframeWorkerMain.js +0 -0
  2498. /package/static/{ba49c92 → 372a290}/packages/keybindings-view-worker/dist/keyBindingsViewWorkerMain.js +0 -0
  2499. /package/static/{ba49c92 → 372a290}/packages/language-models-view/dist/languageModelsViewMain.js +0 -0
  2500. /package/static/{ba49c92 → 372a290}/packages/markdown-worker/dist/markdownWorkerMain.js +0 -0
  2501. /package/static/{ba49c92 → 372a290}/packages/menu-worker/dist/menuWorkerMain.js +0 -0
  2502. /package/static/{ba49c92 → 372a290}/packages/opener-worker/dist/openerWorkerMain.js +0 -0
  2503. /package/static/{ba49c92 → 372a290}/packages/panel-worker/dist/panelWorkerMain.js +0 -0
  2504. /package/static/{ba49c92 → 372a290}/packages/preload/dist/index.js +0 -0
  2505. /package/static/{ba49c92 → 372a290}/packages/preview-sandbox-worker/dist/previewSandBoxWorkerMain.js +0 -0
  2506. /package/static/{ba49c92 → 372a290}/packages/preview-worker/dist/previewWorkerMain.js +0 -0
  2507. /package/static/{ba49c92 → 372a290}/packages/process-explorer-worker/index.js +0 -0
  2508. /package/static/{ba49c92 → 372a290}/packages/references-view/dist/referencesViewWorkerMain.js +0 -0
  2509. /package/static/{ba49c92 → 372a290}/packages/rename-worker/dist/renameWorkerMain.js +0 -0
  2510. /package/static/{ba49c92 → 372a290}/packages/renderer-process/LICENSE +0 -0
  2511. /package/static/{ba49c92 → 372a290}/packages/renderer-process/README.md +0 -0
  2512. /package/static/{ba49c92 → 372a290}/packages/renderer-process/dist/editorOnly.css +0 -0
  2513. /package/static/{ba49c92 → 372a290}/packages/renderer-process/dist/editorOnlyRendererProcessMain.js +0 -0
  2514. /package/static/{ba49c92 → 372a290}/packages/renderer-process/dist/xterm.js +0 -0
  2515. /package/static/{ba49c92 → 372a290}/packages/renderer-process/package.json +0 -0
  2516. /package/static/{ba49c92 → 372a290}/packages/running-extensions-view/dist/runningExtensionsViewMain.js +0 -0
  2517. /package/static/{ba49c92 → 372a290}/packages/settings-view/dist/settingsViewWorkerMain.js +0 -0
  2518. /package/static/{ba49c92 → 372a290}/packages/settings-view/dist/settingsWorkerMain.js +0 -0
  2519. /package/static/{ba49c92 → 372a290}/packages/source-action-worker/dist/sourceActionWorkerMain.js +0 -0
  2520. /package/static/{ba49c92 → 372a290}/packages/syntax-highlighting-worker/dist/syntaxHighlightingWorkerMain.js +0 -0
  2521. /package/static/{ba49c92 → 372a290}/packages/terminal-worker/dist/terminalWorkerMain.js +0 -0
  2522. /package/static/{ba49c92 → 372a290}/packages/test-worker/dist/testWorkerMain.js +0 -0
  2523. /package/static/{ba49c92 → 372a290}/packages/text-measurement-worker/dist/textMeasurementWorkerMain.js +0 -0
  2524. /package/static/{ba49c92 → 372a290}/packages/text-search-view/dist/textSearchViewMain.js +0 -0
  2525. /package/static/{ba49c92 → 372a290}/packages/text-search-worker/dist/textSearchWorkerMain.js +0 -0
  2526. /package/static/{ba49c92 → 372a290}/packages/update-worker/dist/updateWorkerMain.js +0 -0
  2527. /package/static/{ba49c92 → 372a290}/playground/languages/index.cpp +0 -0
  2528. /package/static/{ba49c92 → 372a290}/playground/languages/index.css +0 -0
  2529. /package/static/{ba49c92 → 372a290}/playground/languages/index.csv +0 -0
  2530. /package/static/{ba49c92 → 372a290}/playground/languages/index.dart +0 -0
  2531. /package/static/{ba49c92 → 372a290}/playground/languages/index.env +0 -0
  2532. /package/static/{ba49c92 → 372a290}/playground/languages/index.ex +0 -0
  2533. /package/static/{ba49c92 → 372a290}/playground/languages/index.html +0 -0
  2534. /package/static/{ba49c92 → 372a290}/playground/languages/index.java +0 -0
  2535. /package/static/{ba49c92 → 372a290}/playground/languages/index.jl +0 -0
  2536. /package/static/{ba49c92 → 372a290}/playground/languages/index.js +0 -0
  2537. /package/static/{ba49c92 → 372a290}/playground/languages/index.json +0 -0
  2538. /package/static/{ba49c92 → 372a290}/playground/languages/index.kt +0 -0
  2539. /package/static/{ba49c92 → 372a290}/playground/languages/index.pl +0 -0
  2540. /package/static/{ba49c92 → 372a290}/playground/languages/index.py +0 -0
  2541. /package/static/{ba49c92 → 372a290}/playground/languages/index.ts +0 -0
  2542. /package/static/{ba49c92 → 372a290}/playground/languages/scrolling.txt +0 -0
  2543. /package/static/{ba49c92 → 372a290}/playground/languages/tsconfig.json +0 -0
  2544. /package/static/{ba49c92 → 372a290}/playground/sample-folder/a.txt +0 -0
  2545. /package/static/{ba49c92 → 372a290}/playground/sample-folder/b.txt +0 -0
  2546. /package/static/{ba49c92 → 372a290}/playground/sample-folder/c.txt +0 -0
@@ -0,0 +1,4980 @@
1
+ const normalizeLine = line => {
2
+ if (line.startsWith('Error: ')) {
3
+ return line.slice('Error: '.length);
4
+ }
5
+ if (line.startsWith('VError: ')) {
6
+ return line.slice('VError: '.length);
7
+ }
8
+ return line;
9
+ };
10
+ const getCombinedMessage = (error, message) => {
11
+ const stringifiedError = normalizeLine(`${error}`);
12
+ if (message) {
13
+ return `${message}: ${stringifiedError}`;
14
+ }
15
+ return stringifiedError;
16
+ };
17
+ const NewLine$3 = '\n';
18
+ const getNewLineIndex$1 = (string, startIndex = undefined) => {
19
+ return string.indexOf(NewLine$3, startIndex);
20
+ };
21
+ const mergeStacks = (parent, child) => {
22
+ if (!child) {
23
+ return parent;
24
+ }
25
+ const parentNewLineIndex = getNewLineIndex$1(parent);
26
+ const childNewLineIndex = getNewLineIndex$1(child);
27
+ if (childNewLineIndex === -1) {
28
+ return parent;
29
+ }
30
+ const parentFirstLine = parent.slice(0, parentNewLineIndex);
31
+ const childRest = child.slice(childNewLineIndex);
32
+ const childFirstLine = normalizeLine(child.slice(0, childNewLineIndex));
33
+ if (parentFirstLine.includes(childFirstLine)) {
34
+ return parentFirstLine + childRest;
35
+ }
36
+ return child;
37
+ };
38
+ class VError extends Error {
39
+ constructor(error, message) {
40
+ const combinedMessage = getCombinedMessage(error, message);
41
+ super(combinedMessage);
42
+ this.name = 'VError';
43
+ if (error instanceof Error) {
44
+ this.stack = mergeStacks(this.stack, error.stack);
45
+ }
46
+ if (error.codeFrame) {
47
+ // @ts-ignore
48
+ this.codeFrame = error.codeFrame;
49
+ }
50
+ if (error.code) {
51
+ // @ts-ignore
52
+ this.code = error.code;
53
+ }
54
+ }
55
+ }
56
+
57
+ class AssertionError extends Error {
58
+ constructor(message) {
59
+ super(message);
60
+ this.name = 'AssertionError';
61
+ }
62
+ }
63
+ const Object$1 = 1;
64
+ const Number$1 = 2;
65
+ const Array$1 = 3;
66
+ const String$1 = 4;
67
+ const Boolean$1 = 5;
68
+ const Function = 6;
69
+ const Null = 7;
70
+ const Unknown = 8;
71
+ const getType = value => {
72
+ switch (typeof value) {
73
+ case 'number':
74
+ return Number$1;
75
+ case 'function':
76
+ return Function;
77
+ case 'string':
78
+ return String$1;
79
+ case 'object':
80
+ if (value === null) {
81
+ return Null;
82
+ }
83
+ if (Array.isArray(value)) {
84
+ return Array$1;
85
+ }
86
+ return Object$1;
87
+ case 'boolean':
88
+ return Boolean$1;
89
+ default:
90
+ return Unknown;
91
+ }
92
+ };
93
+ const object = value => {
94
+ const type = getType(value);
95
+ if (type !== Object$1) {
96
+ throw new AssertionError('expected value to be of type object');
97
+ }
98
+ };
99
+ const number = value => {
100
+ const type = getType(value);
101
+ if (type !== Number$1) {
102
+ throw new AssertionError('expected value to be of type number');
103
+ }
104
+ };
105
+ const string = value => {
106
+ const type = getType(value);
107
+ if (type !== String$1) {
108
+ throw new AssertionError('expected value to be of type string');
109
+ }
110
+ };
111
+
112
+ const isMessagePort = value => {
113
+ return value && value instanceof MessagePort;
114
+ };
115
+ const isMessagePortMain = value => {
116
+ return value && value.constructor && value.constructor.name === 'MessagePortMain';
117
+ };
118
+ const isOffscreenCanvas = value => {
119
+ return typeof OffscreenCanvas !== 'undefined' && value instanceof OffscreenCanvas;
120
+ };
121
+ const isInstanceOf = (value, constructorName) => {
122
+ return value?.constructor?.name === constructorName;
123
+ };
124
+ const isSocket = value => {
125
+ return isInstanceOf(value, 'Socket');
126
+ };
127
+ const transferrables = [isMessagePort, isMessagePortMain, isOffscreenCanvas, isSocket];
128
+ const isTransferrable = value => {
129
+ for (const fn of transferrables) {
130
+ if (fn(value)) {
131
+ return true;
132
+ }
133
+ }
134
+ return false;
135
+ };
136
+ const walkValue = (value, transferrables, isTransferrable) => {
137
+ if (!value) {
138
+ return;
139
+ }
140
+ if (isTransferrable(value)) {
141
+ transferrables.push(value);
142
+ return;
143
+ }
144
+ if (Array.isArray(value)) {
145
+ for (const item of value) {
146
+ walkValue(item, transferrables, isTransferrable);
147
+ }
148
+ return;
149
+ }
150
+ if (typeof value === 'object') {
151
+ for (const property of Object.values(value)) {
152
+ walkValue(property, transferrables, isTransferrable);
153
+ }
154
+ }
155
+ };
156
+ const getTransferrables = value => {
157
+ const transferrables = [];
158
+ walkValue(value, transferrables, isTransferrable);
159
+ return transferrables;
160
+ };
161
+ const attachEvents = that => {
162
+ const handleMessage = (...args) => {
163
+ const data = that.getData(...args);
164
+ that.dispatchEvent(new MessageEvent('message', {
165
+ data
166
+ }));
167
+ };
168
+ that.onMessage(handleMessage);
169
+ const handleClose = event => {
170
+ that.dispatchEvent(new Event('close'));
171
+ };
172
+ that.onClose(handleClose);
173
+ };
174
+ class Ipc extends EventTarget {
175
+ constructor(rawIpc) {
176
+ super();
177
+ this._rawIpc = rawIpc;
178
+ attachEvents(this);
179
+ }
180
+ }
181
+ const E_INCOMPATIBLE_NATIVE_MODULE = 'E_INCOMPATIBLE_NATIVE_MODULE';
182
+ const E_MODULES_NOT_SUPPORTED_IN_ELECTRON = 'E_MODULES_NOT_SUPPORTED_IN_ELECTRON';
183
+ const ERR_MODULE_NOT_FOUND = 'ERR_MODULE_NOT_FOUND';
184
+ const NewLine$2 = '\n';
185
+ const joinLines$1 = lines => {
186
+ return lines.join(NewLine$2);
187
+ };
188
+ const RE_AT = /^\s+at/;
189
+ const RE_AT_PROMISE_INDEX = /^\s*at async Promise.all \(index \d+\)$/;
190
+ const isNormalStackLine = line => {
191
+ return RE_AT.test(line) && !RE_AT_PROMISE_INDEX.test(line);
192
+ };
193
+ const getDetails = lines => {
194
+ const index = lines.findIndex(isNormalStackLine);
195
+ if (index === -1) {
196
+ return {
197
+ actualMessage: joinLines$1(lines),
198
+ rest: []
199
+ };
200
+ }
201
+ let lastIndex = index - 1;
202
+ while (++lastIndex < lines.length) {
203
+ if (!isNormalStackLine(lines[lastIndex])) {
204
+ break;
205
+ }
206
+ }
207
+ return {
208
+ actualMessage: lines[index - 1],
209
+ rest: lines.slice(index, lastIndex)
210
+ };
211
+ };
212
+ const splitLines$1 = lines => {
213
+ return lines.split(NewLine$2);
214
+ };
215
+ const RE_MESSAGE_CODE_BLOCK_START = /^Error: The module '.*'$/;
216
+ const RE_MESSAGE_CODE_BLOCK_END = /^\s* at/;
217
+ const isMessageCodeBlockStartIndex = line => {
218
+ return RE_MESSAGE_CODE_BLOCK_START.test(line);
219
+ };
220
+ const isMessageCodeBlockEndIndex = line => {
221
+ return RE_MESSAGE_CODE_BLOCK_END.test(line);
222
+ };
223
+ const getMessageCodeBlock = stderr => {
224
+ const lines = splitLines$1(stderr);
225
+ const startIndex = lines.findIndex(isMessageCodeBlockStartIndex);
226
+ const endIndex = startIndex + lines.slice(startIndex).findIndex(isMessageCodeBlockEndIndex, startIndex);
227
+ const relevantLines = lines.slice(startIndex, endIndex);
228
+ const relevantMessage = relevantLines.join(' ').slice('Error: '.length);
229
+ return relevantMessage;
230
+ };
231
+ const isModuleNotFoundMessage = line => {
232
+ return line.includes('[ERR_MODULE_NOT_FOUND]');
233
+ };
234
+ const getModuleNotFoundError = stderr => {
235
+ const lines = splitLines$1(stderr);
236
+ const messageIndex = lines.findIndex(isModuleNotFoundMessage);
237
+ const message = lines[messageIndex];
238
+ return {
239
+ code: ERR_MODULE_NOT_FOUND,
240
+ message
241
+ };
242
+ };
243
+ const isModuleNotFoundError = stderr => {
244
+ if (!stderr) {
245
+ return false;
246
+ }
247
+ return stderr.includes('ERR_MODULE_NOT_FOUND');
248
+ };
249
+ const isModulesSyntaxError = stderr => {
250
+ if (!stderr) {
251
+ return false;
252
+ }
253
+ return stderr.includes('SyntaxError: Cannot use import statement outside a module');
254
+ };
255
+ const RE_NATIVE_MODULE_ERROR = /^innerError Error: Cannot find module '.*.node'/;
256
+ const RE_NATIVE_MODULE_ERROR_2 = /was compiled against a different Node.js version/;
257
+ const isUnhelpfulNativeModuleError = stderr => {
258
+ return RE_NATIVE_MODULE_ERROR.test(stderr) && RE_NATIVE_MODULE_ERROR_2.test(stderr);
259
+ };
260
+ const getNativeModuleErrorMessage = stderr => {
261
+ const message = getMessageCodeBlock(stderr);
262
+ return {
263
+ code: E_INCOMPATIBLE_NATIVE_MODULE,
264
+ message: `Incompatible native node module: ${message}`
265
+ };
266
+ };
267
+ const getModuleSyntaxError = () => {
268
+ return {
269
+ code: E_MODULES_NOT_SUPPORTED_IN_ELECTRON,
270
+ message: `ES Modules are not supported in electron`
271
+ };
272
+ };
273
+ const getHelpfulChildProcessError = (stdout, stderr) => {
274
+ if (isUnhelpfulNativeModuleError(stderr)) {
275
+ return getNativeModuleErrorMessage(stderr);
276
+ }
277
+ if (isModulesSyntaxError(stderr)) {
278
+ return getModuleSyntaxError();
279
+ }
280
+ if (isModuleNotFoundError(stderr)) {
281
+ return getModuleNotFoundError(stderr);
282
+ }
283
+ const lines = splitLines$1(stderr);
284
+ const {
285
+ actualMessage,
286
+ rest
287
+ } = getDetails(lines);
288
+ return {
289
+ code: '',
290
+ message: actualMessage,
291
+ stack: rest
292
+ };
293
+ };
294
+ class IpcError extends VError {
295
+ // @ts-ignore
296
+ constructor(betterMessage, stdout = '', stderr = '') {
297
+ if (stdout || stderr) {
298
+ // @ts-ignore
299
+ const {
300
+ code,
301
+ message,
302
+ stack
303
+ } = getHelpfulChildProcessError(stdout, stderr);
304
+ const cause = new Error(message);
305
+ // @ts-ignore
306
+ cause.code = code;
307
+ if (stack) {
308
+ Object.defineProperty(cause, 'stack', {
309
+ configurable: true,
310
+ enumerable: false,
311
+ value: stack,
312
+ writable: true
313
+ });
314
+ }
315
+ super(cause, betterMessage);
316
+ } else {
317
+ super(betterMessage);
318
+ }
319
+ // @ts-ignore
320
+ this.name = 'IpcError';
321
+ // @ts-ignore
322
+ this.stdout = stdout;
323
+ // @ts-ignore
324
+ this.stderr = stderr;
325
+ }
326
+ }
327
+ const readyMessage = 'ready';
328
+ const getData$2 = event => {
329
+ return event.data;
330
+ };
331
+ const listen$7 = () => {
332
+ // @ts-ignore
333
+ if (typeof WorkerGlobalScope === 'undefined') {
334
+ throw new TypeError('module is not in web worker scope');
335
+ }
336
+ return globalThis;
337
+ };
338
+ const signal$8 = global => {
339
+ global.postMessage(readyMessage);
340
+ };
341
+ class IpcChildWithModuleWorker extends Ipc {
342
+ getData(event) {
343
+ return getData$2(event);
344
+ }
345
+ send(message) {
346
+ // @ts-ignore
347
+ this._rawIpc.postMessage(message);
348
+ }
349
+ sendAndTransfer(message) {
350
+ const transfer = getTransferrables(message);
351
+ // @ts-ignore
352
+ this._rawIpc.postMessage(message, transfer);
353
+ }
354
+ dispose() {
355
+ // ignore
356
+ }
357
+ onClose(callback) {
358
+ // ignore
359
+ }
360
+ onMessage(callback) {
361
+ this._rawIpc.addEventListener('message', callback);
362
+ }
363
+ }
364
+ const wrap$f = global => {
365
+ return new IpcChildWithModuleWorker(global);
366
+ };
367
+ const waitForFirstMessage = async port => {
368
+ const {
369
+ promise,
370
+ resolve
371
+ } = Promise.withResolvers();
372
+ port.addEventListener('message', resolve, {
373
+ once: true
374
+ });
375
+ const event = await promise;
376
+ // @ts-ignore
377
+ return event.data;
378
+ };
379
+ const listen$6 = async () => {
380
+ const parentIpcRaw = listen$7();
381
+ signal$8(parentIpcRaw);
382
+ const parentIpc = wrap$f(parentIpcRaw);
383
+ const firstMessage = await waitForFirstMessage(parentIpc);
384
+ if (firstMessage.method !== 'initialize') {
385
+ throw new IpcError('unexpected first message');
386
+ }
387
+ const type = firstMessage.params[0];
388
+ if (type === 'message-port') {
389
+ parentIpc.send({
390
+ id: firstMessage.id,
391
+ jsonrpc: '2.0',
392
+ result: null
393
+ });
394
+ parentIpc.dispose();
395
+ const port = firstMessage.params[1];
396
+ return port;
397
+ }
398
+ return globalThis;
399
+ };
400
+ class IpcChildWithModuleWorkerAndMessagePort extends Ipc {
401
+ getData(event) {
402
+ return getData$2(event);
403
+ }
404
+ send(message) {
405
+ this._rawIpc.postMessage(message);
406
+ }
407
+ sendAndTransfer(message) {
408
+ const transfer = getTransferrables(message);
409
+ this._rawIpc.postMessage(message, transfer);
410
+ }
411
+ dispose() {
412
+ if (this._rawIpc.close) {
413
+ this._rawIpc.close();
414
+ }
415
+ }
416
+ onClose(callback) {
417
+ // ignore
418
+ }
419
+ onMessage(callback) {
420
+ this._rawIpc.addEventListener('message', callback);
421
+ this._rawIpc.start();
422
+ }
423
+ }
424
+ const wrap$e = port => {
425
+ return new IpcChildWithModuleWorkerAndMessagePort(port);
426
+ };
427
+ const IpcChildWithModuleWorkerAndMessagePort$1 = {
428
+ __proto__: null,
429
+ listen: listen$6,
430
+ wrap: wrap$e
431
+ };
432
+ const Error$3 = 1;
433
+ const Open = 2;
434
+ const Close = 3;
435
+ const addListener = (emitter, type, callback) => {
436
+ if ('addEventListener' in emitter) {
437
+ emitter.addEventListener(type, callback);
438
+ } else {
439
+ emitter.on(type, callback);
440
+ }
441
+ };
442
+ const removeListener = (emitter, type, callback) => {
443
+ if ('removeEventListener' in emitter) {
444
+ emitter.removeEventListener(type, callback);
445
+ } else {
446
+ emitter.off(type, callback);
447
+ }
448
+ };
449
+ const getFirstEvent = (eventEmitter, eventMap) => {
450
+ const {
451
+ promise,
452
+ resolve
453
+ } = Promise.withResolvers();
454
+ const listenerMap = Object.create(null);
455
+ const cleanup = value => {
456
+ for (const event of Object.keys(eventMap)) {
457
+ removeListener(eventEmitter, event, listenerMap[event]);
458
+ }
459
+ resolve(value);
460
+ };
461
+ for (const [event, type] of Object.entries(eventMap)) {
462
+ const listener = event => {
463
+ cleanup({
464
+ event,
465
+ type
466
+ });
467
+ };
468
+ addListener(eventEmitter, event, listener);
469
+ listenerMap[event] = listener;
470
+ }
471
+ return promise;
472
+ };
473
+ const Message$1 = 3;
474
+ const create$5$1 = async ({
475
+ isMessagePortOpen,
476
+ messagePort
477
+ }) => {
478
+ if (!isMessagePort(messagePort)) {
479
+ throw new IpcError('port must be of type MessagePort');
480
+ }
481
+ if (isMessagePortOpen) {
482
+ return messagePort;
483
+ }
484
+ const eventPromise = getFirstEvent(messagePort, {
485
+ message: Message$1
486
+ });
487
+ messagePort.start();
488
+ const {
489
+ event,
490
+ type
491
+ } = await eventPromise;
492
+ if (type !== Message$1) {
493
+ throw new IpcError('Failed to wait for ipc message');
494
+ }
495
+ if (event.data !== readyMessage) {
496
+ throw new IpcError('unexpected first message');
497
+ }
498
+ return messagePort;
499
+ };
500
+ const signal$1 = messagePort => {
501
+ messagePort.start();
502
+ };
503
+ class IpcParentWithMessagePort extends Ipc {
504
+ getData = getData$2;
505
+ send(message) {
506
+ this._rawIpc.postMessage(message);
507
+ }
508
+ sendAndTransfer(message) {
509
+ const transfer = getTransferrables(message);
510
+ this._rawIpc.postMessage(message, transfer);
511
+ }
512
+ dispose() {
513
+ this._rawIpc.close();
514
+ }
515
+ onMessage(callback) {
516
+ this._rawIpc.addEventListener('message', callback);
517
+ }
518
+ onClose(callback) {}
519
+ }
520
+ const wrap$5 = messagePort => {
521
+ return new IpcParentWithMessagePort(messagePort);
522
+ };
523
+ const IpcParentWithMessagePort$1 = {
524
+ __proto__: null,
525
+ create: create$5$1,
526
+ signal: signal$1,
527
+ wrap: wrap$5
528
+ };
529
+ const stringifyCompact = value => {
530
+ return JSON.stringify(value);
531
+ };
532
+ const parse = content => {
533
+ if (content === 'undefined') {
534
+ return null;
535
+ }
536
+ try {
537
+ return JSON.parse(content);
538
+ } catch (error) {
539
+ throw new VError(error, 'failed to parse json');
540
+ }
541
+ };
542
+ const waitForWebSocketToBeOpen = webSocket => {
543
+ return getFirstEvent(webSocket, {
544
+ close: Close,
545
+ error: Error$3,
546
+ open: Open
547
+ });
548
+ };
549
+ const create$d = async ({
550
+ webSocket
551
+ }) => {
552
+ const firstWebSocketEvent = await waitForWebSocketToBeOpen(webSocket);
553
+ if (firstWebSocketEvent.type === Error$3) {
554
+ throw new IpcError(`WebSocket connection error`);
555
+ }
556
+ if (firstWebSocketEvent.type === Close) {
557
+ throw new IpcError('Websocket connection was immediately closed');
558
+ }
559
+ return webSocket;
560
+ };
561
+ class IpcParentWithWebSocket extends Ipc {
562
+ getData(event) {
563
+ return parse(event.data);
564
+ }
565
+ send(message) {
566
+ this._rawIpc.send(stringifyCompact(message));
567
+ }
568
+ sendAndTransfer(message) {
569
+ throw new Error('sendAndTransfer not supported');
570
+ }
571
+ dispose() {
572
+ this._rawIpc.close();
573
+ }
574
+ onClose(callback) {
575
+ this._rawIpc.addEventListener('close', callback);
576
+ }
577
+ onMessage(callback) {
578
+ this._rawIpc.addEventListener('message', callback);
579
+ }
580
+ }
581
+ const wrap = webSocket => {
582
+ return new IpcParentWithWebSocket(webSocket);
583
+ };
584
+ const IpcParentWithWebSocket$1 = {
585
+ __proto__: null,
586
+ create: create$d,
587
+ wrap
588
+ };
589
+
590
+ let CommandNotFoundError$1 = class CommandNotFoundError extends Error {
591
+ constructor(command) {
592
+ super(`Command not found ${command}`);
593
+ this.name = 'CommandNotFoundError';
594
+ }
595
+ };
596
+ const commands = Object.create(null);
597
+ const register$1 = commandMap => {
598
+ Object.assign(commands, commandMap);
599
+ };
600
+ const getCommand = key => {
601
+ return commands[key];
602
+ };
603
+ const execute = (command, ...args) => {
604
+ const fn = getCommand(command);
605
+ if (!fn) {
606
+ throw new CommandNotFoundError$1(command);
607
+ }
608
+ return fn(...args);
609
+ };
610
+
611
+ const Two$1 = '2.0';
612
+ const callbacks = Object.create(null);
613
+ const get$7 = id => {
614
+ return callbacks[id];
615
+ };
616
+ const remove$3 = id => {
617
+ delete callbacks[id];
618
+ };
619
+ class JsonRpcError extends Error {
620
+ constructor(message) {
621
+ super(message);
622
+ this.name = 'JsonRpcError';
623
+ }
624
+ }
625
+ const NewLine$1 = '\n';
626
+ const DomException = 'DOMException';
627
+ const ReferenceError$1 = 'ReferenceError';
628
+ const SyntaxError$1 = 'SyntaxError';
629
+ const TypeError$1 = 'TypeError';
630
+ const getErrorConstructor = (message, type) => {
631
+ if (type) {
632
+ switch (type) {
633
+ case DomException:
634
+ return DOMException;
635
+ case ReferenceError$1:
636
+ return ReferenceError;
637
+ case SyntaxError$1:
638
+ return SyntaxError;
639
+ case TypeError$1:
640
+ return TypeError;
641
+ default:
642
+ return Error;
643
+ }
644
+ }
645
+ if (message.startsWith('TypeError: ')) {
646
+ return TypeError;
647
+ }
648
+ if (message.startsWith('SyntaxError: ')) {
649
+ return SyntaxError;
650
+ }
651
+ if (message.startsWith('ReferenceError: ')) {
652
+ return ReferenceError;
653
+ }
654
+ return Error;
655
+ };
656
+ const constructError = (message, type, name) => {
657
+ const ErrorConstructor = getErrorConstructor(message, type);
658
+ if (ErrorConstructor === DOMException && name) {
659
+ return new ErrorConstructor(message, name);
660
+ }
661
+ if (ErrorConstructor === Error) {
662
+ const error = new Error(message);
663
+ if (name && name !== 'VError') {
664
+ Object.defineProperty(error, 'name', {
665
+ configurable: true,
666
+ value: name
667
+ });
668
+ }
669
+ return error;
670
+ }
671
+ return new ErrorConstructor(message);
672
+ };
673
+ const joinLines = lines => {
674
+ return lines.join(NewLine$1);
675
+ };
676
+ const splitLines = lines => {
677
+ return lines.split(NewLine$1);
678
+ };
679
+ const getCurrentStack = () => {
680
+ const stackLinesToSkip = 3;
681
+ const currentStack = joinLines(splitLines(new Error().stack || '').slice(stackLinesToSkip));
682
+ return currentStack;
683
+ };
684
+ const getNewLineIndex = (string, startIndex) => {
685
+ {
686
+ return string.indexOf(NewLine$1);
687
+ }
688
+ };
689
+ const getParentStack = error => {
690
+ let parentStack = error.stack || error.data || error.message || '';
691
+ if (parentStack.startsWith(' at')) {
692
+ parentStack = error.message + NewLine$1 + parentStack;
693
+ }
694
+ return parentStack;
695
+ };
696
+ const MethodNotFound = -32601;
697
+ const Custom = -32001;
698
+ const setStack = (error, stack) => {
699
+ const descriptor = Object.getOwnPropertyDescriptor(error, 'stack');
700
+ if (descriptor) {
701
+ if (!descriptor.configurable && !descriptor.writable) {
702
+ return;
703
+ }
704
+ if (!descriptor.configurable && descriptor.writable) {
705
+ error.stack = stack;
706
+ return;
707
+ }
708
+ }
709
+ Object.defineProperty(error, 'stack', {
710
+ configurable: true,
711
+ value: stack,
712
+ writable: true
713
+ });
714
+ };
715
+ const restoreExistingError = (error, currentStack) => {
716
+ if (typeof error.stack === 'string') {
717
+ setStack(error, `${error.stack}${NewLine$1}${currentStack}`);
718
+ }
719
+ return error;
720
+ };
721
+ const restoreMethodNotFoundError = (error, currentStack) => {
722
+ const restoredError = new JsonRpcError(error.message);
723
+ const parentStack = getParentStack(error);
724
+ setStack(restoredError, `${parentStack}${NewLine$1}${currentStack}`);
725
+ return restoredError;
726
+ };
727
+ const restoreStackFromData = (restoredError, error, currentStack) => {
728
+ if (error.data.stack && error.data.type && error.message) {
729
+ setStack(restoredError, `${error.data.type}: ${error.message}${NewLine$1}${error.data.stack}${NewLine$1}${currentStack}`);
730
+ return;
731
+ }
732
+ if (error.data.stack) {
733
+ setStack(restoredError, error.data.stack);
734
+ }
735
+ };
736
+ const applyDataProperties = (restoredError, error) => {
737
+ restoreStackFromData(restoredError, error, getCurrentStack());
738
+ if (error.data.codeFrame) {
739
+ // @ts-ignore
740
+ restoredError.codeFrame = error.data.codeFrame;
741
+ }
742
+ if (error.data.code) {
743
+ // @ts-ignore
744
+ restoredError.code = error.data.code;
745
+ }
746
+ if (error.data.type) {
747
+ // @ts-ignore
748
+ restoredError.name = error.data.type;
749
+ }
750
+ };
751
+ const applyDirectProperties = (restoredError, error) => {
752
+ if (error.stack) {
753
+ const lowerStack = restoredError.stack || '';
754
+ const indexNewLine = getNewLineIndex(lowerStack);
755
+ const parentStack = getParentStack(error);
756
+ // @ts-ignore
757
+ setStack(restoredError, `${parentStack}${lowerStack.slice(indexNewLine)}`);
758
+ }
759
+ if (error.codeFrame) {
760
+ // @ts-ignore
761
+ restoredError.codeFrame = error.codeFrame;
762
+ }
763
+ };
764
+ const restoreMessageError = (error, _currentStack) => {
765
+ const restoredError = constructError(error.message, error.type, error.name);
766
+ if (error.data) {
767
+ applyDataProperties(restoredError, error);
768
+ } else {
769
+ applyDirectProperties(restoredError, error);
770
+ }
771
+ return restoredError;
772
+ };
773
+ const restoreJsonRpcError = error => {
774
+ const currentStack = getCurrentStack();
775
+ if (error && error instanceof Error) {
776
+ return restoreExistingError(error, currentStack);
777
+ }
778
+ if (error && error.code && error.code === MethodNotFound) {
779
+ return restoreMethodNotFoundError(error, currentStack);
780
+ }
781
+ if (error && error.message) {
782
+ return restoreMessageError(error);
783
+ }
784
+ if (typeof error === 'string') {
785
+ return new Error(`JsonRpc Error: ${error}`);
786
+ }
787
+ return new Error(`JsonRpc Error: ${error}`);
788
+ };
789
+ const unwrapJsonRpcResult = responseMessage => {
790
+ if ('error' in responseMessage) {
791
+ const restoredError = restoreJsonRpcError(responseMessage.error);
792
+ throw restoredError;
793
+ }
794
+ if ('result' in responseMessage) {
795
+ return responseMessage.result;
796
+ }
797
+ throw new JsonRpcError('unexpected response message');
798
+ };
799
+ const warn$1 = (...args) => {
800
+ console.warn(...args);
801
+ };
802
+ const resolve = (id, response) => {
803
+ const fn = get$7(id);
804
+ if (!fn) {
805
+ console.log(response);
806
+ warn$1(`callback ${id} may already be disposed`);
807
+ return;
808
+ }
809
+ fn(response);
810
+ remove$3(id);
811
+ };
812
+ const E_COMMAND_NOT_FOUND = 'E_COMMAND_NOT_FOUND';
813
+ const getErrorType = prettyError => {
814
+ if (prettyError && prettyError.type) {
815
+ return prettyError.type;
816
+ }
817
+ if (prettyError && prettyError.constructor && prettyError.constructor.name) {
818
+ return prettyError.constructor.name;
819
+ }
820
+ return undefined;
821
+ };
822
+ const isAlreadyStack = line => {
823
+ return line.trim().startsWith('at ');
824
+ };
825
+ const getStack = prettyError => {
826
+ const stackString = prettyError.stack || '';
827
+ const newLineIndex = stackString.indexOf('\n');
828
+ if (newLineIndex !== -1 && !isAlreadyStack(stackString.slice(0, newLineIndex))) {
829
+ return stackString.slice(newLineIndex + 1);
830
+ }
831
+ return stackString;
832
+ };
833
+ const getErrorProperty = (error, prettyError) => {
834
+ if (error && error.code === E_COMMAND_NOT_FOUND) {
835
+ return {
836
+ code: MethodNotFound,
837
+ data: error.stack,
838
+ message: error.message
839
+ };
840
+ }
841
+ return {
842
+ code: Custom,
843
+ data: {
844
+ code: prettyError.code,
845
+ codeFrame: prettyError.codeFrame,
846
+ name: prettyError.name,
847
+ stack: getStack(prettyError),
848
+ type: getErrorType(prettyError)
849
+ },
850
+ message: prettyError.message
851
+ };
852
+ };
853
+ const create$1$1 = (id, error) => {
854
+ return {
855
+ error,
856
+ id,
857
+ jsonrpc: Two$1
858
+ };
859
+ };
860
+ const getErrorResponse = (id, error, preparePrettyError, logError) => {
861
+ const prettyError = preparePrettyError(error);
862
+ logError(error, prettyError);
863
+ const errorProperty = getErrorProperty(error, prettyError);
864
+ return create$1$1(id, errorProperty);
865
+ };
866
+ const create$c = (message, result) => {
867
+ return {
868
+ id: message.id,
869
+ jsonrpc: Two$1,
870
+ result: result ?? null
871
+ };
872
+ };
873
+ const getSuccessResponse = (message, result) => {
874
+ const resultProperty = result ?? null;
875
+ return create$c(message, resultProperty);
876
+ };
877
+ const getErrorResponseSimple = (id, error) => {
878
+ return {
879
+ error: {
880
+ code: Custom,
881
+ data: error,
882
+ // @ts-ignore
883
+ message: error.message
884
+ },
885
+ id,
886
+ jsonrpc: Two$1
887
+ };
888
+ };
889
+ const getResponse = async (message, ipc, execute, preparePrettyError, logError, requiresSocket) => {
890
+ try {
891
+ const result = requiresSocket(message.method) ? await execute(message.method, ipc, ...message.params) : await execute(message.method, ...message.params);
892
+ return getSuccessResponse(message, result);
893
+ } catch (error) {
894
+ if (ipc.canUseSimpleErrorResponse) {
895
+ return getErrorResponseSimple(message.id, error);
896
+ }
897
+ return getErrorResponse(message.id, error, preparePrettyError, logError);
898
+ }
899
+ };
900
+ const defaultPreparePrettyError = error => {
901
+ return error;
902
+ };
903
+ const defaultLogError = () => {
904
+ // ignore
905
+ };
906
+ const defaultRequiresSocket = () => {
907
+ return false;
908
+ };
909
+ const defaultResolve = resolve;
910
+
911
+ // TODO maybe remove this in v6 or v7, only accept options object to simplify the code
912
+ const normalizeParams = args => {
913
+ if (args.length === 1) {
914
+ const options = args[0];
915
+ return {
916
+ execute: options.execute,
917
+ ipc: options.ipc,
918
+ logError: options.logError || defaultLogError,
919
+ message: options.message,
920
+ preparePrettyError: options.preparePrettyError || defaultPreparePrettyError,
921
+ requiresSocket: options.requiresSocket || defaultRequiresSocket,
922
+ resolve: options.resolve || defaultResolve
923
+ };
924
+ }
925
+ return {
926
+ execute: args[2],
927
+ ipc: args[0],
928
+ logError: args[5],
929
+ message: args[1],
930
+ preparePrettyError: args[4],
931
+ requiresSocket: args[6],
932
+ resolve: args[3]
933
+ };
934
+ };
935
+ const handleJsonRpcMessage = async (...args) => {
936
+ const options = normalizeParams(args);
937
+ const {
938
+ execute,
939
+ ipc,
940
+ logError,
941
+ message,
942
+ preparePrettyError,
943
+ requiresSocket,
944
+ resolve
945
+ } = options;
946
+ if ('id' in message) {
947
+ if ('method' in message) {
948
+ const response = await getResponse(message, ipc, execute, preparePrettyError, logError, requiresSocket);
949
+ try {
950
+ ipc.send(response);
951
+ } catch (error) {
952
+ const errorResponse = getErrorResponse(message.id, error, preparePrettyError, logError);
953
+ ipc.send(errorResponse);
954
+ }
955
+ return;
956
+ }
957
+ resolve(message.id, message);
958
+ return;
959
+ }
960
+ if ('method' in message) {
961
+ await getResponse(message, ipc, execute, preparePrettyError, logError, requiresSocket);
962
+ return;
963
+ }
964
+ throw new JsonRpcError('unexpected message');
965
+ };
966
+
967
+ const Two = '2.0';
968
+
969
+ const create$b = (method, params) => {
970
+ return {
971
+ jsonrpc: Two,
972
+ method,
973
+ params
974
+ };
975
+ };
976
+
977
+ const create$a = (id, method, params) => {
978
+ const message = {
979
+ id,
980
+ jsonrpc: Two,
981
+ method,
982
+ params
983
+ };
984
+ return message;
985
+ };
986
+
987
+ let id = 0;
988
+ const create$9 = () => {
989
+ return ++id;
990
+ };
991
+
992
+ const registerPromise = map => {
993
+ const id = create$9();
994
+ const {
995
+ promise,
996
+ resolve
997
+ } = Promise.withResolvers();
998
+ map[id] = resolve;
999
+ return {
1000
+ id,
1001
+ promise
1002
+ };
1003
+ };
1004
+
1005
+ const invokeHelper = async (callbacks, ipc, method, params, useSendAndTransfer) => {
1006
+ const {
1007
+ id,
1008
+ promise
1009
+ } = registerPromise(callbacks);
1010
+ const message = create$a(id, method, params);
1011
+ if (useSendAndTransfer && ipc.sendAndTransfer) {
1012
+ ipc.sendAndTransfer(message);
1013
+ } else {
1014
+ ipc.send(message);
1015
+ }
1016
+ const responseMessage = await promise;
1017
+ return unwrapJsonRpcResult(responseMessage);
1018
+ };
1019
+ const createRpc = ipc => {
1020
+ const callbacks = Object.create(null);
1021
+ ipc._resolve = (id, response) => {
1022
+ const fn = callbacks[id];
1023
+ if (!fn) {
1024
+ console.warn(`callback ${id} may already be disposed`);
1025
+ return;
1026
+ }
1027
+ fn(response);
1028
+ delete callbacks[id];
1029
+ };
1030
+ const rpc = {
1031
+ async dispose() {
1032
+ await ipc?.dispose();
1033
+ },
1034
+ invoke(method, ...params) {
1035
+ return invokeHelper(callbacks, ipc, method, params, false);
1036
+ },
1037
+ invokeAndTransfer(method, ...params) {
1038
+ return invokeHelper(callbacks, ipc, method, params, true);
1039
+ },
1040
+ // @ts-ignore
1041
+ ipc,
1042
+ /**
1043
+ * @deprecated
1044
+ */
1045
+ send(method, ...params) {
1046
+ const message = create$b(method, params);
1047
+ ipc.send(message);
1048
+ }
1049
+ };
1050
+ return rpc;
1051
+ };
1052
+
1053
+ const requiresSocket = () => {
1054
+ return false;
1055
+ };
1056
+ const preparePrettyError = error => {
1057
+ return error;
1058
+ };
1059
+ const logError = () => {
1060
+ // handled by renderer worker
1061
+ };
1062
+ const handleMessage = event => {
1063
+ const actualRequiresSocket = event?.target?.requiresSocket || requiresSocket;
1064
+ const actualExecute = event?.target?.execute || execute;
1065
+ return handleJsonRpcMessage(event.target, event.data, actualExecute, event.target._resolve, preparePrettyError, logError, actualRequiresSocket);
1066
+ };
1067
+
1068
+ const handleIpc = ipc => {
1069
+ if ('addEventListener' in ipc) {
1070
+ ipc.addEventListener('message', handleMessage);
1071
+ } else if ('on' in ipc) {
1072
+ // deprecated
1073
+ ipc.on('message', handleMessage);
1074
+ }
1075
+ };
1076
+
1077
+ const listen$1 = async (module, options) => {
1078
+ const rawIpc = await module.listen(options);
1079
+ if (module.signal) {
1080
+ module.signal(rawIpc);
1081
+ }
1082
+ const ipc = module.wrap(rawIpc);
1083
+ return ipc;
1084
+ };
1085
+
1086
+ const createSharedLazyRpc = factory => {
1087
+ let rpcPromise;
1088
+ const getOrCreate = () => {
1089
+ if (!rpcPromise) {
1090
+ rpcPromise = factory();
1091
+ }
1092
+ return rpcPromise;
1093
+ };
1094
+ return {
1095
+ async dispose() {
1096
+ const rpc = await getOrCreate();
1097
+ await rpc.dispose();
1098
+ },
1099
+ async invoke(method, ...params) {
1100
+ const rpc = await getOrCreate();
1101
+ return rpc.invoke(method, ...params);
1102
+ },
1103
+ async invokeAndTransfer(method, ...params) {
1104
+ const rpc = await getOrCreate();
1105
+ return rpc.invokeAndTransfer(method, ...params);
1106
+ },
1107
+ async send(method, ...params) {
1108
+ const rpc = await getOrCreate();
1109
+ rpc.send(method, ...params);
1110
+ }
1111
+ };
1112
+ };
1113
+
1114
+ const create$8 = async ({
1115
+ commandMap,
1116
+ isMessagePortOpen = true,
1117
+ messagePort
1118
+ }) => {
1119
+ // TODO create a commandMap per rpc instance
1120
+ register$1(commandMap);
1121
+ const rawIpc = await IpcParentWithMessagePort$1.create({
1122
+ isMessagePortOpen,
1123
+ messagePort
1124
+ });
1125
+ const ipc = IpcParentWithMessagePort$1.wrap(rawIpc);
1126
+ handleIpc(ipc);
1127
+ const rpc = createRpc(ipc);
1128
+ messagePort.start();
1129
+ return rpc;
1130
+ };
1131
+
1132
+ const create$7 = async ({
1133
+ commandMap,
1134
+ isMessagePortOpen,
1135
+ send
1136
+ }) => {
1137
+ const {
1138
+ port1,
1139
+ port2
1140
+ } = new MessageChannel();
1141
+ await send(port1);
1142
+ return create$8({
1143
+ commandMap,
1144
+ isMessagePortOpen,
1145
+ messagePort: port2
1146
+ });
1147
+ };
1148
+
1149
+ const create$6 = async ({
1150
+ commandMap,
1151
+ isMessagePortOpen,
1152
+ send
1153
+ }) => {
1154
+ return createSharedLazyRpc(() => {
1155
+ return create$7({
1156
+ commandMap,
1157
+ isMessagePortOpen,
1158
+ send
1159
+ });
1160
+ });
1161
+ };
1162
+
1163
+ const Https = 'https:';
1164
+ const Ws = 'ws:';
1165
+ const Wss = 'wss:';
1166
+
1167
+ const getWebSocketProtocol = locationProtocol => {
1168
+ return locationProtocol === Https ? Wss : Ws;
1169
+ };
1170
+
1171
+ const getWebSocketUrl = (type, host, locationProtocol) => {
1172
+ const wsProtocol = getWebSocketProtocol(locationProtocol);
1173
+ return `${wsProtocol}//${host}/websocket/${type}`;
1174
+ };
1175
+
1176
+ const getHost = () => {
1177
+ return location.host;
1178
+ };
1179
+ const getProtocol = () => {
1180
+ return location.protocol;
1181
+ };
1182
+
1183
+ const create$5 = async ({
1184
+ commandMap,
1185
+ webSocket
1186
+ }) => {
1187
+ // TODO create a commandMap per rpc instance
1188
+ register$1(commandMap);
1189
+ let rawIpc;
1190
+ try {
1191
+ rawIpc = await IpcParentWithWebSocket$1.create({
1192
+ webSocket
1193
+ });
1194
+ } catch (error) {
1195
+ throw new VError(error, 'Failed to create rpc connection');
1196
+ }
1197
+ const ipc = IpcParentWithWebSocket$1.wrap(rawIpc);
1198
+ handleIpc(ipc);
1199
+ const rpc = createRpc(ipc);
1200
+ return rpc;
1201
+ };
1202
+
1203
+ const reconnectDelay = 2000;
1204
+ const waitForReconnect = async () => {
1205
+ await new Promise(resolve => {
1206
+ setTimeout(resolve, reconnectDelay);
1207
+ });
1208
+ };
1209
+ const connect = async ({
1210
+ commandMap,
1211
+ wsUrl
1212
+ }) => {
1213
+ const webSocket = new WebSocket(wsUrl);
1214
+ try {
1215
+ const rpc = await create$5({
1216
+ commandMap,
1217
+ webSocket
1218
+ });
1219
+ return {
1220
+ rpc,
1221
+ webSocket
1222
+ };
1223
+ } catch (error) {
1224
+ webSocket.close();
1225
+ throw error;
1226
+ }
1227
+ };
1228
+ const create$4 = async ({
1229
+ commandMap,
1230
+ onClose,
1231
+ type
1232
+ }) => {
1233
+ const host = getHost();
1234
+ const protocol = getProtocol();
1235
+ const wsUrl = getWebSocketUrl(type, host, protocol);
1236
+ let connection;
1237
+ try {
1238
+ connection = await connect({
1239
+ commandMap,
1240
+ wsUrl
1241
+ });
1242
+ } catch {
1243
+ await waitForReconnect();
1244
+ connection = await connect({
1245
+ commandMap,
1246
+ wsUrl
1247
+ });
1248
+ }
1249
+ if (onClose) {
1250
+ connection.webSocket.addEventListener('close', onClose, {
1251
+ once: true
1252
+ });
1253
+ }
1254
+ return connection.rpc;
1255
+ };
1256
+
1257
+ const create$3 = async ({
1258
+ commandMap,
1259
+ isMessagePortOpen,
1260
+ messagePort
1261
+ }) => {
1262
+ // TODO create a commandMap per rpc instance
1263
+ register$1(commandMap);
1264
+ const rawIpc = await IpcParentWithMessagePort$1.create({
1265
+ isMessagePortOpen,
1266
+ messagePort
1267
+ });
1268
+ const ipc = IpcParentWithMessagePort$1.wrap(rawIpc);
1269
+ handleIpc(ipc);
1270
+ const rpc = createRpc(ipc);
1271
+ return rpc;
1272
+ };
1273
+
1274
+ const create$2 = async ({
1275
+ commandMap
1276
+ }) => {
1277
+ // TODO create a commandMap per rpc instance
1278
+ register$1(commandMap);
1279
+ const ipc = await listen$1(IpcChildWithModuleWorkerAndMessagePort$1);
1280
+ handleIpc(ipc);
1281
+ const rpc = createRpc(ipc);
1282
+ return rpc;
1283
+ };
1284
+
1285
+ const createMockRpc = ({
1286
+ commandMap
1287
+ }) => {
1288
+ const invocations = [];
1289
+ const invoke = (method, ...params) => {
1290
+ invocations.push([method, ...params]);
1291
+ const command = commandMap[method];
1292
+ if (!command) {
1293
+ throw new Error(`command ${method} not found`);
1294
+ }
1295
+ return command(...params);
1296
+ };
1297
+ const mockRpc = {
1298
+ invocations,
1299
+ invoke,
1300
+ invokeAndTransfer: invoke
1301
+ };
1302
+ return mockRpc;
1303
+ };
1304
+
1305
+ const rpcs$3 = Object.create(null);
1306
+ const set$c = (id, rpc) => {
1307
+ rpcs$3[id] = rpc;
1308
+ };
1309
+ const get$6 = id => {
1310
+ return rpcs$3[id];
1311
+ };
1312
+ const remove$2 = id => {
1313
+ delete rpcs$3[id];
1314
+ };
1315
+
1316
+ /* eslint-disable @typescript-eslint/explicit-function-return-type */
1317
+ const create$1 = rpcId => {
1318
+ return {
1319
+ async dispose() {
1320
+ const rpc = get$6(rpcId);
1321
+ await rpc.dispose();
1322
+ },
1323
+ // @ts-ignore
1324
+ invoke(method, ...params) {
1325
+ const rpc = get$6(rpcId);
1326
+ // @ts-ignore
1327
+ return rpc.invoke(method, ...params);
1328
+ },
1329
+ // @ts-ignore
1330
+ invokeAndTransfer(method, ...params) {
1331
+ const rpc = get$6(rpcId);
1332
+ // @ts-ignore
1333
+ return rpc.invokeAndTransfer(method, ...params);
1334
+ },
1335
+ registerMockRpc(commandMap) {
1336
+ const mockRpc = createMockRpc({
1337
+ commandMap
1338
+ });
1339
+ set$c(rpcId, mockRpc);
1340
+ // @ts-ignore
1341
+ mockRpc[Symbol.dispose] = () => {
1342
+ remove$2(rpcId);
1343
+ };
1344
+ // @ts-ignore
1345
+ return mockRpc;
1346
+ },
1347
+ set(rpc) {
1348
+ set$c(rpcId, rpc);
1349
+ }
1350
+ };
1351
+ };
1352
+
1353
+ const {
1354
+ invoke: invoke$8,
1355
+ set: set$b
1356
+ } = create$1(6010);
1357
+
1358
+ const Web = 1;
1359
+ const Electron = 2;
1360
+ const Remote = 3;
1361
+ const Test = 4;
1362
+
1363
+ const ErrorWorker = 3308;
1364
+ const FileSystemWorker = 209;
1365
+ const RendererWorker = 1;
1366
+ const SharedProcess = 1492;
1367
+
1368
+ const {
1369
+ invoke: invoke$7,
1370
+ set: set$a
1371
+ } = create$1(ErrorWorker);
1372
+
1373
+ const {
1374
+ invoke: invoke$6,
1375
+ set: set$9
1376
+ } = create$1(FileSystemWorker);
1377
+ const readFile$1 = async uri => {
1378
+ return invoke$6('FileSystem.readFile', uri);
1379
+ };
1380
+ const writeFile = async (uri, content) => {
1381
+ return invoke$6('FileSystem.writeFile', uri, content);
1382
+ };
1383
+ const mkdir = async uri => {
1384
+ return invoke$6('FileSystem.mkdir', uri);
1385
+ };
1386
+ const exists = async uri => {
1387
+ return invoke$6('FileSystem.exists', uri);
1388
+ };
1389
+
1390
+ const {
1391
+ invoke: invoke$5,
1392
+ invokeAndTransfer: invokeAndTransfer$1,
1393
+ set: set$8
1394
+ } = create$1(RendererWorker);
1395
+ const sendMessagePortToAuthWorker = async (port, rpcId) => {
1396
+ const command = 'HandleMessagePort.handleMessagePort';
1397
+ await invokeAndTransfer$1('SendMessagePortToExtensionHostWorker.sendMessagePortToAuthWorker', port, command, rpcId);
1398
+ };
1399
+ const sendMessagePortToErrorWorker = async (port, rpcId) => {
1400
+ const command = 'Errors.handleMessagePort';
1401
+ await invokeAndTransfer$1('SendMessagePortToExtensionHostWorker.sendMessagePortToErrorWorker', port, command, rpcId);
1402
+ };
1403
+ const sendMessagePortToIconThemeWorker = async (port, rpcId) => {
1404
+ const command = 'IconTheme.handleMessagePort';
1405
+ await invokeAndTransfer$1('SendMessagePortToExtensionHostWorker.sendMessagePortToIconThemeWorker', port, command, rpcId);
1406
+ };
1407
+ const sendMessagePortToFileSystemWorker$1 = async (port, rpcId) => {
1408
+ const command = 'FileSystem.handleMessagePort';
1409
+ await invokeAndTransfer$1('SendMessagePortToExtensionHostWorker.sendMessagePortToFileSystemWorker', port, command, rpcId);
1410
+ };
1411
+ const sendMessagePortToSharedProcess = async port => {
1412
+ const command = 'HandleElectronMessagePort.handleElectronMessagePort';
1413
+ await invokeAndTransfer$1('SendMessagePortToExtensionHostWorker.sendMessagePortToSharedProcess', port, command, 0);
1414
+ };
1415
+
1416
+ const {
1417
+ invoke: invoke$4,
1418
+ set: set$7
1419
+ } = create$1(SharedProcess);
1420
+
1421
+ const None = 0;
1422
+ const Activating = 2;
1423
+ const Activated = 3;
1424
+ const Error$1 = 4;
1425
+ const Terminated = 5;
1426
+
1427
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
1428
+
1429
+ const createInitialState = () => {
1430
+ return {
1431
+ activatedExtensions: Object.create(null),
1432
+ cachedActivationEvents: Object.create(null),
1433
+ cachedExtensions: undefined,
1434
+ disabledIds: [],
1435
+ platform: 0,
1436
+ runtimeStatuses: Object.create(null),
1437
+ webExtensions: []
1438
+ };
1439
+ };
1440
+ const createEmptyRuntimeStatus = id => {
1441
+ return {
1442
+ activationEndTime: 0,
1443
+ activationEvent: '',
1444
+ activationStartTime: 0,
1445
+ activationTime: 0,
1446
+ id,
1447
+ importEndTime: 0,
1448
+ importStartTime: 0,
1449
+ importTime: 0,
1450
+ status: None
1451
+ };
1452
+ };
1453
+ const state$4 = {
1454
+ extensionsState: createInitialState()
1455
+ };
1456
+ const get$5 = () => {
1457
+ return state$4.extensionsState;
1458
+ };
1459
+ const set$6 = newState => {
1460
+ state$4.extensionsState = newState;
1461
+ };
1462
+ const update = newState => {
1463
+ set$6({
1464
+ ...state$4.extensionsState,
1465
+ ...newState
1466
+ });
1467
+ };
1468
+ const setPlatform = platform => {
1469
+ update({
1470
+ platform
1471
+ });
1472
+ };
1473
+ const hasWebExtensionUri = uri => {
1474
+ return state$4.extensionsState.webExtensions.some(extension => extension.uri === uri);
1475
+ };
1476
+ const addExtension$1 = extension => {
1477
+ update({
1478
+ webExtensions: [...state$4.extensionsState.webExtensions, extension]
1479
+ });
1480
+ };
1481
+ const removeWebExtension = id => {
1482
+ const webExtensions = state$4.extensionsState.webExtensions.filter(extension => extension.id !== id);
1483
+ if (webExtensions.length === state$4.extensionsState.webExtensions.length) {
1484
+ return false;
1485
+ }
1486
+ update({
1487
+ cachedExtensions: undefined,
1488
+ webExtensions
1489
+ });
1490
+ return true;
1491
+ };
1492
+ const clearCachedExtensions = () => {
1493
+ update({
1494
+ cachedExtensions: undefined
1495
+ });
1496
+ };
1497
+ const setRuntimeStatus = status => {
1498
+ update({
1499
+ runtimeStatuses: {
1500
+ ...state$4.extensionsState.runtimeStatuses,
1501
+ [status.id]: {
1502
+ ...status
1503
+ }
1504
+ }
1505
+ });
1506
+ };
1507
+ const updateRuntimeStatus = (id, statusUpdate) => {
1508
+ const previousStatus = state$4.extensionsState.runtimeStatuses[id] || createEmptyRuntimeStatus(id);
1509
+ setRuntimeStatus({
1510
+ ...previousStatus,
1511
+ ...statusUpdate,
1512
+ id
1513
+ });
1514
+ };
1515
+ const getRuntimeStatus$1 = extensionId => {
1516
+ return state$4.extensionsState.runtimeStatuses[extensionId];
1517
+ };
1518
+ const omit = (record, id) => {
1519
+ const result = {
1520
+ ...record
1521
+ };
1522
+ delete result[id];
1523
+ return result;
1524
+ };
1525
+ const resetExtensionRuntimeState = extensionId => {
1526
+ update({
1527
+ activatedExtensions: omit(state$4.extensionsState.activatedExtensions, extensionId),
1528
+ cachedActivationEvents: omit(state$4.extensionsState.cachedActivationEvents, extensionId),
1529
+ runtimeStatuses: omit(state$4.extensionsState.runtimeStatuses, extensionId)
1530
+ });
1531
+ };
1532
+
1533
+ const getErrorMessage = error => {
1534
+ if (error instanceof Error) {
1535
+ return error.message;
1536
+ }
1537
+ return String(error);
1538
+ };
1539
+
1540
+ const commandMapRef = {};
1541
+
1542
+ const extensions = Object.create(null);
1543
+ const get$4 = extensionId => {
1544
+ return extensions[extensionId];
1545
+ };
1546
+ const set$5 = extension => {
1547
+ extensions[extension.id] = extension;
1548
+ };
1549
+
1550
+ const nodeRpcType = 'node';
1551
+ const joinPath = (base, relativePath) => {
1552
+ let normalizedBase = base.replaceAll('\\', '/');
1553
+ while (normalizedBase.endsWith('/')) {
1554
+ normalizedBase = normalizedBase.slice(0, -1);
1555
+ }
1556
+ const normalizedRelativePath = relativePath.replaceAll('\\', '/').replace(/^\.\//, '');
1557
+ return `${normalizedBase}/${normalizedRelativePath}`;
1558
+ };
1559
+ const toFileSystemPath = path => {
1560
+ if (!path.startsWith('file:')) {
1561
+ return path;
1562
+ }
1563
+ const pathname = decodeURIComponent(new URL(path).pathname);
1564
+ return /^\/[A-Za-z]:\//.test(pathname) ? pathname.slice(1) : pathname;
1565
+ };
1566
+ const getExtensionRoot = async extension => {
1567
+ if (extension.builtin) {
1568
+ const builtinExtensionsPath = await invoke$5('PlatformPaths.getBuiltinExtensionsPath');
1569
+ if (typeof builtinExtensionsPath !== 'string') {
1570
+ throw new TypeError('builtin extensions path must be a string');
1571
+ }
1572
+ return joinPath(builtinExtensionsPath, extension.id);
1573
+ }
1574
+ const extensionPath = extension.uri || extension.path || '';
1575
+ if (!extensionPath) {
1576
+ throw new Error(`Extension ${extension.id} has no path`);
1577
+ }
1578
+ return toFileSystemPath(extensionPath);
1579
+ };
1580
+ const getDeclaredNodeRpc = (extension, rpcId) => {
1581
+ const rpc = extension.rpc.find(candidate => candidate.id === rpcId);
1582
+ if (!rpc) {
1583
+ throw new Error(`Node rpc ${rpcId} is not declared by extension ${extension.id}`);
1584
+ }
1585
+ if (rpc.type !== nodeRpcType) {
1586
+ throw new Error(`Rpc ${rpcId} declared by extension ${extension.id} is not a node rpc`);
1587
+ }
1588
+ if (!rpc.url || rpc.url.startsWith('/') || /^[A-Za-z][A-Za-z\d+.-]*:/.test(rpc.url)) {
1589
+ throw new Error(`Node rpc ${rpcId} declared by extension ${extension.id} must use a relative url`);
1590
+ }
1591
+ return rpc;
1592
+ };
1593
+ const getNodeRpcInfo = async (extensionId, rpcId) => {
1594
+ const extension = get$4(extensionId);
1595
+ if (!extension) {
1596
+ throw new Error(`Extension ${extensionId} has no declared rpcs`);
1597
+ }
1598
+ if (!extension.builtin) {
1599
+ // TODO
1600
+ console.warn(`Node rpc ${rpcId} is only available to built-in extensions`);
1601
+ }
1602
+ const rpc = getDeclaredNodeRpc(extension, rpcId);
1603
+ const extensionRoot = await getExtensionRoot(extension);
1604
+ return {
1605
+ name: rpc.name || '',
1606
+ path: joinPath(extensionRoot, rpc.url)
1607
+ };
1608
+ };
1609
+
1610
+ const isMissingRendererCommand = (error, command) => {
1611
+ const moduleName = command.slice(0, command.indexOf('.'));
1612
+ return error instanceof Error && (error.message.includes(command) || error.message.includes(`module ${moduleName} not found`)) && /command not found|not found/i.test(error.message);
1613
+ };
1614
+ const createLegacyConnection = () => ({
1615
+ type: 'legacy-proxy'
1616
+ });
1617
+ const createNodeRpcConnection = async (extensionId, rpcId) => {
1618
+ const {
1619
+ path
1620
+ } = await getNodeRpcInfo(extensionId, rpcId);
1621
+ const {
1622
+ platform
1623
+ } = get$5();
1624
+ if (platform === Remote) {
1625
+ try {
1626
+ const connectionInfo = await invoke$5('ExtensionNodeRpc.createConnection', extensionId, rpcId, path);
1627
+ return {
1628
+ ...connectionInfo,
1629
+ type: 'websocket'
1630
+ };
1631
+ } catch (error) {
1632
+ if (isMissingRendererCommand(error, 'ExtensionNodeRpc.createConnection')) {
1633
+ return createLegacyConnection();
1634
+ }
1635
+ throw error;
1636
+ }
1637
+ }
1638
+ if (platform === Electron) {
1639
+ try {
1640
+ const supported = await invoke$5('ExtensionNodeRpc.supportsDirectConnection');
1641
+ return supported ? {
1642
+ type: 'message-port'
1643
+ } : createLegacyConnection();
1644
+ } catch (error) {
1645
+ if (isMissingRendererCommand(error, 'ExtensionNodeRpc.supportsDirectConnection')) {
1646
+ return createLegacyConnection();
1647
+ }
1648
+ throw error;
1649
+ }
1650
+ }
1651
+ throw new Error('Node rpc is not available on this platform');
1652
+ };
1653
+ const createNodeRpcMessagePort = async (extensionId, rpcId, port) => {
1654
+ const {
1655
+ platform
1656
+ } = get$5();
1657
+ if (platform !== Electron) {
1658
+ throw new Error('Node rpc message ports are only available in Electron');
1659
+ }
1660
+ const {
1661
+ path
1662
+ } = await getNodeRpcInfo(extensionId, rpcId);
1663
+ await invokeAndTransfer$1('ExtensionNodeRpc.createMessagePort', port, path);
1664
+ };
1665
+
1666
+ const extensionIds = new Set();
1667
+ const register = extensionId => {
1668
+ extensionIds.add(extensionId);
1669
+ };
1670
+ const unregister = extensionId => {
1671
+ extensionIds.delete(extensionId);
1672
+ };
1673
+ const getRegisteredExtensionIds = () => {
1674
+ return [...extensionIds];
1675
+ };
1676
+
1677
+ const prefix = '[Extension] Uncaught Error: ';
1678
+ const handleUncaughtExtensionError = async error => {
1679
+ const prettyError = await invoke$7('Errors.prepare', error);
1680
+ await invoke$7('Errors.print', prettyError, prefix);
1681
+ };
1682
+
1683
+ const rpcs$2 = new Map();
1684
+ const state$3 = {
1685
+ nextId: 0
1686
+ };
1687
+ const getRpc$2 = (extensionId, id) => {
1688
+ const rpc = rpcs$2.get(id);
1689
+ if (!rpc || rpc.extensionId !== extensionId) {
1690
+ throw new Error(`Node rpc ${id} not found`);
1691
+ }
1692
+ return rpc;
1693
+ };
1694
+ const create = async (extensionId, rpcId) => {
1695
+ const {
1696
+ name,
1697
+ path
1698
+ } = await getNodeRpcInfo(extensionId, rpcId);
1699
+ const rendererRpcId = await invoke$5('ExtensionNodeRpc.create', name, path);
1700
+ const id = ++state$3.nextId;
1701
+ rpcs$2.set(id, {
1702
+ extensionId,
1703
+ rendererRpcId
1704
+ });
1705
+ return id;
1706
+ };
1707
+ const invoke$3 = async (extensionId, id, method, ...params) => {
1708
+ const {
1709
+ rendererRpcId
1710
+ } = getRpc$2(extensionId, id);
1711
+ return invoke$5('ExtensionNodeRpc.invoke', rendererRpcId, method, ...params);
1712
+ };
1713
+ const dispose = async (extensionId, id) => {
1714
+ const {
1715
+ rendererRpcId
1716
+ } = getRpc$2(extensionId, id);
1717
+ rpcs$2.delete(id);
1718
+ await invoke$5('ExtensionNodeRpc.dispose', rendererRpcId);
1719
+ };
1720
+
1721
+ const state$2 = {
1722
+ nextId: 1,
1723
+ notifications: []
1724
+ };
1725
+ const add$1 = (extensionId, type, message) => {
1726
+ const notification = {
1727
+ extensionId,
1728
+ id: state$2.nextId++,
1729
+ message,
1730
+ type
1731
+ };
1732
+ state$2.notifications = [...state$2.notifications, notification];
1733
+ return notification;
1734
+ };
1735
+ const clear = () => {
1736
+ state$2.notifications = [];
1737
+ };
1738
+ const dismiss = id => {
1739
+ state$2.notifications = state$2.notifications.filter(notification => notification.id !== id);
1740
+ };
1741
+ const getAll$1 = () => {
1742
+ return state$2.notifications;
1743
+ };
1744
+ const removeByExtension = extensionId => {
1745
+ state$2.notifications = state$2.notifications.filter(notification => notification.extensionId !== extensionId);
1746
+ };
1747
+
1748
+ const state$1 = {
1749
+ rpc: undefined
1750
+ };
1751
+ const set$4 = value => {
1752
+ state$1.rpc = value;
1753
+ };
1754
+ const invoke$2 = async (method, ...params) => {
1755
+ await state$1.rpc?.invoke(method, ...params);
1756
+ };
1757
+
1758
+ const state = {
1759
+ rpc: undefined
1760
+ };
1761
+ const set$3 = value => {
1762
+ state.rpc = value;
1763
+ };
1764
+ const invoke$1 = async (method, ...params) => {
1765
+ await state.rpc?.invoke(method, ...params);
1766
+ };
1767
+
1768
+ const notifyNotificationsChanged = async () => {
1769
+ const notifications = getAll$1();
1770
+ await Promise.all([invoke$2('NotificationCenter.handleNotificationsChanged', notifications), invoke$1('StatusBar.handleNotificationCountChanged', notifications.length)]);
1771
+ };
1772
+
1773
+ const getPreference = async key => {
1774
+ return invoke$5('Preferences.get', key);
1775
+ };
1776
+ const setPreference = async (key, value) => {
1777
+ await invoke$5('Preferences.update', {
1778
+ [key]: value
1779
+ });
1780
+ };
1781
+
1782
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
1783
+ const invoke = (method, ...params) => {
1784
+ return invoke$5(method, ...params);
1785
+ };
1786
+ const invokeAndTransfer = (method, ...params) => {
1787
+ return invokeAndTransfer$1(method, ...params);
1788
+ };
1789
+
1790
+ const hiddenExtensionIdsPreference = 'notifications.hiddenExtensionIds';
1791
+ const getHiddenExtensionIds = async () => {
1792
+ const value = await getPreference(hiddenExtensionIdsPreference);
1793
+ if (!Array.isArray(value)) {
1794
+ return [];
1795
+ }
1796
+ return value.filter(item => typeof item === 'string');
1797
+ };
1798
+ const assertType = type => {
1799
+ if (type !== 'error' && type !== 'info' && type !== 'warning') {
1800
+ throw new TypeError(`Invalid notification type: ${type}`);
1801
+ }
1802
+ };
1803
+ const showPopup = async (type, message) => {
1804
+ try {
1805
+ await invoke('Notification.create', type, message);
1806
+ } catch {
1807
+ // Notification storage must keep working while an older renderer is connected.
1808
+ }
1809
+ };
1810
+ const clearNotifications = async () => {
1811
+ clear();
1812
+ await notifyNotificationsChanged();
1813
+ };
1814
+ const createNotification = async (extensionId, type, message) => {
1815
+ string(extensionId);
1816
+ string(type);
1817
+ string(message);
1818
+ assertType(type);
1819
+ const hiddenExtensionIds = await getHiddenExtensionIds();
1820
+ if (hiddenExtensionIds.includes(extensionId)) {
1821
+ return;
1822
+ }
1823
+ add$1(extensionId, type, message);
1824
+ await Promise.all([notifyNotificationsChanged(), showPopup(type, message)]);
1825
+ };
1826
+ const dismissNotification = async id => {
1827
+ number(id);
1828
+ dismiss(id);
1829
+ await notifyNotificationsChanged();
1830
+ };
1831
+ const getNotificationCount = () => {
1832
+ return getAll$1().length;
1833
+ };
1834
+ const getNotifications = () => {
1835
+ return getAll$1();
1836
+ };
1837
+ const hideNotificationsFromExtension = async extensionId => {
1838
+ string(extensionId);
1839
+ const hiddenExtensionIds = await getHiddenExtensionIds();
1840
+ if (!hiddenExtensionIds.includes(extensionId)) {
1841
+ await setPreference(hiddenExtensionIdsPreference, [...hiddenExtensionIds, extensionId]);
1842
+ }
1843
+ removeByExtension(extensionId);
1844
+ await notifyNotificationsChanged();
1845
+ };
1846
+
1847
+ const cacheName$1 = 'ExtensionSecrets';
1848
+ const getRequestUrl = (extensionId, key) => {
1849
+ return `https://secret-storage.invalid/${encodeURIComponent(extensionId)}/${encodeURIComponent(key)}`;
1850
+ };
1851
+ const isElectron = () => {
1852
+ return get$5().platform === Electron;
1853
+ };
1854
+ const deleteSecret = async (extensionId, key) => {
1855
+ string(extensionId);
1856
+ string(key);
1857
+ if (isElectron()) {
1858
+ await invoke$4('SecretStorage.delete', extensionId, key);
1859
+ return;
1860
+ }
1861
+ const cache = await caches.open(cacheName$1);
1862
+ await cache.delete(getRequestUrl(extensionId, key));
1863
+ };
1864
+ const getSecret = async (extensionId, key) => {
1865
+ string(extensionId);
1866
+ string(key);
1867
+ if (isElectron()) {
1868
+ return invoke$4('SecretStorage.get', extensionId, key);
1869
+ }
1870
+ const cache = await caches.open(cacheName$1);
1871
+ const response = await cache.match(getRequestUrl(extensionId, key));
1872
+ return response?.text();
1873
+ };
1874
+ const storeSecret = async (extensionId, key, value) => {
1875
+ string(extensionId);
1876
+ string(key);
1877
+ string(value);
1878
+ if (isElectron()) {
1879
+ await invoke$4('SecretStorage.store', extensionId, key, value);
1880
+ return;
1881
+ }
1882
+ const cache = await caches.open(cacheName$1);
1883
+ await cache.put(getRequestUrl(extensionId, key), new Response(value));
1884
+ };
1885
+
1886
+ class CommandNotFoundError extends Error {
1887
+ constructor(command) {
1888
+ super(`Command not found ${command}`);
1889
+ Object.defineProperty(this, 'name', {
1890
+ value: 'CommandNotFoundError'
1891
+ });
1892
+ }
1893
+ }
1894
+ const allowedElectronPortCommand = 'HandleMessagePortForEmbedsProcess.handleMessagePortForEmbedsProcess';
1895
+ const workspaceSetUriCommand = 'Workspace.setUri';
1896
+ const privilegedCommandPrefixes = ['ElectronNet.', 'ClipBoard.', 'DebugSharedProcess.', 'Developer.', 'Electron', 'Exec.', 'ExtensionNodeRpc.', 'FileSystem', 'FileWatcher.', 'IpcParent.', 'PlatformPaths.', 'PersistentFileHandle.', 'Process.', 'RebuildNodePty.', 'SearchProcess.', 'SendMessagePort', 'SharedProcess.', 'TerminalProcess.', 'Transferrable.', 'WebSocketCapability.', 'WebView.compat'];
1897
+ const invokeGlobalCommand = (method, ...params) => {
1898
+ const command = commandMapRef[method];
1899
+ if (!command) {
1900
+ throw new CommandNotFoundError(method);
1901
+ }
1902
+ return command(...params);
1903
+ };
1904
+ const executeDeferredCommand = async (id, args) => {
1905
+ try {
1906
+ await invokeGlobalCommand('Extensions.executeCommand', id, ...args);
1907
+ } catch (error) {
1908
+ await handleUncaughtExtensionError(error);
1909
+ }
1910
+ };
1911
+ const executeCommand$1 = (id, ...args) => {
1912
+ if (privilegedCommandPrefixes.some(prefix => id.startsWith(prefix))) {
1913
+ throw new Error(`Isolated extensions cannot execute privileged command ${id}`);
1914
+ }
1915
+ if (id === workspaceSetUriCommand) {
1916
+ setTimeout(() => {
1917
+ void executeDeferredCommand(id, args).catch(() => {});
1918
+ }, 0);
1919
+ return undefined;
1920
+ }
1921
+ return invokeGlobalCommand('Extensions.executeCommand', id, ...args);
1922
+ };
1923
+ const createExtensionCommandMap = extensionId => {
1924
+ return {
1925
+ ...commandMapRef,
1926
+ 'Extensions.createLegacyNodeRpc'(rpcId) {
1927
+ return create(extensionId, rpcId);
1928
+ },
1929
+ 'Extensions.createNodeRpcConnection'(rpcId) {
1930
+ return createNodeRpcConnection(extensionId, rpcId);
1931
+ },
1932
+ 'Extensions.createNodeRpcMessagePort'(rpcId, port) {
1933
+ return createNodeRpcMessagePort(extensionId, rpcId, port);
1934
+ },
1935
+ 'Extensions.deleteSecret'(key) {
1936
+ return deleteSecret(extensionId, key);
1937
+ },
1938
+ 'Extensions.disposeLegacyNodeRpc'(id) {
1939
+ return dispose(extensionId, id);
1940
+ },
1941
+ 'Extensions.executeCommand': executeCommand$1,
1942
+ 'Extensions.getSecret'(key) {
1943
+ return getSecret(extensionId, key);
1944
+ },
1945
+ 'Extensions.invokeLegacyNodeRpc'(id, method, ...params) {
1946
+ return invoke$3(extensionId, id, method, ...params);
1947
+ },
1948
+ 'Extensions.registerFileChangeHandler'() {
1949
+ register(extensionId);
1950
+ },
1951
+ 'Extensions.sendMessagePortToElectron'(port, initialCommand) {
1952
+ if (initialCommand !== allowedElectronPortCommand) {
1953
+ throw new Error(`Isolated extensions cannot send a port using ${initialCommand}`);
1954
+ }
1955
+ return invokeGlobalCommand('Extensions.sendMessagePortToElectron', port, initialCommand);
1956
+ },
1957
+ 'Extensions.showNotification'(type, message) {
1958
+ return createNotification(extensionId, type, message);
1959
+ },
1960
+ 'Extensions.storeSecret'(key, value) {
1961
+ return storeSecret(extensionId, key, value);
1962
+ },
1963
+ 'Extensions.unregisterFileChangeHandler'() {
1964
+ unregister(extensionId);
1965
+ }
1966
+ };
1967
+ };
1968
+ const createExtensionCommandExecutor = commandMap => {
1969
+ return (method, ...params) => {
1970
+ const command = commandMap[method];
1971
+ if (!command) {
1972
+ throw new CommandNotFoundError(method);
1973
+ }
1974
+ return command(...params);
1975
+ };
1976
+ };
1977
+
1978
+ const rpcs$1 = Object.create(null);
1979
+ const get$3 = extensionId => {
1980
+ return rpcs$1[extensionId];
1981
+ };
1982
+ const getAll = () => {
1983
+ return Object.values(rpcs$1);
1984
+ };
1985
+ const set$2 = (extensionId, rpc) => {
1986
+ rpcs$1[extensionId] = rpc;
1987
+ };
1988
+ const remove$1 = extensionId => {
1989
+ const rpc = rpcs$1[extensionId];
1990
+ delete rpcs$1[extensionId];
1991
+ return rpc;
1992
+ };
1993
+
1994
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
1995
+
1996
+ const pendingRpcs = Object.create(null);
1997
+ const bindCommandMap = (rpc, commandMap) => {
1998
+ if (rpc.ipc) {
1999
+ rpc.ipc.execute = createExtensionCommandExecutor(commandMap);
2000
+ }
2001
+ return rpc;
2002
+ };
2003
+ const createIsolatedExtensionHostWorker = async (extensionId, absolutePath, workerName, contentSecurityPolicy, createRpc, invokeAndTransfer) => {
2004
+ const commandMap = createExtensionCommandMap(extensionId);
2005
+ const rpc = await createRpc({
2006
+ commandMap,
2007
+ isMessagePortOpen: true,
2008
+ send(port) {
2009
+ return invokeAndTransfer('LaunchIsolatedExtensionHostWorker.launchIsolatedExtensionHostWorker', port, extensionId, absolutePath, workerName, contentSecurityPolicy);
2010
+ }
2011
+ });
2012
+ return bindCommandMap(rpc, commandMap);
2013
+ };
2014
+ const createWorker = (extensionId, absolutePath, workerName, contentSecurityPolicy) => {
2015
+ return createIsolatedExtensionHostWorker(extensionId, absolutePath, workerName, contentSecurityPolicy, create$7, invokeAndTransfer);
2016
+ };
2017
+ const createAndStoreRpc = async (extensionId, absolutePath, workerName, contentSecurityPolicy, create) => {
2018
+ const rpc = await create(extensionId, absolutePath, workerName, contentSecurityPolicy);
2019
+ set$2(extensionId, rpc);
2020
+ return rpc;
2021
+ };
2022
+ const getOrCreateIsolatedExtensionHostWorker = async (extensionId, absolutePath, workerName = '', contentSecurityPolicy = '', create = createWorker) => {
2023
+ const existingRpc = get$3(extensionId);
2024
+ if (existingRpc) {
2025
+ return existingRpc;
2026
+ }
2027
+ const pendingRpc = pendingRpcs[extensionId];
2028
+ if (pendingRpc !== undefined) {
2029
+ return pendingRpc;
2030
+ }
2031
+ const newRpc = createAndStoreRpc(extensionId, absolutePath, workerName, contentSecurityPolicy, create);
2032
+ pendingRpcs[extensionId] = newRpc;
2033
+ try {
2034
+ return await newRpc;
2035
+ } finally {
2036
+ delete pendingRpcs[extensionId];
2037
+ }
2038
+ };
2039
+
2040
+ const activateIsolatedExtension = async (extensionId, absolutePath, workerName, contentSecurityPolicy, activationEvent, getOrCreate = getOrCreateIsolatedExtensionHostWorker) => {
2041
+ const startTime = performance.now();
2042
+ updateRuntimeStatus(extensionId, {
2043
+ activationEvent,
2044
+ activationStartTime: startTime,
2045
+ status: Activating
2046
+ });
2047
+ try {
2048
+ await getOrCreate(extensionId, absolutePath, workerName, contentSecurityPolicy);
2049
+ const endTime = performance.now();
2050
+ updateRuntimeStatus(extensionId, {
2051
+ activationEndTime: endTime,
2052
+ activationTime: endTime - startTime,
2053
+ status: Activated
2054
+ });
2055
+ } catch (error) {
2056
+ updateRuntimeStatus(extensionId, {
2057
+ error: getErrorMessage(error),
2058
+ status: Error$1
2059
+ });
2060
+ throw error;
2061
+ }
2062
+ };
2063
+
2064
+ const getOrigin = () => {
2065
+ return globalThis.location?.origin || 'http://localhost';
2066
+ };
2067
+
2068
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
2069
+
2070
+ const allowedScriptSources = new Set([`'self'`, `'unsafe-eval'`]);
2071
+ const reservedDirectives = new Set(['child-src', 'connect-src', 'default-src', 'script-src', 'worker-src']);
2072
+ const parseDirective = directive => {
2073
+ if (directive.includes('\n') || directive.includes('\r')) {
2074
+ throw new Error('content security policy directives cannot contain newlines');
2075
+ }
2076
+ return directive.replace(/;$/, '').trim().split(/\s+/);
2077
+ };
2078
+ const getWorkerUrls = absolutePath => {
2079
+ const applicationUrl = new URL(getOrigin());
2080
+ const workerUrl = new URL(absolutePath, applicationUrl);
2081
+ if (workerUrl.protocol !== 'http:' && workerUrl.protocol !== 'https:') {
2082
+ return {
2083
+ origin: applicationUrl.origin
2084
+ };
2085
+ }
2086
+ const webSocketProtocol = applicationUrl.protocol === 'https:' ? 'wss:' : 'ws:';
2087
+ return {
2088
+ assetSource: new URL('./', workerUrl).href,
2089
+ capabilitySource: `${webSocketProtocol}//${applicationUrl.host}/websocket/capability`,
2090
+ origin: applicationUrl.origin
2091
+ };
2092
+ };
2093
+ const validateExternalConnectSource = (source, applicationOrigin) => {
2094
+ if (source.includes('*') || source === `'none'`) {
2095
+ throw new Error(`invalid isolated extension connect source ${source}`);
2096
+ }
2097
+ let url;
2098
+ try {
2099
+ url = new URL(source);
2100
+ } catch {
2101
+ throw new Error(`isolated extension connect source must be an absolute URL. Invalid value: ${JSON.stringify(source)}`);
2102
+ }
2103
+ if (!['http:', 'https:', 'ws:', 'wss:'].includes(url.protocol) || !url.hostname || url.username || url.password) {
2104
+ throw new Error(`invalid isolated extension connect source ${source}`);
2105
+ }
2106
+ const applicationUrl = new URL(applicationOrigin);
2107
+ if (url.host === applicationUrl.host) {
2108
+ throw new Error(`isolated extensions cannot allow the application origin in connect-src`);
2109
+ }
2110
+ return source;
2111
+ };
2112
+ const addScriptSources = (scriptSources, sources) => {
2113
+ for (const source of sources) {
2114
+ if (!allowedScriptSources.has(source)) {
2115
+ throw new Error(`invalid isolated extension script source ${source}`);
2116
+ }
2117
+ scriptSources.add(source);
2118
+ }
2119
+ };
2120
+ const addConnectSources = (connectSources, sources, assetSource, origin) => {
2121
+ for (const source of sources) {
2122
+ if (source === `'self'`) {
2123
+ if (assetSource) {
2124
+ connectSources.add(assetSource);
2125
+ }
2126
+ } else {
2127
+ connectSources.add(validateExternalConnectSource(source, origin));
2128
+ }
2129
+ }
2130
+ };
2131
+ const validateDefaultSources = sources => {
2132
+ if (sources.length !== 1 || sources[0] !== `'none'`) {
2133
+ throw new Error(`isolated extension default-src must be 'none'`);
2134
+ }
2135
+ };
2136
+ const applyDirective = (directive, scriptSources, connectSources, assetSource, origin) => {
2137
+ const [name, ...sources] = parseDirective(directive);
2138
+ if (!name) {
2139
+ return;
2140
+ }
2141
+ if (name === 'default-src') {
2142
+ validateDefaultSources(sources);
2143
+ return;
2144
+ }
2145
+ if (name === 'script-src') {
2146
+ addScriptSources(scriptSources, sources);
2147
+ return;
2148
+ }
2149
+ if (name === 'connect-src') {
2150
+ addConnectSources(connectSources, sources, assetSource, origin);
2151
+ return;
2152
+ }
2153
+ if (reservedDirectives.has(name)) {
2154
+ throw new Error(`isolated extensions cannot override ${name}`);
2155
+ }
2156
+ };
2157
+ const getContentSecurityPolicy = (directives, absolutePath) => {
2158
+ const {
2159
+ assetSource,
2160
+ capabilitySource,
2161
+ origin
2162
+ } = getWorkerUrls(absolutePath);
2163
+ const scriptSources = new Set([`'self'`]);
2164
+ const connectSources = new Set();
2165
+ if (capabilitySource) {
2166
+ connectSources.add(capabilitySource);
2167
+ }
2168
+ if (assetSource) {
2169
+ connectSources.add(assetSource);
2170
+ }
2171
+ const manifestDirectives = directives || [];
2172
+ for (const directive of manifestDirectives) {
2173
+ applyDirective(directive, scriptSources, connectSources, assetSource, origin);
2174
+ }
2175
+ const connectDirective = connectSources.size > 0 ? [...connectSources].join(' ') : `'none'`;
2176
+ return `default-src 'none'; script-src ${[...scriptSources].join(' ')}; worker-src 'none'; child-src 'none'; connect-src ${connectDirective};`;
2177
+ };
2178
+
2179
+ const rpcs = Object.create(null);
2180
+ const add = (id, rpc) => {
2181
+ rpcs[id] = rpc;
2182
+ };
2183
+ const get$2 = id => {
2184
+ return rpcs[id];
2185
+ };
2186
+
2187
+ const getUrlPrefix = (platform, extensionPath) => {
2188
+ if (extensionPath.startsWith('http://') || extensionPath.startsWith('https://')) {
2189
+ return extensionPath;
2190
+ }
2191
+ if (platform === Web) {
2192
+ return extensionPath;
2193
+ }
2194
+ if (extensionPath.startsWith('/')) {
2195
+ return `/remote${extensionPath}`;
2196
+ }
2197
+ return `/remote/${extensionPath}`;
2198
+ };
2199
+
2200
+ const handleRpcInfos = (extension, platform) => {
2201
+ try {
2202
+ if (!extension) {
2203
+ return;
2204
+ }
2205
+ const rpcs = extension.rpc;
2206
+ if (!rpcs) {
2207
+ return;
2208
+ }
2209
+ if (!Array.isArray(rpcs)) {
2210
+ return;
2211
+ }
2212
+ if (typeof extension.id === 'string') {
2213
+ set$5({
2214
+ ...extension,
2215
+ rpc: rpcs.map(rpc => ({
2216
+ ...rpc
2217
+ }))
2218
+ });
2219
+ }
2220
+ const urlPrefix = getUrlPrefix(platform, extension.path);
2221
+ for (const rpc of rpcs) {
2222
+ if (rpc.type === 'node') {
2223
+ continue;
2224
+ }
2225
+ rpc.url = `${urlPrefix}/${rpc.url}`;
2226
+ add(rpc.id, rpc);
2227
+ }
2228
+ } catch (error) {
2229
+ console.warn(`Failed to handle extension rpcs: ${error}`);
2230
+ }
2231
+ };
2232
+
2233
+ const NewLine = '\n';
2234
+ const Slash = '/';
2235
+
2236
+ const interExtensionId = path => {
2237
+ const slashIndex = path.lastIndexOf(Slash);
2238
+ return path.slice(slashIndex + 1);
2239
+ };
2240
+
2241
+ const isExtensionIsolated = extension => {
2242
+ return extension?.isolated === true;
2243
+ };
2244
+
2245
+ const activateExtension3 = async (extension, absolutePath, activationEvent, platform) => {
2246
+ const extensionId = extension.id || interExtensionId(extension.uri);
2247
+ if (!isExtensionIsolated(extension)) {
2248
+ throw new Error(`Extension ${extensionId} does not use the isolated extension API`);
2249
+ }
2250
+ handleRpcInfos(extension, platform);
2251
+ const contentSecurityPolicy = getContentSecurityPolicy(extension.contentSecurityPolicy, absolutePath);
2252
+ await activateIsolatedExtension(extensionId, absolutePath, extension.workerName || '', contentSecurityPolicy, activationEvent);
2253
+ };
2254
+
2255
+ const getExtensionAbsolutePath = (id, isWeb, isBuiltin, path, relativePath, origin, platform, assetDir) => {
2256
+ if (path.startsWith('http')) {
2257
+ if (path.endsWith('/')) {
2258
+ return new URL(relativePath, path).href;
2259
+ }
2260
+ return new URL(relativePath, path + '/').href;
2261
+ }
2262
+ if (!path.startsWith('/')) {
2263
+ path = '/' + path;
2264
+ }
2265
+ if (isWeb) {
2266
+ return path + '/' + relativePath;
2267
+ }
2268
+ if (platform === Web) {
2269
+ return path + '/' + relativePath;
2270
+ }
2271
+ if (isBuiltin) {
2272
+ return `${assetDir}/extensions/${id}/${relativePath}`;
2273
+ }
2274
+ return new URL('/remote' + path + '/' + relativePath, origin).href;
2275
+ };
2276
+
2277
+ const ContentType = 'Content-Type';
2278
+ const ContentLength = 'Content-Length';
2279
+
2280
+ const createResponseFromData = data => {
2281
+ const responseString = JSON.stringify(data);
2282
+ const response = new Response(responseString, {
2283
+ headers: {
2284
+ [ContentLength]: String(responseString.length),
2285
+ [ContentType]: 'application/json'
2286
+ }
2287
+ });
2288
+ return response;
2289
+ };
2290
+
2291
+ const cacheName = 'Extensions'; // TODO
2292
+
2293
+ const getJson$1 = async cacheKey => {
2294
+ const response = await caches.match(cacheKey, {
2295
+ cacheName
2296
+ });
2297
+ if (!response) {
2298
+ return undefined;
2299
+ }
2300
+ const json = await response.json();
2301
+ return json;
2302
+ };
2303
+ const setJson = async (cacheKey, data) => {
2304
+ try {
2305
+ const cache = await caches.open(cacheName);
2306
+ const response = createResponseFromData(data);
2307
+ await cache.put(cacheKey, response);
2308
+ } catch (error) {
2309
+ throw new VError(error, `Failed to add to cache`);
2310
+ }
2311
+ };
2312
+
2313
+ const disabledExtensionsCacheKey = '/cache/disabledExtensions.json';
2314
+
2315
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
2316
+
2317
+ const getDisabledExtensionIdsFromData = data => {
2318
+ const disabledExtensions = data?.disabledExtensions;
2319
+ if (!Array.isArray(disabledExtensions)) {
2320
+ return [];
2321
+ }
2322
+ return disabledExtensions.filter(id => typeof id === 'string');
2323
+ };
2324
+ const getWebDisabledExtensionIds = async () => {
2325
+ try {
2326
+ const cached = await getJson$1(disabledExtensionsCacheKey);
2327
+ return getDisabledExtensionIdsFromData(cached);
2328
+ } catch {
2329
+ return [];
2330
+ }
2331
+ };
2332
+ const getRemoteDisabledExtensionIds = async () => {
2333
+ try {
2334
+ const uri = await invoke$5('WebView.compatSharedProcessInvoke', 'PlatformPaths.getDisabledExtensionsJsonUri');
2335
+ const exists$1 = await exists(uri);
2336
+ if (!exists$1) {
2337
+ return [];
2338
+ }
2339
+ const content = await readFile$1(uri);
2340
+ const parsed = JSON.parse(content);
2341
+ return getDisabledExtensionIdsFromData(parsed);
2342
+ } catch {
2343
+ return [];
2344
+ }
2345
+ };
2346
+ const getDisabledExtensionIds = async (extensionsState, platform) => {
2347
+ if (platform === Test) {
2348
+ return extensionsState.disabledIds;
2349
+ }
2350
+ if (platform === Web) {
2351
+ return getWebDisabledExtensionIds();
2352
+ }
2353
+ if (platform === Remote || platform === Electron) {
2354
+ return getRemoteDisabledExtensionIds();
2355
+ }
2356
+ return [];
2357
+ };
2358
+
2359
+ const isMissingAssetDir = assetDir => {
2360
+ return typeof assetDir !== 'string' || assetDir.length === 0;
2361
+ };
2362
+ const isMissingPlatform = platform => {
2363
+ return typeof platform !== 'number' || platform === 0;
2364
+ };
2365
+ const isStaticHttpAssetDir = assetDir => {
2366
+ return assetDir.startsWith('/') || assetDir.startsWith('http');
2367
+ };
2368
+ const isHttpLocation = () => {
2369
+ return Reflect.has(globalThis, 'location') && globalThis.location.protocol.startsWith('http');
2370
+ };
2371
+ const getRuntimeContext = async (assetDir, platform) => {
2372
+ const shouldInferPlatform = isMissingPlatform(platform);
2373
+ const resolvedAssetDir = isMissingAssetDir(assetDir) ? await invoke$5('Layout.getAssetDir') : assetDir;
2374
+ const resolvedPlatform = shouldInferPlatform ? await invoke$5('Layout.getPlatform') : platform;
2375
+ if (shouldInferPlatform && isHttpLocation() && isStaticHttpAssetDir(resolvedAssetDir)) {
2376
+ return {
2377
+ assetDir: resolvedAssetDir,
2378
+ platform: Web
2379
+ };
2380
+ }
2381
+ return {
2382
+ assetDir: resolvedAssetDir,
2383
+ platform: resolvedPlatform
2384
+ };
2385
+ };
2386
+
2387
+ const getResponseErrorMessage = response => {
2388
+ return response.statusText || String(response.status) || 'Request failed';
2389
+ };
2390
+ const getJson = async url => {
2391
+ try {
2392
+ const response = await fetch(url);
2393
+ if (!response.ok) {
2394
+ throw new Error(getResponseErrorMessage(response));
2395
+ }
2396
+ const json = await response.json();
2397
+ return json;
2398
+ } catch (error) {
2399
+ throw new VError(error, `Failed to get json`);
2400
+ }
2401
+ };
2402
+
2403
+ const getWebExtensionsUrl = assetDir => {
2404
+ return `${assetDir}/config/extensions.json`;
2405
+ };
2406
+
2407
+ const getWebExtensions = async assetDir => {
2408
+ try {
2409
+ return await getJson(getWebExtensionsUrl(assetDir));
2410
+ } catch {
2411
+ return [];
2412
+ }
2413
+ };
2414
+
2415
+ const isExtensionCompatible = (extension, platform) => {
2416
+ return platform !== Web || extension?.compatibility?.web !== false;
2417
+ };
2418
+
2419
+ const WorkspaceConfigFolderName = '.lvce';
2420
+ const DisabledExtensionsFileName = 'disabled-extensions.json';
2421
+ const UriSchemeRegex = /^[a-zA-Z][a-zA-Z\d+.-]*:/;
2422
+ const WindowsDrivePathRegex = /^[a-zA-Z]:[\\/]/;
2423
+ const WindowsDriveSegmentRegex = /^[a-zA-Z]:$/;
2424
+ const encodePathSegment = (segment, index) => {
2425
+ if (index === 0 && WindowsDriveSegmentRegex.test(segment)) {
2426
+ return segment;
2427
+ }
2428
+ return encodeURIComponent(segment);
2429
+ };
2430
+ const encodeFilePath = path => {
2431
+ return path.split('/').map(encodePathSegment).join('/');
2432
+ };
2433
+ const toWorkspaceUri = workspacePath => {
2434
+ if (WindowsDrivePathRegex.test(workspacePath)) {
2435
+ return `file:///${encodeFilePath(workspacePath.replaceAll('\\', '/'))}`;
2436
+ }
2437
+ if (UriSchemeRegex.test(workspacePath)) {
2438
+ return workspacePath;
2439
+ }
2440
+ if (workspacePath.startsWith('/')) {
2441
+ return `file://${encodeFilePath(workspacePath)}`;
2442
+ }
2443
+ return workspacePath;
2444
+ };
2445
+ const joinUri = (base, ...parts) => {
2446
+ const normalizedBase = base.endsWith('/') ? base.slice(0, -1) : base;
2447
+ return [normalizedBase, ...parts].join('/');
2448
+ };
2449
+ const stringifyJson = data => {
2450
+ return JSON.stringify(data, null, 2) + '\n';
2451
+ };
2452
+ const getWorkspaceUri = async () => {
2453
+ const workspacePath = await invoke$5('Workspace.getPath');
2454
+ return toWorkspaceUri(workspacePath);
2455
+ };
2456
+ const getWorkspaceConfigDirUri = async () => {
2457
+ const workspaceUri = await getWorkspaceUri();
2458
+ return joinUri(workspaceUri, WorkspaceConfigFolderName);
2459
+ };
2460
+ const getWorkspaceDisabledExtensionsJsonUri = async () => {
2461
+ const configDirUri = await getWorkspaceConfigDirUri();
2462
+ return joinUri(configDirUri, DisabledExtensionsFileName);
2463
+ };
2464
+ const parseDisabledExtensions = content => {
2465
+ const parsed = JSON.parse(content);
2466
+ if (!Array.isArray(parsed.disabledExtensions)) {
2467
+ return [];
2468
+ }
2469
+ return parsed.disabledExtensions.filter(item => typeof item === 'string');
2470
+ };
2471
+ const readDisabledExtensionIdsFromUri = async uri => {
2472
+ const exists$1 = await exists(uri);
2473
+ if (!exists$1) {
2474
+ return [];
2475
+ }
2476
+ const content = await readFile$1(uri);
2477
+ return parseDisabledExtensions(content);
2478
+ };
2479
+ const readDisabledExtensionIds = async () => {
2480
+ const uri = await getWorkspaceDisabledExtensionsJsonUri();
2481
+ return readDisabledExtensionIdsFromUri(uri);
2482
+ };
2483
+ const readDisabledExtensionIdsSafe = async () => {
2484
+ try {
2485
+ return await readDisabledExtensionIds();
2486
+ } catch {
2487
+ return [];
2488
+ }
2489
+ };
2490
+ const writeDisabledExtensionIds = async (uri, disabledExtensions) => {
2491
+ await writeFile(uri, stringifyJson({
2492
+ disabledExtensions
2493
+ }));
2494
+ };
2495
+ const disableExtension$1 = async id => {
2496
+ string(id);
2497
+ const configDirUri = await getWorkspaceConfigDirUri();
2498
+ const uri = joinUri(configDirUri, DisabledExtensionsFileName);
2499
+ const configDirExists = await exists(configDirUri);
2500
+ if (!configDirExists) {
2501
+ await mkdir(configDirUri);
2502
+ }
2503
+ const oldDisabled = await readDisabledExtensionIdsFromUri(uri);
2504
+ const newDisabled = oldDisabled.includes(id) ? oldDisabled : [...oldDisabled, id];
2505
+ await writeDisabledExtensionIds(uri, newDisabled);
2506
+ };
2507
+ const enableExtension$1 = async id => {
2508
+ string(id);
2509
+ const uri = await getWorkspaceDisabledExtensionsJsonUri();
2510
+ const exists$1 = await exists(uri);
2511
+ if (!exists$1) {
2512
+ return;
2513
+ }
2514
+ const oldDisabled = await readDisabledExtensionIdsFromUri(uri);
2515
+ const newDisabled = oldDisabled.filter(item => item !== id);
2516
+ await writeDisabledExtensionIds(uri, newDisabled);
2517
+ };
2518
+
2519
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
2520
+
2521
+ const withDisabledState = (extensions, disabledIds) => {
2522
+ if (disabledIds.length === 0) {
2523
+ return extensions;
2524
+ }
2525
+ const disabledIdsSet = new Set(disabledIds);
2526
+ return extensions.map(extension => {
2527
+ if (!disabledIdsSet.has(extension.id)) {
2528
+ return extension;
2529
+ }
2530
+ return {
2531
+ ...extension,
2532
+ disabled: true
2533
+ };
2534
+ });
2535
+ };
2536
+ const getExtensionsWithState = async (extensions, extensionsState, platform) => {
2537
+ if (extensions.length === 0) {
2538
+ return extensions;
2539
+ }
2540
+ const disabledIds = await getDisabledExtensionIds(extensionsState, platform);
2541
+ const extensionsWithDisabledState = withDisabledState(extensions, disabledIds);
2542
+ if (platform === Test) {
2543
+ return extensionsWithDisabledState;
2544
+ }
2545
+ const workspaceDisabledIds = await readDisabledExtensionIdsSafe();
2546
+ return withDisabledState(extensionsWithDisabledState, workspaceDisabledIds);
2547
+ };
2548
+ const getAllExtensionsWithState = async (extensionsState, assetDir, platform) => {
2549
+ const {
2550
+ assetDir: resolvedAssetDir,
2551
+ platform: resolvedPlatform
2552
+ } = await getRuntimeContext(assetDir, platform);
2553
+ string(resolvedAssetDir);
2554
+ number(resolvedPlatform);
2555
+ const meta = extensionsState.webExtensions;
2556
+ if (resolvedPlatform === Web) {
2557
+ const webExtensions = await getWebExtensions(resolvedAssetDir);
2558
+ const compatibleExtensions = [...webExtensions, ...meta].filter(extension => isExtensionCompatible(extension, resolvedPlatform));
2559
+ return getExtensionsWithState(compatibleExtensions, extensionsState, resolvedPlatform);
2560
+ }
2561
+ const local = await invoke$4('ExtensionManagement.getAllExtensions');
2562
+ return getExtensionsWithState([...local, ...meta], extensionsState, resolvedPlatform);
2563
+ };
2564
+
2565
+ const getAllExtensions = async (assetDir, platform) => {
2566
+ return getAllExtensionsWithState(get$5(), assetDir, platform);
2567
+ };
2568
+
2569
+ const activatingExtensions = Object.create(null);
2570
+ const runningExtensions = Object.create(null);
2571
+ const resetExtensionActivation = extensionId => {
2572
+ delete activatingExtensions[extensionId];
2573
+ delete runningExtensions[extensionId];
2574
+ };
2575
+ const matchesEvent$1 = (extension, event) => {
2576
+ return !extension.disabled && isExtensionIsolated(extension) && Array.isArray(extension.activation) && extension.activation.includes(event);
2577
+ };
2578
+ const getExtensionId$3 = extension => {
2579
+ return extension.id;
2580
+ };
2581
+ const getAbsolutePath$1 = (extension, assetDir, platform) => {
2582
+ return getExtensionAbsolutePath(extension.id, extension.isWeb, extension.builtin, extension.path || extension.uri, extension.browser, globalThis.location.origin, platform, assetDir);
2583
+ };
2584
+ const notifyRunningExtensionsChanged = () => {
2585
+ setTimeout(() => {
2586
+ void invoke$5('Layout.handleExtensionsChanged');
2587
+ }, 0);
2588
+ };
2589
+ const doActivateExtension = async (extension, absolutePath, event, platform) => {
2590
+ const extensionId = getExtensionId$3(extension);
2591
+ try {
2592
+ await activateExtension3(extension, absolutePath, event, platform);
2593
+ runningExtensions[extensionId] = true;
2594
+ notifyRunningExtensionsChanged();
2595
+ } finally {
2596
+ delete activatingExtensions[extensionId];
2597
+ }
2598
+ };
2599
+ const activateExtension = async (extension, event, assetDir, platform) => {
2600
+ const extensionId = getExtensionId$3(extension);
2601
+ if (runningExtensions[extensionId]) {
2602
+ return;
2603
+ }
2604
+ if (!Object.hasOwn(activatingExtensions, extensionId)) {
2605
+ const absolutePath = getAbsolutePath$1(extension, assetDir, platform);
2606
+ activatingExtensions[extensionId] = doActivateExtension(extension, absolutePath, event, platform);
2607
+ }
2608
+ await activatingExtensions[extensionId];
2609
+ };
2610
+ const activateByEvent = async (event, assetDir, platform) => {
2611
+ try {
2612
+ if (event === 'none') {
2613
+ await Promise.all(Object.values(activatingExtensions));
2614
+ return {
2615
+ error: undefined,
2616
+ hasActivatedExtensions: Object.keys(activatingExtensions).length > 0
2617
+ };
2618
+ }
2619
+ const {
2620
+ assetDir: resolvedAssetDir,
2621
+ platform: resolvedPlatform
2622
+ } = await getRuntimeContext(assetDir, platform);
2623
+ const extensions = await getAllExtensions(resolvedAssetDir, resolvedPlatform);
2624
+ const matchingExtensions = extensions.filter(extension => matchesEvent$1(extension, event));
2625
+ for (const extension of matchingExtensions) {
2626
+ await activateExtension(extension, event, resolvedAssetDir, resolvedPlatform);
2627
+ }
2628
+ return {
2629
+ error: undefined,
2630
+ hasActivatedExtensions: matchingExtensions.length > 0
2631
+ };
2632
+ } catch (error) {
2633
+ return {
2634
+ error: error instanceof Error ? error : new Error(String(error)),
2635
+ hasActivatedExtensions: false
2636
+ };
2637
+ }
2638
+ };
2639
+
2640
+ const invalidateExtensionsCache = async (extensionId, disabled) => {
2641
+ try {
2642
+ if (extensionId) {
2643
+ await invoke$5('ExtensionManagement.handleExtensionsCacheInvalidated', extensionId, disabled);
2644
+ return;
2645
+ }
2646
+ await invoke$5('ExtensionManagement.handleExtensionsCacheInvalidated');
2647
+ } catch {
2648
+ // Older renderer workers do not expose the cache invalidation notification.
2649
+ }
2650
+ };
2651
+ const deferInvalidateExtensionsCache = (extensionId, disabled) => {
2652
+ setTimeout(() => {
2653
+ void invalidateExtensionsCache(extensionId, disabled);
2654
+ }, 0);
2655
+ };
2656
+
2657
+ const handleChange = async _id => {
2658
+ const statusBarVisible = await invoke$5('Layout.getStatusBarVisible');
2659
+ if (!statusBarVisible) {
2660
+ return;
2661
+ }
2662
+ await invoke$1('StatusBar.handleChange');
2663
+ };
2664
+
2665
+ const hasStatusBarItems = extension => {
2666
+ return Array.isArray(extension.statusBarItems) && extension.statusBarItems.length > 0;
2667
+ };
2668
+ const addExtension = async extension => {
2669
+ addExtension$1(extension);
2670
+ clearCachedExtensions();
2671
+ await invalidateExtensionsCache();
2672
+ if (hasStatusBarItems(extension)) {
2673
+ await handleChange();
2674
+ }
2675
+ return extension;
2676
+ };
2677
+
2678
+ const getWebExtensionManifest = async (path, manifestPath) => {
2679
+ try {
2680
+ const manifest = await getJson(manifestPath);
2681
+ return {
2682
+ ...manifest,
2683
+ path,
2684
+ uri: path
2685
+ };
2686
+ } catch (error) {
2687
+ const id = interExtensionId(path);
2688
+ throw new VError(error, `Failed to load extension manifest for ${id}`);
2689
+ }
2690
+ };
2691
+
2692
+ const getWebManifestPath = path => {
2693
+ const manifestPath = `${path}/extension.json`;
2694
+ return manifestPath;
2695
+ };
2696
+
2697
+ const addWebExtension = async path => {
2698
+ if (hasWebExtensionUri(path)) {
2699
+ return undefined;
2700
+ }
2701
+ const manifestPath = getWebManifestPath(path);
2702
+ const manifest = await getWebExtensionManifest(path, manifestPath);
2703
+ return addExtension(manifest);
2704
+ };
2705
+
2706
+ const ModuleWorkerAndWorkaroundForChromeDevtoolsBug = 6;
2707
+
2708
+ const createWebViewWorkerRpc2 = async (rpcInfo, port) => {
2709
+ // TODO this function is called from the iframe worker to create a direct
2710
+ // connection between a webview/iframe and it's webworker. For this to work
2711
+ // the iframe worker creates a messagechannel and sends one messageport to the webview
2712
+ // and the other messageport to the webworker. This enables direct communication via
2713
+ // the two message ports
2714
+
2715
+ // TODO have a way so that the worker already includes the webview api and the extension
2716
+ // host sub-worker doesn't need to import the other file
2717
+ if (rpcInfo.contentSecurityPolicy) {
2718
+ const pathName = new URL(rpcInfo.url, 'http://localhost').pathname;
2719
+ const contentSecurityPolicy = getContentSecurityPolicy(rpcInfo.contentSecurityPolicy, rpcInfo.url);
2720
+ await invoke('ExtensionHostWorkerContentSecurityPolicy.set', pathName, contentSecurityPolicy);
2721
+ }
2722
+ await invokeAndTransfer('IpcParent.create', {
2723
+ method: ModuleWorkerAndWorkaroundForChromeDevtoolsBug,
2724
+ name: rpcInfo.name,
2725
+ port,
2726
+ raw: true,
2727
+ url: rpcInfo.url
2728
+ });
2729
+ };
2730
+
2731
+ const sourcePathMarker = '/extension-management-worker/src/';
2732
+ const getExtensionHostSubWorkerUrl = (currentUrl = import.meta.url) => {
2733
+ const relativePath = currentUrl.includes(sourcePathMarker) ? '../../../../extension-host-sub-worker/src/extensionHostSubWorkerMain.js' : '../../extension-host-sub-worker/dist/extensionHostSubWorkerMain.js';
2734
+ return new URL(relativePath, currentUrl).href;
2735
+ };
2736
+ const extensionHostSubWorkerUrl = getExtensionHostSubWorkerUrl();
2737
+
2738
+ // TODO
2739
+
2740
+ /**
2741
+ * @deprecated use createWebViewWorkerRpc2 which passes the worker url as a parameter
2742
+ */
2743
+ const createWebViewWorkerRpc = async (rpcInfo, port) => {
2744
+ object(rpcInfo);
2745
+ object(port);
2746
+ // TODO this function is called from the iframe worker to create a direct
2747
+ // connection between a webview/iframe and it's webworker. For this to work
2748
+ // the iframe worker creates a messagechannel and sends one messageport to the webview
2749
+ // and the other messageport to the webworker. This enables direct communication via
2750
+ // the two message ports
2751
+
2752
+ // TODO have a way so that the worker already includes the webview api and the extension
2753
+ // host sub-worker doesn't need to import the other file
2754
+ await invokeAndTransfer$1('IpcParent.create', {
2755
+ method: ModuleWorkerAndWorkaroundForChromeDevtoolsBug,
2756
+ name: rpcInfo.name,
2757
+ port,
2758
+ raw: true,
2759
+ url: extensionHostSubWorkerUrl
2760
+ });
2761
+ };
2762
+
2763
+ const disposeIsolatedExtensionHostWorker = async (extensionId, invoke$1 = invoke) => {
2764
+ unregister(extensionId);
2765
+ const rpc = remove$1(extensionId);
2766
+ if (!rpc) {
2767
+ return false;
2768
+ }
2769
+ resetExtensionActivation(extensionId);
2770
+ resetExtensionRuntimeState(extensionId);
2771
+ try {
2772
+ await invoke$1('LaunchIsolatedExtensionHostWorker.disposeIsolatedExtensionHostWorker', extensionId);
2773
+ } catch {
2774
+ // Older renderer workers only support disposing the extension RPC.
2775
+ }
2776
+ try {
2777
+ await rpc.dispose();
2778
+ } catch {
2779
+ // The extension is already disabled and removed from state.
2780
+ }
2781
+ return true;
2782
+ };
2783
+
2784
+ const disposeLanguageServers = async extensionId => {
2785
+ try {
2786
+ await invoke$4('LanguageServer.dispose', extensionId);
2787
+ } catch {
2788
+ // Older shared processes do not expose per-extension language server disposal.
2789
+ }
2790
+ };
2791
+ const disposeExtensionRuntime = async extensionId => {
2792
+ await disposeLanguageServers(extensionId);
2793
+ return disposeIsolatedExtensionHostWorker(extensionId);
2794
+ };
2795
+
2796
+ const disableExtension2$1 = async (id, platform) => {
2797
+ const isTest = platform === Test;
2798
+ const isWeb = platform === Web;
2799
+ const oldState = get$5(); // TODO maybe pass in an application id? Would allow multiple editors with different extensions.
2800
+ if (isTest) {
2801
+ const newState = {
2802
+ ...oldState,
2803
+ disabledIds: [...oldState.disabledIds, id]
2804
+ };
2805
+ set$6(newState);
2806
+ } else if (isWeb) {
2807
+ const cached = await getJson$1(disabledExtensionsCacheKey);
2808
+ const oldDisabled = cached?.disabledExtensions || [];
2809
+ const newDisabled = [...oldDisabled, id];
2810
+ const newData = {
2811
+ disabledExtensions: newDisabled
2812
+ };
2813
+ await setJson(disabledExtensionsCacheKey, newData);
2814
+ } else {
2815
+ await invoke$4('ExtensionManagement.disable', id);
2816
+ }
2817
+ };
2818
+ const enableExtension2$1 = async (id, platform) => {
2819
+ const isTest = platform === Test;
2820
+ const isWeb = platform === Web;
2821
+ const oldState = get$5();
2822
+ if (isTest) {
2823
+ const newState = {
2824
+ ...oldState,
2825
+ disabledIds: oldState.disabledIds.filter(existing => existing !== id)
2826
+ };
2827
+ set$6(newState);
2828
+ } else if (isWeb) {
2829
+ const cached = await getJson$1(disabledExtensionsCacheKey);
2830
+ const oldDisabled = cached?.disabledExtensions || [];
2831
+ const newDisabled = oldDisabled.filter(item => item !== id);
2832
+ const newData = {
2833
+ disabledExtensions: newDisabled
2834
+ };
2835
+ await setJson(disabledExtensionsCacheKey, newData);
2836
+ }
2837
+ };
2838
+
2839
+ const disableExtension2 = async (id, platform) => {
2840
+ string(id);
2841
+ number(platform);
2842
+ try {
2843
+ await disableExtension2$1(id, platform);
2844
+ await disposeExtensionRuntime(id);
2845
+ deferInvalidateExtensionsCache(id, true);
2846
+ return undefined;
2847
+ } catch (error) {
2848
+ return error;
2849
+ }
2850
+ };
2851
+
2852
+ const disableExtension = async (id, isTest) => {
2853
+ const oldState = get$5();
2854
+ return disableExtension2(id, oldState.platform);
2855
+ };
2856
+
2857
+ const disableWorkspaceExtension = async id => {
2858
+ string(id);
2859
+ await disableExtension$1(id);
2860
+ await disposeExtensionRuntime(id);
2861
+ await invalidateExtensionsCache(id, true);
2862
+ };
2863
+
2864
+ const enableExtension2 = async (id, platform) => {
2865
+ string(id);
2866
+ number(platform);
2867
+ if (platform === Remote || platform === Electron) {
2868
+ const disabledExtensionsJsonPath = await invoke$5('WebView.compatSharedProcessInvoke', 'PlatformPaths.getDisabledExtensionsJsonUri');
2869
+ const exists$1 = await exists(disabledExtensionsJsonPath);
2870
+ if (!exists$1) {
2871
+ return undefined;
2872
+ }
2873
+ const content = await readFile$1(disabledExtensionsJsonPath);
2874
+ const parsed = JSON.parse(content);
2875
+ const oldDisabled = parsed.disabledExtensions || [];
2876
+ const newDisabled = oldDisabled.filter(item => item !== id);
2877
+ const newData = {
2878
+ disabledExtensions: newDisabled
2879
+ };
2880
+ const newContent = JSON.stringify(newData, null, 2) + '\n';
2881
+ await writeFile(disabledExtensionsJsonPath, newContent);
2882
+ }
2883
+ await enableExtension2$1(id, platform);
2884
+ await invalidateExtensionsCache(id, false);
2885
+ };
2886
+
2887
+ const enableExtension = async (id, isTest) => {
2888
+ const oldState = get$5();
2889
+ return enableExtension2(id, oldState.platform);
2890
+ };
2891
+
2892
+ const enableWorkspaceExtension = async id => {
2893
+ string(id);
2894
+ await enableExtension$1(id);
2895
+ await invalidateExtensionsCache(id, false);
2896
+ };
2897
+
2898
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
2899
+
2900
+ const getExtensionId$2 = extension => {
2901
+ return extension.id || interExtensionId(extension.uri || extension.path || '');
2902
+ };
2903
+ const contributesCommand = (extension, id) => {
2904
+ return Array.isArray(extension.commands) && extension.commands.some(command => command.id === id);
2905
+ };
2906
+ const getContributingExtension = async (extensionsState, id, platform) => {
2907
+ const extensions = await getAllExtensionsWithState(extensionsState, '', platform);
2908
+ return extensions.find(extension => isExtensionIsolated(extension) && contributesCommand(extension, id));
2909
+ };
2910
+ const getRpcForCommand = async (extensionsState, id, platform) => {
2911
+ const extension = await getContributingExtension(extensionsState, id, platform);
2912
+ if (!extension) {
2913
+ return undefined;
2914
+ }
2915
+ const extensionId = getExtensionId$2(extension);
2916
+ const existingRpc = get$3(extensionId);
2917
+ if (existingRpc) {
2918
+ return existingRpc;
2919
+ }
2920
+ await activateByEvent(`onCommand:${id}`, '', platform);
2921
+ return get$3(extensionId);
2922
+ };
2923
+ const executeRendererCommand = (id, args) => {
2924
+ return invoke$5(id, ...args);
2925
+ };
2926
+ const executeCommand = async (extensionsState, id, ...args) => {
2927
+ const {
2928
+ result,
2929
+ wasFound
2930
+ } = await executeExtensionCommand(extensionsState, id, ...args);
2931
+ if (wasFound) {
2932
+ return result;
2933
+ }
2934
+ return executeRendererCommand(id, args);
2935
+ };
2936
+ const executeExtensionCommand = async (extensionsState, id, ...args) => {
2937
+ const {
2938
+ platform
2939
+ } = extensionsState;
2940
+ const rpc = await getRpcForCommand(extensionsState, id, platform);
2941
+ if (rpc) {
2942
+ const result = await rpc.invoke('ExtensionApi.executeCommand', id, ...args);
2943
+ return {
2944
+ result,
2945
+ wasFound: true
2946
+ };
2947
+ }
2948
+ return {
2949
+ result: undefined,
2950
+ wasFound: false
2951
+ };
2952
+ };
2953
+
2954
+ const getLanguageServerRootUri = async () => {
2955
+ try {
2956
+ const workspacePath = await invoke$5('Workspace.getPath');
2957
+ return typeof workspacePath === 'string' && workspacePath ? workspacePath : undefined;
2958
+ } catch {
2959
+ return undefined;
2960
+ }
2961
+ };
2962
+
2963
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
2964
+ const warn = (...args) => {
2965
+ console.warn(...args);
2966
+ };
2967
+
2968
+ const hasUriScheme = value => {
2969
+ return /^[a-z][a-z\d+.-]*:/i.test(value);
2970
+ };
2971
+ const toExtensionBaseUri = extensionPath => {
2972
+ if (hasUriScheme(extensionPath)) {
2973
+ return extensionPath.endsWith('/') ? extensionPath : `${extensionPath}/`;
2974
+ }
2975
+ if (extensionPath.startsWith('/')) {
2976
+ return `file://${extensionPath}/`;
2977
+ }
2978
+ throw new Error(`Language server extension path must be an absolute path or URI`);
2979
+ };
2980
+ const resolveLanguageServerUri = (extension, languageServerUri) => {
2981
+ if (languageServerUri.startsWith('/')) {
2982
+ return `file://${languageServerUri}`;
2983
+ }
2984
+ if (hasUriScheme(languageServerUri)) {
2985
+ return languageServerUri;
2986
+ }
2987
+ const extensionPath = extension.uri || extension.path || '';
2988
+ return new URL(languageServerUri, toExtensionBaseUri(extensionPath)).href;
2989
+ };
2990
+ const resolveLanguageServer = async (rpc, extension, languageId) => {
2991
+ const contribution = extension.languageServers?.find(item => item.languageId === languageId);
2992
+ if (!contribution) {
2993
+ return undefined;
2994
+ }
2995
+ const snapshot = await rpc.invoke('ExtensionApi.getLanguageServerRegistrySnapshot');
2996
+ const languageServer = snapshot.languageServers.find(registered => registered.id === contribution.id && registered.languageId === languageId);
2997
+ if (!languageServer) {
2998
+ throw new Error(`language server ${contribution.id || '<unknown>'} is contributed in extension.json but not registered`);
2999
+ }
3000
+ const extensionId = extension.id || extension.uri || extension.path || 'extension';
3001
+ return {
3002
+ argv: languageServer.argv,
3003
+ extensionId,
3004
+ id: `${extensionId}.${languageServer.id}`,
3005
+ uri: resolveLanguageServerUri(extension, languageServer.uri)
3006
+ };
3007
+ };
3008
+
3009
+ const sanitizeCompletionItem = item => {
3010
+ if (!item || typeof item !== 'object' || typeof item.label !== 'string') {
3011
+ return undefined;
3012
+ }
3013
+ const snippet = item.insertText || item.textEdit?.newText || item.label;
3014
+ return {
3015
+ ...item,
3016
+ flags: 0,
3017
+ kind: typeof item.kind === 'number' ? item.kind : 0,
3018
+ label: item.label,
3019
+ matches: [],
3020
+ snippet
3021
+ };
3022
+ };
3023
+ const executeLanguageServerCompletion = async (rpc, extension, textDocument, offset) => {
3024
+ if (typeof textDocument.text !== 'string' || typeof textDocument.uri !== 'string') {
3025
+ return [];
3026
+ }
3027
+ const languageServer = await resolveLanguageServer(rpc, extension, textDocument.languageId);
3028
+ if (!languageServer) {
3029
+ return [];
3030
+ }
3031
+ let result;
3032
+ try {
3033
+ const rootUri = await getLanguageServerRootUri();
3034
+ result = await invoke$4('LanguageServer.complete', {
3035
+ argv: languageServer.argv,
3036
+ extensionId: languageServer.extensionId,
3037
+ id: languageServer.id,
3038
+ offset,
3039
+ ...(rootUri && {
3040
+ rootUri
3041
+ }),
3042
+ textDocument,
3043
+ uri: languageServer.uri
3044
+ });
3045
+ } catch (error) {
3046
+ const message = error instanceof Error ? error.message : String(error);
3047
+ warn(`[Language Server] Completion failed: ${message}`);
3048
+ return [];
3049
+ }
3050
+ return result.map(sanitizeCompletionItem).filter(item => item !== undefined);
3051
+ };
3052
+
3053
+ const getExtensionId$1 = extension => {
3054
+ return extension.id || interExtensionId(extension.uri || extension.path || '');
3055
+ };
3056
+ const getAbsolutePath = (extension, assetDir, platform) => {
3057
+ return getExtensionAbsolutePath(getExtensionId$1(extension), extension.isWeb === true, extension.builtin === true, extension.path || extension.uri || '', extension.browser || '', getOrigin(), platform, assetDir);
3058
+ };
3059
+ const getRpc$1 = async (extension, assetDir, platform) => {
3060
+ const extensionId = getExtensionId$1(extension);
3061
+ const existingRpc = get$3(extensionId);
3062
+ if (existingRpc) {
3063
+ return existingRpc;
3064
+ }
3065
+ handleRpcInfos(extension, platform);
3066
+ const absolutePath = getAbsolutePath(extension, assetDir, platform);
3067
+ const contentSecurityPolicy = getContentSecurityPolicy(extension.contentSecurityPolicy, absolutePath);
3068
+ return getOrCreateIsolatedExtensionHostWorker(extensionId, absolutePath, extension.workerName || '', contentSecurityPolicy);
3069
+ };
3070
+
3071
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3072
+
3073
+ const contributesCompletionProvider = (extension, languageId) => {
3074
+ return Array.isArray(extension.completionProviders) && extension.completionProviders.some(provider => provider.languageId === languageId);
3075
+ };
3076
+ const contributesLanguageServer$3 = (extension, languageId) => {
3077
+ return Array.isArray(extension.languageServers) && extension.languageServers.some(languageServer => languageServer.languageId === languageId);
3078
+ };
3079
+ const getMatchingExtensions$6 = async (extensionsState, textDocument, assetDir, platform) => {
3080
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3081
+ return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && (contributesCompletionProvider(extension, textDocument.languageId) || contributesLanguageServer$3(extension, textDocument.languageId)));
3082
+ };
3083
+ const executeRpcCompletionProvider = async (rpc, textDocument, args) => {
3084
+ return rpc.invoke('ExtensionApi.executeCompletionProvider', textDocument, ...args);
3085
+ };
3086
+ const executeExtensionCompletionProvider = async (rpc, extension, textDocument, args) => {
3087
+ if (contributesLanguageServer$3(extension, textDocument.languageId)) {
3088
+ const offset = typeof args[0] === 'number' ? args[0] : 0;
3089
+ return executeLanguageServerCompletion(rpc, extension, textDocument, offset);
3090
+ }
3091
+ return executeRpcCompletionProvider(rpc, textDocument, args);
3092
+ };
3093
+ const executeRpcResolveCompletionItemProvider = async (rpc, textDocument, args) => {
3094
+ return rpc.invoke('ExtensionApi.executeResolveCompletionItemProvider', textDocument, ...args);
3095
+ };
3096
+ const executeCompletionProvider = async (extensionsState, textDocument, ...args) => {
3097
+ const {
3098
+ assetDir,
3099
+ platform
3100
+ } = await getRuntimeContext('', extensionsState.platform);
3101
+ const extensions = await getMatchingExtensions$6(extensionsState, textDocument, assetDir, platform);
3102
+ const rpcs = await Promise.all(extensions.map(extension => getRpc$1(extension, assetDir, platform)));
3103
+ const results = await Promise.all(rpcs.map((rpc, index) => executeExtensionCompletionProvider(rpc, extensions[index], textDocument, args)));
3104
+ return results[0] || [];
3105
+ };
3106
+ const executeResolveCompletionItemProvider = async (extensionsState, textDocument, ...args) => {
3107
+ const {
3108
+ assetDir,
3109
+ platform
3110
+ } = await getRuntimeContext('', extensionsState.platform);
3111
+ const matchingExtensions = await getMatchingExtensions$6(extensionsState, textDocument, assetDir, platform);
3112
+ const extensions = matchingExtensions.filter(extension => contributesCompletionProvider(extension, textDocument.languageId));
3113
+ const rpcs = await Promise.all(extensions.map(extension => getRpc$1(extension, assetDir, platform)));
3114
+ const results = await Promise.all(rpcs.map(rpc => executeRpcResolveCompletionItemProvider(rpc, textDocument, args)));
3115
+ return results[0];
3116
+ };
3117
+
3118
+ const sanitizeDiagnostic = diagnostic => {
3119
+ const start = diagnostic?.range?.start;
3120
+ const end = diagnostic?.range?.end;
3121
+ if (typeof diagnostic?.message !== 'string' || typeof start?.line !== 'number' || typeof start.character !== 'number' || typeof end?.line !== 'number' || typeof end.character !== 'number') {
3122
+ return undefined;
3123
+ }
3124
+ return {
3125
+ columnIndex: start.character,
3126
+ endColumnIndex: end.character,
3127
+ endRowIndex: end.line,
3128
+ message: diagnostic.message,
3129
+ rowIndex: start.line,
3130
+ ...(typeof diagnostic.source === 'string' && {
3131
+ source: diagnostic.source
3132
+ }),
3133
+ type: diagnostic.severity === 1 ? 'error' : 'warning'
3134
+ };
3135
+ };
3136
+ const executeLanguageServerDiagnostic = async (rpc, extension, textDocument) => {
3137
+ if (typeof textDocument.text !== 'string' || typeof textDocument.uri !== 'string') {
3138
+ return [];
3139
+ }
3140
+ const languageServer = await resolveLanguageServer(rpc, extension, textDocument.languageId);
3141
+ if (!languageServer) {
3142
+ return [];
3143
+ }
3144
+ const rootUri = await getLanguageServerRootUri();
3145
+ const result = await invoke$4('LanguageServer.diagnostic', {
3146
+ argv: languageServer.argv,
3147
+ extensionId: languageServer.extensionId,
3148
+ id: languageServer.id,
3149
+ ...(rootUri && {
3150
+ rootUri
3151
+ }),
3152
+ textDocument,
3153
+ uri: languageServer.uri
3154
+ });
3155
+ return result.map(sanitizeDiagnostic).filter(diagnostic => diagnostic !== undefined);
3156
+ };
3157
+
3158
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3159
+
3160
+ const contributesDiagnosticProvider = (extension, languageId) => {
3161
+ return Array.isArray(extension.diagnosticProviders) && extension.diagnosticProviders.some(provider => provider.languageId === languageId);
3162
+ };
3163
+ const contributesLanguageServer$2 = (extension, languageId) => {
3164
+ return Array.isArray(extension.languageServers) && extension.languageServers.some(languageServer => languageServer.languageId === languageId);
3165
+ };
3166
+ const getMatchingExtensions$5 = async (extensionsState, textDocument, assetDir, platform) => {
3167
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3168
+ return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && (contributesDiagnosticProvider(extension, textDocument.languageId) || contributesLanguageServer$2(extension, textDocument.languageId)));
3169
+ };
3170
+ const executeRpcDiagnosticProvider = async (rpc, textDocument, args) => {
3171
+ return rpc.invoke('ExtensionApi.executeDiagnosticProvider', textDocument, ...args);
3172
+ };
3173
+ const executeExtensionDiagnosticProvider = async (rpc, extension, textDocument, args) => {
3174
+ if (contributesLanguageServer$2(extension, textDocument.languageId)) {
3175
+ return executeLanguageServerDiagnostic(rpc, extension, textDocument);
3176
+ }
3177
+ return executeRpcDiagnosticProvider(rpc, textDocument, args);
3178
+ };
3179
+ const executeMatchingDiagnosticProvider = async (extension, textDocument, args, assetDir, platform) => {
3180
+ try {
3181
+ const rpc = await getRpc$1(extension, assetDir, platform);
3182
+ return await executeExtensionDiagnosticProvider(rpc, extension, textDocument, args);
3183
+ } catch {
3184
+ return [];
3185
+ }
3186
+ };
3187
+ const executeDiagnosticProvider = async (extensionsState, textDocument, ...args) => {
3188
+ const {
3189
+ assetDir,
3190
+ platform
3191
+ } = await getRuntimeContext('', extensionsState.platform);
3192
+ const extensions = await getMatchingExtensions$5(extensionsState, textDocument, assetDir, platform);
3193
+ const results = await Promise.all(extensions.map(extension => executeMatchingDiagnosticProvider(extension, textDocument, args, assetDir, platform)));
3194
+ return results.flat();
3195
+ };
3196
+
3197
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3198
+
3199
+ const getProviderIds$1 = extension => {
3200
+ if (!Array.isArray(extension.fileSystemProviders)) {
3201
+ return [];
3202
+ }
3203
+ return extension.fileSystemProviders.map(provider => provider.id).filter(id => typeof id === 'string');
3204
+ };
3205
+ const findExtension$1 = (extensions, providerId) => {
3206
+ return extensions.find(extension => getProviderIds$1(extension).includes(providerId));
3207
+ };
3208
+ const executeFileSystemProviderMethod = async (extensionsState, method, providerId, ...args) => {
3209
+ const {
3210
+ assetDir,
3211
+ platform
3212
+ } = await getRuntimeContext('', extensionsState.platform);
3213
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3214
+ const extension = findExtension$1(extensions.filter(candidate => !candidate.disabled && isExtensionIsolated(candidate)), providerId);
3215
+ if (!extension) {
3216
+ return {
3217
+ found: false
3218
+ };
3219
+ }
3220
+ const rpc = await getRpc$1(extension, assetDir, platform);
3221
+ const result = await rpc.invoke(method, providerId, ...args);
3222
+ return {
3223
+ found: true,
3224
+ result
3225
+ };
3226
+ };
3227
+ const executeFileSystemProviderGetPathSeparator = (extensionsState, providerId) => {
3228
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderGetPathSeparator', providerId);
3229
+ };
3230
+ const executeFileSystemProviderIsReadonly = (extensionsState, providerId) => {
3231
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderIsReadonly', providerId);
3232
+ };
3233
+ const executeFileSystemProviderMkdir = (extensionsState, providerId, uri) => {
3234
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderMkdir', providerId, uri);
3235
+ };
3236
+ const executeFileSystemProviderReadDirWithFileTypes = (extensionsState, providerId, uri) => {
3237
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderReadDirWithFileTypes', providerId, uri);
3238
+ };
3239
+ const executeFileSystemProviderReadFile = (extensionsState, providerId, uri) => {
3240
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderReadFile', providerId, uri);
3241
+ };
3242
+ const executeFileSystemProviderRemove = (extensionsState, providerId, uri) => {
3243
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderRemove', providerId, uri);
3244
+ };
3245
+ const executeFileSystemProviderRename = (extensionsState, providerId, oldUri, newUri) => {
3246
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderRename', providerId, oldUri, newUri);
3247
+ };
3248
+ const executeFileSystemProviderWriteFile = (extensionsState, providerId, uri, content) => {
3249
+ return executeFileSystemProviderMethod(extensionsState, 'ExtensionApi.executeFileSystemProviderWriteFile', providerId, uri, content);
3250
+ };
3251
+
3252
+ const getOffset$1 = (text, position) => {
3253
+ const line = position?.line;
3254
+ const character = position?.character;
3255
+ if (typeof line !== 'number' || typeof character !== 'number' || !Number.isSafeInteger(line) || !Number.isSafeInteger(character) || line < 0 || character < 0) {
3256
+ return undefined;
3257
+ }
3258
+ let lineStart = 0;
3259
+ for (let currentLine = 0; currentLine < line; currentLine++) {
3260
+ const lineBreak = text.indexOf('\n', lineStart);
3261
+ if (lineBreak === -1) {
3262
+ return undefined;
3263
+ }
3264
+ lineStart = lineBreak + 1;
3265
+ }
3266
+ const nextLineBreak = text.indexOf('\n', lineStart);
3267
+ const lineEnd = nextLineBreak === -1 ? text.length : nextLineBreak;
3268
+ const contentEnd = lineEnd > lineStart && text[lineEnd - 1] === '\r' ? lineEnd - 1 : lineEnd;
3269
+ return Math.min(lineStart + character, contentEnd);
3270
+ };
3271
+ const sanitizeTextEdit$1 = (text, edit) => {
3272
+ const startOffset = getOffset$1(text, edit?.range?.start);
3273
+ const endOffset = getOffset$1(text, edit?.range?.end);
3274
+ if (typeof edit?.newText !== 'string' || startOffset === undefined || endOffset === undefined || endOffset < startOffset) {
3275
+ return undefined;
3276
+ }
3277
+ return {
3278
+ endOffset,
3279
+ inserted: edit.newText,
3280
+ startOffset
3281
+ };
3282
+ };
3283
+ const executeLanguageServerFormatting = async (rpc, extension, textDocument) => {
3284
+ const {
3285
+ text,
3286
+ uri: documentUri
3287
+ } = textDocument;
3288
+ if (typeof text !== 'string' || typeof documentUri !== 'string') {
3289
+ return [];
3290
+ }
3291
+ const languageServer = await resolveLanguageServer(rpc, extension, textDocument.languageId);
3292
+ if (!languageServer) {
3293
+ return [];
3294
+ }
3295
+ const rootUri = await getLanguageServerRootUri();
3296
+ const result = await invoke$4('LanguageServer.format', {
3297
+ argv: languageServer.argv,
3298
+ extensionId: languageServer.extensionId,
3299
+ id: languageServer.id,
3300
+ ...(rootUri && {
3301
+ rootUri
3302
+ }),
3303
+ textDocument: {
3304
+ ...textDocument,
3305
+ text,
3306
+ uri: documentUri
3307
+ },
3308
+ uri: languageServer.uri
3309
+ });
3310
+ return result.map(edit => sanitizeTextEdit$1(text, edit)).filter(edit => edit !== undefined);
3311
+ };
3312
+
3313
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3314
+
3315
+ const contributesFormattingProvider = (extension, languageId) => {
3316
+ return Array.isArray(extension.formattingProviders) && extension.formattingProviders.some(provider => provider.languageId === languageId);
3317
+ };
3318
+ const contributesLanguageServer$1 = (extension, languageId) => {
3319
+ return Array.isArray(extension.languageServers) && extension.languageServers.some(languageServer => languageServer.languageId === languageId);
3320
+ };
3321
+ const getMatchingExtensions$4 = async (extensionsState, textDocument, assetDir, platform) => {
3322
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3323
+ return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && (contributesFormattingProvider(extension, textDocument.languageId) || contributesLanguageServer$1(extension, textDocument.languageId)));
3324
+ };
3325
+ const executeRpcFormattingProvider = async (rpc, textDocument, args) => {
3326
+ return rpc.invoke('ExtensionApi.executeFormattingProvider', textDocument, ...args);
3327
+ };
3328
+ const executeExtensionFormattingProvider = async (rpc, extension, textDocument, args) => {
3329
+ if (contributesLanguageServer$1(extension, textDocument.languageId)) {
3330
+ return executeLanguageServerFormatting(rpc, extension, textDocument);
3331
+ }
3332
+ return executeRpcFormattingProvider(rpc, textDocument, args);
3333
+ };
3334
+ const executeFormattingProvider = async (extensionsState, textDocument, ...args) => {
3335
+ const {
3336
+ assetDir,
3337
+ platform
3338
+ } = await getRuntimeContext('', extensionsState.platform);
3339
+ const extensions = await getMatchingExtensions$4(extensionsState, textDocument, assetDir, platform);
3340
+ const rpcs = await Promise.all(extensions.map(extension => getRpc$1(extension, assetDir, platform)));
3341
+ const results = await Promise.all(rpcs.map((rpc, index) => executeExtensionFormattingProvider(rpc, extensions[index], textDocument, args)));
3342
+ return results[0] || [];
3343
+ };
3344
+
3345
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3346
+
3347
+ const contributesHoverProvider = (extension, languageId) => {
3348
+ return Array.isArray(extension.hoverProviders) && extension.hoverProviders.some(provider => provider.languageId === languageId);
3349
+ };
3350
+ const getMatchingExtensions$3 = async (extensionsState, textDocument, assetDir, platform) => {
3351
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3352
+ return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && contributesHoverProvider(extension, textDocument.languageId));
3353
+ };
3354
+ const executeRpcHoverProvider = async (rpc, textDocument, args) => {
3355
+ return rpc.invoke('ExtensionApi.executeHoverProvider', textDocument, ...args);
3356
+ };
3357
+ const executeHoverProvider = async (extensionsState, textDocument, ...args) => {
3358
+ const {
3359
+ assetDir,
3360
+ platform
3361
+ } = await getRuntimeContext('', extensionsState.platform);
3362
+ const extensions = await getMatchingExtensions$3(extensionsState, textDocument, assetDir, platform);
3363
+ const rpcs = await Promise.all(extensions.map(extension => getRpc$1(extension, assetDir, platform)));
3364
+ const results = await Promise.all(rpcs.map(rpc => executeRpcHoverProvider(rpc, textDocument, args)));
3365
+ return results[0];
3366
+ };
3367
+
3368
+ const getOffset = (text, position) => {
3369
+ const line = position?.line;
3370
+ const character = position?.character;
3371
+ if (typeof line !== 'number' || typeof character !== 'number' || !Number.isSafeInteger(line) || !Number.isSafeInteger(character) || line < 0 || character < 0) {
3372
+ return undefined;
3373
+ }
3374
+ let lineStart = 0;
3375
+ for (let currentLine = 0; currentLine < line; currentLine++) {
3376
+ const lineBreak = text.indexOf('\n', lineStart);
3377
+ if (lineBreak === -1) {
3378
+ return undefined;
3379
+ }
3380
+ lineStart = lineBreak + 1;
3381
+ }
3382
+ const nextLineBreak = text.indexOf('\n', lineStart);
3383
+ const lineEnd = nextLineBreak === -1 ? text.length : nextLineBreak;
3384
+ const contentEnd = lineEnd > lineStart && text[lineEnd - 1] === '\r' ? lineEnd - 1 : lineEnd;
3385
+ return Math.min(lineStart + character, contentEnd);
3386
+ };
3387
+ const sanitizeTextEdit = (text, edit) => {
3388
+ const startOffset = getOffset(text, edit?.range?.start);
3389
+ const endOffset = getOffset(text, edit?.range?.end);
3390
+ if (typeof edit?.newText !== 'string' || startOffset === undefined || endOffset === undefined || endOffset < startOffset) {
3391
+ return undefined;
3392
+ }
3393
+ return {
3394
+ endOffset,
3395
+ inserted: edit.newText,
3396
+ startOffset
3397
+ };
3398
+ };
3399
+ const normalizeDocumentUri = uri => {
3400
+ return uri.startsWith('/') ? `file://${uri}` : uri;
3401
+ };
3402
+ const sanitizeCodeAction = (text, documentUri, action) => {
3403
+ if (!action || typeof action !== 'object' || typeof action.title !== 'string') {
3404
+ return undefined;
3405
+ }
3406
+ const changes = action.edit?.changes;
3407
+ if (!changes || typeof changes !== 'object') {
3408
+ return undefined;
3409
+ }
3410
+ const edits = changes[documentUri] || changes[normalizeDocumentUri(documentUri)];
3411
+ if (!Array.isArray(edits)) {
3412
+ return undefined;
3413
+ }
3414
+ const sanitizedEdits = edits.map(edit => sanitizeTextEdit(text, edit)).filter(edit => edit !== undefined);
3415
+ if (sanitizedEdits.length === 0) {
3416
+ return undefined;
3417
+ }
3418
+ return {
3419
+ edits: sanitizedEdits,
3420
+ name: action.title
3421
+ };
3422
+ };
3423
+ const executeLanguageServerCodeAction = async (rpc, extension, textDocument, offset) => {
3424
+ const {
3425
+ text,
3426
+ uri: documentUri
3427
+ } = textDocument;
3428
+ if (typeof text !== 'string' || typeof documentUri !== 'string') {
3429
+ return [];
3430
+ }
3431
+ const languageServer = await resolveLanguageServer(rpc, extension, textDocument.languageId);
3432
+ if (!languageServer) {
3433
+ return [];
3434
+ }
3435
+ const rootUri = await getLanguageServerRootUri();
3436
+ const result = await invoke$4('LanguageServer.codeAction', {
3437
+ argv: languageServer.argv,
3438
+ extensionId: languageServer.extensionId,
3439
+ id: languageServer.id,
3440
+ offset,
3441
+ ...(rootUri && {
3442
+ rootUri
3443
+ }),
3444
+ textDocument,
3445
+ uri: languageServer.uri
3446
+ });
3447
+ return result.map(action => sanitizeCodeAction(text, documentUri, action)).filter(action => action !== undefined);
3448
+ };
3449
+
3450
+ const isPosition = value => {
3451
+ return Boolean(value) && typeof value === 'object' && typeof value.character === 'number' && typeof value.line === 'number' && value.character >= 0 && value.line >= 0;
3452
+ };
3453
+ const isRange = value => {
3454
+ return Boolean(value) && typeof value === 'object' && isPosition(value.start) && isPosition(value.end);
3455
+ };
3456
+ const normalizeUri = uri => {
3457
+ if (uri.startsWith('/')) {
3458
+ return `file://${uri}`;
3459
+ }
3460
+ return uri;
3461
+ };
3462
+ const offsetAt = (text, position) => {
3463
+ const lines = text.split('\n');
3464
+ if (position.line >= lines.length) {
3465
+ return text.length;
3466
+ }
3467
+ let offset = 0;
3468
+ for (let index = 0; index < position.line; index++) {
3469
+ offset += lines[index].length + 1;
3470
+ }
3471
+ return offset + Math.min(position.character, lines[position.line].length);
3472
+ };
3473
+ const fromLanguageServerResult = (result, textDocument) => {
3474
+ const location = Array.isArray(result) ? result[0] : result;
3475
+ if (!location || typeof location !== 'object') {
3476
+ return undefined;
3477
+ }
3478
+ const uri = location.targetUri || location.uri;
3479
+ const range = location.targetSelectionRange || location.targetRange || location.range;
3480
+ if (typeof uri !== 'string' || !isRange(range)) {
3481
+ return undefined;
3482
+ }
3483
+ const documentUri = textDocument.uri;
3484
+ const isSameDocument = typeof documentUri === 'string' && normalizeUri(uri) === normalizeUri(documentUri);
3485
+ const text = typeof textDocument.text === 'string' ? textDocument.text : '';
3486
+ return {
3487
+ endColumnIndex: range.end.character,
3488
+ endOffset: isSameDocument ? offsetAt(text, range.end) : 0,
3489
+ endRowIndex: range.end.line,
3490
+ startColumnIndex: range.start.character,
3491
+ startOffset: isSameDocument ? offsetAt(text, range.start) : 0,
3492
+ startRowIndex: range.start.line,
3493
+ uri: isSameDocument && typeof documentUri === 'string' ? documentUri : uri
3494
+ };
3495
+ };
3496
+ const executeLanguageServerDefinition = async (rpc, extension, textDocument, offset) => {
3497
+ if (typeof textDocument.text !== 'string' || typeof textDocument.uri !== 'string') {
3498
+ return undefined;
3499
+ }
3500
+ const languageServer = await resolveLanguageServer(rpc, extension, textDocument.languageId);
3501
+ if (!languageServer) {
3502
+ return undefined;
3503
+ }
3504
+ const rootUri = await getLanguageServerRootUri();
3505
+ const result = await invoke$4('LanguageServer.definition', {
3506
+ argv: languageServer.argv,
3507
+ extensionId: languageServer.extensionId,
3508
+ id: languageServer.id,
3509
+ offset,
3510
+ ...(rootUri && {
3511
+ rootUri
3512
+ }),
3513
+ textDocument,
3514
+ uri: languageServer.uri
3515
+ });
3516
+ return fromLanguageServerResult(result, textDocument);
3517
+ };
3518
+
3519
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3520
+
3521
+ const activationEventByKind = {
3522
+ 'brace completion': 'onBraceCompletion',
3523
+ 'closing tag': 'onClosingTag',
3524
+ definition: 'onDefinition',
3525
+ implementation: 'onImplementation',
3526
+ reference: 'onReferences',
3527
+ rename: 'onRename',
3528
+ 'tab completion': 'onTabCompletion',
3529
+ 'type definition': 'onTypeDefinition'
3530
+ };
3531
+ const contributesCodeActionProvider = (extension, languageId) => {
3532
+ const hasCodeActionActivation = extension.activation?.includes(`onCodeAction:${languageId}`);
3533
+ const hasLegacyCodeActions = Array.isArray(extension.codeActions) && extension.activation?.includes(`onLanguage:${languageId}`);
3534
+ return Boolean(hasCodeActionActivation || hasLegacyCodeActions);
3535
+ };
3536
+ const contributesLanguageServer = (extension, languageId) => {
3537
+ return Boolean(extension.languageServers?.some(languageServer => languageServer.languageId === languageId));
3538
+ };
3539
+ const contributesLanguageProvider = (extension, kind, languageId) => {
3540
+ if (kind === 'code action') {
3541
+ return contributesCodeActionProvider(extension, languageId) || contributesLanguageServer(extension, languageId);
3542
+ }
3543
+ if (kind === 'definition' && contributesLanguageServer(extension, languageId)) {
3544
+ return true;
3545
+ }
3546
+ const activationEvent = activationEventByKind[kind] || 'onLanguage';
3547
+ return Array.isArray(extension.activation) && extension.activation.includes(`${activationEvent}:${languageId}`);
3548
+ };
3549
+ const getMatchingExtensions$2 = async (extensionsState, kind, textDocument, assetDir, platform) => {
3550
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3551
+ return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && contributesLanguageProvider(extension, kind, textDocument.languageId));
3552
+ };
3553
+ const executeRpcLanguageProvider = async (rpc, kind, methodName, textDocument, args) => {
3554
+ return rpc.invoke('ExtensionApi.executeLanguageProvider', kind, methodName, textDocument, ...args);
3555
+ };
3556
+ const contributesExplicitLanguageProvider = (extension, kind, languageId) => {
3557
+ if (kind === 'code action') {
3558
+ return contributesCodeActionProvider(extension, languageId);
3559
+ }
3560
+ const activationEvent = activationEventByKind[kind] || 'onLanguage';
3561
+ return Array.isArray(extension.activation) && extension.activation.includes(`${activationEvent}:${languageId}`);
3562
+ };
3563
+ const executeExtensionLanguageProvider = async (rpc, extension, kind, methodName, textDocument, args) => {
3564
+ if (kind === 'code action' && !contributesExplicitLanguageProvider(extension, kind, textDocument.languageId)) {
3565
+ const offset = typeof args[0] === 'number' ? args[0] : 0;
3566
+ return executeLanguageServerCodeAction(rpc, extension, textDocument, offset);
3567
+ }
3568
+ if (kind === 'definition' && !contributesExplicitLanguageProvider(extension, kind, textDocument.languageId)) {
3569
+ const offset = typeof args[0] === 'number' ? args[0] : 0;
3570
+ return executeLanguageServerDefinition(rpc, extension, textDocument, offset);
3571
+ }
3572
+ return executeRpcLanguageProvider(rpc, kind, methodName, textDocument, args);
3573
+ };
3574
+ const executeLanguageProvider = async (extensionsState, kind, methodName, textDocument, ...args) => {
3575
+ const {
3576
+ assetDir,
3577
+ platform
3578
+ } = await getRuntimeContext('', extensionsState.platform);
3579
+ const extensions = await getMatchingExtensions$2(extensionsState, kind, textDocument, assetDir, platform);
3580
+ if (extensions.length === 0) {
3581
+ return {
3582
+ found: false
3583
+ };
3584
+ }
3585
+ const extension = extensions[0];
3586
+ const rpc = await getRpc$1(extension, assetDir, platform);
3587
+ const result = await executeExtensionLanguageProvider(rpc, extension, kind, methodName, textDocument, args);
3588
+ return {
3589
+ found: true,
3590
+ result
3591
+ };
3592
+ };
3593
+ const executeCodeActionProviders = async (extensionsState, textDocument, offset) => {
3594
+ const {
3595
+ assetDir,
3596
+ platform
3597
+ } = await getRuntimeContext('', extensionsState.platform);
3598
+ const extensions = await getMatchingExtensions$2(extensionsState, 'code action', textDocument, assetDir, platform);
3599
+ const rpcs = await Promise.all(extensions.map(extension => getRpc$1(extension, assetDir, platform)));
3600
+ const results = await Promise.all(rpcs.map((rpc, index) => executeExtensionLanguageProvider(rpc, extensions[index], 'code action', 'provideCodeActions', textDocument, [offset])));
3601
+ const actions = [];
3602
+ for (const result of results) {
3603
+ if (!Array.isArray(result)) {
3604
+ throw new TypeError('Code action provider result must be an array');
3605
+ }
3606
+ actions.push(...result);
3607
+ }
3608
+ return actions;
3609
+ };
3610
+ const executeOrganizeImportsProvider = async (extensionsState, textDocument) => {
3611
+ const {
3612
+ assetDir,
3613
+ platform
3614
+ } = await getRuntimeContext('', extensionsState.platform);
3615
+ const extensions = await getMatchingExtensions$2(extensionsState, 'code action', textDocument, assetDir, platform);
3616
+ if (extensions.length === 0) {
3617
+ return {
3618
+ found: false
3619
+ };
3620
+ }
3621
+ const rpc = await getRpc$1(extensions[0], assetDir, platform);
3622
+ const result = await rpc.invoke('ExtensionApi.executeOrganizeImportsProvider', textDocument);
3623
+ return {
3624
+ found: true,
3625
+ result
3626
+ };
3627
+ };
3628
+
3629
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3630
+
3631
+ const matchesEvent = (extension, event) => {
3632
+ return !extension.disabled && isExtensionIsolated(extension) && Array.isArray(extension.activation) && extension.activation.includes(event);
3633
+ };
3634
+ const executeProvidersByEvent = async (extensionsState, event, method, ...params) => {
3635
+ const {
3636
+ assetDir,
3637
+ platform
3638
+ } = await getRuntimeContext('', extensionsState.platform);
3639
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3640
+ const matchingExtensions = extensions.filter(extension => matchesEvent(extension, event));
3641
+ const rpcs = await Promise.all(matchingExtensions.map(extension => getRpc$1(extension, assetDir, platform)));
3642
+ return Promise.all(rpcs.map(rpc => rpc.invoke(method, ...params)));
3643
+ };
3644
+
3645
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3646
+
3647
+ const contributesSignatureHelpProvider = (extension, languageId) => {
3648
+ return Array.isArray(extension.signatureHelpProviders) && extension.signatureHelpProviders.some(provider => provider.languageId === languageId);
3649
+ };
3650
+ const getMatchingExtensions$1 = async (extensionsState, textDocument, assetDir, platform) => {
3651
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3652
+ return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && contributesSignatureHelpProvider(extension, textDocument.languageId));
3653
+ };
3654
+ const executeRpcSignatureHelpProvider = async (rpc, textDocument, args) => {
3655
+ return rpc.invoke('ExtensionApi.executeSignatureHelpProvider', textDocument, ...args);
3656
+ };
3657
+ const executeSignatureHelpProvider = async (extensionsState, textDocument, ...args) => {
3658
+ const {
3659
+ assetDir,
3660
+ platform
3661
+ } = await getRuntimeContext('', extensionsState.platform);
3662
+ const extensions = await getMatchingExtensions$1(extensionsState, textDocument, assetDir, platform);
3663
+ const rpcs = await Promise.all(extensions.map(extension => getRpc$1(extension, assetDir, platform)));
3664
+ const results = await Promise.all(rpcs.map(rpc => executeRpcSignatureHelpProvider(rpc, textDocument, args)));
3665
+ return results[0];
3666
+ };
3667
+
3668
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3669
+
3670
+ const getProviderIds = extension => {
3671
+ if (!Array.isArray(extension.sourceControlProviders)) {
3672
+ return [];
3673
+ }
3674
+ return extension.sourceControlProviders.map(provider => provider.id).filter(id => typeof id === 'string');
3675
+ };
3676
+ const getMatchingExtensions = async (extensionsState, assetDir, platform) => {
3677
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3678
+ return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && getProviderIds(extension).length > 0);
3679
+ };
3680
+ const findExtension = (extensions, providerId) => {
3681
+ return extensions.find(extension => getProviderIds(extension).includes(providerId));
3682
+ };
3683
+ const isProviderActive = async (rpc, providerId, scheme, root) => {
3684
+ return rpc.invoke('ExtensionApi.executeSourceControlIsActive', providerId, scheme, root);
3685
+ };
3686
+ const getEnabledSourceControlProviderIds = async (extensionsState, scheme, root) => {
3687
+ const {
3688
+ assetDir,
3689
+ platform
3690
+ } = await getRuntimeContext('', extensionsState.platform);
3691
+ const extensions = await getMatchingExtensions(extensionsState, assetDir, platform);
3692
+ const enabledProviderIds = [];
3693
+ for (const extension of extensions) {
3694
+ const rpc = await getRpc$1(extension, assetDir, platform);
3695
+ for (const providerId of getProviderIds(extension)) {
3696
+ if (await isProviderActive(rpc, providerId, scheme, root)) {
3697
+ enabledProviderIds.push(providerId);
3698
+ }
3699
+ }
3700
+ }
3701
+ return enabledProviderIds;
3702
+ };
3703
+ const executeSourceControlProvider = async (extensionsState, providerId, methodName, ...args) => {
3704
+ const {
3705
+ assetDir,
3706
+ platform
3707
+ } = await getRuntimeContext('', extensionsState.platform);
3708
+ const extensions = await getMatchingExtensions(extensionsState, assetDir, platform);
3709
+ const extension = findExtension(extensions, providerId);
3710
+ if (!extension) {
3711
+ return {
3712
+ found: false
3713
+ };
3714
+ }
3715
+ const rpc = await getRpc$1(extension, assetDir, platform);
3716
+ const result = await rpc.invoke(`ExtensionApi.${methodName}`, providerId, ...args);
3717
+ return {
3718
+ found: true,
3719
+ result
3720
+ };
3721
+ };
3722
+ const executeRequiredSourceControlProvider = async (extensionsState, providerId, methodName, ...args) => {
3723
+ const {
3724
+ found,
3725
+ result
3726
+ } = await executeSourceControlProvider(extensionsState, providerId, methodName, ...args);
3727
+ if (!found) {
3728
+ throw new Error('No source control provider found');
3729
+ }
3730
+ return result;
3731
+ };
3732
+
3733
+ const readFile = uri => {
3734
+ return readFile$1(uri);
3735
+ };
3736
+
3737
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3738
+
3739
+ const protocol = 'extension-output://';
3740
+ const hasOutputChannels = extension => {
3741
+ return !extension.disabled && isExtensionIsolated(extension) && Array.isArray(extension.outputChannels) && extension.outputChannels.length > 0;
3742
+ };
3743
+ const getOutputChannelUri = (extensionId, outputChannelId) => {
3744
+ return `${protocol}${encodeURIComponent(extensionId)}/${encodeURIComponent(outputChannelId)}`;
3745
+ };
3746
+ const getRegisteredOutputChannelIds = snapshot => {
3747
+ if (!snapshot || !Array.isArray(snapshot.outputChannels)) {
3748
+ return new Set();
3749
+ }
3750
+ return new Set(snapshot.outputChannels.map(outputChannel => outputChannel.id).filter(id => typeof id === 'string'));
3751
+ };
3752
+ const getExtensionOutputChannelProviders = async (extension, assetDir, platform) => {
3753
+ const extensionId = getExtensionId$1(extension);
3754
+ const rpc = await getRpc$1(extension, assetDir, platform);
3755
+ const snapshot = await rpc.invoke('ExtensionApi.getOutputChannelRegistrySnapshot');
3756
+ const registeredIds = getRegisteredOutputChannelIds(snapshot);
3757
+ const outputChannels = extension.outputChannels || [];
3758
+ return outputChannels.filter(outputChannel => typeof outputChannel.id === 'string' && typeof outputChannel.label === 'string' && registeredIds.has(outputChannel.id)).map(outputChannel => ({
3759
+ id: outputChannel.id,
3760
+ label: outputChannel.label,
3761
+ uri: getOutputChannelUri(extensionId, outputChannel.id)
3762
+ }));
3763
+ };
3764
+ const getOutputChannelProviders = async extensionsState => {
3765
+ const {
3766
+ assetDir,
3767
+ platform
3768
+ } = await getRuntimeContext('', extensionsState.platform);
3769
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3770
+ const outputExtensions = extensions.filter(hasOutputChannels);
3771
+ const providers = await Promise.all(outputExtensions.map(extension => getExtensionOutputChannelProviders(extension, assetDir, platform)));
3772
+ return providers.flat();
3773
+ };
3774
+ const parseOutputChannelUri = uri => {
3775
+ if (!uri.startsWith(protocol)) {
3776
+ throw new Error(`Invalid extension output uri ${uri}`);
3777
+ }
3778
+ const value = uri.slice(protocol.length);
3779
+ const separatorIndex = value.indexOf('/');
3780
+ if (separatorIndex === -1) {
3781
+ throw new Error(`Invalid extension output uri ${uri}`);
3782
+ }
3783
+ const extensionId = decodeURIComponent(value.slice(0, separatorIndex));
3784
+ const outputChannelId = decodeURIComponent(value.slice(separatorIndex + 1));
3785
+ if (!extensionId || !outputChannelId) {
3786
+ throw new Error(`Invalid extension output uri ${uri}`);
3787
+ }
3788
+ return [extensionId, outputChannelId];
3789
+ };
3790
+ const resolveOutputChannel = async (extensionsState, uri) => {
3791
+ const [extensionId, outputChannelId] = parseOutputChannelUri(uri);
3792
+ const {
3793
+ assetDir,
3794
+ platform
3795
+ } = await getRuntimeContext('', extensionsState.platform);
3796
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3797
+ const extension = extensions.find(candidate => getExtensionId$1(candidate) === extensionId && hasOutputChannels(candidate));
3798
+ const isContributed = extension?.outputChannels?.some(outputChannel => outputChannel.id === outputChannelId);
3799
+ if (!extension || !isContributed) {
3800
+ throw new Error(`Output channel ${outputChannelId} is not contributed by extension ${extensionId}`);
3801
+ }
3802
+ const rpc = await getRpc$1(extension, assetDir, platform);
3803
+ return {
3804
+ extensionId,
3805
+ outputChannelId,
3806
+ rpc
3807
+ };
3808
+ };
3809
+ const clearOutputChannel = async (extensionsState, uri) => {
3810
+ const {
3811
+ extensionId,
3812
+ outputChannelId,
3813
+ rpc
3814
+ } = await resolveOutputChannel(extensionsState, uri);
3815
+ const didClear = await rpc.invoke('ExtensionApi.clearOutputChannel', outputChannelId);
3816
+ if (didClear !== true) {
3817
+ throw new TypeError(`Output channel ${outputChannelId} is not registered by extension ${extensionId}`);
3818
+ }
3819
+ };
3820
+ const readOutputChannel = async (extensionsState, uri) => {
3821
+ const {
3822
+ extensionId,
3823
+ outputChannelId,
3824
+ rpc
3825
+ } = await resolveOutputChannel(extensionsState, uri);
3826
+ const logs = await rpc.invoke('ExtensionApi.getOutputChannelLogs', outputChannelId);
3827
+ if (typeof logs !== 'string') {
3828
+ throw new TypeError(`Output channel ${outputChannelId} is not registered by extension ${extensionId}`);
3829
+ }
3830
+ return logs;
3831
+ };
3832
+
3833
+ const instances = Object.create(null);
3834
+ const set$1 = (uid, instance) => {
3835
+ instances[uid] = instance;
3836
+ };
3837
+ const get$1 = uid => {
3838
+ return instances[uid];
3839
+ };
3840
+ const remove = uid => {
3841
+ delete instances[uid];
3842
+ };
3843
+
3844
+ const serializeError = error => {
3845
+ if (error instanceof Error) {
3846
+ return {
3847
+ message: error.message,
3848
+ name: error.name,
3849
+ ...(error.stack && {
3850
+ stack: error.stack
3851
+ })
3852
+ };
3853
+ }
3854
+ return {
3855
+ message: String(error),
3856
+ name: 'Error'
3857
+ };
3858
+ };
3859
+ const isCommandNotFoundError = (error, command) => {
3860
+ return error instanceof Error && error.name === 'CommandNotFoundError' && error.message.includes(command);
3861
+ };
3862
+ const hasView = (extension, viewId) => {
3863
+ return Array.isArray(extension.views) && extension.views.some(view => view.id === viewId);
3864
+ };
3865
+ const getExtensionForView = async (viewId, assetDir, platform) => {
3866
+ const extensions = await getAllExtensions(assetDir, platform);
3867
+ const extension = extensions.find(extension => isExtensionIsolated(extension) && hasView(extension, viewId));
3868
+ if (!extension) {
3869
+ throw new Error(`view ${viewId} not found`);
3870
+ }
3871
+ return extension;
3872
+ };
3873
+ const getRpcForView = async (viewId, assetDir, platform) => {
3874
+ const {
3875
+ assetDir: resolvedAssetDir,
3876
+ platform: resolvedPlatform
3877
+ } = await getRuntimeContext(assetDir, platform);
3878
+ const extension = await getExtensionForView(viewId, resolvedAssetDir, resolvedPlatform);
3879
+ const existingRpc = get$3(getExtensionId$1(extension));
3880
+ if (existingRpc) {
3881
+ return existingRpc;
3882
+ }
3883
+ const activationResult = await activateByEvent(`onView:${viewId}`, resolvedAssetDir, resolvedPlatform);
3884
+ if (activationResult.error) {
3885
+ throw activationResult.error;
3886
+ }
3887
+ return getRpc$1(extension, resolvedAssetDir, resolvedPlatform);
3888
+ };
3889
+ const getRpcForInstance = async (viewId, uid, assetDir, platform) => {
3890
+ const instance = get$1(uid);
3891
+ if (instance) {
3892
+ if (instance.status === 'error') {
3893
+ return undefined;
3894
+ }
3895
+ return instance.rpc;
3896
+ }
3897
+ return getRpcForView(viewId, assetDir, platform);
3898
+ };
3899
+ const getViewEventListeners = async (rpc, viewId) => {
3900
+ const snapshot = await rpc.invoke('ExtensionApi.getViewRegistrySnapshot');
3901
+ if (!Array.isArray(snapshot?.views)) {
3902
+ return undefined;
3903
+ }
3904
+ const view = snapshot.views.find(view => view?.id === viewId);
3905
+ return Array.isArray(view?.eventListeners) ? view.eventListeners : undefined;
3906
+ };
3907
+ const createViewInstance = async (viewId, uid, context, assetDir, platform) => {
3908
+ try {
3909
+ const rpc = await getRpcForView(viewId, assetDir, platform);
3910
+ const eventListeners = await getViewEventListeners(rpc, viewId);
3911
+ const result = await rpc.invoke('ExtensionApi.createViewInstance', viewId, uid, context);
3912
+ set$1(uid, {
3913
+ rpc,
3914
+ status: 'ready',
3915
+ viewId
3916
+ });
3917
+ return {
3918
+ ...(eventListeners && {
3919
+ eventListeners
3920
+ }),
3921
+ ok: true,
3922
+ result
3923
+ };
3924
+ } catch (error) {
3925
+ const serializedError = serializeError(error);
3926
+ set$1(uid, {
3927
+ error: serializedError,
3928
+ status: 'error',
3929
+ viewId
3930
+ });
3931
+ return {
3932
+ error: serializedError,
3933
+ ok: false
3934
+ };
3935
+ }
3936
+ };
3937
+ const dispatchViewEvent = async (viewId, uid, event, assetDir, platform) => {
3938
+ const rpc = await getRpcForInstance(viewId, uid, assetDir, platform);
3939
+ if (!rpc) {
3940
+ return undefined;
3941
+ }
3942
+ return rpc.invoke('ExtensionApi.dispatchViewEvent', uid, event);
3943
+ };
3944
+ const getViewMenuEntries = async (viewId, uid, menuId, assetDir, platform) => {
3945
+ const instance = get$1(uid);
3946
+ if (!instance || instance.status === 'error') {
3947
+ return [];
3948
+ }
3949
+ return instance.rpc.invoke('ExtensionApi.getViewMenuEntries', uid, menuId);
3950
+ };
3951
+ const getViewActions = async (viewId, uid, assetDir, platform) => {
3952
+ const instance = get$1(uid);
3953
+ if (!instance || instance.status === 'error') {
3954
+ return [];
3955
+ }
3956
+ return instance.rpc.invoke('ExtensionApi.getViewActions', uid);
3957
+ };
3958
+ const getViewActionsDom = async (viewId, uid, assetDir, platform) => {
3959
+ const instance = get$1(uid);
3960
+ if (!instance || instance.status === 'error') {
3961
+ return undefined;
3962
+ }
3963
+ try {
3964
+ return await instance.rpc.invoke('ExtensionApi.getViewActionsDom', uid);
3965
+ } catch (error) {
3966
+ if (isCommandNotFoundError(error, 'ExtensionApi.getViewActionsDom')) {
3967
+ return undefined;
3968
+ }
3969
+ throw error;
3970
+ }
3971
+ };
3972
+ const setViewInstanceActive = async (viewId, uid, active, assetDir, platform) => {
3973
+ const instance = get$1(uid);
3974
+ if (!instance || instance.status === 'error') {
3975
+ return;
3976
+ }
3977
+ try {
3978
+ await instance.rpc.invoke('ExtensionApi.setViewInstanceActive', uid, active);
3979
+ } catch (error) {
3980
+ if (isCommandNotFoundError(error, 'ExtensionApi.setViewInstanceActive')) {
3981
+ return;
3982
+ }
3983
+ throw error;
3984
+ }
3985
+ };
3986
+ const requestViewRerender = async uid => {
3987
+ await invoke$5('Viewlet.executeViewletCommand', uid, 'rerender');
3988
+ };
3989
+ const showViewContextMenu = async (uid, viewId, menuId, x, y) => {
3990
+ await invoke$5('ExtensionManagement.showViewContextMenu', uid, viewId, menuId, x, y);
3991
+ };
3992
+ const renderViewInstance = async (viewId, uid, assetDir, platform) => {
3993
+ const instance = get$1(uid);
3994
+ if (!instance || instance.status === 'error') {
3995
+ return undefined;
3996
+ }
3997
+ return instance.rpc.invoke('ExtensionApi.renderViewInstance', uid);
3998
+ };
3999
+ const disposeViewInstance = async (viewId, uid, assetDir, platform) => {
4000
+ const rpc = await getRpcForInstance(viewId, uid, assetDir, platform);
4001
+ if (!rpc) {
4002
+ remove(uid);
4003
+ return;
4004
+ }
4005
+ await rpc.invoke('ExtensionApi.disposeViewInstance', uid);
4006
+ remove(uid);
4007
+ };
4008
+ const saveViewInstanceState = async (viewId, uid, assetDir, platform) => {
4009
+ const rpc = await getRpcForInstance(viewId, uid, assetDir, platform);
4010
+ if (!rpc) {
4011
+ return undefined;
4012
+ }
4013
+ return rpc.invoke('ExtensionApi.saveViewInstanceState', uid);
4014
+ };
4015
+
4016
+ const getAccessToken = (options = {}) => {
4017
+ return invoke$8('Auth.getAccessToken', options);
4018
+ };
4019
+
4020
+ const transparent = (color, factor) => {
4021
+ return color;
4022
+ };
4023
+ const toColorRule = ([key, value]) => {
4024
+ return ` --${key}: ${value};`;
4025
+ };
4026
+ const toTokenColorRule = tokenColor => {
4027
+ return `.${tokenColor.name} { color: ${tokenColor.foreground} }`;
4028
+ };
4029
+ const addFallbackColors = colors => {
4030
+ const newColors = {
4031
+ ...colors
4032
+ };
4033
+ if (!newColors.ActivityBarInactiveForeground) {
4034
+ // TODO don't assign, avoid mutation
4035
+ newColors.ActivityBarInactiveForeground = transparent(newColors.ActivityBarForeground);
4036
+ }
4037
+ newColors.CssVariableName ||= colors.VariableName;
4038
+ return newColors;
4039
+ };
4040
+ const createColorThemeFromJson = (colorThemeId, colorThemeJson) => {
4041
+ if (!colorThemeJson) {
4042
+ warn(`color theme json for "${colorThemeId}" is empty: "${colorThemeJson}"`);
4043
+ return '';
4044
+ }
4045
+ if (typeof colorThemeJson !== 'object') {
4046
+ warn(`color theme json for "${colorThemeId}" cannot be converted to css: "${colorThemeJson}"`);
4047
+ return '';
4048
+ }
4049
+ if (Array.isArray(colorThemeJson)) {
4050
+ warn(`color theme json for "${colorThemeId}" cannot be converted to css, it must be of type object but was of type array`);
4051
+ return '';
4052
+ }
4053
+ const {
4054
+ colors
4055
+ } = colorThemeJson;
4056
+ if (!colors) {
4057
+ return '';
4058
+ }
4059
+ const newColors = addFallbackColors(colors);
4060
+ const colorRules = Object.entries(newColors).map(toColorRule);
4061
+ const tokenColors = colorThemeJson.tokenColors || [];
4062
+ const tokenColorRules = tokenColors.map(toTokenColorRule);
4063
+ const extraRules = [];
4064
+ if (colors.ContrastBorder) {
4065
+ extraRules.push(`#ActivityBar, #SideBar {
4066
+ border-left: 1px solid var(--ContrastBorder);
4067
+ }`, `#Panel {
4068
+ border-top: 1px solid var(--ContrastBorder);
4069
+ }`, `#StatusBar {
4070
+ border-top: 1px solid var(--ContrastBorder);
4071
+ }`, `.ActivityBarItemBadge {
4072
+ border: 1px solid var(--ContrastBorder);
4073
+ }`, `#QuickPick {
4074
+ border: 1px solid var(--ContrastBorder);
4075
+ }`);
4076
+ }
4077
+ const colorThemeCss = `:root {\n${colorRules.join(NewLine)}\n}\n\n${tokenColorRules.join(NewLine)}\n\n${extraRules.join(NewLine)}`;
4078
+ return colorThemeCss;
4079
+ };
4080
+
4081
+ // for (let i = 0; i < 10000; i++) {
4082
+ // createColorThemeFromJson({
4083
+ // type: 'dark',
4084
+ // colors: {
4085
+ // ActivityBarBackground: 'rgb(40, 46, 47)',
4086
+ // ActivityBarForeground: '#878f8c',
4087
+ // ActivityBarActiveBackground: '#1f2727',
4088
+
4089
+ // EditorBackGround: '#1e2324',
4090
+ // EditorScrollBarBackground: 'rgba(57, 71, 71, 0.6)',
4091
+ // EditorCursorBackground: '#a8df5a',
4092
+
4093
+ // ListActiveSelectionBackground: '#515f59',
4094
+ // ListActiveSelectionForeground: '#ffffff',
4095
+ // ListHoverBackground: '#405c5033',
4096
+ // ListHoverForeground: '#e0e0e0',
4097
+ // ListInactiveSelectionBackground: '#3b474280',
4098
+
4099
+ // MainBackground: '#1e2324',
4100
+
4101
+ // PanelBackground: '#1b2020',
4102
+ // PanelBorderTopColor: 'rgba(128, 128, 128, 0.35)',
4103
+
4104
+ // SideBarBackground: '#1b2020',
4105
+
4106
+ // StatusBarBackground: 'rgb(40, 46, 47)',
4107
+ // StatusBarBorderTopColor: '#222222',
4108
+
4109
+ // TabActiveBackground: '#24292a',
4110
+ // TabInactiveBackground: '#282e2f',
4111
+
4112
+ // TitleBarBackground: 'rgb(40, 46, 47)',
4113
+ // TitleBarBorderBottomColor: '#222',
4114
+ // TitleBarColor: '#cccccc',
4115
+ // TitleBarColorInactive: 'rgba(204, 204, 204, 0.6)',
4116
+ // },
4117
+ // }) //?.
4118
+ // }
4119
+
4120
+ const get = colorThemeId => {
4121
+ return '';
4122
+ };
4123
+ const set = (colorThemeId, data) => {
4124
+ // noop
4125
+ };
4126
+ const cache = {
4127
+ get,
4128
+ set
4129
+ };
4130
+
4131
+ // TODO make storage configurable via settings as localstorage or indexeddb
4132
+ // also allow disabling caching via settings
4133
+ // then measure which option could be fastest
4134
+
4135
+ const getCacheFn = config => {
4136
+ switch (config) {
4137
+ default:
4138
+ return cache;
4139
+ }
4140
+ };
4141
+ const getColorThemeCssCached = async (colorThemeId, platform, getData) => {
4142
+ const config = '';
4143
+ const module = getCacheFn(config);
4144
+ const cachedData = module.get(colorThemeId);
4145
+ if (cachedData) {
4146
+ return cachedData;
4147
+ }
4148
+ const newData = await getData(colorThemeId, platform);
4149
+ module.set(colorThemeId, newData);
4150
+ return newData;
4151
+ };
4152
+
4153
+ const readJson = url => {
4154
+ return invoke$5('FileSystem.readJson', url);
4155
+ };
4156
+
4157
+ const join = (pathSeparator, ...parts) => {
4158
+ return parts.join(pathSeparator);
4159
+ };
4160
+
4161
+ const getColorThemeUriFromExtension = (extension, colorThemeId) => {
4162
+ if (!extension.colorThemes) {
4163
+ return '';
4164
+ }
4165
+ for (const colorTheme of extension.colorThemes) {
4166
+ if (colorTheme.id === colorThemeId) {
4167
+ return join('/', extension.uri, colorTheme.path);
4168
+ }
4169
+ }
4170
+ return '';
4171
+ };
4172
+ const getColorThemeUri = (extensions, colorThemeId) => {
4173
+ for (const extension of extensions) {
4174
+ const absolutePath = getColorThemeUriFromExtension(extension, colorThemeId);
4175
+ if (absolutePath) {
4176
+ return absolutePath;
4177
+ }
4178
+ }
4179
+ return '';
4180
+ };
4181
+
4182
+ const getColorThemeJson$2 = async (colorThemeId, assetDir, platform) => {
4183
+ const extensions = await getAllExtensions(assetDir, platform);
4184
+ const colorThemeUri = getColorThemeUri(extensions, colorThemeId);
4185
+ if (!colorThemeUri) {
4186
+ return {};
4187
+ }
4188
+ const json = await readJson(colorThemeUri);
4189
+ return json;
4190
+ };
4191
+
4192
+ const getColorThemeUrlWeb = (assetDir, colorThemeId) => {
4193
+ return `${assetDir}/extensions/builtin.theme-${colorThemeId}/color-theme.json`;
4194
+ };
4195
+ const getColorThemeJson$1 = (colorThemeId, assetDir) => {
4196
+ const url = getColorThemeUrlWeb(assetDir, colorThemeId);
4197
+ // TODO handle error ?
4198
+ return getJson(url);
4199
+ };
4200
+
4201
+ const getColorThemeJson = (colorThemeId, platform, assetDir) => {
4202
+ if (platform === Web) {
4203
+ return getColorThemeJson$1(colorThemeId, assetDir);
4204
+ }
4205
+ return getColorThemeJson$2(colorThemeId, assetDir, platform);
4206
+ };
4207
+
4208
+ const getColorThemeCssFromJson = async (colorThemeId, colorThemeJson) => {
4209
+ const colorThemeCss = createColorThemeFromJson(/* colorThemeId */colorThemeId, /* colorThemeJson */colorThemeJson);
4210
+ return colorThemeCss;
4211
+ // TODO generate color theme from jsonc
4212
+ };
4213
+ const getColorThemeCssNew = async (colorThemeId, platform, assetDir) => {
4214
+ const colorThemeJson = await getColorThemeJson(colorThemeId, platform, assetDir);
4215
+ const colorThemeCss = await getColorThemeCssFromJson(colorThemeId, colorThemeJson);
4216
+ return colorThemeCss;
4217
+ };
4218
+ const getColorThemeCss = (colorThemeId, platform) => {
4219
+ return getColorThemeCssCached(colorThemeId, platform, getColorThemeCssNew);
4220
+ };
4221
+
4222
+ const getExtensionColorThemeNames = extension => {
4223
+ if (extension.disabled) {
4224
+ return [];
4225
+ }
4226
+ return extension.colorThemes || [];
4227
+ };
4228
+ const getColorThemeId = colorTheme => {
4229
+ return colorTheme.id;
4230
+ };
4231
+
4232
+ // TODO should send names to renderer worker or names with ids?
4233
+ const getColorThemeNamesFromExtensions = async extensions => {
4234
+ const colorThemes = extensions.flatMap(getExtensionColorThemeNames);
4235
+ const colorThemeNames = colorThemes.map(getColorThemeId);
4236
+ return colorThemeNames;
4237
+ };
4238
+
4239
+ const getColorThemeNames = async (assetDir, platform) => {
4240
+ string(assetDir);
4241
+ number(platform);
4242
+ const extensions = await getAllExtensions(assetDir, platform);
4243
+ const colorThemeNames = getColorThemeNamesFromExtensions(extensions);
4244
+ return colorThemeNames;
4245
+ };
4246
+
4247
+ const getDynamicWebExtensions = () => {
4248
+ return get$5().webExtensions;
4249
+ };
4250
+
4251
+ const getExtension = async (id, assetDir, platform) => {
4252
+ const allExtensions = await getAllExtensions(assetDir, platform);
4253
+ for (const extension of allExtensions) {
4254
+ if (extension.id === id) {
4255
+ return extension;
4256
+ }
4257
+ }
4258
+ return undefined;
4259
+ };
4260
+
4261
+ const getExtensionId = extension => {
4262
+ return extension.id || interExtensionId(extension.uri || extension.path || '');
4263
+ };
4264
+ const toKeyBinding = (extension, keybinding) => {
4265
+ if (typeof keybinding.key !== 'string' || typeof keybinding.command !== 'string') {
4266
+ return undefined;
4267
+ }
4268
+ if (keybinding.when !== undefined && typeof keybinding.when !== 'string') {
4269
+ return undefined;
4270
+ }
4271
+ if (keybinding.args !== undefined && !Array.isArray(keybinding.args)) {
4272
+ return undefined;
4273
+ }
4274
+ return {
4275
+ ...(keybinding.args && {
4276
+ args: keybinding.args
4277
+ }),
4278
+ command: keybinding.command,
4279
+ extensionId: getExtensionId(extension),
4280
+ key: keybinding.key,
4281
+ ...(keybinding.when && {
4282
+ when: keybinding.when
4283
+ })
4284
+ };
4285
+ };
4286
+ const getKeyBindings = async (assetDir, platform) => {
4287
+ const extensions = await getAllExtensions(assetDir, platform);
4288
+ const keybindings = [];
4289
+ for (const extension of extensions) {
4290
+ if (!Array.isArray(extension.keybindings)) {
4291
+ continue;
4292
+ }
4293
+ for (const keybinding of extension.keybindings) {
4294
+ const normalized = toKeyBinding(extension, keybinding);
4295
+ if (normalized) {
4296
+ keybindings.push(normalized);
4297
+ }
4298
+ }
4299
+ }
4300
+ return keybindings;
4301
+ };
4302
+
4303
+ const getPortTuple = () => {
4304
+ const {
4305
+ port1,
4306
+ port2
4307
+ } = new MessageChannel();
4308
+ return {
4309
+ port1,
4310
+ port2
4311
+ };
4312
+ };
4313
+
4314
+ const createWebViewIpc = async webView => {
4315
+ const {
4316
+ origin,
4317
+ uid
4318
+ } = webView;
4319
+ const {
4320
+ port1,
4321
+ port2
4322
+ } = getPortTuple();
4323
+ const rpcPromise = create$3({
4324
+ commandMap: {},
4325
+ isMessagePortOpen: false,
4326
+ messagePort: port2
4327
+ });
4328
+ const portType = 'test';
4329
+ await invokeAndTransfer('WebView.setPort', uid, port1, origin, portType);
4330
+ // TODO maybe don't send a message port only to get object url?
4331
+ // TODO dispose rpc to avoid memory leak
4332
+ const rpc = await rpcPromise;
4333
+ return rpc;
4334
+ };
4335
+
4336
+ const webViews = Object.create(null);
4337
+ const getWebView = id => {
4338
+ return webViews[id];
4339
+ };
4340
+
4341
+ // TODO if webViewId is provided,
4342
+ // 1. read file as blob
4343
+ // 2. send blob to webview
4344
+ // 3. create object URL in webview
4345
+ // 4. send back object URL to extension host worker
4346
+ // 5. provide objectUrl to extension
4347
+
4348
+ const getRemoteUrlForWebView = async (uri, options = {}) => {
4349
+ // TODO webviews should be stored in iframe worker
4350
+ const webView = getWebView(options.webViewId);
4351
+ if (!webView) {
4352
+ throw new Error(`webview ${options.webViewId} not found`);
4353
+ }
4354
+ const [rpc, blob] = await Promise.all([createWebViewIpc(webView), invoke('FileSystem.getBlob', uri)]);
4355
+ const objectUrl = await rpc.invoke('createObjectUrl', blob);
4356
+ return objectUrl;
4357
+ };
4358
+
4359
+ const getRpcInfo = rpcId => {
4360
+ const info = get$2(rpcId);
4361
+ if (!info) {
4362
+ throw new Error(`Rpc not found ${rpcId}`);
4363
+ }
4364
+ return info;
4365
+ };
4366
+
4367
+ const isAbsoluteIcon = icon => {
4368
+ return icon.startsWith('http://') || icon.startsWith('https://') || icon.startsWith('file://') || icon.startsWith('/');
4369
+ };
4370
+
4371
+ const isRelativeIconPath = icon => {
4372
+ return icon.startsWith('./') || icon.startsWith('../') || icon.includes('/') || /\.(?:bmp|gif|ico|jpe?g|png|svg|webp)$/i.test(icon);
4373
+ };
4374
+
4375
+ const getIcon = (extension, manifestView, assetDir, platform) => {
4376
+ const manifestIcon = manifestView?.icon;
4377
+ if (typeof manifestIcon === 'string' && manifestIcon.length > 0) {
4378
+ if (isAbsoluteIcon(manifestIcon) || !isRelativeIconPath(manifestIcon)) {
4379
+ return manifestIcon;
4380
+ }
4381
+ return getAbsolutePath({
4382
+ ...extension,
4383
+ browser: manifestIcon
4384
+ }, assetDir, platform);
4385
+ }
4386
+ return '';
4387
+ };
4388
+
4389
+ const statusNames = {
4390
+ [Activated]: 'running',
4391
+ [Error$1]: 'error',
4392
+ [Terminated]: 'terminated'
4393
+ };
4394
+ const getRunningExtensionsFromState = (extensions, runtimeStatuses, assetDir, platform) => {
4395
+ return extensions.flatMap(extension => {
4396
+ const runtimeStatus = runtimeStatuses[extension.id];
4397
+ const status = runtimeStatus && statusNames[runtimeStatus.status];
4398
+ if (!runtimeStatus || !status) {
4399
+ return [];
4400
+ }
4401
+ const manifestIcon = typeof extension.icon === 'string' ? extension.icon.replace(/^\.\//, '') : undefined;
4402
+ const icon = getIcon(extension, {
4403
+ icon: manifestIcon
4404
+ }, assetDir, platform);
4405
+ return [{
4406
+ ...extension,
4407
+ activationEvent: runtimeStatus.activationEvent,
4408
+ activationTime: runtimeStatus.activationTime,
4409
+ error: runtimeStatus.error || '',
4410
+ ...(icon && {
4411
+ icon
4412
+ }),
4413
+ status
4414
+ }];
4415
+ }).toSorted((a, b) => b.activationTime - a.activationTime);
4416
+ };
4417
+
4418
+ const sleep = duration => {
4419
+ const {
4420
+ promise,
4421
+ resolve
4422
+ } = Promise.withResolvers();
4423
+ setTimeout(resolve, duration);
4424
+ return promise;
4425
+ };
4426
+
4427
+ const invokePing = async rpc => {
4428
+ try {
4429
+ await rpc.invoke('ExtensionApi.ping');
4430
+ } catch {
4431
+ // Any response proves that the worker is still alive.
4432
+ }
4433
+ return true;
4434
+ };
4435
+ const waitForTimeout = async (timeout, sleep) => {
4436
+ await sleep(timeout);
4437
+ return false;
4438
+ };
4439
+ const isResponsive = async (rpc, timeout, sleep) => {
4440
+ return Promise.race([invokePing(rpc), waitForTimeout(timeout, sleep)]);
4441
+ };
4442
+ const updateTerminatedExtensionStatuses = async (runtimeStatuses, getRpc = get$3, timeout = 250, sleep$1 = sleep) => {
4443
+ const activatedStatuses = Object.values(runtimeStatuses).filter(status => status.status === Activated);
4444
+ await Promise.all(activatedStatuses.map(async status => {
4445
+ const rpc = getRpc(status.id);
4446
+ if (!rpc || (await isResponsive(rpc, timeout, sleep$1))) {
4447
+ return;
4448
+ }
4449
+ updateRuntimeStatus(status.id, {
4450
+ error: 'Extension worker stopped responding',
4451
+ status: Terminated
4452
+ });
4453
+ }));
4454
+ };
4455
+
4456
+ const getRunningExtensions = async (assetDir, platform) => {
4457
+ const {
4458
+ assetDir: resolvedAssetDir,
4459
+ platform: resolvedPlatform
4460
+ } = await getRuntimeContext(assetDir, platform);
4461
+ const extensions = await getAllExtensions(resolvedAssetDir, resolvedPlatform);
4462
+ await updateTerminatedExtensionStatuses(get$5().runtimeStatuses);
4463
+ const {
4464
+ runtimeStatuses
4465
+ } = get$5();
4466
+ return getRunningExtensionsFromState(extensions, runtimeStatuses, resolvedAssetDir, resolvedPlatform);
4467
+ };
4468
+
4469
+ const emptyStatus = {
4470
+ activationEndTime: 0,
4471
+ activationEvent: '',
4472
+ activationStartTime: 0,
4473
+ activationTime: 0,
4474
+ id: '',
4475
+ importEndTime: 0,
4476
+ importStartTime: 0,
4477
+ importTime: 0,
4478
+ status: None
4479
+ };
4480
+ const getMemoryUsage = extensionId => {
4481
+ return invoke$5('LaunchIsolatedExtensionHostWorker.getMemoryUsage', extensionId);
4482
+ };
4483
+ const getMemoryUsageSafe = async (extensionId, get) => {
4484
+ try {
4485
+ const memoryUsage = await get(extensionId);
4486
+ return Number.isFinite(memoryUsage) && memoryUsage > 0 ? memoryUsage : 0;
4487
+ } catch {
4488
+ return 0;
4489
+ }
4490
+ };
4491
+ const getRuntimeStatus = async (extensionId, get = getMemoryUsage) => {
4492
+ const status = getRuntimeStatus$1(extensionId) || emptyStatus;
4493
+ const memoryUsage = status.status === Activated ? await getMemoryUsageSafe(extensionId, get) : 0;
4494
+ return {
4495
+ ...status,
4496
+ memoryUsage
4497
+ };
4498
+ };
4499
+
4500
+ const getItems = async rpc => {
4501
+ return rpc.invoke('ExtensionApi.getStatusBarItems');
4502
+ };
4503
+ const getStatusBarItems = async () => {
4504
+ const rpcs = getAll();
4505
+ const results = await Promise.all(rpcs.map(getItems));
4506
+ return results.flat();
4507
+ };
4508
+
4509
+ const getCss = (extension, manifestView, assetDir, platform) => {
4510
+ const css = manifestView?.css;
4511
+ if (typeof css !== 'string' || css.length === 0) {
4512
+ return '';
4513
+ }
4514
+ return getAbsolutePath({
4515
+ ...extension,
4516
+ browser: css
4517
+ }, assetDir, platform);
4518
+ };
4519
+
4520
+ const getIframe = (extension, manifestView, assetDir, platform) => {
4521
+ const iframe = manifestView?.iframe;
4522
+ if (!iframe || typeof iframe.path !== 'string' || iframe.path.length === 0) {
4523
+ return undefined;
4524
+ }
4525
+ return {
4526
+ credentialless: iframe.credentialless !== false,
4527
+ csp: iframe.csp || '',
4528
+ sandbox: Array.isArray(iframe.sandbox) ? iframe.sandbox.filter(item => typeof item === 'string') : ['allow-scripts'],
4529
+ src: getAbsolutePath({
4530
+ ...extension,
4531
+ browser: iframe.path
4532
+ }, assetDir, platform)
4533
+ };
4534
+ };
4535
+
4536
+ const getPreferredLocation = preferredLocation => {
4537
+ if (preferredLocation === 'preview' || preferredLocation === 'secondaryPreview') {
4538
+ return preferredLocation;
4539
+ }
4540
+ return 'sideBar';
4541
+ };
4542
+ const toView = (extension, manifestView, assetDir, platform) => {
4543
+ const id = manifestView.id || '';
4544
+ const css = getCss(extension, manifestView, assetDir, platform);
4545
+ const selector = Array.isArray(manifestView?.selector) ? manifestView.selector.filter(item => typeof item === 'string') : undefined;
4546
+ const type = typeof manifestView?.type === 'string' ? manifestView.type : undefined;
4547
+ return {
4548
+ ...(css && {
4549
+ css
4550
+ }),
4551
+ ...(Array.isArray(manifestView.eventListeners) && {
4552
+ eventListeners: manifestView.eventListeners
4553
+ }),
4554
+ ...(selector && {
4555
+ selector
4556
+ }),
4557
+ ...(type && {
4558
+ type
4559
+ }),
4560
+ extensionId: getExtensionId$1(extension),
4561
+ icon: getIcon(extension, manifestView, assetDir, platform),
4562
+ id,
4563
+ iframe: getIframe(extension, manifestView, assetDir, platform),
4564
+ kind: manifestView.kind || '',
4565
+ preferredLocation: getPreferredLocation(manifestView.preferredLocation),
4566
+ showSideBarHeader: manifestView.showSideBarHeader !== false,
4567
+ title: manifestView.title || id
4568
+ };
4569
+ };
4570
+
4571
+ const getExtensionViews = (extension, assetDir, platform) => {
4572
+ if (!Array.isArray(extension.views)) {
4573
+ return [];
4574
+ }
4575
+ return extension.views.filter(view => view && typeof view.id === 'string').map(view => toView(extension, view, assetDir, platform));
4576
+ };
4577
+
4578
+ const contributesViews = extension => {
4579
+ return Array.isArray(extension.views) && extension.views.length > 0;
4580
+ };
4581
+
4582
+ const shouldLoadViews = extension => {
4583
+ if (extension.disabled) {
4584
+ return false;
4585
+ }
4586
+ if (!contributesViews(extension)) {
4587
+ return false;
4588
+ }
4589
+ if (!isExtensionIsolated(extension)) {
4590
+ warn(`Extension "${getExtensionId$1(extension)}" contributes activity bar views but is not isolated. The views will not be shown. Add "isolated": true to extension.json to enable them.`);
4591
+ return false;
4592
+ }
4593
+ return true;
4594
+ };
4595
+
4596
+ const getViewsFromExtensions = (extensions, assetDir, platform) => {
4597
+ const matchingExtensions = extensions.filter(shouldLoadViews);
4598
+ return matchingExtensions.flatMap(extension => getExtensionViews(extension, assetDir, platform));
4599
+ };
4600
+
4601
+ const getViews = async (assetDir, platform) => {
4602
+ const {
4603
+ assetDir: resolvedAssetDir,
4604
+ platform: resolvedPlatform
4605
+ } = await getRuntimeContext(assetDir, platform);
4606
+ const extensions = await getAllExtensions(resolvedAssetDir, resolvedPlatform);
4607
+ return getViewsFromExtensions(extensions, resolvedAssetDir, resolvedPlatform);
4608
+ };
4609
+
4610
+ const handleData = () => {};
4611
+
4612
+ const invokeHandler = async (extensionId, changes) => {
4613
+ const rpc = get$3(extensionId);
4614
+ if (!rpc) {
4615
+ unregister(extensionId);
4616
+ return;
4617
+ }
4618
+ await rpc.invoke('ExtensionApi.handleFileChanges', changes);
4619
+ };
4620
+ const handleFileChanges = async (changes = {}) => {
4621
+ const extensionIds = getRegisteredExtensionIds();
4622
+ await Promise.allSettled(extensionIds.map(async extensionId => invokeHandler(extensionId, changes)));
4623
+ };
4624
+
4625
+ const StatusBarWorker = 200;
4626
+ const NotificationCenterWorker = 201;
4627
+
4628
+ const handleMessagePort = async (port, rpcId) => {
4629
+ const rpc = await create$8({
4630
+ commandMap: commandMapRef,
4631
+ messagePort: port
4632
+ });
4633
+ if (rpcId === StatusBarWorker) {
4634
+ set$3(rpc);
4635
+ } else if (rpcId === NotificationCenterWorker) {
4636
+ set$4(rpc);
4637
+ }
4638
+ };
4639
+
4640
+ const handleViewContextChange = async (uid, viewId, context) => {
4641
+ await invoke$5('ExtensionManagement.handleViewContextChange', uid, viewId, context);
4642
+ };
4643
+
4644
+ const defaultDependencies = {
4645
+ createLegacyWebSocketRpc: create$4,
4646
+ createTransferMessagePortRpc: create$7,
4647
+ createWebSocket(url, protocols) {
4648
+ return new WebSocket(url, [...protocols]);
4649
+ },
4650
+ createWebSocketRpc: create$5,
4651
+ invokeRenderer: invoke$5,
4652
+ sendMessagePortToSharedProcess: sendMessagePortToSharedProcess,
4653
+ setSharedProcess: set$7
4654
+ };
4655
+ const getRpcRemote = async dependencies => {
4656
+ try {
4657
+ const {
4658
+ protocols,
4659
+ url
4660
+ } = await dependencies.invokeRenderer('WebSocketCapability.create', 'shared-process');
4661
+ const webSocket = dependencies.createWebSocket(url, protocols);
4662
+ return dependencies.createWebSocketRpc({
4663
+ commandMap: commandMapRef,
4664
+ webSocket
4665
+ });
4666
+ } catch (error) {
4667
+ if (!(error instanceof Error && (error.message.includes('WebSocketCapability.create') || error.message.includes('module WebSocketCapability not found')) && /command not found|not found/i.test(error.message))) {
4668
+ throw error;
4669
+ }
4670
+ }
4671
+ return dependencies.createLegacyWebSocketRpc({
4672
+ commandMap: commandMapRef,
4673
+ type: 'shared-process'
4674
+ });
4675
+ };
4676
+ const getRpcElectron = async dependencies => {
4677
+ const rpc = dependencies.createTransferMessagePortRpc({
4678
+ commandMap: commandMapRef,
4679
+ async send(port) {
4680
+ await dependencies.sendMessagePortToSharedProcess(port);
4681
+ }
4682
+ });
4683
+ return rpc;
4684
+ };
4685
+ const getRpc = async (platform, dependencies) => {
4686
+ // TODO create connection to shared process
4687
+ if (platform === Remote) {
4688
+ return getRpcRemote(dependencies);
4689
+ }
4690
+ if (platform === Electron) {
4691
+ return getRpcElectron(dependencies);
4692
+ }
4693
+ return undefined;
4694
+ };
4695
+ const initializeSharedProcess = async (platform, dependencies = defaultDependencies) => {
4696
+ const rpc = await getRpc(platform, dependencies);
4697
+ if (rpc) {
4698
+ dependencies.setSharedProcess(rpc);
4699
+ }
4700
+ };
4701
+
4702
+ const initialize = async platform => {
4703
+ setPlatform(platform);
4704
+ await initializeSharedProcess(platform);
4705
+ };
4706
+
4707
+ const installExtension = async () => {
4708
+ // TODO
4709
+ await invalidateExtensionsCache();
4710
+ };
4711
+
4712
+ const getRemoteUrl = uri => {
4713
+ if (uri.startsWith('http://') || uri.startsWith('https://')) {
4714
+ return uri;
4715
+ }
4716
+ if (uri.startsWith('/')) {
4717
+ return `/remote${uri}`;
4718
+ }
4719
+ return `/remote/${uri}`;
4720
+ };
4721
+
4722
+ const getLanguagesFromExtension = (extension, platform) => {
4723
+ // TODO what if extension is null? should not crash process, handle error gracefully
4724
+ // TODO what if extension languages is not of type array?
4725
+ // TODO what if language is null?
4726
+ if (!extension) {
4727
+ return [];
4728
+ }
4729
+ if (!extension.languages) {
4730
+ return [];
4731
+ }
4732
+ const extensionPath = extension.path;
4733
+ const getLanguageFromExtension = language => {
4734
+ if (language.tokenize) {
4735
+ if (typeof language.tokenize !== 'string') {
4736
+ console.warn(`[info] ${language.id}: language.tokenize must be of type string but was of type ${typeof language.tokenize}`);
4737
+ return {
4738
+ ...language,
4739
+ extensionPath,
4740
+ tokenize: ''
4741
+ };
4742
+ }
4743
+ const relativePath = `${extensionPath}/${language.tokenize}`;
4744
+ const absolutePath = platform === Web ? relativePath : getRemoteUrl(relativePath);
4745
+ return {
4746
+ ...language,
4747
+ extensionPath,
4748
+ tokenize: absolutePath
4749
+ };
4750
+ }
4751
+ return language;
4752
+ };
4753
+ return extension.languages.map(getLanguageFromExtension);
4754
+ };
4755
+
4756
+ const getLanguages = async (platform, assetDir) => {
4757
+ try {
4758
+ number(platform);
4759
+ string(assetDir);
4760
+ const extensions = await getAllExtensions(assetDir, platform);
4761
+ const languages = extensions.flatMap(extension => getLanguagesFromExtension(extension, platform));
4762
+ return languages;
4763
+ } catch (error) {
4764
+ throw new VError(error, 'Failed to load languages');
4765
+ }
4766
+ };
4767
+
4768
+ const sendMessagePortToElectron = async (port, initialCommand) => {
4769
+ await invokeAndTransfer$1('SendMessagePortToElectron.sendMessagePortToElectron', port, initialCommand);
4770
+ };
4771
+
4772
+ const sendMessagePortToFileSystemWorker = async port => {
4773
+ await sendMessagePortToFileSystemWorker$1(port, 0);
4774
+ };
4775
+
4776
+ const showQuickInput = async (options = {}) => {
4777
+ return invoke$5('ExtensionHostQuickPick.showQuickInput', options);
4778
+ };
4779
+
4780
+ const showQuickPick = async options => {
4781
+ return invoke$5('ExtensionHostQuickPick.showQuickPick', options);
4782
+ };
4783
+
4784
+ const uninstallExtension = async id => {
4785
+ const removedWebExtension = removeWebExtension(id);
4786
+ if (!removedWebExtension) {
4787
+ await invoke$4('ExtensionManagement.uninstall', id);
4788
+ }
4789
+ await disposeExtensionRuntime(id);
4790
+ await invalidateExtensionsCache();
4791
+ };
4792
+
4793
+ const startWebRtcAudioStream = async options => {
4794
+ return await invokeAndTransfer$1('WebView.compatRendererProcessInvokeAndTransfer', 'WebRtc.startWebRtcAudioStream', options);
4795
+ };
4796
+ const stopWebRtcAudioStream = async uid => {
4797
+ return await invoke$5('WebView.compatRendererProcessInvoke', 'WebRtc.stopWebRtcAudioStream', uid);
4798
+ };
4799
+ const setRemoteDescription = async options => {
4800
+ await invoke$5('WebView.compatRendererProcessInvoke', 'WebRtc.setRemoteDescription', options);
4801
+ };
4802
+ const readMicLevels = async options => {
4803
+ return await invoke$5('WebView.compatRendererProcessInvoke', 'WebRtc.readMicLevels', options);
4804
+ };
4805
+
4806
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
4807
+
4808
+ const wrapCommand = command => {
4809
+ return (...args) => {
4810
+ return command(get$5(), ...args);
4811
+ };
4812
+ };
4813
+ const wrapSourceControlProviderCommand = methodName => {
4814
+ return wrapCommand((extensionsState, providerId, ...args) => {
4815
+ return executeRequiredSourceControlProvider(extensionsState, providerId, methodName, ...args);
4816
+ });
4817
+ };
4818
+ const commandMap = {
4819
+ 'ExtensionApi.readFile': readFile,
4820
+ 'ExtensionHost.sourceControlGetChangedFiles': wrapSourceControlProviderCommand('executeSourceControlGetChangedFiles'),
4821
+ 'ExtensionHostQuickPick.showQuickInput': showQuickInput,
4822
+ 'ExtensionHostQuickPick.showQuickPick': showQuickPick,
4823
+ 'ExtensionHostSourceControl.acceptInput': wrapSourceControlProviderCommand('executeSourceControlAcceptInput'),
4824
+ 'ExtensionHostSourceControl.add': wrapSourceControlProviderCommand('executeSourceControlAdd'),
4825
+ 'ExtensionHostSourceControl.discard': wrapSourceControlProviderCommand('executeSourceControlDiscard'),
4826
+ 'ExtensionHostSourceControl.generateCommitMessage': wrapSourceControlProviderCommand('executeSourceControlGenerateCommitMessage'),
4827
+ 'ExtensionHostSourceControl.getBadgeCount': wrapSourceControlProviderCommand('executeSourceControlGetBadgeCount'),
4828
+ 'ExtensionHostSourceControl.getChangedFiles': wrapSourceControlProviderCommand('executeSourceControlGetChangedFiles'),
4829
+ 'ExtensionHostSourceControl.getEnabledProviderIds': wrapCommand(getEnabledSourceControlProviderIds),
4830
+ 'ExtensionHostSourceControl.getFeatures': wrapSourceControlProviderCommand('executeSourceControlGetFeatures'),
4831
+ 'ExtensionHostSourceControl.getFileBefore': wrapSourceControlProviderCommand('executeSourceControlGetFileBefore'),
4832
+ 'ExtensionHostSourceControl.getFileDecorations': wrapSourceControlProviderCommand('executeSourceControlGetFileDecorations'),
4833
+ 'ExtensionHostSourceControl.getGroups': wrapSourceControlProviderCommand('executeSourceControlGetGroups'),
4834
+ 'ExtensionHostSourceControl.getIconDefinitions': async () => [],
4835
+ 'Extensions.activateByEvent': activateByEvent,
4836
+ 'Extensions.addExtension': addExtension,
4837
+ 'Extensions.addWebExtension': addWebExtension,
4838
+ 'Extensions.clearNotifications': clearNotifications,
4839
+ 'Extensions.clearOutputChannel': wrapCommand(clearOutputChannel),
4840
+ 'Extensions.createViewInstance': createViewInstance,
4841
+ 'Extensions.createWebViewWorkerRpc': createWebViewWorkerRpc,
4842
+ 'Extensions.createWebViewWorkerRpc2': createWebViewWorkerRpc2,
4843
+ 'Extensions.disable': disableExtension,
4844
+ 'Extensions.disable2': disableExtension2,
4845
+ 'Extensions.disableWorkspace': disableWorkspaceExtension,
4846
+ 'Extensions.dismissNotification': dismissNotification,
4847
+ 'Extensions.dispatchViewEvent': dispatchViewEvent,
4848
+ 'Extensions.disposeViewInstance': disposeViewInstance,
4849
+ 'Extensions.enable': enableExtension,
4850
+ 'Extensions.enable2': enableExtension2,
4851
+ 'Extensions.enableWorkspace': enableWorkspaceExtension,
4852
+ 'Extensions.executeCodeActionProviders': wrapCommand(executeCodeActionProviders),
4853
+ 'Extensions.executeCommand': wrapCommand(executeCommand),
4854
+ 'Extensions.executeCompletionProvider': wrapCommand(executeCompletionProvider),
4855
+ 'Extensions.executeDiagnosticProvider': wrapCommand(executeDiagnosticProvider),
4856
+ 'Extensions.executeExtensionCommand': wrapCommand(executeExtensionCommand),
4857
+ 'Extensions.executeFileSystemProviderGetPathSeparator': wrapCommand(executeFileSystemProviderGetPathSeparator),
4858
+ 'Extensions.executeFileSystemProviderIsReadonly': wrapCommand(executeFileSystemProviderIsReadonly),
4859
+ 'Extensions.executeFileSystemProviderMkdir': wrapCommand(executeFileSystemProviderMkdir),
4860
+ 'Extensions.executeFileSystemProviderReadDirWithFileTypes': wrapCommand(executeFileSystemProviderReadDirWithFileTypes),
4861
+ 'Extensions.executeFileSystemProviderReadFile': wrapCommand(executeFileSystemProviderReadFile),
4862
+ 'Extensions.executeFileSystemProviderRemove': wrapCommand(executeFileSystemProviderRemove),
4863
+ 'Extensions.executeFileSystemProviderRename': wrapCommand(executeFileSystemProviderRename),
4864
+ 'Extensions.executeFileSystemProviderWriteFile': wrapCommand(executeFileSystemProviderWriteFile),
4865
+ 'Extensions.executeFormattingProvider': wrapCommand(executeFormattingProvider),
4866
+ 'Extensions.executeHoverProvider': wrapCommand(executeHoverProvider),
4867
+ 'Extensions.executeLanguageProvider': wrapCommand(executeLanguageProvider),
4868
+ 'Extensions.executeOrganizeImportsProvider': wrapCommand(executeOrganizeImportsProvider),
4869
+ 'Extensions.executeProvidersByEvent': wrapCommand(executeProvidersByEvent),
4870
+ 'Extensions.executeResolveCompletionItemProvider': wrapCommand(executeResolveCompletionItemProvider),
4871
+ 'Extensions.executeSignatureHelpProvider': wrapCommand(executeSignatureHelpProvider),
4872
+ 'Extensions.executeSourceControlProvider': wrapCommand(executeSourceControlProvider),
4873
+ 'Extensions.getAccessToken': getAccessToken,
4874
+ 'Extensions.getAllExtensions': getAllExtensions,
4875
+ 'Extensions.getColorThemeCss': getColorThemeCss,
4876
+ 'Extensions.getColorThemeCssFromJson': getColorThemeCssFromJson,
4877
+ 'Extensions.getColorThemeJson': getColorThemeJson,
4878
+ 'Extensions.getColorThemeNames': getColorThemeNames,
4879
+ 'Extensions.getDynamicWebExtensions': getDynamicWebExtensions,
4880
+ 'Extensions.getEnabledSourceControlProviderIds': wrapCommand(getEnabledSourceControlProviderIds),
4881
+ 'Extensions.getExtension': getExtension,
4882
+ 'Extensions.getKeyBindings': getKeyBindings,
4883
+ 'Extensions.getLanguages': getLanguages,
4884
+ 'Extensions.getNotificationCount': getNotificationCount,
4885
+ 'Extensions.getNotifications': getNotifications,
4886
+ 'Extensions.getOutputChannelProviders': wrapCommand(getOutputChannelProviders),
4887
+ 'Extensions.getPreference': getPreference,
4888
+ 'Extensions.getRemoteUrlForWebView': getRemoteUrlForWebView,
4889
+ 'Extensions.getRpcInfo': getRpcInfo,
4890
+ 'Extensions.getRunningExtensions': getRunningExtensions,
4891
+ 'Extensions.getRuntimeStatus': getRuntimeStatus,
4892
+ 'Extensions.getStatusBarItems': getStatusBarItems,
4893
+ 'Extensions.getViewActions': getViewActions,
4894
+ 'Extensions.getViewActionsDom': getViewActionsDom,
4895
+ 'Extensions.getViewMenuEntries': getViewMenuEntries,
4896
+ 'Extensions.getViews': getViews,
4897
+ 'Extensions.handleData': handleData,
4898
+ 'Extensions.handleFileChanges': handleFileChanges,
4899
+ 'Extensions.handleMessagePort': handleMessagePort,
4900
+ 'Extensions.handleUncaughtExtensionError': handleUncaughtExtensionError,
4901
+ 'Extensions.handleViewContextChange': handleViewContextChange,
4902
+ 'Extensions.hideNotificationsFromExtension': hideNotificationsFromExtension,
4903
+ 'Extensions.initialize': initialize,
4904
+ 'Extensions.install': installExtension,
4905
+ 'Extensions.invalidateExtensionsCache': invalidateExtensionsCache,
4906
+ 'Extensions.readOutputChannel': wrapCommand(readOutputChannel),
4907
+ 'Extensions.renderViewInstance': renderViewInstance,
4908
+ 'Extensions.requestViewRerender': requestViewRerender,
4909
+ 'Extensions.saveViewInstanceState': saveViewInstanceState,
4910
+ 'Extensions.sendMessagePortToElectron': sendMessagePortToElectron,
4911
+ 'Extensions.sendMessagePortToFileSystemWorker': sendMessagePortToFileSystemWorker,
4912
+ 'Extensions.setPreference': setPreference,
4913
+ 'Extensions.setViewInstanceActive': setViewInstanceActive,
4914
+ 'Extensions.showNotification': (type, message) => createNotification('unknown.extension', type, message),
4915
+ 'Extensions.showViewContextMenu': showViewContextMenu,
4916
+ 'Extensions.uninstall': uninstallExtension,
4917
+ 'StatusBar.handleChange': handleChange,
4918
+ 'WebRtc.readMicLevels': readMicLevels,
4919
+ 'WebRtc.setRemoteDescription': setRemoteDescription,
4920
+ 'WebRtc.startWebRtcAudioStream': startWebRtcAudioStream,
4921
+ 'WebRtc.stopWebRtcAudioStream': stopWebRtcAudioStream
4922
+ };
4923
+
4924
+ const initializeAuthWorker = async () => {
4925
+ const rpc = await create$6({
4926
+ commandMap: commandMapRef,
4927
+ async send(port) {
4928
+ await sendMessagePortToAuthWorker(port, 0);
4929
+ }
4930
+ });
4931
+ set$b(rpc);
4932
+ };
4933
+
4934
+ const initializeErrorWorker = async () => {
4935
+ const rpc = await create$6({
4936
+ commandMap: commandMapRef,
4937
+ async send(port) {
4938
+ await sendMessagePortToErrorWorker(port, 0);
4939
+ }
4940
+ });
4941
+ set$a(rpc);
4942
+ };
4943
+
4944
+ const initializeFileSystemWorker = async () => {
4945
+ const rpc = await create$6({
4946
+ commandMap: commandMapRef,
4947
+ async send(port) {
4948
+ await sendMessagePortToFileSystemWorker$1(port, 0);
4949
+ }
4950
+ });
4951
+ set$9(rpc);
4952
+ };
4953
+
4954
+ const initializeIframeWorker = async () => {
4955
+ const rpc = await create$6({
4956
+ commandMap: {},
4957
+ async send(port) {
4958
+ await sendMessagePortToIconThemeWorker(port, 0);
4959
+ }
4960
+ });
4961
+ return rpc;
4962
+ };
4963
+
4964
+ const initializeRendererWorker = async () => {
4965
+ const rpc = await create$2({
4966
+ commandMap: commandMap
4967
+ });
4968
+ set$8(rpc);
4969
+ };
4970
+
4971
+ const listen = async () => {
4972
+ Object.assign(commandMapRef, commandMap);
4973
+ await Promise.all([initializeRendererWorker(), initializeAuthWorker(), initializeErrorWorker(), initializeFileSystemWorker(), initializeIframeWorker()]);
4974
+ };
4975
+
4976
+ const main = async () => {
4977
+ await listen();
4978
+ };
4979
+
4980
+ main();