@agent-spaces/server 0.3.4 → 0.3.6

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 (288) hide show
  1. package/dist/adapters/claude-code-runtime/index.js +19 -1
  2. package/dist/adapters/codex-runtime.js +13 -3
  3. package/dist/agents/agent-message-parts.js +9 -1
  4. package/dist/agents/commit-agent.js +7 -15
  5. package/dist/app.js +26 -0
  6. package/dist/package.json +3 -1
  7. package/dist/routes/code-favorites.js +60 -0
  8. package/dist/routes/file.js +13 -0
  9. package/dist/routes/prompt-template.js +48 -0
  10. package/dist/services/agent.js +45 -3
  11. package/dist/services/code-favorites.js +23 -0
  12. package/dist/services/file.js +4 -0
  13. package/dist/services/persistent-agent-context.js +3 -2
  14. package/dist/services/prompt-template.js +93 -0
  15. package/dist/services/pty.js +18 -1
  16. package/dist/storage/code-favorites-store.js +15 -0
  17. package/dist/web/404.html +1 -1
  18. package/dist/web/__next.__PAGE__.txt +4 -4
  19. package/dist/web/__next._full.txt +21 -21
  20. package/dist/web/__next._head.txt +4 -4
  21. package/dist/web/__next._index.txt +13 -13
  22. package/dist/web/__next._tree.txt +2 -2
  23. package/dist/web/_next/static/chunks/0-1pn22sg~67u.js +2 -0
  24. package/dist/web/_next/static/chunks/0-lseun2l1m_t.js +2 -0
  25. package/dist/web/_next/static/chunks/0-wkj-hzh444r.css +4 -0
  26. package/dist/web/_next/static/chunks/{0f6vrjsdauiwl.js → 0-~4vw4_9z_0_.js} +2 -2
  27. package/dist/web/_next/static/chunks/0..g0jl-8qup7.js +1 -0
  28. package/dist/web/_next/static/chunks/0.006.ycpe92w.js +496 -0
  29. package/dist/web/_next/static/chunks/0.6x8f.mb-1qf.js +1 -0
  30. package/dist/web/_next/static/chunks/{0qe5wvs8fe9ip.js → 004wt62de8617.js} +1 -1
  31. package/dist/web/_next/static/chunks/016xz2o-hv3am.js +1 -0
  32. package/dist/web/_next/static/chunks/01gi~q0c6ez6..js +1 -0
  33. package/dist/web/_next/static/chunks/023lpc7n70tav.css +1 -0
  34. package/dist/web/_next/static/chunks/03me5_ir..2ix.js +1 -0
  35. package/dist/web/_next/static/chunks/04fk~8rnrvs44.js +1 -0
  36. package/dist/web/_next/static/chunks/05eu2fdixf7c9.js +1 -0
  37. package/dist/web/_next/static/chunks/05gt_g_vbzh-5.css +1 -0
  38. package/dist/web/_next/static/chunks/06vadtvw631k5.css +1 -0
  39. package/dist/web/_next/static/chunks/07ge_85i__6pb.js +1 -0
  40. package/dist/web/_next/static/chunks/07ne4g8zopykv.js +1 -0
  41. package/dist/web/_next/static/chunks/07xvadmf~8bow.js +1 -0
  42. package/dist/web/_next/static/chunks/08.u~dmq20cak.css +23 -0
  43. package/dist/web/_next/static/chunks/{03sd~wmqw.9gc.js → 08kpa0nox.bb1.js} +2 -2
  44. package/dist/web/_next/static/chunks/08o-zmr-40r5g.js +1 -0
  45. package/dist/web/_next/static/chunks/0_-c.y2qq4ax4.js +270 -0
  46. package/dist/web/_next/static/chunks/0a1rewz7xr-xi.js +1 -0
  47. package/dist/web/_next/static/chunks/0amcocbojo4v2.js +1 -0
  48. package/dist/web/_next/static/chunks/0brrgp3ki5w4_.css +17 -0
  49. package/dist/web/_next/static/chunks/0bzmgi.ynrn.0.css +3 -0
  50. package/dist/web/_next/static/chunks/0c_vfzf1z7-rt.js +2 -0
  51. package/dist/web/_next/static/chunks/0cjmfclopcxho.css +1 -0
  52. package/dist/web/_next/static/chunks/0cs830n97dgjy.js +1 -0
  53. package/dist/web/_next/static/chunks/0d_dp_4ofz0l3.css +3 -0
  54. package/dist/web/_next/static/chunks/0dws-faof-ryx.css +13 -0
  55. package/dist/web/_next/static/chunks/0ejc_zlyocy_r.css +1 -0
  56. package/dist/web/_next/static/chunks/0esty_4gmxfq3.js +1 -0
  57. package/dist/web/_next/static/chunks/0evjw7bao5_e~.js +1 -0
  58. package/dist/web/_next/static/chunks/{0ag4p6m9rze~n.js → 0g-0n6glz_z6w.js} +1 -1
  59. package/dist/web/_next/static/chunks/{145qu5b0tgm9w.js → 0gig.k.rq8d0x.js} +1 -1
  60. package/dist/web/_next/static/chunks/0hl_7y464qll6.css +2 -0
  61. package/dist/web/_next/static/chunks/0hrbuvzuxrjfl.js +1 -0
  62. package/dist/web/_next/static/chunks/0i_3.3rdsu2mw.js +2 -0
  63. package/dist/web/_next/static/chunks/0i_gi.kq2dau8.css +1 -0
  64. package/dist/web/_next/static/chunks/0j00r2f_n-.lx.js +1 -0
  65. package/dist/web/_next/static/chunks/0jh9xnkimjkyh.js +1 -0
  66. package/dist/web/_next/static/chunks/0jokpgh485~28.js +167 -0
  67. package/dist/web/_next/static/chunks/0kvsjgpj7zcb9.css +9 -0
  68. package/dist/web/_next/static/chunks/0l5ab99s37x5f.js +1 -0
  69. package/dist/web/_next/static/chunks/0lcc9r.o.p.sc.js +1 -0
  70. package/dist/web/_next/static/chunks/0lh~x2tf~i1hd.css +2 -0
  71. package/dist/web/_next/static/chunks/0me8ho8j4tq7_.css +2 -0
  72. package/dist/web/_next/static/chunks/0mny8i81aenx3.js +1 -0
  73. package/dist/web/_next/static/chunks/0mt-7av8yrg0o.css +3 -0
  74. package/dist/web/_next/static/chunks/0njy89g5coeyi.js +60 -0
  75. package/dist/web/_next/static/chunks/0nsu~f3voe~0i.js +5 -0
  76. package/dist/web/_next/static/chunks/0ow~co9wcleka.js +173 -0
  77. package/dist/web/_next/static/chunks/0pldvk5_h__t7.css +3 -0
  78. package/dist/web/_next/static/chunks/0qad.lgvtlt0b.css +16 -0
  79. package/dist/web/_next/static/chunks/0qpq0~_58fe9a.js +18 -0
  80. package/dist/web/_next/static/chunks/{0.335m_d-cd_g.js → 0qtc_rbo1oghu.js} +1 -1
  81. package/dist/web/_next/static/chunks/0qz5~3wquy~3q.css +2 -0
  82. package/dist/web/_next/static/chunks/0rv0nj__24y60.js +10 -0
  83. package/dist/web/_next/static/chunks/{145gbwitjxamg.js → 0sz8_nijfiz0p.js} +1 -1
  84. package/dist/web/_next/static/chunks/0tvd~rxgf0oh_.js +1 -0
  85. package/dist/web/_next/static/chunks/0wv0h27jafag4.js +1 -0
  86. package/dist/web/_next/static/chunks/0wwvc4zc2q6bn.js +1 -0
  87. package/dist/web/_next/static/chunks/0x4b-a2ixww6m.js +1 -0
  88. package/dist/web/_next/static/chunks/0z8ipjj2z-3al.css +8 -0
  89. package/dist/web/_next/static/chunks/0zd1o3u04~qvo.js +127 -0
  90. package/dist/web/_next/static/chunks/0~2l1-8o4delc.js +1 -0
  91. package/dist/web/_next/static/chunks/0~w6ugk9s5p-h.css +1 -0
  92. package/dist/web/_next/static/chunks/10jfi.9fw5g48.js +1 -0
  93. package/dist/web/_next/static/chunks/11_tltlhc8.sj.js +1 -0
  94. package/dist/web/_next/static/chunks/125nunjfj2fj0.js +1 -0
  95. package/dist/web/_next/static/chunks/1285yqy_oirb-.js +1 -0
  96. package/dist/web/_next/static/chunks/12md9ajfx2o85.css +1 -0
  97. package/dist/web/_next/static/chunks/12odetnu-lyrr.js +167 -0
  98. package/dist/web/_next/static/chunks/12u4g4uzrlten.js +2 -0
  99. package/dist/web/_next/static/chunks/134ozsnbd~0qw.js +1 -0
  100. package/dist/web/_next/static/chunks/13ess~4pdmxma.js +1 -0
  101. package/dist/web/_next/static/chunks/13xfagjq0q~tf.js +1 -0
  102. package/dist/web/_next/static/chunks/143.pbs8a1ivm.js +1 -0
  103. package/dist/web/_next/static/chunks/14_y_s_5rhsd1.css +5 -0
  104. package/dist/web/_next/static/chunks/15hca2.5le07..js +3 -0
  105. package/dist/web/_next/static/chunks/15rf3~h7sugz4.css +19 -0
  106. package/dist/web/_next/static/chunks/16i87txo0qh0h.css +6 -0
  107. package/dist/web/_next/static/chunks/16~udgv7eel6a.css +2 -0
  108. package/dist/web/_next/static/chunks/{turbopack-0-j2hpomozegf.js → turbopack-000x5q9w-wx10.js} +1 -1
  109. package/dist/web/_next/static/chunks/{turbopack-0rrhp9pbrv0p3.js → turbopack-0hrx111grzq49.js} +1 -1
  110. package/dist/web/_next/static/chunks/{turbopack-0_zn00zg5kmqz.js → turbopack-0w-kua.9ymd0x.js} +1 -1
  111. package/dist/web/_next/static/chunks/{turbopack-0l~pq1hytx49z.js → turbopack-15zqm_4ixj.18.js} +1 -1
  112. package/dist/web/_next/static/media/code-icon.0g3wskzlr7oxf.svg +1 -0
  113. package/dist/web/_next/static/media/codicon.0pqe-t5rtghj8.ttf +0 -0
  114. package/dist/web/_next/static/media/continue-tb.0qei4mru4tzd2.png +0 -0
  115. package/dist/web/_next/static/media/dark_modern.09.uq6bp373zs.json +1 -0
  116. package/dist/web/_next/static/media/dark_plus.187umr0~d1_r7.json +1 -0
  117. package/dist/web/_next/static/media/dark_vs.12ju8ocr7rg--.json +1 -0
  118. package/dist/web/_next/static/media/document-dark.0vvlbsi_fdy~4.svg +3 -0
  119. package/dist/web/_next/static/media/document-light.0bfi_yt9e~vk7.svg +3 -0
  120. package/dist/web/_next/static/media/editor.worker.0ffjdaaj15t6e.js +1 -0
  121. package/dist/web/_next/static/media/extensionHost.worker.14sz5xf8-1efr.js +2 -0
  122. package/dist/web/_next/static/media/fake.16yx0-xxqj4pc.html +10 -0
  123. package/dist/web/_next/static/media/folder-dark.02kdicw3013tb.svg +3 -0
  124. package/dist/web/_next/static/media/folder-light.0s165k4fp3.53.svg +3 -0
  125. package/dist/web/_next/static/media/folder-open-dark.0sk6.yh45uqs3.svg +4 -0
  126. package/dist/web/_next/static/media/folder-open-light.10k1v_ugaq8ic.svg +4 -0
  127. package/dist/web/_next/static/media/hc_black.0-ul9e2oc5twb.json +1 -0
  128. package/dist/web/_next/static/media/hc_light.0vi.a7fr.z4gy.json +1 -0
  129. package/dist/web/_next/static/media/index.0jmafs_mwcjgg.html +1341 -0
  130. package/dist/web/_next/static/media/keyboard-dark.0t86n~1rrhj2-.svg +10 -0
  131. package/dist/web/_next/static/media/keyboard-light.0abw0ukjcd9ox.svg +10 -0
  132. package/dist/web/_next/static/media/letterpress-dark.181s2xkw~lfyo.svg +3 -0
  133. package/dist/web/_next/static/media/letterpress-hcDark.0ftfw8fess-5y.svg +3 -0
  134. package/dist/web/_next/static/media/letterpress-hcLight.06x23d0.aixf_.svg +3 -0
  135. package/dist/web/_next/static/media/letterpress-light.0xb1bapis~iw7.svg +3 -0
  136. package/dist/web/_next/static/media/light_modern.00ps-apoc9ph7.json +1 -0
  137. package/dist/web/_next/static/media/light_plus.0ow37ouyuazdz.json +1 -0
  138. package/dist/web/_next/static/media/light_vs.0fdbve5sxkgq1.json +1 -0
  139. package/dist/web/_next/static/media/onig.0dk~55st~1x8..wasm +0 -0
  140. package/dist/web/_next/static/media/opacity-background.0-9.t0ta0ko23.png +0 -0
  141. package/dist/web/_next/static/media/package.0_p8a~hpmb_uj.json +1 -0
  142. package/dist/web/_next/static/media/package.nls.0e5hn-g497b64.json +1 -0
  143. package/dist/web/_next/static/media/pause-tb.0ttrm1r1uuz_c.png +0 -0
  144. package/dist/web/_next/static/media/restart-tb.086872s_sc2qv.png +0 -0
  145. package/dist/web/_next/static/media/root-folder-dark.14iwnfb7p2na~.svg +5 -0
  146. package/dist/web/_next/static/media/root-folder-light.0ljk9fi7sw3.2.svg +5 -0
  147. package/dist/web/_next/static/media/root-folder-open-dark.08vw3g9zvki33.svg +5 -0
  148. package/dist/web/_next/static/media/root-folder-open-light.0f46.ahns5c~..svg +5 -0
  149. package/dist/web/_next/static/media/run-with-debugging-tb.0j1h52k~h~72z.png +0 -0
  150. package/dist/web/_next/static/media/service-worker.0_udu6mraxn4k.js +543 -0
  151. package/dist/web/_next/static/media/stepinto-tb.0cl87yt4ub_j8.png +0 -0
  152. package/dist/web/_next/static/media/stepout-tb.0vjib_bn-_xax.png +0 -0
  153. package/dist/web/_next/static/media/stepover-tb.04beeu~7cxr4l.png +0 -0
  154. package/dist/web/_next/static/media/stop-tb.1498tmu97_y9j.png +0 -0
  155. package/dist/web/_next/static/media/vs_minimal-icon-theme.0-qs73lvw4voi.json +1 -0
  156. package/dist/web/_next/static/media/webWorkerExtensionHostIframe.0x2r1o97s.m0m.html +156 -0
  157. package/dist/web/_next/static/media/worker.081j0x4avp1l1.js +2 -0
  158. package/dist/web/_not-found/__next._full.txt +19 -19
  159. package/dist/web/_not-found/__next._head.txt +4 -4
  160. package/dist/web/_not-found/__next._index.txt +13 -13
  161. package/dist/web/_not-found/__next._not-found.__PAGE__.txt +2 -2
  162. package/dist/web/_not-found/__next._not-found.txt +3 -3
  163. package/dist/web/_not-found/__next._tree.txt +2 -2
  164. package/dist/web/_not-found.html +1 -1
  165. package/dist/web/_not-found.txt +19 -19
  166. package/dist/web/index.html +1 -1
  167. package/dist/web/index.txt +21 -21
  168. package/dist/web/login/__next._full.txt +21 -21
  169. package/dist/web/login/__next._head.txt +4 -4
  170. package/dist/web/login/__next._index.txt +13 -13
  171. package/dist/web/login/__next._tree.txt +2 -2
  172. package/dist/web/login/__next.login.__PAGE__.txt +4 -4
  173. package/dist/web/login/__next.login.txt +3 -3
  174. package/dist/web/login.html +1 -1
  175. package/dist/web/login.txt +21 -21
  176. package/dist/web/settings/__next._full.txt +23 -23
  177. package/dist/web/settings/__next._head.txt +4 -4
  178. package/dist/web/settings/__next._index.txt +13 -13
  179. package/dist/web/settings/__next._tree.txt +2 -2
  180. package/dist/web/settings/__next.settings.__PAGE__.txt +4 -4
  181. package/dist/web/settings/__next.settings.txt +5 -5
  182. package/dist/web/settings/agents/__next._full.txt +23 -23
  183. package/dist/web/settings/agents/__next._head.txt +4 -4
  184. package/dist/web/settings/agents/__next._index.txt +13 -13
  185. package/dist/web/settings/agents/__next._tree.txt +2 -2
  186. package/dist/web/settings/agents/__next.settings.agents.__PAGE__.txt +4 -4
  187. package/dist/web/settings/agents/__next.settings.agents.txt +3 -3
  188. package/dist/web/settings/agents/__next.settings.txt +5 -5
  189. package/dist/web/settings/agents.html +1 -1
  190. package/dist/web/settings/agents.txt +23 -23
  191. package/dist/web/settings/mcps/__next._full.txt +23 -23
  192. package/dist/web/settings/mcps/__next._head.txt +4 -4
  193. package/dist/web/settings/mcps/__next._index.txt +13 -13
  194. package/dist/web/settings/mcps/__next._tree.txt +2 -2
  195. package/dist/web/settings/mcps/__next.settings.mcps.__PAGE__.txt +4 -4
  196. package/dist/web/settings/mcps/__next.settings.mcps.txt +3 -3
  197. package/dist/web/settings/mcps/__next.settings.txt +5 -5
  198. package/dist/web/settings/mcps.html +1 -1
  199. package/dist/web/settings/mcps.txt +23 -23
  200. package/dist/web/settings/models/__next._full.txt +23 -23
  201. package/dist/web/settings/models/__next._head.txt +4 -4
  202. package/dist/web/settings/models/__next._index.txt +13 -13
  203. package/dist/web/settings/models/__next._tree.txt +2 -2
  204. package/dist/web/settings/models/__next.settings.models.__PAGE__.txt +4 -4
  205. package/dist/web/settings/models/__next.settings.models.txt +3 -3
  206. package/dist/web/settings/models/__next.settings.txt +5 -5
  207. package/dist/web/settings/models.html +1 -1
  208. package/dist/web/settings/models.txt +23 -23
  209. package/dist/web/settings/prompts/__next._full.txt +42 -0
  210. package/dist/web/settings/prompts/__next._head.txt +6 -0
  211. package/dist/web/settings/prompts/__next._index.txt +15 -0
  212. package/dist/web/settings/prompts/__next._tree.txt +8 -0
  213. package/dist/web/settings/prompts/__next.settings.prompts.__PAGE__.txt +9 -0
  214. package/dist/web/settings/prompts/__next.settings.prompts.txt +5 -0
  215. package/dist/web/settings/prompts/__next.settings.txt +7 -0
  216. package/dist/web/settings/prompts.html +1 -0
  217. package/dist/web/settings/prompts.txt +42 -0
  218. package/dist/web/settings/providers/__next._full.txt +23 -23
  219. package/dist/web/settings/providers/__next._head.txt +4 -4
  220. package/dist/web/settings/providers/__next._index.txt +13 -13
  221. package/dist/web/settings/providers/__next._tree.txt +2 -2
  222. package/dist/web/settings/providers/__next.settings.providers.__PAGE__.txt +4 -4
  223. package/dist/web/settings/providers/__next.settings.providers.txt +3 -3
  224. package/dist/web/settings/providers/__next.settings.txt +5 -5
  225. package/dist/web/settings/providers.html +1 -1
  226. package/dist/web/settings/providers.txt +23 -23
  227. package/dist/web/settings/skills/__next._full.txt +23 -23
  228. package/dist/web/settings/skills/__next._head.txt +4 -4
  229. package/dist/web/settings/skills/__next._index.txt +13 -13
  230. package/dist/web/settings/skills/__next._tree.txt +2 -2
  231. package/dist/web/settings/skills/__next.settings.skills.__PAGE__.txt +4 -4
  232. package/dist/web/settings/skills/__next.settings.skills.txt +3 -3
  233. package/dist/web/settings/skills/__next.settings.txt +5 -5
  234. package/dist/web/settings/skills.html +1 -1
  235. package/dist/web/settings/skills.txt +23 -23
  236. package/dist/web/settings.html +1 -1
  237. package/dist/web/settings.txt +23 -23
  238. package/dist/web/workflows/__next._full.txt +21 -21
  239. package/dist/web/workflows/__next._head.txt +4 -4
  240. package/dist/web/workflows/__next._index.txt +13 -13
  241. package/dist/web/workflows/__next._tree.txt +2 -2
  242. package/dist/web/workflows/__next.workflows.__PAGE__.txt +4 -4
  243. package/dist/web/workflows/__next.workflows.txt +3 -3
  244. package/dist/web/workflows.html +1 -1
  245. package/dist/web/workflows.txt +21 -21
  246. package/dist/web/workspace/_/__next._full.txt +68 -35
  247. package/dist/web/workspace/_/__next._head.txt +4 -4
  248. package/dist/web/workspace/_/__next._index.txt +13 -13
  249. package/dist/web/workspace/_/__next._tree.txt +15 -3
  250. package/dist/web/workspace/_/__next.workspace.$d$id.__PAGE__.txt +16 -4
  251. package/dist/web/workspace/_/__next.workspace.$d$id.txt +3 -3
  252. package/dist/web/workspace/_/__next.workspace.txt +3 -3
  253. package/dist/web/workspace/_.html +1 -1
  254. package/dist/web/workspace/_.txt +68 -35
  255. package/dist/web/workspaces/__next._full.txt +21 -21
  256. package/dist/web/workspaces/__next._head.txt +4 -4
  257. package/dist/web/workspaces/__next._index.txt +13 -13
  258. package/dist/web/workspaces/__next._tree.txt +2 -2
  259. package/dist/web/workspaces/__next.workspaces.__PAGE__.txt +4 -4
  260. package/dist/web/workspaces/__next.workspaces.txt +3 -3
  261. package/dist/web/workspaces.html +1 -1
  262. package/dist/web/workspaces.txt +21 -21
  263. package/dist/ws/agent-runner.js +158 -20
  264. package/dist/ws/handler.js +6 -1
  265. package/dist/ws/message-parts.js +20 -1
  266. package/dist/ws/terminal-handler.js +12 -7
  267. package/dist/ws/typescript-lsp.js +78 -0
  268. package/package.json +13 -10
  269. package/dist/web/_next/static/chunks/0-a17~4piefz_.js +0 -1
  270. package/dist/web/_next/static/chunks/01tyftu_-l7tm.css +0 -1
  271. package/dist/web/_next/static/chunks/028b9_5cyq-_m.js +0 -1
  272. package/dist/web/_next/static/chunks/0anuxr11yn5iv.js +0 -2
  273. package/dist/web/_next/static/chunks/0e.z4v3cd78dx.js +0 -1
  274. package/dist/web/_next/static/chunks/0egot8y~i-ge3.js +0 -1
  275. package/dist/web/_next/static/chunks/0eq7wt-l.fetc.js +0 -1
  276. package/dist/web/_next/static/chunks/0gtbd3yt7y1gx.js +0 -1
  277. package/dist/web/_next/static/chunks/0j2w71psq6w9u.js +0 -1
  278. package/dist/web/_next/static/chunks/0kyv5yika-41a.js +0 -1
  279. package/dist/web/_next/static/chunks/0ms3tsu4men_j.js +0 -204
  280. package/dist/web/_next/static/chunks/0plreh4_gkxf9.js +0 -1
  281. package/dist/web/_next/static/chunks/0qxk21zejhdbm.js +0 -1
  282. package/dist/web/_next/static/chunks/12gvpt~z9mn8w.js +0 -1
  283. package/dist/web/_next/static/chunks/14iaqoj9-09g..js +0 -2
  284. package/dist/web/_next/static/chunks/15dyaigebtnwg.js +0 -5
  285. package/dist/web/_next/static/chunks/17oc2l.ekcs8b.css +0 -1
  286. /package/dist/web/_next/static/{O5-QCW1u2YNyAUyaoYh6s → HUlYEknPhyW7dRmJ5mFdG}/_buildManifest.js +0 -0
  287. /package/dist/web/_next/static/{O5-QCW1u2YNyAUyaoYh6s → HUlYEknPhyW7dRmJ5mFdG}/_clientMiddlewareManifest.js +0 -0
  288. /package/dist/web/_next/static/{O5-QCW1u2YNyAUyaoYh6s → HUlYEknPhyW7dRmJ5mFdG}/_ssgManifest.js +0 -0
@@ -0,0 +1,10 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,934731,e=>{"use strict";let t;var o,i,r,n,s,a,l,c,d,h,u,g,m=e.i(281482),f=e.i(650289),p=e.i(535567),T=e.i(981399);let C=/\[(.+?)\]/g;(o=l||(l={})).COLOR_THEME="workbench.colorTheme",o.FILE_ICON_THEME="workbench.iconTheme",o.PRODUCT_ICON_THEME="workbench.productIconTheme",o.COLOR_CUSTOMIZATIONS="workbench.colorCustomizations",o.TOKEN_COLOR_CUSTOMIZATIONS="editor.tokenColorCustomizations",o.SEMANTIC_TOKEN_COLOR_CUSTOMIZATIONS="editor.semanticTokenColorCustomizations",o.PREFERRED_DARK_THEME="workbench.preferredDarkColorTheme",o.PREFERRED_LIGHT_THEME="workbench.preferredLightColorTheme",o.PREFERRED_HC_DARK_THEME="workbench.preferredHighContrastColorTheme",o.PREFERRED_HC_LIGHT_THEME="workbench.preferredHighContrastLightColorTheme",o.DETECT_COLOR_SCHEME="window.autoDetectColorScheme",o.DETECT_HC="window.autoDetectHighContrast",o.SYSTEM_COLOR_THEME="window.systemColorTheme",(i=c||(c={})).COLOR_THEME_DARK="Default Dark Modern",i.COLOR_THEME_LIGHT="Default Light Modern",i.COLOR_THEME_HC_DARK="Default High Contrast",i.COLOR_THEME_HC_LIGHT="Default High Contrast Light",i.COLOR_THEME_DARK_OLD="Default Dark+",i.COLOR_THEME_LIGHT_OLD="Default Light+",i.FILE_ICON_THEME="vs-seti",i.PRODUCT_ICON_THEME="Default";let S={"actionBar.toggledBackground":"#383a49","activityBar.activeBorder":"#0078D4","activityBar.background":"#181818","activityBar.border":"#2B2B2B","activityBar.foreground":"#D7D7D7","activityBar.inactiveForeground":"#868686","activityBarBadge.background":"#0078D4","activityBarBadge.foreground":"#FFFFFF","badge.background":"#616161","badge.foreground":"#F8F8F8","button.background":"#0078D4","button.border":"#FFFFFF12","button.foreground":"#FFFFFF","button.hoverBackground":"#026EC1","button.secondaryBackground":"#313131","button.secondaryForeground":"#CCCCCC","button.secondaryHoverBackground":"#3C3C3C","chat.slashCommandBackground":"#26477866","chat.slashCommandForeground":"#85B6FF","chat.editedFileForeground":"#E2C08D","checkbox.background":"#313131","checkbox.border":"#3C3C3C","debugToolBar.background":"#181818",descriptionForeground:"#9D9D9D","dropdown.background":"#313131","dropdown.border":"#3C3C3C","dropdown.foreground":"#CCCCCC","dropdown.listBackground":"#1F1F1F","editor.background":"#1F1F1F","editor.findMatchBackground":"#9E6A03","editor.foreground":"#CCCCCC","editor.inactiveSelectionBackground":"#3A3D41","editor.selectionHighlightBackground":"#ADD6FF26","editorGroup.border":"#FFFFFF17","editorGroupHeader.tabsBackground":"#181818","editorGroupHeader.tabsBorder":"#2B2B2B","editorGutter.addedBackground":"#2EA043","editorGutter.deletedBackground":"#F85149","editorGutter.modifiedBackground":"#0078D4","editorIndentGuide.activeBackground1":"#707070","editorIndentGuide.background1":"#404040","editorLineNumber.activeForeground":"#CCCCCC","editorLineNumber.foreground":"#6E7681","editorOverviewRuler.border":"#010409","editorWidget.background":"#202020",errorForeground:"#F85149",focusBorder:"#0078D4",foreground:"#CCCCCC","icon.foreground":"#CCCCCC","input.background":"#313131","input.border":"#3C3C3C","input.foreground":"#CCCCCC","input.placeholderForeground":"#989898","inputOption.activeBackground":"#2489DB82","inputOption.activeBorder":"#2488DB","keybindingLabel.foreground":"#CCCCCC","list.activeSelectionIconForeground":"#FFF","list.dropBackground":"#383B3D","menu.background":"#1F1F1F","menu.border":"#454545","menu.foreground":"#CCCCCC","menu.selectionBackground":"#0078d4","menu.separatorBackground":"#454545","notificationCenterHeader.background":"#1F1F1F","notificationCenterHeader.foreground":"#CCCCCC","notifications.background":"#1F1F1F","notifications.border":"#2B2B2B","notifications.foreground":"#CCCCCC","panel.background":"#181818","panel.border":"#2B2B2B","panelInput.border":"#2B2B2B","panelTitle.activeBorder":"#0078D4","panelTitle.activeForeground":"#CCCCCC","panelTitle.inactiveForeground":"#9D9D9D","peekViewEditor.background":"#1F1F1F","peekViewEditor.matchHighlightBackground":"#BB800966","peekViewResult.background":"#1F1F1F","peekViewResult.matchHighlightBackground":"#BB800966","pickerGroup.border":"#3C3C3C","ports.iconRunningProcessForeground":"#369432","progressBar.background":"#0078D4","quickInput.background":"#222222","quickInput.foreground":"#CCCCCC","settings.dropdownBackground":"#313131","settings.dropdownBorder":"#3C3C3C","settings.headerForeground":"#FFFFFF","settings.modifiedItemIndicator":"#BB800966","sideBar.background":"#181818","sideBar.border":"#2B2B2B","sideBar.foreground":"#CCCCCC","sideBarSectionHeader.background":"#181818","sideBarSectionHeader.border":"#2B2B2B","sideBarSectionHeader.foreground":"#CCCCCC","sideBarTitle.foreground":"#CCCCCC","statusBar.background":"#181818","statusBar.border":"#2B2B2B","statusBar.debuggingBackground":"#0078D4","statusBar.debuggingForeground":"#FFFFFF","statusBar.focusBorder":"#0078D4","statusBar.foreground":"#CCCCCC","statusBar.noFolderBackground":"#1F1F1F","statusBarItem.focusBorder":"#0078D4","statusBarItem.prominentBackground":"#6E768166","statusBarItem.remoteBackground":"#0078D4","statusBarItem.remoteForeground":"#FFFFFF","tab.activeBackground":"#1F1F1F","tab.activeBorder":"#1F1F1F","tab.activeBorderTop":"#0078D4","tab.activeForeground":"#FFFFFF","tab.border":"#2B2B2B","tab.hoverBackground":"#1F1F1F","tab.inactiveBackground":"#181818","tab.inactiveForeground":"#9D9D9D","tab.lastPinnedBorder":"#ccc3","tab.selectedBackground":"#222222","tab.selectedBorderTop":"#6caddf","tab.selectedForeground":"#ffffffa0","tab.unfocusedActiveBorder":"#1F1F1F","tab.unfocusedActiveBorderTop":"#2B2B2B","tab.unfocusedHoverBackground":"#1F1F1F","terminal.foreground":"#CCCCCC","terminal.inactiveSelectionBackground":"#3A3D41","terminal.tab.activeBorder":"#0078D4","textBlockQuote.background":"#2B2B2B","textBlockQuote.border":"#616161","textCodeBlock.background":"#2B2B2B","textLink.activeForeground":"#4daafc","textLink.foreground":"#4daafc","textPreformat.background":"#3C3C3C","textPreformat.foreground":"#D0D0D0","textSeparator.foreground":"#21262D","titleBar.activeBackground":"#181818","titleBar.activeForeground":"#CCCCCC","titleBar.border":"#2B2B2B","titleBar.inactiveBackground":"#1F1F1F","titleBar.inactiveForeground":"#9D9D9D","welcomePage.progress.foreground":"#0078D4","welcomePage.tileBackground":"#2B2B2B","widget.border":"#313131"},y={"actionBar.toggledBackground":"#dddddd","activityBar.activeBorder":"#005FB8","activityBar.background":"#F8F8F8","activityBar.border":"#E5E5E5","activityBar.foreground":"#1F1F1F","activityBar.inactiveForeground":"#616161","activityBarBadge.background":"#005FB8","activityBarBadge.foreground":"#FFFFFF","badge.background":"#CCCCCC","badge.foreground":"#3B3B3B","button.background":"#005FB8","button.border":"#0000001a","button.foreground":"#FFFFFF","button.hoverBackground":"#0258A8","button.secondaryBackground":"#E5E5E5","button.secondaryForeground":"#3B3B3B","button.secondaryHoverBackground":"#CCCCCC","chat.slashCommandBackground":"#ADCEFF7A","chat.slashCommandForeground":"#26569E","chat.editedFileForeground":"#895503","checkbox.background":"#F8F8F8","checkbox.border":"#CECECE",descriptionForeground:"#3B3B3B","diffEditor.unchangedRegionBackground":"#f8f8f8","dropdown.background":"#FFFFFF","dropdown.border":"#CECECE","dropdown.foreground":"#3B3B3B","dropdown.listBackground":"#FFFFFF","editor.background":"#FFFFFF","editor.foreground":"#3B3B3B","editor.inactiveSelectionBackground":"#E5EBF1","editor.selectionHighlightBackground":"#ADD6FF80","editorGroup.border":"#E5E5E5","editorGroupHeader.tabsBackground":"#F8F8F8","editorGroupHeader.tabsBorder":"#E5E5E5","editorGutter.addedBackground":"#2EA043","editorGutter.deletedBackground":"#F85149","editorGutter.modifiedBackground":"#005FB8","editorIndentGuide.activeBackground1":"#939393","editorIndentGuide.background1":"#D3D3D3","editorLineNumber.activeForeground":"#171184","editorLineNumber.foreground":"#6E7681","editorOverviewRuler.border":"#E5E5E5","editorSuggestWidget.background":"#F8F8F8","editorWidget.background":"#F8F8F8",errorForeground:"#F85149",focusBorder:"#005FB8",foreground:"#3B3B3B","icon.foreground":"#3B3B3B","input.background":"#FFFFFF","input.border":"#CECECE","input.foreground":"#3B3B3B","input.placeholderForeground":"#767676","inputOption.activeBackground":"#BED6ED","inputOption.activeBorder":"#005FB8","inputOption.activeForeground":"#000000","keybindingLabel.foreground":"#3B3B3B","list.activeSelectionBackground":"#E8E8E8","list.activeSelectionForeground":"#000000","list.activeSelectionIconForeground":"#000000","list.focusAndSelectionOutline":"#005FB8","list.hoverBackground":"#F2F2F2","menu.border":"#CECECE","menu.selectionBackground":"#005FB8","menu.selectionForeground":"#ffffff","notebook.cellBorderColor":"#E5E5E5","notebook.selectedCellBackground":"#C8DDF150","notificationCenterHeader.background":"#FFFFFF","notificationCenterHeader.foreground":"#3B3B3B","notifications.background":"#FFFFFF","notifications.border":"#E5E5E5","notifications.foreground":"#3B3B3B","panel.background":"#F8F8F8","panel.border":"#E5E5E5","panelInput.border":"#E5E5E5","panelTitle.activeBorder":"#005FB8","panelTitle.activeForeground":"#3B3B3B","panelTitle.inactiveForeground":"#3B3B3B","peekViewEditor.matchHighlightBackground":"#BB800966","peekViewResult.background":"#FFFFFF","peekViewResult.matchHighlightBackground":"#BB800966","pickerGroup.border":"#E5E5E5","pickerGroup.foreground":"#8B949E","ports.iconRunningProcessForeground":"#369432","progressBar.background":"#005FB8","quickInput.background":"#F8F8F8","quickInput.foreground":"#3B3B3B","searchEditor.textInputBorder":"#CECECE","settings.dropdownBackground":"#FFFFFF","settings.dropdownBorder":"#CECECE","settings.headerForeground":"#1F1F1F","settings.modifiedItemIndicator":"#BB800966","settings.numberInputBorder":"#CECECE","settings.textInputBorder":"#CECECE","sideBar.background":"#F8F8F8","sideBar.border":"#E5E5E5","sideBar.foreground":"#3B3B3B","sideBarSectionHeader.background":"#F8F8F8","sideBarSectionHeader.border":"#E5E5E5","sideBarSectionHeader.foreground":"#3B3B3B","sideBarTitle.foreground":"#3B3B3B","statusBar.background":"#F8F8F8","statusBar.border":"#E5E5E5","statusBar.debuggingBackground":"#FD716C","statusBar.debuggingForeground":"#000000","statusBar.focusBorder":"#005FB8","statusBar.foreground":"#3B3B3B","statusBar.noFolderBackground":"#F8F8F8","statusBarItem.compactHoverBackground":"#CCCCCC","statusBarItem.errorBackground":"#C72E0F","statusBarItem.focusBorder":"#005FB8","statusBarItem.hoverBackground":"#B8B8B850","statusBarItem.prominentBackground":"#6E768166","statusBarItem.remoteBackground":"#005FB8","statusBarItem.remoteForeground":"#FFFFFF","tab.activeBackground":"#FFFFFF","tab.activeBorder":"#F8F8F8","tab.activeBorderTop":"#005FB8","tab.activeForeground":"#3B3B3B","tab.border":"#E5E5E5","tab.hoverBackground":"#FFFFFF","tab.inactiveBackground":"#F8F8F8","tab.inactiveForeground":"#868686","tab.lastPinnedBorder":"#D4D4D4","tab.selectedBackground":"#ffffffa5","tab.selectedBorderTop":"#68a3da","tab.selectedForeground":"#333333b3","tab.unfocusedActiveBorder":"#F8F8F8","tab.unfocusedActiveBorderTop":"#E5E5E5","tab.unfocusedHoverBackground":"#F8F8F8","terminal.foreground":"#3B3B3B","terminal.inactiveSelectionBackground":"#E5EBF1","terminal.tab.activeBorder":"#005FB8","terminalCursor.foreground":"#005FB8","textBlockQuote.background":"#F8F8F8","textBlockQuote.border":"#E5E5E5","textCodeBlock.background":"#F8F8F8","textLink.activeForeground":"#005FB8","textLink.foreground":"#005FB8","textPreformat.background":"#0000001F","textPreformat.foreground":"#3B3B3B","textSeparator.foreground":"#21262D","titleBar.activeBackground":"#F8F8F8","titleBar.activeForeground":"#1E1E1E","titleBar.border":"#E5E5E5","titleBar.inactiveBackground":"#F8F8F8","titleBar.inactiveForeground":"#8B949E","welcomePage.tileBackground":"#F3F3F3","widget.border":"#E5E5E5"};(r=d||(d={})).toJSONObject=function(e){return e&&{_extensionId:e.extensionId,_extensionIsBuiltin:e.extensionIsBuiltin,_extensionName:e.extensionName,_extensionPublisher:e.extensionPublisher}},r.fromJSONObject=function(e){if(e&&(0,p.isString)(e._extensionId)&&(0,p.isBoolean)(e._extensionIsBuiltin)&&(0,p.isString)(e._extensionName)&&(0,p.isString)(e._extensionPublisher))return{extensionId:e._extensionId,extensionIsBuiltin:e._extensionIsBuiltin,extensionName:e._extensionName,extensionPublisher:e._extensionPublisher}},r.fromName=function(e,t,o=!1){return{extensionPublisher:e,extensionId:`${e}.${t}`,extensionName:t,extensionIsBuiltin:o}};var E=e.i(488259),I=e.i(140889),b=e.i(536766),k=e.i(621826),F=e.i(619122),v=e.i(13306),_=e.i(731931),R=e.i(771275),w=e.i(292608),B=e.i(144881),x=e.i(575129);e.i(698014),e.i(140331);var D=e.i(471999);e.i(900329),e.i(785266),e.i(181268),e.i(70177),e.i(575210),e.i(890787),e.i(67920);var A=e.i(815033);let O={};function z(e,t){let o=O[e];o||(O[e]=o=[]),o.push(t)}function M(e,t){for(let o of e)if(t.textMateRules.push(o),!o.scope){let e=o.settings;if(e)for(let o in e){let i=O[o];if(i){let r=e[o];if("string"==typeof r){let e=B.Color.fromHex(r);for(let o of i)t.colors[o]=e}}"foreground"!==o&&"background"!==o&&"fontStyle"!==o&&delete e[o]}else o.settings={}}}for(let e of(z("background",D.editorBackground),z("foreground",D.editorForeground),z("selection",D.editorSelectionBackground),z("inactiveSelection",D.editorInactiveSelection),z("selectionHighlightColor",D.editorSelectionHighlight),z("findMatchHighlight",D.editorFindMatchHighlight),z("currentFindMatchHighlight",D.editorFindMatch),z("hoverHighlight",D.editorHoverHighlight),z("wordHighlight","editor.wordHighlightBackground"),z("wordHighlightStrong","editor.wordHighlightStrongBackground"),z("findRangeHighlight",D.editorFindRangeHighlight),z("findMatchHighlight","peekViewResult.matchHighlightBackground"),z("referenceHighlight","peekViewEditor.matchHighlightBackground"),z("lineHighlight",A.editorLineHighlight),z("rangeHighlight",A.editorRangeHighlight),z("caret",A.editorCursorForeground),z("invisibles",A.editorWhitespaces),z("guide",A.editorIndentGuide1),z("activeGuide",A.editorActiveIndentGuide1),["ansiBlack","ansiRed","ansiGreen","ansiYellow","ansiBlue","ansiMagenta","ansiCyan","ansiWhite","ansiBrightBlack","ansiBrightRed","ansiBrightGreen","ansiBrightYellow","ansiBrightBlue","ansiBrightMagenta","ansiBrightCyan","ansiBrightWhite"]))z(e,"terminal."+e);var L=e.i(693162),P=e.i(388064),H=e.i(561460);(n=h||(h={}))[n.BOM=65279]="BOM",n[n.SPACE=32]="SPACE",n[n.TAB=9]="TAB",n[n.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",n[n.LINE_FEED=10]="LINE_FEED",n[n.SLASH=47]="SLASH",n[n.LESS_THAN=60]="LESS_THAN",n[n.QUESTION_MARK=63]="QUESTION_MARK",n[n.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",(s=u||(u={}))[s.ROOT_STATE=0]="ROOT_STATE",s[s.DICT_STATE=1]="DICT_STATE",s[s.ARR_STATE=2]="ARR_STATE";var N=e.i(844141);function $(e,t,o){var i;let r,n,s=(i=e,n=(r=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g).exec(i),{next:()=>{if(!n)return null;let e=n[0];return n=r.exec(i),e}}),a=s.next();for(;null!==a;){let e=0;if(2===a.length&&":"===a.charAt(1)){switch(a.charAt(0)){case"R":e=1;break;case"L":e=-1;break;default:console.log(`Unknown priority ${a} in scope selector`)}a=s.next()}let t=c();if(t&&o.push({matcher:t,priority:e}),","!==a)break;a=s.next()}function l(){if("-"===a){a=s.next();let e=l();return e?t=>0>e(t)?0:-1:null}if("("===a){a=s.next();let e=function(){let e=c();if(!e)return null;let t=[];for(;e&&(t.push(e),"|"===a||","===a);){do a=s.next();while("|"===a||","===a)e=c()}return e=>{let o=t[0](e);for(let i=1;i<t.length;i++)o=Math.max(o,t[i](e));return o}}();return")"===a&&(a=s.next()),e}if(j(a)){let e=[];do e.push(a),a=s.next();while(j(a))return o=>t(e,o)}return null}function c(){let e=l();if(!e)return null;let t=[];for(;e;)t.push(e),e=l();return e=>{let o=t[0](e);for(let i=1;o>=0&&i<t.length;i++)o=Math.min(o,t[i](e));return o}}}function j(e){return!!e&&!!e.match(/[\w\.:]+/)}var G=e.i(601293),U=e.i(701575),K=e.i(232762);e.i(561295),e.i(20088);let W=k.Registry.as(x.Extensions.ColorContribution),q=(0,N.getTokenClassificationRegistry)(),V={comments:["comment","punctuation.definition.comment"],strings:["string","meta.embedded.assembly"],keywords:["keyword - keyword.operator","keyword.control","storage","storage.type"],numbers:["constant.numeric"],types:["entity.name.type","entity.name.class","support.type","support.class"],functions:["entity.name.function","support.function"],variables:["variable","entity.name.variable"]};class J{static{this.STORAGE_KEY="colorThemeData"}constructor(e,t,o){this.themeTokenColors=[],this.customTokenColors=[],this.colorMap={},this.customColorMap={},this.semanticTokenRules=[],this.customSemanticTokenRules=[],this.textMateThemingRules=void 0,this.tokenColorIndex=void 0,this.tokenFontIndex=void 0,this.id=e,this.label=t,this.settingsId=o,this.isLoaded=!1}get semanticHighlighting(){return void 0!==this.customSemanticHighlighting?this.customSemanticHighlighting:void 0!==this.customSemanticHighlightingDeprecated?this.customSemanticHighlightingDeprecated:!!this.themeSemanticHighlighting}get tokenColors(){if(!this.textMateThemingRules){let t=[],o=this.getColor(D.editorForeground)||this.getDefault(D.editorForeground),i=this.getColor(D.editorBackground)||this.getDefault(D.editorBackground);t.push({settings:{foreground:en(o),background:en(i)}});let r=!1;function e(e){if(e.scope&&e.settings){"token.info-token"===e.scope&&(r=!0);let o=e.settings;t.push({scope:e.scope,settings:{foreground:en(o.foreground),background:en(o.background),fontStyle:o.fontStyle,fontSize:o.fontSize,fontFamily:o.fontFamily,lineHeight:o.lineHeight}})}}this.themeTokenColors.forEach(e),this.customTokenColors.forEach(e),r||X[this.type].forEach(e),this.textMateThemingRules=t}return this.textMateThemingRules}getColor(e,t){let o=this.customColorMap[e];if(o instanceof B.Color)return o;if(void 0===o){let t=this.colorMap[e];if(void 0!==t)return t}if(!1!==t)return this.getDefault(e)}getTokenStyle(e,t,o,i=!0,r={}){let n={foreground:void 0,bold:void 0,underline:void 0,strikethrough:void 0,italic:void 0},s={foreground:-1,bold:-1,underline:-1,strikethrough:-1,italic:-1,fontFamily:-1,fontSize:-1,lineHeight:-1};function a(e,t,o){for(let i of(t.foreground&&s.foreground<=e&&(s.foreground=e,n.foreground=t.foreground,r.foreground=o),["bold","underline","strikethrough","italic"])){let a=t[i];void 0!==a&&s[i]<=e&&(s[i]=e,n[i]=a,r[i]=o)}}function l(i){let r=i.selector.match(e,t,o);r>=0&&a(r,i.style,i)}this.semanticTokenRules.forEach(l),this.customSemanticTokenRules.forEach(l);let c=!1;for(let e in s)-1===s[e]?c=!0:s[e]=Number.MAX_VALUE;if(c)for(let r of q.getTokenStylingDefaultRules()){let n=r.selector.match(e,t,o);if(n>=0){let e;if(r.defaults.scopesToProbe&&(e=this.resolveScopes(r.defaults.scopesToProbe))&&a(n,e,r.defaults.scopesToProbe),!e&&!1!==i){let t=r.defaults[this.type];(e=this.resolveTokenStyleValue(t))&&a(n,e,t)}}}return N.TokenStyle.fromData(n)}resolveTokenStyleValue(e){if(void 0===e);else if("string"==typeof e){let{type:t,modifiers:o,language:i}=(0,N.parseClassifierString)(e,"");return this.getTokenStyle(t,o,i)}else if("object"==typeof e)return e}getTokenColorIndex(){if(!this.tokenColorIndex){let e=new ei;this.tokenColors.forEach(t=>{e.add(t.settings.foreground),e.add(t.settings.background)}),this.semanticTokenRules.forEach(t=>e.add(t.style.foreground)),q.getTokenStylingDefaultRules().forEach(t=>{let o=t.defaults[this.type];o&&"object"==typeof o&&e.add(o.foreground)}),this.customSemanticTokenRules.forEach(t=>e.add(t.style.foreground)),this.tokenColorIndex=e}return this.tokenColorIndex}getTokenFontIndex(){if(!this.tokenFontIndex){let e=new er;this.tokenColors.forEach(t=>e.add(t.settings.fontFamily,t.settings.fontSize,t.settings.lineHeight)),this.tokenFontIndex=e}return this.tokenFontIndex}get tokenColorMap(){return this.getTokenColorIndex().asArray()}get tokenFontMap(){return this.getTokenFontIndex().asArray()}getTokenStyleMetadata(e,t,o,i=!0,r={}){let{type:n,language:s}=(0,N.parseClassifierString)(e,o),a=this.getTokenStyle(n,t,s,i,r);if(a)return{foreground:this.getTokenColorIndex().get(a.foreground),bold:a.bold,underline:a.underline,strikethrough:a.strikethrough,italic:a.italic}}getTokenStylingRuleScope(e){return -1!==this.customSemanticTokenRules.indexOf(e)?"setting":-1!==this.semanticTokenRules.indexOf(e)?"theme":void 0}getDefault(e){return W.resolveDefaultColor(e,this)}resolveScopes(e,t){for(let i of(this.themeTokenScopeMatchers||(this.themeTokenScopeMatchers=this.themeTokenColors.map(et)),this.customTokenScopeMatchers||(this.customTokenScopeMatchers=this.customTokenColors.map(et)),e)){let e,r,n,s,a=-1,l=-1;function o(t,o){for(let c=0;c<t.length;c++){let d=t[c](i);if(d>=0){let t=o[c],i=o[c].settings;d>=a&&i.foreground&&(e=i.foreground,a=d,s=t),d>=l&&(0,p.isString)(i.fontStyle)&&(r=i.fontStyle,l=d,n=t)}}}if(o(this.themeTokenScopeMatchers,this.themeTokenColors),o(this.customTokenScopeMatchers,this.customTokenColors),void 0!==e||void 0!==r)return t&&(t.foreground=s,t.bold=t.italic=t.underline=t.strikethrough=n,t.scope=i),N.TokenStyle.fromSettings(e,r)}}defines(e){let t=this.customColorMap[e];return t instanceof B.Color||void 0===t&&this.colorMap.hasOwnProperty(e)}setCustomizations(e){this.setCustomColors(e.colorCustomizations),this.setCustomTokenColors(e.tokenColorCustomizations),this.setCustomSemanticTokenColors(e.semanticTokenColorCustomizations)}setCustomColors(e){this.customColorMap={},this.overwriteCustomColors(e);let t=this.getThemeSpecificColors(e);(0,p.isObject)(t)&&this.overwriteCustomColors(t),this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.customTokenScopeMatchers=void 0}overwriteCustomColors(e){for(let t in e){let o=e[t];o===x.DEFAULT_COLOR_CONFIG_VALUE?this.customColorMap[t]=x.DEFAULT_COLOR_CONFIG_VALUE:"string"==typeof o&&(this.customColorMap[t]=B.Color.fromHex(o))}}setCustomTokenColors(e){this.customTokenColors=[],this.customSemanticHighlightingDeprecated=void 0,this.addCustomTokenColors(e);let t=this.getThemeSpecificColors(e);(0,p.isObject)(t)&&this.addCustomTokenColors(t),this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.customTokenScopeMatchers=void 0}setCustomSemanticTokenColors(e){if(this.customSemanticTokenRules=[],this.customSemanticHighlighting=void 0,e){this.customSemanticHighlighting=e.enabled,e.rules&&this.readSemanticTokenRules(e.rules);let t=this.getThemeSpecificColors(e);(0,p.isObject)(t)&&(void 0!==t.enabled&&(this.customSemanticHighlighting=t.enabled),t.rules&&this.readSemanticTokenRules(t.rules))}this.tokenColorIndex=void 0,this.textMateThemingRules=void 0}isThemeScope(e){return"["===e.charAt(0)&&"]"===e.charAt(e.length-1)}isThemeScopeMatch(e){let t=e.charAt(0),o=e.charAt(e.length-1),i=e.slice(0,-1),r=e.slice(1,-1),n=e.slice(1);return e===this.settingsId||this.settingsId.includes(r)&&"*"===t&&"*"===o||this.settingsId.startsWith(i)&&"*"===o||this.settingsId.endsWith(n)&&"*"===t}getThemeSpecificColors(e){let t;for(let o in e){let i=e[o];if(this.isThemeScope(o)&&i instanceof Object&&!Array.isArray(i))for(let e of o.match(C)||[]){let o=e.substring(1,e.length-1);if(this.isThemeScopeMatch(o))for(let e in t||(t={}),i){let o=t[e],r=i[e];Array.isArray(o)&&Array.isArray(r)?t[e]=o.concat(r):r&&(t[e]=r)}}}return t}readSemanticTokenRules(e){for(let t in e)if(!this.isThemeScope(t))try{let o=eo(t,e[t]);o&&this.customSemanticTokenRules.push(o)}catch(e){}}addCustomTokenColors(e){for(let t in V){let o=e[t];if(o){let e="string"==typeof o?{foreground:o}:o;for(let o of V[t])this.customTokenColors.push({scope:o,settings:e})}}if(Array.isArray(e.textMateRules))for(let t of e.textMateRules)t.scope&&t.settings&&this.customTokenColors.push(t);void 0!==e.semanticHighlighting&&(this.customSemanticHighlightingDeprecated=e.semanticHighlighting)}ensureLoaded(e){return this.isLoaded?Promise.resolve(void 0):this.load(e)}reload(e){return this.load(e)}load(e){if(!this.location)return Promise.resolve(void 0);this.themeTokenColors=[],this.clearCaches();let t={colors:{},textMateRules:[],semanticTokenRules:[],semanticHighlighting:!1};return Q(e,this.location,t).then(e=>{this.isLoaded=!0,this.semanticTokenRules=t.semanticTokenRules,this.colorMap=t.colors,this.themeTokenColors=t.textMateRules,this.themeSemanticHighlighting=t.semanticHighlighting})}clearCaches(){this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.themeTokenScopeMatchers=void 0,this.customTokenScopeMatchers=void 0}toStorage(e){let t={};for(let e in this.colorMap)t[e]=B.Color.Format.CSS.formatHexA(this.colorMap[e],!0);let o=JSON.stringify({id:this.id,label:this.label,settingsId:this.settingsId,themeTokenColors:this.themeTokenColors.map(e=>({settings:e.settings,scope:e.scope})),semanticTokenRules:this.semanticTokenRules.map(N.SemanticTokenRule.toJSONObject),extensionData:d.toJSONObject(this.extensionData),themeSemanticHighlighting:this.themeSemanticHighlighting,colorMap:t,watch:this.watch});e.store(J.STORAGE_KEY,o,U.StorageScope.PROFILE,U.StorageTarget.USER)}get themeTypeSelector(){return this.classNames[0]}get classNames(){return this.id.split(" ")}get type(){switch(this.themeTypeSelector){case K.ThemeTypeSelector.VS:return K.ColorScheme.LIGHT;case K.ThemeTypeSelector.HC_BLACK:return K.ColorScheme.HIGH_CONTRAST_DARK;case K.ThemeTypeSelector.HC_LIGHT:return K.ColorScheme.HIGH_CONTRAST_LIGHT;default:return K.ColorScheme.DARK}}static createUnloadedThemeForThemeType(e,t){return J.createUnloadedTheme((0,P.getThemeTypeSelector)(e),t)}static createUnloadedTheme(e,t){let o=new J(e,"","__"+e);if(o.isLoaded=!1,o.themeTokenColors=[],o.watch=!1,t)for(let e in t)o.colorMap[e]=B.Color.fromHex(t[e]);return o}static createLoadedEmptyTheme(e,t){let o=new J(e,"",t);return o.isLoaded=!0,o.themeTokenColors=[],o.watch=!1,o}static fromStorageData(e){let t=e.get(J.STORAGE_KEY,U.StorageScope.PROFILE);if(t)try{let e=JSON.parse(t),o=new J("","","");for(let t in e)switch(t){case"colorMap":{let i=e[t];for(let e in i)o.colorMap[e]=B.Color.fromHex(i[e]);break}case"themeTokenColors":case"id":case"label":case"settingsId":case"watch":case"themeSemanticHighlighting":o[t]=e[t];break;case"semanticTokenRules":{let i=e[t];if(Array.isArray(i))for(let e of i){let t=N.SemanticTokenRule.fromJSONObject(q,e);t&&o.semanticTokenRules.push(t)}break}case"location":break;case"extensionData":o.extensionData=d.fromJSONObject(e.extensionData)}if(!o.id||!o.settingsId)return;return o}catch(e){return}}static fromExtensionTheme(e,t,o){var i,r;let n,s=e.uiTheme||"vs-dark",a=(i=o.extensionId,(r=e.path).startsWith("./")&&(r=r.substr(2)),(n=(n=`${i}-${r}`).replace(/[^_a-zA-Z0-9-]/g,"-")).charAt(0).match(/[0-9-]/)&&(n="_"+n),n),l=`${s} ${a}`,c=e.label||(0,R.basename)(e.path),d=e.id||c,h=new J(l,c,d);return h.description=e.description,h.watch=!0===e._watch,h.location=t,h.extensionData=o,h.isLoaded=!1,h}}async function Q(e,t,o){if(".json"!==(0,L.extname)(t))return Y(e,t,o);{let i=await e.readExtensionResource(t),r=[],n=(0,w.parse)(i,r);if(r.length>0)return Promise.reject(Error((0,f.localize)(14353,"Problems parsing JSON theme file: {0}",r.map(e=>(0,H.getParseErrorMessage)(e.error)).join(", "))));if("object"!==(0,w.getNodeType)(n))return Promise.reject(Error((0,f.localize)(14354,"Invalid format for JSON theme file: Object expected.")));if(n.include&&await Q(e,(0,L.joinPath)((0,L.dirname)(t),n.include),o),Array.isArray(n.settings))return M(n.settings,o),null;o.semanticHighlighting=o.semanticHighlighting||n.semanticHighlighting;let s=n.colors;if(s){if("object"!=typeof s)return Promise.reject(Error((0,f.localize)(14355,"Problem parsing color theme file: {0}. Property 'colors' is not of type 'object'.",t.toString())));for(let e in s){let t=s[e];t===x.DEFAULT_COLOR_CONFIG_VALUE?delete o.colors[e]:"string"==typeof t&&(o.colors[e]=B.Color.fromHex(s[e]))}}let a=n.tokenColors;if(a)if(Array.isArray(a))o.textMateRules.push(...a);else{if("string"!=typeof a)return Promise.reject(Error((0,f.localize)(14356,"Problem parsing color theme file: {0}. Property 'tokenColors' should be either an array specifying colors or a path to a TextMate theme file",t.toString())));await Y(e,(0,L.joinPath)((0,L.dirname)(t),a),o)}let l=n.semanticTokenColors;if(l&&"object"==typeof l)for(let e in l)try{let t=eo(e,l[e]);t&&o.semanticTokenRules.push(t)}catch(e){return Promise.reject(Error((0,f.localize)(14357,"Problem parsing color theme file: {0}. Property 'semanticTokenColors' contains a invalid selector",t.toString())))}}}function Y(e,t,o){return e.readExtensionResource(t).then(e=>{try{let t=function(e){let t=e.length,o=0;function i(){for(;o<t;){let t=e.charCodeAt(o);if(t!==h.SPACE&&t!==h.TAB&&t!==h.CARRIAGE_RETURN&&t!==h.LINE_FEED)break;o+=1}}function r(t){if(e.substr(o,t.length)===t){var i;return i=t.length,o+=i,!0}return!1}function n(i){let r=e.indexOf(i,o);o=-1!==r?r+i.length:t}function s(i){let r=e.indexOf(i,o);if(-1!==r){let t=e.substring(o,r);return o=r+i.length,t}{let i=e.substr(o);return o=t,i}}t>0&&e.charCodeAt(0)===h.BOM&&(o=1);let a=u.ROOT_STATE,l=null,c=[],d=[],g=null;function m(e,t){c.push(a),d.push(l),a=e,l=t}function f(){if(0===c.length)return p("illegal state stack");a=c.pop(),l=d.pop()}function p(t){throw Error("Near offset "+o+": "+t+" ~~~"+e.substr(o,50)+"~~~")}function T(){if(a===u.DICT_STATE)f();else if(a===u.ARR_STATE)return p("unexpected </dict>");else return p("unexpected </dict>")}function C(){return a===u.DICT_STATE||a!==u.ARR_STATE?p("unexpected </array>"):void f()}function S(e){if(a===u.DICT_STATE){if(null===g)return p("missing <key>");l[g]=e,g=null}else a===u.ARR_STATE?l.push(e):l=e}function y(e){if(e.isClosed)return"";let t=s("</");return n(">"),t.replace(/&#([0-9]+);/g,function(e,t){return String.fromCodePoint(parseInt(t,10))}).replace(/&#x([0-9a-f]+);/g,function(e,t){return String.fromCodePoint(parseInt(t,16))}).replace(/&amp;|&lt;|&gt;|&quot;|&apos;/g,function(e){switch(e){case"&amp;":return"&";case"&lt;":return"<";case"&gt;":return">";case"&quot;":return'"';case"&apos;":return"'"}return e})}for(;o<t&&(i(),!(o>=t));){let c=e.charCodeAt(o);if(o+=1,c!==h.LESS_THAN)return p("expected <");if(o>=t)return p("unexpected end of input");let d=e.charCodeAt(o);if(d===h.QUESTION_MARK){o+=1,n("?>");continue}if(d===h.EXCLAMATION_MARK){if(o+=1,r("--")){n("-->");continue}n(">");continue}if(d===h.SLASH){if(o+=1,i(),r("plist")){n(">");continue}if(r("dict")){n(">"),T();continue}if(r("array")){n(">"),C();continue}return p("unexpected closed tag")}let f=function(){let e=s(">"),t=!1;return e.charCodeAt(e.length-1)===h.SLASH&&(t=!0,e=e.substring(0,e.length-1)),{name:e.trim(),isClosed:t}}();switch(f.name){case"dict":a===u.DICT_STATE?function(){if(null===g)return p("missing <key>");let e={};l[g]=e,g=null,m(u.DICT_STATE,e)}():a===u.ARR_STATE?function(){let e={};l.push(e),m(u.DICT_STATE,e)}():(l={},m(u.DICT_STATE,l)),f.isClosed&&T();continue;case"array":a===u.DICT_STATE?function(){if(null===g)return p("missing <key>");let e=[];l[g]=e,g=null,m(u.ARR_STATE,e)}():a===u.ARR_STATE?function(){let e=[];l.push(e),m(u.ARR_STATE,e)}():(l=[],m(u.ARR_STATE,l)),f.isClosed&&C();continue;case"key":!function(e){if(a===u.DICT_STATE){if(null!==g)return p("too many <key>");g=e}else u.ARR_STATE,p("unexpected <key>")}(y(f));continue;case"string":!function(e){if(a===u.DICT_STATE){if(null===g)return p("missing <key>");l[g]=e,g=null}else a===u.ARR_STATE?l.push(e):l=e}(y(f));continue;case"real":!function(e){if(isNaN(e))return p("cannot parse float");if(a===u.DICT_STATE){if(null===g)return p("missing <key>");l[g]=e,g=null}else a===u.ARR_STATE?l.push(e):l=e}(parseFloat(y(f)));continue;case"integer":!function(e){if(isNaN(e))return p("cannot parse integer");if(a===u.DICT_STATE){if(null===g)return p("missing <key>");l[g]=e,g=null}else a===u.ARR_STATE?l.push(e):l=e}(parseInt(y(f),10));continue;case"date":!function(e){if(a===u.DICT_STATE){if(null===g)return p("missing <key>");l[g]=e,g=null}else a===u.ARR_STATE?l.push(e):l=e}(new Date(y(f)));continue;case"data":!function(e){if(a===u.DICT_STATE){if(null===g)return p("missing <key>");l[g]=e,g=null}else a===u.ARR_STATE?l.push(e):l=e}(y(f));continue;case"true":y(f),S(!0);continue;case"false":y(f),S(!1);continue}if(!/^plist/.test(f.name))return p("unexpected opened tag "+f.name)}return l}(e).settings;if(!Array.isArray(t))return Promise.reject(Error((0,f.localize)(14358,"Problem parsing tmTheme file: {0}. 'settings' is not array.")));return M(t,o),Promise.resolve(null)}catch(e){return Promise.reject(Error((0,f.localize)(14359,"Problems parsing tmTheme file: {0}",e.message)))}},e=>Promise.reject(Error((0,f.localize)(14360,"Problems loading tmTheme file {0}: {1}",t.toString(),e.message))))}let X={light:[{scope:"token.info-token",settings:{foreground:"#316bcd"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#cd3131"}},{scope:"token.debug-token",settings:{foreground:"#800080"}}],dark:[{scope:"token.info-token",settings:{foreground:"#6796e6"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#f44747"}},{scope:"token.debug-token",settings:{foreground:"#b267e6"}}],hcLight:[{scope:"token.info-token",settings:{foreground:"#316bcd"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#cd3131"}},{scope:"token.debug-token",settings:{foreground:"#800080"}}],hcDark:[{scope:"token.info-token",settings:{foreground:"#6796e6"}},{scope:"token.warn-token",settings:{foreground:"#008000"}},{scope:"token.error-token",settings:{foreground:"#FF0000"}},{scope:"token.debug-token",settings:{foreground:"#b267e6"}}]},Z=e=>-1;function ee(e,t){let o;return t.length<e.length?-1:e.every(e=>{for(let i=t.length-1;i>=0;i--)if(function(e,t){if(!e)return!1;if(e===t)return!0;let o=t.length;return e.length>o&&e.substr(0,o)===t&&"."===e[o]}(t[i],e))return o=(i+1)*65536+e.length,!0;return!1})&&void 0!==o?o:-1}function et(e){let t=e.scope;if(!t||!e.settings)return Z;let o=[];if(Array.isArray(t))for(let e of t)$(e,ee,o);else $(t,ee,o);return 0===o.length?Z:e=>{let t=o[0].matcher(e);for(let i=1;i<o.length;i++)t=Math.max(t,o[i].matcher(e));return t}}function eo(e,t){var o;let i,r=q.parseTokenSelector(e);if("string"==typeof t?i=N.TokenStyle.fromSettings(t,void 0):(o=t)&&((0,p.isString)(o.foreground)||(0,p.isString)(o.fontStyle)||(0,p.isBoolean)(o.italic)||(0,p.isBoolean)(o.underline)||(0,p.isBoolean)(o.strikethrough)||(0,p.isBoolean)(o.bold))&&(i=N.TokenStyle.fromSettings(t.foreground,t.fontStyle,t.bold,t.underline,t.strikethrough,t.italic)),i)return{selector:r,style:i}}class ei{constructor(){this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null)}add(e){if(void 0===(e=en(e)))return 0;let t=this._color2id[e];return t||(t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e),t}get(e){if(void 0===(e=en(e)))return 0;let t=this._color2id[e];return t||(console.log(`Color ${e} not in index.`),0)}asArray(){return this._id2color.slice(0)}}class er{constructor(){this._lastFontId=0,this._id2font=[],this._font2id=new Map}add(e,t,o){let i={fontFamily:e,fontSize:t,lineHeight:o},r=this._font2id.get(i);return r||(r=++this._lastFontId,this._font2id.set(i,r),this._id2font[r]=i),r}get(e){let t=this._font2id.get(e);return t||0}asArray(){return this._id2font.slice(0)}}function en(e){if(!e)return;"string"!=typeof e&&(e=B.Color.Format.CSS.formatHexA(e,!0));let t=e.length;if(e.charCodeAt(0)!==G.CharCode.Hash||4!==t&&5!==t&&7!==t&&9!==t)return;let o=[G.CharCode.Hash];for(let r=1;r<t;r++){var i;let n=(i=e.charCodeAt(r))>=G.CharCode.Digit0&&i<=G.CharCode.Digit9||i>=G.CharCode.A&&i<=G.CharCode.F?i:i>=G.CharCode.a&&i<=G.CharCode.f?i-G.CharCode.a+G.CharCode.A:0;if(!n)return;o.push(n),(4===t||5===t)&&o.push(n)}return 9===o.length&&o[7]===G.CharCode.F&&o[8]===G.CharCode.F&&(o.length=7),String.fromCharCode(...o)}var es=e.i(781808),ea=e.i(4160),el=e.i(321012);let ec={type:"object",allowComments:!0,allowTrailingCommas:!0,definitions:{folderExpanded:{type:"string",description:(0,f.localize)(14377,"The folder icon for expanded folders. The expanded folder icon is optional. If not set, the icon defined for folder will be shown.")},folder:{type:"string",description:(0,f.localize)(14378,"The folder icon for collapsed folders, and if folderExpanded is not set, also for expanded folders.")},file:{type:"string",description:(0,f.localize)(14379,"The default file icon, shown for all files that don't match any extension, filename or language id.")},rootFolder:{type:"string",description:(0,f.localize)(14380,"The folder icon for collapsed root folders, and if rootFolderExpanded is not set, also for expanded root folders.")},rootFolderExpanded:{type:"string",description:(0,f.localize)(14381,"The folder icon for expanded root folders. The expanded root folder icon is optional. If not set, the icon defined for root folder will be shown.")},rootFolderNames:{type:"object",description:(0,f.localize)(14382,"Associates root folder names to icons. The object key is the root folder name. No patterns or wildcards are allowed. Root folder name matching is case insensitive."),additionalProperties:{type:"string",description:(0,f.localize)(14383,"The ID of the icon definition for the association.")}},rootFolderNamesExpanded:{type:"object",description:(0,f.localize)(14384,"Associates root folder names to icons for expanded root folders. The object key is the root folder name. No patterns or wildcards are allowed. Root folder name matching is case insensitive."),additionalProperties:{type:"string",description:(0,f.localize)(14385,"The ID of the icon definition for the association.")}},folderNames:{type:"object",description:(0,f.localize)(14386,"Associates folder names to icons. The object key is the folder name, not including any path segments. No patterns or wildcards are allowed. Folder name matching is case insensitive."),additionalProperties:{type:"string",description:(0,f.localize)(14383,"The ID of the icon definition for the association.")}},folderNamesExpanded:{type:"object",description:(0,f.localize)(14387,"Associates folder names to icons for expanded folders. The object key is the folder name, not including any path segments. No patterns or wildcards are allowed. Folder name matching is case insensitive."),additionalProperties:{type:"string",description:(0,f.localize)(14388,"The ID of the icon definition for the association.")}},fileExtensions:{type:"object",description:(0,f.localize)(14389,"Associates file extensions to icons. The object key is the file extension name. The extension name is the last segment of a file name after the last dot (not including the dot). Extensions are compared case insensitive."),additionalProperties:{type:"string",description:(0,f.localize)(14390,"The ID of the icon definition for the association.")}},fileNames:{type:"object",description:(0,f.localize)(14391,"Associates file names to icons. The object key is the full file name, but not including any path segments. File name can include dots and a possible file extension. No patterns or wildcards are allowed. File name matching is case insensitive."),additionalProperties:{type:"string",description:(0,f.localize)(14392,"The ID of the icon definition for the association.")}},languageIds:{type:"object",description:(0,f.localize)(14393,"Associates languages to icons. The object key is the language id as defined in the language contribution point."),additionalProperties:{type:"string",description:(0,f.localize)(14394,"The ID of the icon definition for the association.")}},associations:{type:"object",properties:{folderExpanded:{$ref:"#/definitions/folderExpanded"},folder:{$ref:"#/definitions/folder"},file:{$ref:"#/definitions/file"},folderNames:{$ref:"#/definitions/folderNames"},folderNamesExpanded:{$ref:"#/definitions/folderNamesExpanded"},rootFolder:{$ref:"#/definitions/rootFolder"},rootFolderExpanded:{$ref:"#/definitions/rootFolderExpanded"},rootFolderNames:{$ref:"#/definitions/rootFolderNames"},rootFolderNamesExpanded:{$ref:"#/definitions/rootFolderNamesExpanded"},fileExtensions:{$ref:"#/definitions/fileExtensions"},fileNames:{$ref:"#/definitions/fileNames"},languageIds:{$ref:"#/definitions/languageIds"}}}},properties:{fonts:{type:"array",description:(0,f.localize)(14395,"Fonts that are used in the icon definitions."),items:{type:"object",properties:{id:{type:"string",description:(0,f.localize)(14396,"The ID of the font."),pattern:el.fontIdRegex.source,patternErrorMessage:el.fontIdErrorMessage},src:{type:"array",description:(0,f.localize)(14397,"The location of the font."),items:{type:"object",properties:{path:{type:"string",description:(0,f.localize)(14398,"The font path, relative to the current file icon theme file.")},format:{type:"string",description:(0,f.localize)(14399,"The format of the font."),enum:["woff","woff2","truetype","opentype","embedded-opentype","svg"]}},required:["path","format"]}},weight:{type:"string",description:(0,f.localize)(14400,"The weight of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight for valid values."),pattern:el.fontWeightRegex.source},style:{type:"string",description:(0,f.localize)(14401,"The style of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-style for valid values."),pattern:el.fontStyleRegex.source},size:{type:"string",description:(0,f.localize)(14402,"The default size of the font. We strongly recommend using a percentage value, for example: 125%."),pattern:el.fontSizeRegex.source}},required:["id","src"]}},iconDefinitions:{type:"object",description:(0,f.localize)(14403,"Description of all icons that can be used when associating files to icons."),additionalProperties:{type:"object",description:(0,f.localize)(14404,"An icon definition. The object key is the ID of the definition."),properties:{iconPath:{type:"string",description:(0,f.localize)(14405,"When using a SVG or PNG: The path to the image. The path is relative to the icon set file.")},fontCharacter:{type:"string",description:(0,f.localize)(14406,"When using a glyph font: The character in the font to use.")},fontColor:{type:"string",format:"color-hex",description:(0,f.localize)(14407,"When using a glyph font: The color to use."),pattern:el.fontColorRegex.source},fontSize:{type:"string",description:(0,f.localize)(14408,"When using a font: The font size in percentage to the text font. If not set, defaults to the size in the font definition."),pattern:el.fontSizeRegex.source},fontId:{type:"string",description:(0,f.localize)(14409,"When using a font: The id of the font. If not set, defaults to the first font definition."),pattern:el.fontIdRegex.source,patternErrorMessage:el.fontIdErrorMessage}}}},folderExpanded:{$ref:"#/definitions/folderExpanded"},folder:{$ref:"#/definitions/folder"},file:{$ref:"#/definitions/file"},folderNames:{$ref:"#/definitions/folderNames"},folderNamesExpanded:{$ref:"#/definitions/folderNamesExpanded"},rootFolder:{$ref:"#/definitions/rootFolder"},rootFolderExpanded:{$ref:"#/definitions/rootFolderExpanded"},rootFolderNames:{$ref:"#/definitions/rootFolderNames"},rootFolderNamesExpanded:{$ref:"#/definitions/rootFolderNamesExpanded"},fileExtensions:{$ref:"#/definitions/fileExtensions"},fileNames:{$ref:"#/definitions/fileNames"},languageIds:{$ref:"#/definitions/languageIds"},light:{$ref:"#/definitions/associations",description:(0,f.localize)(14410,"Optional associations for file icons in light color themes.")},highContrast:{$ref:"#/definitions/associations",description:(0,f.localize)(14411,"Optional associations for file icons in high contrast color themes.")},hidesExplorerArrows:{type:"boolean",description:(0,f.localize)(14412,"Configures whether the file explorer's arrows should be hidden when this theme is active.")},showLanguageModeIcons:{type:"boolean",description:(0,f.localize)(14413,"Configures whether the default language icons should be used if the theme does not define an icon for a language.")}}};var ed=e.i(611130),eh=e.i(365808),eu=e.i(633450);class eg{static{this.STORAGE_KEY="iconThemeData"}constructor(e,t,o){this.id=e,this.label=t,this.settingsId=o,this.isLoaded=!1,this.hasFileIcons=!1,this.hasFolderIcons=!1,this.hidesExplorerArrows=!1}ensureLoaded(e){return this.isLoaded?Promise.resolve(this.styleSheetContent):this.load(e)}reload(e){return this.load(e)}load(e){return e.load(this)}static fromExtensionTheme(e,t,o){let i=new eg(o.extensionId+"-"+e.id,e.label||(0,R.basename)(e.path),e.id);return i.description=e.description,i.location=t,i.extensionData=o,i.watch=e._watch,i.isLoaded=!1,i}static{this._noIconTheme=null}static get noIconTheme(){let e=eg._noIconTheme;return e||((e=eg._noIconTheme=new eg("","",null)).hasFileIcons=!1,e.hasFolderIcons=!1,e.hidesExplorerArrows=!1,e.isLoaded=!0,e.extensionData=void 0,e.watch=!1),e}static createUnloadedTheme(e){let t=new eg(e,"","__"+e);return t.isLoaded=!1,t.hasFileIcons=!1,t.hasFolderIcons=!1,t.hidesExplorerArrows=!1,t.extensionData=void 0,t.watch=!1,t}static fromStorageData(e){let t=e.get(eg.STORAGE_KEY,U.StorageScope.PROFILE);if(t)try{let e=JSON.parse(t),o=new eg("","",null);for(let t in e)switch(t){case"id":case"label":case"description":case"settingsId":case"styleSheetContent":case"hasFileIcons":case"hidesExplorerArrows":case"hasFolderIcons":case"watch":o[t]=e[t];break;case"location":break;case"extensionData":o.extensionData=d.fromJSONObject(e.extensionData)}return o}catch(e){return}}toStorage(e){let t=JSON.stringify({id:this.id,label:this.label,description:this.description,settingsId:this.settingsId,styleSheetContent:this.styleSheetContent,hasFileIcons:this.hasFileIcons,hasFolderIcons:this.hasFolderIcons,hidesExplorerArrows:this.hidesExplorerArrows,extensionData:d.toJSONObject(this.extensionData),watch:this.watch});e.store(eg.STORAGE_KEY,t,U.StorageScope.PROFILE,U.StorageTarget.MACHINE)}}class em{constructor(e,t){this.fileService=e,this.languageService=t}load(e){return e.location?this.loadIconThemeDocument(e.location).then(t=>{let o=this.processIconThemeDocument(e.id,e.location,t);return e.styleSheetContent=o.content,e.hasFileIcons=o.hasFileIcons,e.hasFolderIcons=o.hasFolderIcons,e.hidesExplorerArrows=o.hidesExplorerArrows,e.isLoaded=!0,e.styleSheetContent}):Promise.resolve(e.styleSheetContent)}loadIconThemeDocument(e){return this.fileService.readExtensionResource(e).then(e=>{let t=[],o=(0,w.parse)(e,t);return t.length>0?Promise.reject(Error((0,f.localize)(14316,"Problems parsing file icons file: {0}",t.map(e=>(0,H.getParseErrorMessage)(e.error)).join(", ")))):"object"!==(0,w.getNodeType)(o)?Promise.reject(Error((0,f.localize)(14317,"Invalid format for file icons theme file: Object expected."))):Promise.resolve(o)})}processIconThemeDocument(e,t,o){let i={content:"",hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!!o.hidesExplorerArrows},r=!1;if(!o.iconDefinitions)return i;let n={},s={},a=(0,L.dirname)(t);function l(e){return(0,L.joinPath)(a,e)}function c(e,t){function o(e,t){if(t){let o=n[t];o||(o=n[t]=new eh.Builder),o.push(e)}}if(e){let n=eh.inline`.show-file-icons`;t&&(n=eh.inline`${t} ${n}`);let a=eh.inline`.monaco-tl-twistie.collapsible:not(.collapsed) + .monaco-tl-contents`;e.folder&&(o(eh.inline`${n} .folder-icon::before`,e.folder),i.hasFolderIcons=!0),e.folderExpanded&&(o(eh.inline`${n} ${a} .folder-icon::before`,e.folderExpanded),i.hasFolderIcons=!0);let l=e.rootFolder||e.folder,c=e.rootFolderExpanded||e.folderExpanded;l&&(o(eh.inline`${n} .rootfolder-icon::before`,l),i.hasFolderIcons=!0),c&&(o(eh.inline`${n} ${a} .rootfolder-icon::before`,c),i.hasFolderIcons=!0),e.file&&(o(eh.inline`${n} .file-icon::before`,e.file),i.hasFileIcons=!0);let d=e.folderNames;if(d)for(let e in d){let t=new eh.Builder,r=ef(e.toLowerCase(),t);t.push(eh.inline`.${ep(r)}-name-folder-icon`),o(eh.inline`${n} ${t.join("")}.folder-icon::before`,d[e]),i.hasFolderIcons=!0}let h=e.folderNamesExpanded;if(h)for(let e in h){let t=new eh.Builder,r=ef(e.toLowerCase(),t);t.push(eh.inline`.${ep(r)}-name-folder-icon`),o(eh.inline`${n} ${a} ${t.join("")}.folder-icon::before`,h[e]),i.hasFolderIcons=!0}let u=e.rootFolderNames;if(u)for(let e in u){let t=e.toLowerCase();o(eh.inline`${n} .${ep(t)}-root-name-folder-icon.rootfolder-icon::before`,u[e]),i.hasFolderIcons=!0}let g=e.rootFolderNamesExpanded;if(g)for(let e in g){let t=e.toLowerCase();o(eh.inline`${n} ${a} .${ep(t)}-root-name-folder-icon.rootfolder-icon::before`,g[e]),i.hasFolderIcons=!0}let m=e.languageIds;if(m)for(let e in!m.jsonc&&m.json&&(m.jsonc=m.json),m)o(eh.inline`${n} .${ep(e)}-lang-file-icon.file-icon::before`,m[e]),i.hasFileIcons=!0,r=!0,s[e]=!0;let f=e.fileExtensions;if(f)for(let e in f){let t=new eh.Builder,s=ef(e.toLowerCase(),t).split(".");if(s.length){for(let e=0;e<s.length;e++)t.push(eh.inline`.${ep(s.slice(e).join("."))}-ext-file-icon`);t.push(eh.inline`.ext-file-icon`)}o(eh.inline`${n} ${t.join("")}.file-icon::before`,f[e]),i.hasFileIcons=!0,r=!0}let p=e.fileNames;if(p)for(let e in p){let t=new eh.Builder,s=ef(e.toLowerCase(),t);t.push(eh.inline`.${ep(s)}-name-file-icon`),t.push(eh.inline`.name-file-icon`);let a=s.split(".");if(a.length){for(let e=1;e<a.length;e++)t.push(eh.inline`.${ep(a.slice(e).join("."))}-ext-file-icon`);t.push(eh.inline`.ext-file-icon`)}o(eh.inline`${n} ${t.join("")}.file-icon::before`,p[e]),i.hasFileIcons=!0,r=!0}}}if(c(o),c(o.light,eh.inline`.vs`),c(o.highContrast,eh.inline`.hc-black`),c(o.highContrast,eh.inline`.hc-light`),!i.hasFileIcons&&!i.hasFolderIcons)return i;let d=!0===o.showLanguageModeIcons||r&&!1!==o.showLanguageModeIcons,h=new eh.Builder,u=o.fonts,g=new Map;if(Array.isArray(u)){let e=this.tryNormalizeFontSize(u[0].size)||"150%";u.forEach(t=>{let o=new eh.Builder;o.push(...t.src.map(e=>eh.inline`${(0,eh.asCSSUrl)(l(e.path))} format(${(0,eh.stringValue)(e.format)})`)),h.push(eh.inline`@font-face { src: ${o.join(", ")}; font-family: ${(0,eh.stringValue)(t.id)}; font-weight: ${(0,eh.identValue)(t.weight)}; font-style: ${(0,eh.identValue)(t.style)}; font-display: block; }`);let i=this.tryNormalizeFontSize(t.size);void 0!==i&&i!==e&&g.set(t.id,i)}),h.push(eh.inline`.show-file-icons .file-icon::before, .show-file-icons .folder-icon::before, .show-file-icons .rootfolder-icon::before { font-family: ${(0,eh.stringValue)(u[0].id)}; font-size: ${(0,eh.sizeValue)(e)}; }`)}let m=(0,eh.stringValue)("\\2001");for(let e in n){let t=n[e],i=o.iconDefinitions[e];if(i){if(i.iconPath)h.push(eh.inline`${t.join(", ")} { content: ${m}; background-image: ${(0,eh.asCSSUrl)(l(i.iconPath))}; }`);else if(i.fontCharacter||i.fontColor){let e=new eh.Builder;i.fontColor&&i.fontColor.match(el.fontColorRegex)&&e.push(eh.inline`color: ${(0,eh.hexColorValue)(i.fontColor)};`),i.fontCharacter&&e.push(eh.inline`content: ${(0,eh.stringValue)(i.fontCharacter)};`);let o=i.fontSize??(i.fontId?g.get(i.fontId):void 0);o&&o.match(el.fontSizeRegex)&&e.push(eh.inline`font-size: ${(0,eh.sizeValue)(o)};`),i.fontId&&e.push(eh.inline`font-family: ${(0,eh.stringValue)(i.fontId)};`),d&&e.push(eh.inline`background-image: unset;`),h.push(eh.inline`${t.join(", ")} { ${e.join(" ")} }`)}}}if(d){for(let e of this.languageService.getRegisteredLanguageIds())if(!s[e]){let t=this.languageService.getIcon(e);if(t){let o=eh.inline`.show-file-icons .${ep(e)}-lang-file-icon.file-icon::before`;h.push(eh.inline`${o} { content: ${m}; background-image: ${(0,eh.asCSSUrl)(t.dark)}; }`),h.push(eh.inline`.vs ${o} { content: ${m}; background-image: ${(0,eh.asCSSUrl)(t.light)}; }`)}}}return i.content=h.join("\n"),i}tryNormalizeFontSize(e){if(e){if(e.endsWith("px")){let t=parseInt(e,10);if(!isNaN(t))return Math.round(t/13*100)+"%"}return e}}}function ef(e,t){let o=e.lastIndexOf("/");if(o>=0){let i=e.substring(0,o);return t.push(eh.inline`.${ep(i)}-name-dir-icon`),e.substring(o+1)}return e}function ep(e){return e=(0,eu.fileIconSelectorEscape)(e),(0,eh.className)(e,!0)}var eT=e.i(325438),eC=e.i(176876),eS=e.i(652731),ey=e.i(553638);let eE=["comment","comment.block","comment.block.documentation","comment.line","constant","constant.character","constant.character.escape","constant.numeric","constant.numeric.integer","constant.numeric.float","constant.numeric.hex","constant.numeric.octal","constant.other","constant.regexp","constant.rgb-value","emphasis","entity","entity.name","entity.name.class","entity.name.function","entity.name.method","entity.name.section","entity.name.selector","entity.name.tag","entity.name.type","entity.other","entity.other.attribute-name","entity.other.inherited-class","invalid","invalid.deprecated","invalid.illegal","keyword","keyword.control","keyword.operator","keyword.operator.new","keyword.operator.assignment","keyword.operator.arithmetic","keyword.operator.logical","keyword.other","markup","markup.bold","markup.changed","markup.deleted","markup.heading","markup.inline.raw","markup.inserted","markup.italic","markup.list","markup.list.numbered","markup.list.unnumbered","markup.other","markup.quote","markup.raw","markup.underline","markup.underline.link","meta","meta.block","meta.cast","meta.class","meta.function","meta.function-call","meta.preprocessor","meta.return-type","meta.selector","meta.tag","meta.type.annotation","meta.type","punctuation.definition.string.begin","punctuation.definition.string.end","punctuation.separator","punctuation.separator.continuation","punctuation.terminator","storage","storage.modifier","storage.type","string","string.interpolated","string.other","string.quoted","string.quoted.double","string.quoted.other","string.quoted.single","string.quoted.triple","string.regexp","string.unquoted","strong","support","support.class","support.constant","support.function","support.other","support.type","support.type.property-name","support.variable","variable","variable.language","variable.name","variable.other","variable.other.readwrite","variable.parameter"],eI="vscode://schemas/textmate-colors",eb=`${eI}#/definitions/colorGroup`,ek={type:"array",definitions:{colorGroup:{default:"#FF0000",anyOf:[{type:"string",format:"color-hex"},{$ref:"#/definitions/settings"}]},settings:{type:"object",description:(0,f.localize)(14361,"Colors and styles for the token."),properties:{foreground:{type:"string",description:(0,f.localize)(14362,"Foreground color for the token."),format:"color-hex",default:"#ff0000"},background:{type:"string",deprecationMessage:(0,f.localize)(14363,"Token background colors are currently not supported.")},fontStyle:{type:"string",description:(0,f.localize)(14364,"Font style of the rule: 'italic', 'bold', 'underline', 'strikethrough' or a combination. The empty string unsets inherited settings."),pattern:"^(\\s*\\b(italic|bold|underline|strikethrough))*\\s*$",patternErrorMessage:(0,f.localize)(14365,"Font style must be 'italic', 'bold', 'underline', 'strikethrough' or a combination or the empty string."),defaultSnippets:[{label:(0,f.localize)(14366,"None (clear inherited style)"),bodyText:'""'},{body:"italic"},{body:"bold"},{body:"underline"},{body:"strikethrough"},{body:"italic bold"},{body:"italic underline"},{body:"italic strikethrough"},{body:"bold underline"},{body:"bold strikethrough"},{body:"underline strikethrough"},{body:"italic bold underline"},{body:"italic bold strikethrough"},{body:"italic underline strikethrough"},{body:"bold underline strikethrough"},{body:"italic bold underline strikethrough"}]},fontFamily:{type:"string",description:(0,f.localize)(14367,'Font family for the token (e.g., "Fira Code", "JetBrains Mono").')},fontSize:{type:"string",description:(0,f.localize)(14368,'Font size string for the token (e.g., "14px", "1.2em").')},lineHeight:{type:"number",description:(0,f.localize)(14369,'Line height number for the token (e.g., "20").')}},additionalProperties:!1,defaultSnippets:[{body:{foreground:"${1:#FF0000}",fontStyle:"${2:bold}"}}]}},items:{type:"object",defaultSnippets:[{body:{scope:"${1:keyword.operator}",settings:{foreground:"${2:#FF0000}"}}}],properties:{name:{type:"string",description:(0,f.localize)(14370,"Description of the rule.")},scope:{description:(0,f.localize)(14371,"Scope selector against which this rule matches."),anyOf:[{enum:eE},{type:"string"},{type:"array",items:{enum:eE}},{type:"array",items:{type:"string"}}]},settings:{$ref:"#/definitions/settings"}},required:["settings"],additionalProperties:!1}},eF="vscode://schemas/color-theme",ev={type:"object",allowComments:!0,allowTrailingCommas:!0,properties:{colors:{description:(0,f.localize)(14372,"Colors in the workbench"),$ref:x.workbenchColorsSchemaId,additionalProperties:!1},tokenColors:{anyOf:[{type:"string",description:(0,f.localize)(14373,"Path to a tmTheme file (relative to the current file).")},{description:(0,f.localize)(14374,"Colors for syntax highlighting"),$ref:eI}]},semanticHighlighting:{type:"boolean",description:(0,f.localize)(14375,"Whether semantic highlighting should be enabled for this theme.")},semanticTokenColors:{type:"object",description:(0,f.localize)(14376,"Colors for semantic tokens"),$ref:N.tokenStylingSchemaId}}};e.i(157255);var e_=e.i(821788),eR=e.i(957994),ew=e.i(304484),eB=e.i(425024),ex=ed,eD=e.i(888961),eA=e.i(399119),eO=e.i(526097);class ez extends ex.Disposable{constructor(){super(...arguments),this.type="markdown"}shouldRender(e){return!!e.contributes?.themes||!!e.contributes?.iconThemes||!!e.contributes?.productIconThemes}render(e){let t=new eA.MarkdownString;if(e.contributes?.themes)for(let o of(t.appendMarkdown(`### ${(0,f.localize)(14479,"Color Themes")}
2
+
3
+ `),e.contributes.themes))t.appendMarkdown(`- ${o.label}
4
+ `);if(e.contributes?.iconThemes)for(let o of(t.appendMarkdown(`### ${(0,f.localize)(14480,"File Icon Themes")}
5
+
6
+ `),e.contributes.iconThemes))t.appendMarkdown(`- ${o.label}
7
+ `);if(e.contributes?.productIconThemes)for(let o of(t.appendMarkdown(`### ${(0,f.localize)(14481,"Product Icon Themes")}
8
+
9
+ `),e.contributes.productIconThemes))t.appendMarkdown(`- ${o.label}
10
+ `);return{data:t,dispose:()=>{}}}}k.Registry.as(eD.Extensions.ExtensionFeaturesRegistry).registerExtensionFeature({id:"themes",label:(0,f.localize)(14482,"Themes"),access:{canToggle:!1},renderer:new eO.SyncDescriptor(ez)});class eM{constructor(e,t,o=!1,i){this.themesExtPoint=e,this.create=t,this.idRequired=o,this.builtInTheme=i,this.onDidChangeEmitter=new es.Emitter,this.onDidChange=this.onDidChangeEmitter.event,this.extensionThemes=[],this.initialize()}dispose(){this.themesExtPoint.setHandler(()=>{})}initialize(){this.themesExtPoint.setHandler((e,t)=>{let o={},i=[];for(let e of this.extensionThemes)o[e.id]=e;for(let t of(this.extensionThemes.length=0,e)){let e=d.fromName(t.description.publisher,t.description.name,t.description.isBuiltin);this.onThemes(e,t.description.extensionLocation,t.value,this.extensionThemes,t.collector)}for(let e of this.extensionThemes)o[e.id]?delete o[e.id]:i.push(e);let r=Object.values(o);this.onDidChangeEmitter.fire({themes:this.extensionThemes,added:i,removed:r})})}onThemes(e,t,o,i=[],r){return Array.isArray(o)?o.forEach(o=>{if(!o.path||!(0,p.isString)(o.path))return void r?.error((0,f.localize)(14484,"Expected string in `contributes.{0}.path`. Provided value: {1}",this.themesExtPoint.name,String(o.path)));if(this.idRequired&&(!o.id||!(0,p.isString)(o.id)))return void r?.error((0,f.localize)(14485,"Expected string in `contributes.{0}.id`. Provided value: {1}",this.themesExtPoint.name,String(o.id)));let n=(0,L.joinPath)(t,o.path);(0,L.isEqualOrParent)(n,t)||r?.warn((0,f.localize)(14486,"Expected `contributes.{0}.path` ({1}) to be included inside extension's folder ({2}). This might make the extension non-portable.",this.themesExtPoint.name,n.path,t.path));let s=this.create(o,n,e);i.push(s)}):r?.error((0,f.localize)(14483,"Extension point `{0}` must be an array.",this.themesExtPoint.name)),i}findThemeById(e){if(this.builtInTheme&&this.builtInTheme.id===e)return this.builtInTheme;for(let t of this.getThemes())if(t.id===e)return t}findThemeBySettingsId(e,t){let o;if(this.builtInTheme&&this.builtInTheme.settingsId===e)return this.builtInTheme;for(let i of this.getThemes()){if(i.settingsId===e)return i;i.settingsId===t&&(o=i)}return o}findThemeByExtensionLocation(e){return e?this.getThemes().filter(t=>t.location&&(0,L.isEqualOrParent)(t.location,e)):[]}getThemes(){return this.extensionThemes}getMarketplaceThemes(e,t,o){let i=e?.contributes?.[this.themesExtPoint.name];return Array.isArray(i)?this.onThemes(o,t,i):[]}}var eL=e.i(2267),eP=e.i(354244);let eH=k.Registry.as(eL.Extensions.Configuration),eN=[],e$=[],ej=[];function eG(e){return`\`#${e}#\``}let eU="colorThemeConfiguration",eK={type:"string",markdownDescription:(0,f.localize)(14434,"Specifies the color theme used in the workbench when {0} is not enabled.",eG(l.DETECT_COLOR_SCHEME)),default:eP.isWeb?c.COLOR_THEME_LIGHT:c.COLOR_THEME_DARK,tags:[eU],enum:eN,enumDescriptions:ej,enumItemLabels:e$,errorMessage:(0,f.localize)(14435,"Theme is unknown or not installed.")},eW={type:"string",markdownDescription:(0,f.localize)(14436,"Specifies the color theme when system color mode is dark and {0} is enabled.",eG(l.DETECT_COLOR_SCHEME)),default:c.COLOR_THEME_DARK,tags:[eU],enum:eN,enumDescriptions:ej,enumItemLabels:e$,errorMessage:(0,f.localize)(14435,"Theme is unknown or not installed.")},eq={type:"string",markdownDescription:(0,f.localize)(14437,"Specifies the color theme when system color mode is light and {0} is enabled.",eG(l.DETECT_COLOR_SCHEME)),default:c.COLOR_THEME_LIGHT,tags:[eU],enum:eN,enumDescriptions:ej,enumItemLabels:e$,errorMessage:(0,f.localize)(14435,"Theme is unknown or not installed.")},eV={type:"string",markdownDescription:(0,f.localize)(14438,"Specifies the color theme when in high contrast dark mode and {0} is enabled.",eG(l.DETECT_HC)),default:c.COLOR_THEME_HC_DARK,tags:[eU],enum:eN,enumDescriptions:ej,enumItemLabels:e$,errorMessage:(0,f.localize)(14435,"Theme is unknown or not installed.")},eJ={type:"string",markdownDescription:(0,f.localize)(14439,"Specifies the color theme when in high contrast light mode and {0} is enabled.",eG(l.DETECT_HC)),default:c.COLOR_THEME_HC_LIGHT,tags:[eU],enum:eN,enumDescriptions:ej,enumItemLabels:e$,errorMessage:(0,f.localize)(14435,"Theme is unknown or not installed.")},eQ={type:"boolean",markdownDescription:(0,f.localize)(14440,"If enabled, will automatically select a color theme based on the system color mode. If the system color mode is dark, {0} is used, else {1}.",eG(l.PREFERRED_DARK_THEME),eG(l.PREFERRED_LIGHT_THEME)),default:!1,tags:[eU]},eY={type:"object",description:(0,f.localize)(14441,"Overrides colors from the currently selected color theme."),allOf:[{$ref:x.workbenchColorsSchemaId}],default:{},defaultSnippets:[{body:{}}]},eX={type:["string","null"],default:c.FILE_ICON_THEME,description:(0,f.localize)(14442,"Specifies the file icon theme used in the workbench or 'null' to not show any file icons."),enum:[null],enumItemLabels:[(0,f.localize)(14443,"None")],enumDescriptions:[(0,f.localize)(14444,"No file icons")],errorMessage:(0,f.localize)(14445,"File icon theme is unknown or not installed.")},eZ={type:["string","null"],default:c.PRODUCT_ICON_THEME,description:(0,f.localize)(14446,"Specifies the product icon theme used."),enum:[c.PRODUCT_ICON_THEME],enumItemLabels:[(0,f.localize)(14447,"Default")],enumDescriptions:[(0,f.localize)(14448,"Default")],errorMessage:(0,f.localize)(14449,"Product icon theme is unknown or not installed.")},e0={type:"boolean",default:!0,markdownDescription:(0,f.localize)(14450,"If enabled, will automatically change to high contrast theme if the OS is using a high contrast theme. The high contrast theme to use is specified by {0} and {1}.",eG(l.PREFERRED_HC_DARK_THEME),eG(l.PREFERRED_HC_LIGHT_THEME)),scope:eL.ConfigurationScope.APPLICATION,tags:[eU]},e1={id:"workbench",order:7.1,type:"object",properties:{[l.COLOR_THEME]:eK,[l.PREFERRED_DARK_THEME]:eW,[l.PREFERRED_LIGHT_THEME]:eq,[l.PREFERRED_HC_DARK_THEME]:eV,[l.PREFERRED_HC_LIGHT_THEME]:eJ,[l.FILE_ICON_THEME]:eX,[l.COLOR_CUSTOMIZATIONS]:eY,[l.PRODUCT_ICON_THEME]:eZ}};eH.registerConfiguration(e1);let e4={id:"window",order:8.1,type:"object",properties:{[l.DETECT_HC]:e0,[l.DETECT_COLOR_SCHEME]:eQ}};function e3(e){return{description:e,$ref:eb}}eH.registerConfiguration(e4);let e8="^\\[[^\\]]*(\\]\\s*\\[[^\\]]*)*\\]$",e2={type:"object",properties:{comments:e3((0,f.localize)(14451,"Sets the colors and styles for comments")),strings:e3((0,f.localize)(14452,"Sets the colors and styles for strings literals.")),keywords:e3((0,f.localize)(14453,"Sets the colors and styles for keywords.")),numbers:e3((0,f.localize)(14454,"Sets the colors and styles for number literals.")),types:e3((0,f.localize)(14455,"Sets the colors and styles for type declarations and references.")),functions:e3((0,f.localize)(14456,"Sets the colors and styles for functions declarations and references.")),variables:e3((0,f.localize)(14457,"Sets the colors and styles for variables declarations and references.")),textMateRules:{description:(0,f.localize)(14458,"Sets colors and styles using textmate theming rules (advanced)."),$ref:eI},semanticHighlighting:{description:(0,f.localize)(14459,"Whether semantic highlighting should be enabled for this theme."),deprecationMessage:(0,f.localize)(14460,"Use `enabled` in `editor.semanticTokenColorCustomizations` setting instead."),markdownDeprecationMessage:(0,f.localize)(14461,"Use `enabled` in {0} setting instead.",eG("editor.semanticTokenColorCustomizations")),type:"boolean"}},additionalProperties:!1},e5={description:(0,f.localize)(14462,"Overrides editor syntax colors and font style from the currently selected color theme."),default:{},allOf:[{...e2,patternProperties:{"^\\[":{}}}]},e7={type:"object",properties:{enabled:{type:"boolean",description:(0,f.localize)(14463,"Whether semantic highlighting is enabled or disabled for this theme"),suggestSortText:"0_enabled"},rules:{$ref:N.tokenStylingSchemaId,description:(0,f.localize)(14464,"Semantic token styling rules for this theme."),suggestSortText:"0_rules"}},additionalProperties:!1},e6={description:(0,f.localize)(14465,"Overrides editor semantic token color and styles from the currently selected color theme."),default:{},allOf:[{...e7,patternProperties:{"^\\[":{}}}]},e9={id:"editor",order:7.2,type:"object",properties:{[l.TOKEN_COLOR_CUSTOMIZATIONS]:e5,[l.SEMANTIC_TOKEN_COLOR_CUSTOMIZATIONS]:e6}};function te(e){e.sort((e,t)=>e.label.localeCompare(t.label)),eN.splice(0,eN.length,...e.map(e=>e.settingsId)),ej.splice(0,ej.length,...e.map(e=>e.description||"")),e$.splice(0,e$.length,...e.map(e=>e.label||""));let t={properties:{}},o={properties:{}},i={properties:{}},r={$ref:x.workbenchColorsSchemaId,additionalProperties:!1},n={properties:e2.properties,additionalProperties:!1};for(let s of e){let e=`[${s.settingsId}]`;t.properties[e]=r,o.properties[e]=n,i.properties[e]=e7}t.patternProperties={[e8]:r},o.patternProperties={[e8]:n},i.patternProperties={[e8]:e7},eY.allOf[1]=t,e5.allOf[1]=o,e6.allOf[1]=i,eH.notifyConfigurationSchemaUpdated(e1,e9)}function tt(e){eX.enum.splice(1,Number.MAX_VALUE,...e.map(e=>e.settingsId)),eX.enumItemLabels.splice(1,Number.MAX_VALUE,...e.map(e=>e.label)),eX.enumDescriptions.splice(1,Number.MAX_VALUE,...e.map(e=>e.description||"")),eH.notifyConfigurationSchemaUpdated(e1)}function to(e){eZ.enum.splice(1,Number.MAX_VALUE,...e.map(e=>e.settingsId)),eZ.enumItemLabels.splice(1,Number.MAX_VALUE,...e.map(e=>e.label)),eZ.enumDescriptions.splice(1,Number.MAX_VALUE,...e.map(e=>e.description||"")),eH.notifyConfigurationSchemaUpdated(e1)}eH.registerConfiguration(e9);let ti={[K.ColorScheme.DARK]:l.PREFERRED_DARK_THEME,[K.ColorScheme.LIGHT]:l.PREFERRED_LIGHT_THEME,[K.ColorScheme.HIGH_CONTRAST_DARK]:l.PREFERRED_HC_DARK_THEME,[K.ColorScheme.HIGH_CONTRAST_LIGHT]:l.PREFERRED_HC_LIGHT_THEME};class tr{constructor(e,t){this.configurationService=e,this.hostColorService=t}get colorTheme(){return this.configurationService.getValue(this.getColorThemeSettingId())}get fileIconTheme(){return this.configurationService.getValue(l.FILE_ICON_THEME)}get productIconTheme(){return this.configurationService.getValue(l.PRODUCT_ICON_THEME)}get colorCustomizations(){return this.configurationService.getValue(l.COLOR_CUSTOMIZATIONS)||{}}get tokenColorCustomizations(){return this.configurationService.getValue(l.TOKEN_COLOR_CUSTOMIZATIONS)||{}}get semanticTokenColorCustomizations(){return this.configurationService.getValue(l.SEMANTIC_TOKEN_COLOR_CUSTOMIZATIONS)}getPreferredColorScheme(){return this.configurationService.getValue(l.DETECT_HC)&&this.hostColorService.highContrast?this.hostColorService.dark?K.ColorScheme.HIGH_CONTRAST_DARK:K.ColorScheme.HIGH_CONTRAST_LIGHT:this.configurationService.getValue(l.DETECT_COLOR_SCHEME)?this.hostColorService.dark?K.ColorScheme.DARK:K.ColorScheme.LIGHT:void 0}isDetectingColorScheme(){return this.configurationService.getValue(l.DETECT_COLOR_SCHEME)}getColorThemeSettingId(){let e=this.getPreferredColorScheme();return e?ti[e]:l.COLOR_THEME}async setColorTheme(e,t){return await this.writeConfiguration(this.getColorThemeSettingId(),e.settingsId,t),e}async setFileIconTheme(e,t){return await this.writeConfiguration(l.FILE_ICON_THEME,e.settingsId,t),e}async setProductIconTheme(e,t){return await this.writeConfiguration(l.PRODUCT_ICON_THEME,e.settingsId,t),e}isDefaultColorTheme(){let e=this.configurationService.inspect(this.getColorThemeSettingId());return e&&e.default?.value===e.value}findAutoConfigurationTarget(e){let t=this.configurationService.inspect(e);return(0,p.isUndefined)(t.workspaceFolderValue)?(0,p.isUndefined)(t.workspaceValue)?(0,p.isUndefined)(t.userRemote)?v.ConfigurationTarget.USER:v.ConfigurationTarget.USER_REMOTE:v.ConfigurationTarget.WORKSPACE:v.ConfigurationTarget.WORKSPACE_FOLDER}async writeConfiguration(e,t,o){if(void 0===o||"preview"===o)return;let i=this.configurationService.inspect(e);if("auto"===o)return this.configurationService.updateValue(e,t);if(o===v.ConfigurationTarget.USER){if(t===i.userValue)return Promise.resolve(void 0);else if(t===i.defaultValue){if((0,p.isUndefined)(i.userValue))return Promise.resolve(void 0);t=void 0}}else if((o===v.ConfigurationTarget.WORKSPACE||o===v.ConfigurationTarget.WORKSPACE_FOLDER||o===v.ConfigurationTarget.USER_REMOTE)&&t===i.value)return Promise.resolve(void 0);return this.configurationService.updateValue(e,t,o)}}var tn=e.i(536367);class ts{static{this.STORAGE_KEY="productIconThemeData"}constructor(e,t,o){this.iconThemeDocument={iconDefinitions:new Map},this.id=e,this.label=t,this.settingsId=o,this.isLoaded=!1}getIcon(e){return function(e,t){let o=t.iconDefinitions,i=o.get(e.id),r=e.defaults;for(;!i&&tn.ThemeIcon.isThemeIcon(r);){let e=ta.getIcon(r.id);if(!e)return;i=o.get(e.id),r=e.defaults}return i||(tn.ThemeIcon.isThemeIcon(r)?void 0:r)}(e,this.iconThemeDocument)}ensureLoaded(e,t){return this.isLoaded?Promise.resolve(this.styleSheetContent):this.load(e,t)}reload(e,t){return this.load(e,t)}async load(e,t){var o,i,r;let n=this.location;if(!n)return Promise.resolve(this.styleSheetContent);let s=[];return this.iconThemeDocument=await (o=e,i=n,r=s,o.readExtensionResource(i).then(e=>{let t=[],o=(0,w.parse)(e,t);if(t.length>0)return Promise.reject(Error((0,f.localize)(14320,"Problems parsing product icons file: {0}",t.map(e=>(0,H.getParseErrorMessage)(e.error)).join(", "))));if("object"!==(0,w.getNodeType)(o))return Promise.reject(Error((0,f.localize)(14321,"Invalid format for product icons theme file: Object expected.")));if(!o.iconDefinitions||!Array.isArray(o.fonts)||!o.fonts.length)return Promise.reject(Error((0,f.localize)(14322,"Invalid format for product icons theme file: Must contain iconDefinitions and fonts.")));let n=(0,L.dirname)(i),s=new Map;for(let e of o.fonts){let t=e.id;if((0,p.isString)(t)&&t.match(el.fontIdRegex)){let o,i;(0,p.isString)(e.weight)&&e.weight.match(el.fontWeightRegex)?o=e.weight:r.push((0,f.localize)(14323,"Invalid font weight in font '{0}'. Ignoring setting.",e.id)),(0,p.isString)(e.style)&&e.style.match(el.fontStyleRegex)?i=e.style:r.push((0,f.localize)(14324,"Invalid font style in font '{0}'. Ignoring setting.",e.id));let a=[];if(Array.isArray(e.src))for(let t of e.src)if((0,p.isString)(t.path)&&(0,p.isString)(t.format)&&t.format.match(el.fontFormatRegex)){let e=(0,L.joinPath)(n,t.path);a.push({location:e,format:t.format})}else r.push((0,f.localize)(14325,"Invalid font source in font '{0}'. Ignoring source.",e.id));a.length?s.set(t,{weight:o,style:i,src:a}):r.push((0,f.localize)(14326,"No valid font source in font '{0}'. Ignoring font definition.",e.id))}else r.push((0,f.localize)(14327,"Missing or invalid font id '{0}'. Skipping font definition.",e.id))}let a=new Map,l=o.fonts[0].id;for(let e in o.iconDefinitions){let t=o.iconDefinitions[e];if((0,p.isString)(t.fontCharacter)){let o=t.fontId??l,i=s.get(o);if(i){let r={id:`pi-${o}`,definition:i};a.set(e,{fontCharacter:t.fontCharacter,font:r})}else r.push((0,f.localize)(14328,"Skipping icon definition '{0}'. Unknown font.",e))}else r.push((0,f.localize)(14329,"Skipping icon definition '{0}': Needs to be defined",e))}return{iconDefinitions:a}})),this.isLoaded=!0,s.length&&t.error((0,f.localize)(14318,"Problems processing product icons definitions in {0}:\n{1}",n.toString(),s.join("\n"))),this.styleSheetContent}static fromExtensionTheme(e,t,o){let i=new ts(o.extensionId+"-"+e.id,e.label||(0,R.basename)(e.path),e.id);return i.description=e.description,i.location=t,i.extensionData=o,i.watch=e._watch,i.isLoaded=!1,i}static createUnloadedTheme(e){let t=new ts(e,"","__"+e);return t.isLoaded=!1,t.extensionData=void 0,t.watch=!1,t}static{this._defaultProductIconTheme=null}static get defaultTheme(){let e=ts._defaultProductIconTheme;return e||((e=ts._defaultProductIconTheme=new ts("",(0,f.localize)(14319,"Default"),c.PRODUCT_ICON_THEME)).isLoaded=!0,e.extensionData=void 0,e.watch=!1),e}static fromStorageData(e){let t=e.get(ts.STORAGE_KEY,U.StorageScope.PROFILE);if(t)try{let e=JSON.parse(t),o=new ts("","","");for(let t in e)switch(t){case"id":case"label":case"description":case"settingsId":case"styleSheetContent":case"watch":o[t]=e[t];break;case"location":break;case"extensionData":o.extensionData=d.fromJSONObject(e.extensionData)}let{iconDefinitions:i,iconFontDefinitions:r}=e;if(Array.isArray(i)&&(0,p.isObject)(r)){let e=new Map;for(let t of i){let{id:o,fontCharacter:i,fontId:n}=t;if((0,p.isString)(o)&&(0,p.isString)(i))if((0,p.isString)(n)){let t=el.IconFontDefinition.fromJSONObject(r[n]);t&&e.set(o,{fontCharacter:i,font:{id:n,definition:t}})}else e.set(o,{fontCharacter:i})}o.iconThemeDocument={iconDefinitions:e}}return o}catch(e){return}}toStorage(e){let t=[],o={};for(let e of this.iconThemeDocument.iconDefinitions.entries()){let i=e[1].font;t.push({id:e[0],fontCharacter:e[1].fontCharacter,fontId:i?.id}),i&&void 0===o[i.id]&&(o[i.id]=el.IconFontDefinition.toJSONObject(i.definition))}let i=JSON.stringify({id:this.id,label:this.label,description:this.description,settingsId:this.settingsId,styleSheetContent:this.styleSheetContent,watch:this.watch,extensionData:d.toJSONObject(this.extensionData),iconDefinitions:t,iconFontDefinitions:o});e.store(ts.STORAGE_KEY,i,U.StorageScope.PROFILE,U.StorageTarget.MACHINE)}}let ta=(0,el.getIconRegistry)(),tl={type:"object",allowComments:!0,allowTrailingCommas:!0,properties:{fonts:{type:"array",items:{type:"object",properties:{id:{type:"string",description:(0,f.localize)(14427,"The ID of the font."),pattern:el.fontIdRegex.source,patternErrorMessage:el.fontIdErrorMessage},src:{type:"array",description:(0,f.localize)(14428,"The location of the font."),items:{type:"object",properties:{path:{type:"string",description:(0,f.localize)(14429,"The font path, relative to the current product icon theme file.")},format:{type:"string",description:(0,f.localize)(14430,"The format of the font."),enum:["woff","woff2","truetype","opentype","embedded-opentype","svg"]}},required:["path","format"]}},weight:{type:"string",description:(0,f.localize)(14431,"The weight of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight for valid values."),anyOf:[{enum:["normal","bold","lighter","bolder"]},{type:"string",pattern:el.fontWeightRegex.source}]},style:{type:"string",description:(0,f.localize)(14432,"The style of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-style for valid values."),anyOf:[{enum:["normal","italic","oblique"]},{type:"string",pattern:el.fontStyleRegex.source}]}},required:["id","src"]}},iconDefinitions:{description:(0,f.localize)(14433,"Association of icon name to a font character."),$ref:el.iconsSchemaId}}};var tc=e.i(853457),td=e.i(317317),th=e.i(590746),tu=e.i(322544),tg=e.i(412701),tm=ed;function tf(e,t="px"){let o=function(e,t="px"){return{value:e,unit:t}}(e,t);return{light:o,dark:o,hcDark:o,hcLight:o}}function tp(e){return`${e.value}${e.unit}`}class tT extends tm.Disposable{constructor(){super(),this._onDidChangeSchema=this._register(new es.Emitter),this.onDidChangeSchema=this._onDidChangeSchema.event,this.sizeSchema={type:"object",properties:{}},this.sizeReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.sizesById={}}notifyThemeUpdate(e){for(let t of Object.keys(this.sizesById)){let o=this.resolveDefaultSize(t,e);o&&(this.sizeSchema.properties[t].default=tp(o))}this._onDidChangeSchema.fire()}registerSize(e,t,o,i){this.sizesById[e]={id:e,description:o,defaults:t,deprecationMessage:i};let r={type:"string",pattern:"^(\\d+(\\.\\d+)?(px|rem|em|%))|default$",patternErrorMessage:'Size must be a number followed by px, rem, em, or % (e.g., "12px", "1.5rem") or "default"'};return i&&(r.deprecationMessage=i),this.sizeSchema.properties[e]={description:o,...r},this.sizeReferenceSchema.enum.push(e),this.sizeReferenceSchema.enumDescriptions.push(o),this._onDidChangeSchema.fire(),e}deregisterSize(e){delete this.sizesById[e],delete this.sizeSchema.properties[e];let t=this.sizeReferenceSchema.enum.indexOf(e);-1!==t&&(this.sizeReferenceSchema.enum.splice(t,1),this.sizeReferenceSchema.enumDescriptions.splice(t,1)),this._onDidChangeSchema.fire()}getSizes(){return Object.keys(this.sizesById).map(e=>this.sizesById[e])}resolveDefaultSize(e,t){let o=this.sizesById[e];if(o?.defaults){var i;return(null!==(i=o.defaults)&&"object"==typeof i&&"light"in i&&"dark"in i?o.defaults[t.type]:o.defaults)??void 0}}getSizeSchema(){return this.sizeSchema}getSizeReferenceSchema(){return this.sizeReferenceSchema}toString(){return Object.keys(this.sizesById).sort((e,t)=>{let o=+(-1!==e.indexOf(".")),i=+(-1!==t.indexOf("."));return o!==i?o-i:e.localeCompare(t)}).map(e=>`- \`${e}\`: ${this.sizesById[e].description}`).join("\n")}}let tC=new tT;function tS(e,t,o,i){return tC.registerSize(e,t,o,i)}k.Registry.add("base.contributions.sizes",tC);let ty="vscode://schemas/workbench-sizes",tE=k.Registry.as(ea.Extensions.JSONContribution);tE.registerSchema(ty,tC.getSizeSchema());let tI=new th.RunOnceScheduler(()=>tE.notifySchemaChanged(ty),200);tC.onDidChangeSchema(()=>{tI.isScheduled()||tI.schedule()}),tS("bodyFontSize",tf(13,"px"),(0,f.localize)(2372,"Base font size. This size is used if not overridden by a component.")),tS("bodyFontSize.small",tf(12,"px"),(0,f.localize)(2373,"Small font size for secondary content.")),tS("bodyFontSize.xSmall",tf(11,"px"),(0,f.localize)(2374,"Extra small font size for less prominent content.")),tS("codiconFontSize",tf(16,"px"),(0,f.localize)(2375,"Base font size for codicons.")),tS("cornerRadius.medium",tf(6,"px"),(0,f.localize)(2376,"Base corner radius for UI elements.")),tS("cornerRadius.xSmall",tf(2,"px"),(0,f.localize)(2377,"Extra small corner radius for very compact UI elements.")),tS("cornerRadius.small",tf(4,"px"),(0,f.localize)(2378,"Small corner radius for compact UI elements.")),tS("cornerRadius.large",tf(8,"px"),(0,f.localize)(2379,"Large corner radius for prominent UI elements.")),tS("cornerRadius.xLarge",tf(12,"px"),(0,f.localize)(2380,"Extra large corner radius for very prominent UI elements.")),tS("cornerRadius.circle",tf(9999,"px"),(0,f.localize)(2381,"Circular corner radius for fully rounded UI elements.")),tS("strokeThickness",tf(1,"px"),(0,f.localize)(2382,"Base stroke thickness for borders and outlines."));var tb=e.i(58762),tk=e.i(865562);let tF="vscode-theme-defaults",tv="vscode.vscode-theme-seti-vs-seti",t_="file-icons-enabled",tR=k.Registry.as(P.Extensions.ThemingContribution),tw=eB.ExtensionsRegistry.registerExtensionPoint({extensionPoint:"themes",jsonSchema:{description:(0,f.localize)(14466,"Contributes textmate color themes."),type:"array",items:{type:"object",defaultSnippets:[{body:{label:"${1:label}",id:"${2:id}",uiTheme:K.ThemeTypeSelector.VS_DARK,path:"./themes/${3:id}.tmTheme."}}],properties:{id:{description:(0,f.localize)(14467,"Id of the color theme as used in the user settings."),type:"string"},label:{description:(0,f.localize)(14468,"Label of the color theme as shown in the UI."),type:"string"},uiTheme:{description:(0,f.localize)(14469,"Base theme defining the colors around the editor: 'vs' is the light color theme, 'vs-dark' is the dark color theme. 'hc-black' is the dark high contrast theme, 'hc-light' is the light high contrast theme."),enum:[K.ThemeTypeSelector.VS,K.ThemeTypeSelector.VS_DARK,K.ThemeTypeSelector.HC_BLACK,K.ThemeTypeSelector.HC_LIGHT]},path:{description:(0,f.localize)(14470,"Path of the tmTheme file. The path is relative to the extension folder and is typically './colorthemes/awesome-color-theme.json'."),type:"string"}},required:["path","uiTheme"]}}}),tB=eB.ExtensionsRegistry.registerExtensionPoint({extensionPoint:"iconThemes",jsonSchema:{description:(0,f.localize)(14471,"Contributes file icon themes."),type:"array",items:{type:"object",defaultSnippets:[{body:{id:"${1:id}",label:"${2:label}",path:"./fileicons/${3:id}-icon-theme.json"}}],properties:{id:{description:(0,f.localize)(14472,"Id of the file icon theme as used in the user settings."),type:"string"},label:{description:(0,f.localize)(14473,"Label of the file icon theme as shown in the UI."),type:"string"},path:{description:(0,f.localize)(14474,"Path of the file icon theme definition file. The path is relative to the extension folder and is typically './fileicons/awesome-icon-theme.json'."),type:"string"}},required:["path","id"]}}}),tx=eB.ExtensionsRegistry.registerExtensionPoint({extensionPoint:"productIconThemes",jsonSchema:{description:(0,f.localize)(14475,"Contributes product icon themes."),type:"array",items:{type:"object",defaultSnippets:[{body:{id:"${1:id}",label:"${2:label}",path:"./producticons/${3:id}-product-icon-theme.json"}}],properties:{id:{description:(0,f.localize)(14476,"Id of the product icon theme as used in the user settings."),type:"string"},label:{description:(0,f.localize)(14477,"Label of the product icon theme as shown in the UI."),type:"string"},path:{description:(0,f.localize)(14478,"Path of the product icon theme definition file. The path is relative to the extension folder and is typically './producticons/awesome-product-icon-theme.json'."),type:"string"}},required:["path","id"]}}}),tD=class extends ed.Disposable{constructor(e,t,o,i,r,n,s,a,l,d,h,u){super(),this.storageService=t,this.configurationService=o,this.telemetryService=i,this.environmentService=r,this.extensionResourceLoaderService=s,this.logService=l,this.hostColorService=d,this.userDataInitializationService=h,this.languageService=u,this.themeExtensionsActivated=new Map,this.container=a.mainContainer,this.settings=new tr(o,d),this.colorThemeRegistry=this._register(new eM(tw,J.fromExtensionTheme)),this.colorThemeWatcher=this._register(new tA(n,r,this.reloadCurrentColorTheme.bind(this))),this.onColorThemeChange=new es.Emitter({leakWarningThreshold:400}),this.currentColorTheme=J.createUnloadedTheme(""),this.colorThemeSequencer=new th.Sequencer,this.fileIconThemeWatcher=this._register(new tA(n,r,this.reloadCurrentFileIconTheme.bind(this))),this.fileIconThemeRegistry=this._register(new eM(tB,eg.fromExtensionTheme,!0,eg.noIconTheme)),this.fileIconThemeLoader=new em(s,u),this.onFileIconThemeChange=new es.Emitter({leakWarningThreshold:400}),this.currentFileIconTheme=eg.createUnloadedTheme(""),this.fileIconThemeSequencer=new th.Sequencer,this.productIconThemeWatcher=this._register(new tA(n,r,this.reloadCurrentProductIconTheme.bind(this))),this.productIconThemeRegistry=this._register(new eM(tx,ts.fromExtensionTheme,!0,ts.defaultTheme)),this.onProductIconThemeChange=new es.Emitter,this.currentProductIconTheme=ts.createUnloadedTheme(""),this.productIconThemeSequencer=new th.Sequencer,this._register(this.onDidColorThemeChange(e=>(0,x.getColorRegistry)().notifyThemeUpdate(e)));let g=J.fromStorageData(this.storageService);const m=this.settings.colorTheme;g&&m!==g.settingsId&&(g=void 0);const f=m===c.COLOR_THEME_LIGHT?y:m===c.COLOR_THEME_DARK?S:void 0;if(!g){const e=r.options?.initialColorTheme;e&&(g=J.createUnloadedThemeForThemeType(e.themeType,e.colors??f))}if(!g){const e=this.settings.getPreferredColorScheme()??(eP.isWeb?K.ColorScheme.LIGHT:K.ColorScheme.DARK);g=J.createUnloadedThemeForThemeType(e,f)}g.setCustomizations(this.settings),this.applyTheme(g,void 0,!0);const p=eg.fromStorageData(this.storageService);p&&this.applyAndSetFileIconTheme(p,!0);const T=ts.fromStorageData(this.storageService);T&&this.applyAndSetProductIconTheme(T,!0),e.whenInstalledExtensionsRegistered().then(e=>{this.installConfigurationListener(),this.installPreferredSchemeListener(),this.installRegistryListeners(),this.initialize().catch(F.onUnexpectedError)});const C=(0,eT.createStyleSheet)();C.id="codiconStyles";const E=this._register((0,tg.getIconsStyleSheet)(this)),I=this._register(new th.RunOnceScheduler(function(){C.textContent=E.getCSS()},0));this._register(E.onDidChange(()=>I.schedule())),I.schedule()}initialize(){let e=this.environmentService.extensionDevelopmentLocationURI,t=e&&1===e.length?e[0]:void 0,o=async()=>{let e=this.fileIconThemeRegistry.findThemeByExtensionLocation(t);if(e.length)return this.setFileIconTheme(e[0].id,v.ConfigurationTarget.MEMORY);let o=this.fileIconThemeRegistry.findThemeBySettingsId(this.settings.fileIconTheme);return o||(await this.userDataInitializationService.whenInitializationFinished(),o=this.fileIconThemeRegistry.findThemeBySettingsId(this.settings.fileIconTheme)),this.setFileIconTheme(o?o.id:tv,void 0)},i=async()=>{let e=this.productIconThemeRegistry.findThemeByExtensionLocation(t);if(e.length)return this.setProductIconTheme(e[0].id,v.ConfigurationTarget.MEMORY);let o=this.productIconThemeRegistry.findThemeBySettingsId(this.settings.productIconTheme);return o||(await this.userDataInitializationService.whenInitializationFinished(),o=this.productIconThemeRegistry.findThemeBySettingsId(this.settings.productIconTheme)),this.setProductIconTheme(o?o.id:"",void 0)};return Promise.all([(async()=>{let e=this.colorThemeRegistry.findThemeByExtensionLocation(t);if(e.length){let t=e.find(e=>e.type===this.currentColorTheme.type);return this.setColorTheme(t?t.id:e[0].id,void 0)}let o=this.colorThemeRegistry.findThemeBySettingsId(this.settings.colorTheme,void 0);if(!o){await this.userDataInitializationService.whenInitializationFinished();let e=this.currentColorTheme.type===K.ColorScheme.LIGHT?c.COLOR_THEME_LIGHT:c.COLOR_THEME_DARK;o=this.colorThemeRegistry.findThemeBySettingsId(this.settings.colorTheme,e)}return this.setColorTheme(o&&o.id,void 0)})(),o(),i()])}installConfigurationListener(){this._register(this.configurationService.onDidChangeConfiguration(e=>{if((e.affectsConfiguration(l.COLOR_THEME)||e.affectsConfiguration(l.PREFERRED_DARK_THEME)||e.affectsConfiguration(l.PREFERRED_LIGHT_THEME)||e.affectsConfiguration(l.PREFERRED_HC_DARK_THEME)||e.affectsConfiguration(l.PREFERRED_HC_LIGHT_THEME)||e.affectsConfiguration(l.DETECT_COLOR_SCHEME)||e.affectsConfiguration(l.DETECT_HC)||e.affectsConfiguration(l.SYSTEM_COLOR_THEME))&&this.restoreColorTheme(),e.affectsConfiguration(l.FILE_ICON_THEME)&&this.restoreFileIconTheme(),e.affectsConfiguration(l.PRODUCT_ICON_THEME)&&this.restoreProductIconTheme(),this.currentColorTheme){let t=!1;e.affectsConfiguration(l.COLOR_CUSTOMIZATIONS)&&(this.currentColorTheme.setCustomColors(this.settings.colorCustomizations),t=!0),e.affectsConfiguration(l.TOKEN_COLOR_CUSTOMIZATIONS)&&(this.currentColorTheme.setCustomTokenColors(this.settings.tokenColorCustomizations),t=!0),e.affectsConfiguration(l.SEMANTIC_TOKEN_COLOR_CUSTOMIZATIONS)&&(this.currentColorTheme.setCustomSemanticTokenColors(this.settings.semanticTokenColorCustomizations),t=!0),t&&(this.updateDynamicCSSRules(this.currentColorTheme),this.onColorThemeChange.fire(this.currentColorTheme))}}))}installRegistryListeners(){let e,t,o;return this._register(this.colorThemeRegistry.onDidChange(async t=>{if(te(t.themes),await this.restoreColorTheme())this.currentColorTheme.settingsId===c.COLOR_THEME_DARK&&!(0,p.isUndefined)(e)&&await this.colorThemeRegistry.findThemeById(e)?(await this.setColorTheme(e,"auto"),e=void 0):t.added.some(e=>e.settingsId===this.currentColorTheme.settingsId)&&await this.reloadCurrentColorTheme();else if(t.removed.some(e=>e.settingsId===this.currentColorTheme.settingsId)){e=this.currentColorTheme.id;let t=this.colorThemeRegistry.findThemeBySettingsId(c.COLOR_THEME_DARK);await this.setColorTheme(t,"auto")}})),this._register(this._register(this.fileIconThemeRegistry.onDidChange(async e=>{tt(e.themes),await this.restoreFileIconTheme()?this.currentFileIconTheme.id===tv&&!(0,p.isUndefined)(t)&&this.fileIconThemeRegistry.findThemeById(t)?(await this.setFileIconTheme(t,"auto"),t=void 0):e.added.some(e=>e.settingsId===this.currentFileIconTheme.settingsId)&&await this.reloadCurrentFileIconTheme():e.removed.some(e=>e.settingsId===this.currentFileIconTheme.settingsId)&&(t=this.currentFileIconTheme.id,await this.setFileIconTheme(tv,"auto"))}))),this._register(this.productIconThemeRegistry.onDidChange(async e=>{to(e.themes),await this.restoreProductIconTheme()?""===this.currentProductIconTheme.id&&!(0,p.isUndefined)(o)&&this.productIconThemeRegistry.findThemeById(o)?(await this.setProductIconTheme(o,"auto"),o=void 0):e.added.some(e=>e.settingsId===this.currentProductIconTheme.settingsId)&&await this.reloadCurrentProductIconTheme():e.removed.some(e=>e.settingsId===this.currentProductIconTheme.settingsId)&&(o=this.currentProductIconTheme.id,await this.setProductIconTheme("","auto"))})),this._register(this.languageService.onDidChange(()=>this.reloadCurrentFileIconTheme())),Promise.all([this.getColorThemes(),this.getFileIconThemes(),this.getProductIconThemes()]).then(([e,t,o])=>{te(e),tt(t),to(o)})}installPreferredSchemeListener(){this._register(this.hostColorService.onDidChangeColorScheme(()=>{this.settings.isDetectingColorScheme()&&this.restoreColorTheme()}))}getColorTheme(){return this.currentColorTheme}async getColorThemes(){return this.colorThemeRegistry.getThemes()}getPreferredColorScheme(){return this.settings.getPreferredColorScheme()}async getMarketplaceColorThemes(e,t,o){let i=await this.extensionResourceLoaderService.getExtensionGalleryResourceURL({publisher:e,name:t,version:o},"extension");if(i)try{let o=await this.extensionResourceLoaderService.readExtensionResource((0,L.joinPath)(i,"package.json"));return this.colorThemeRegistry.getMarketplaceThemes(JSON.parse(o),i,d.fromName(e,t))}catch(e){this.logService.error("Problem loading themes from marketplace",e)}return[]}get onDidColorThemeChange(){return this.onColorThemeChange.event}setColorTheme(e,t){return this.colorThemeSequencer.queue(async()=>this.internalSetColorTheme(e,t))}async internalSetColorTheme(e,t){if(!e)return null;let o=(0,p.isString)(e)?function(e){switch(e){case K.ThemeTypeSelector.VS:return`vs ${tF}-themes-light_vs-json`;case K.ThemeTypeSelector.VS_DARK:return`vs-dark ${tF}-themes-dark_vs-json`;case K.ThemeTypeSelector.HC_BLACK:return`hc-black ${tF}-themes-hc_black-json`;case K.ThemeTypeSelector.HC_LIGHT:return`hc-light ${tF}-themes-hc_light-json`}return e}(e):e.id;if(this.currentColorTheme.isLoaded&&o===this.currentColorTheme.id)return"preview"!==t&&this.currentColorTheme.toStorage(this.storageService),this.settings.setColorTheme(this.currentColorTheme,t);let i=this.colorThemeRegistry.findThemeById(o);if(!i)if(!(e instanceof J))return null;else i=e;try{return await i.ensureLoaded(this.extensionResourceLoaderService),i.setCustomizations(this.settings),this.applyTheme(i,t)}catch(e){throw Error((0,f.localize)(14330,"Unable to load {0}: {1}",i.location?.toString(),e.message))}}reloadCurrentColorTheme(){return this.colorThemeSequencer.queue(async()=>{try{let e=this.colorThemeRegistry.findThemeBySettingsId(this.currentColorTheme.settingsId)||this.currentColorTheme;await e.reload(this.extensionResourceLoaderService),e.setCustomizations(this.settings),await this.applyTheme(e,void 0,!1)}catch(e){this.logService.info("Unable to reload {0}: {1}",this.currentColorTheme.location?.toString())}})}async restoreColorTheme(){return this.colorThemeSequencer.queue(async()=>{let e=this.settings.colorTheme,t=this.colorThemeRegistry.findThemeBySettingsId(e);return!!t&&(e!==this.currentColorTheme.settingsId?await this.internalSetColorTheme(t.id,void 0):t!==this.currentColorTheme&&(await t.ensureLoaded(this.extensionResourceLoaderService),t.setCustomizations(this.settings),await this.applyTheme(t,void 0,!0)),!0)})}updateDynamicCSSRules(e){let t=new Set,o={addRule:e=>{t.has(e)||t.add(e)}};o.addRule(".monaco-workbench { forced-color-adjust: none; }"),tR.getThemingParticipants().forEach(t=>t(e,o,this.environmentService));let i=[];for(let t of(0,x.getColorRegistry)().getColors()){let o=e.getColor(t.id,!0);o&&i.push(`${(0,x.asCssVariableName)(t.id)}: ${o.toString()};`)}let r=[];for(let t of tC.getSizes()){var n;let o=tC.resolveDefaultSize(t.id,e);o&&r.push(`${(n=t.id,`--vscode-${n.replace(/\./g,"-")}`)}: ${tp(o)};`)}o.addRule(`.monaco-workbench { ${i.concat(r).join("\n")} }`),tO([...t].join("\n"),"contributedColorTheme")}applyTheme(e,t,o=!1){return(this.updateDynamicCSSRules(e),this.currentColorTheme.id?this.container.classList.remove(...this.currentColorTheme.classNames):this.container.classList.remove(K.ThemeTypeSelector.VS,K.ThemeTypeSelector.VS_DARK,K.ThemeTypeSelector.HC_BLACK,K.ThemeTypeSelector.HC_LIGHT),this.container.classList.add(...e.classNames),this.currentColorTheme.clearCaches(),this.currentColorTheme=e,this.colorThemingParticipantChangeListener||(this.colorThemingParticipantChangeListener=tR.onThemingParticipantAdded(e=>this.updateDynamicCSSRules(this.currentColorTheme))),this.colorThemeWatcher.update(e),this.sendTelemetry(e.id,e.extensionData,"color"),o)?Promise.resolve(null):(this.onColorThemeChange.fire(this.currentColorTheme),e.isLoaded&&"preview"!==t&&e.toStorage(this.storageService),this.settings.setColorTheme(this.currentColorTheme,t))}sendTelemetry(e,t,o){if(t){let i=o+t.extensionId;this.themeExtensionsActivated.get(i)||(this.telemetryService.publicLog2("activatePlugin",{id:t.extensionId,name:t.extensionName,isBuiltin:t.extensionIsBuiltin,publisherDisplayName:t.extensionPublisher,themeId:e}),this.themeExtensionsActivated.set(i,!0))}}async getFileIconThemes(){return this.fileIconThemeRegistry.getThemes()}getFileIconTheme(){return this.currentFileIconTheme}get onDidFileIconThemeChange(){return this.onFileIconThemeChange.event}async setFileIconTheme(e,t){return this.fileIconThemeSequencer.queue(async()=>this.internalSetFileIconTheme(e,t))}async internalSetFileIconTheme(e,t){void 0===e&&(e="");let o=(0,p.isString)(e)?e:e.id;if(o!==this.currentFileIconTheme.id||!this.currentFileIconTheme.isLoaded){let t=this.fileIconThemeRegistry.findThemeById(o);!t&&e instanceof eg&&(t=e),t||(t=eg.noIconTheme),await t.ensureLoaded(this.fileIconThemeLoader),this.applyAndSetFileIconTheme(t)}let i=this.currentFileIconTheme;return!i.isLoaded||"preview"===t||i.location&&(0,e_.getRemoteAuthority)(i.location)||i.toStorage(this.storageService),await this.settings.setFileIconTheme(this.currentFileIconTheme,t),i}async getMarketplaceFileIconThemes(e,t,o){let i=await this.extensionResourceLoaderService.getExtensionGalleryResourceURL({publisher:e,name:t,version:o},"extension");if(i)try{let o=await this.extensionResourceLoaderService.readExtensionResource((0,L.joinPath)(i,"package.json"));return this.fileIconThemeRegistry.getMarketplaceThemes(JSON.parse(o),i,d.fromName(e,t))}catch(e){this.logService.error("Problem loading themes from marketplace",e)}return[]}async reloadCurrentFileIconTheme(){return this.fileIconThemeSequencer.queue(async()=>{await this.currentFileIconTheme.reload(this.fileIconThemeLoader),this.applyAndSetFileIconTheme(this.currentFileIconTheme)})}async restoreFileIconTheme(){return this.fileIconThemeSequencer.queue(async()=>{let e=this.settings.fileIconTheme,t=this.fileIconThemeRegistry.findThemeBySettingsId(e);return!!t&&(e!==this.currentFileIconTheme.settingsId?await this.internalSetFileIconTheme(t.id,void 0):t!==this.currentFileIconTheme&&(await t.ensureLoaded(this.fileIconThemeLoader),this.applyAndSetFileIconTheme(t,!0)),!0)})}applyAndSetFileIconTheme(e,t=!1){this.currentFileIconTheme=e,tO(e.styleSheetContent,"contributedFileIconTheme"),e.id?this.container.classList.add(t_):this.container.classList.remove(t_),this.fileIconThemeWatcher.update(e),e.id&&this.sendTelemetry(e.id,e.extensionData,"fileIcon"),t||this.onFileIconThemeChange.fire(this.currentFileIconTheme)}async getProductIconThemes(){return this.productIconThemeRegistry.getThemes()}getProductIconTheme(){return this.currentProductIconTheme}get onDidProductIconThemeChange(){return this.onProductIconThemeChange.event}async setProductIconTheme(e,t){return this.productIconThemeSequencer.queue(async()=>this.internalSetProductIconTheme(e,t))}async internalSetProductIconTheme(e,t){void 0===e&&(e="");let o=(0,p.isString)(e)?e:e.id;if(o!==this.currentProductIconTheme.id||!this.currentProductIconTheme.isLoaded){let t=this.productIconThemeRegistry.findThemeById(o);!t&&e instanceof ts&&(t=e),t||(t=ts.defaultTheme),await t.ensureLoaded(this.extensionResourceLoaderService,this.logService),this.applyAndSetProductIconTheme(t)}let i=this.currentProductIconTheme;return!i.isLoaded||"preview"===t||i.location&&(0,e_.getRemoteAuthority)(i.location)||i.toStorage(this.storageService),await this.settings.setProductIconTheme(this.currentProductIconTheme,t),i}async getMarketplaceProductIconThemes(e,t,o){let i=await this.extensionResourceLoaderService.getExtensionGalleryResourceURL({publisher:e,name:t,version:o},"extension");if(i)try{let o=await this.extensionResourceLoaderService.readExtensionResource((0,L.joinPath)(i,"package.json"));return this.productIconThemeRegistry.getMarketplaceThemes(JSON.parse(o),i,d.fromName(e,t))}catch(e){this.logService.error("Problem loading themes from marketplace",e)}return[]}async reloadCurrentProductIconTheme(){return this.productIconThemeSequencer.queue(async()=>{await this.currentProductIconTheme.reload(this.extensionResourceLoaderService,this.logService),this.applyAndSetProductIconTheme(this.currentProductIconTheme)})}async restoreProductIconTheme(){return this.productIconThemeSequencer.queue(async()=>{let e=this.settings.productIconTheme,t=this.productIconThemeRegistry.findThemeBySettingsId(e);return!!t&&(e!==this.currentProductIconTheme.settingsId?await this.internalSetProductIconTheme(t.id,void 0):t!==this.currentProductIconTheme&&(await t.ensureLoaded(this.extensionResourceLoaderService,this.logService),this.applyAndSetProductIconTheme(t,!0)),!0)})}applyAndSetProductIconTheme(e,t=!1){this.currentProductIconTheme=e,tO(e.styleSheetContent,"contributedProductIconTheme"),this.productIconThemeWatcher.update(e),e.id&&this.sendTelemetry(e.id,e.extensionData,"productIcon"),t||this.onProductIconThemeChange.fire(this.currentProductIconTheme)}};tD=(0,m.__decorate)([(0,m.__param)(0,T.IExtensionService),(0,m.__param)(1,I.IStorageService),(0,m.__param)(2,_.IConfigurationService),(0,m.__param)(3,b.ITelemetryService),(0,m.__param)(4,eC.IBrowserWorkbenchEnvironmentService),(0,m.__param)(5,ey.IFileService),(0,m.__param)(6,ew.IExtensionResourceLoaderService),(0,m.__param)(7,eR.IWorkbenchLayoutService),(0,m.__param)(8,tc.ILogService),(0,m.__param)(9,td.IHostColorSchemeService),(0,m.__param)(10,tu.IUserDataInitializationService),(0,m.__param)(11,tb.ILanguageService)],tD);class tA{constructor(e,t,o){this.fileService=e,this.environmentService=t,this.onUpdate=o,this.watcherDisposables=new ed.DisposableStore}update(e){!(0,L.isEqual)(e.location,this.watchedLocation)&&(this.watchedLocation=void 0,this.watcherDisposables.clear(),e.location&&(e.watch||this.environmentService.isExtensionDevelopment)&&(this.watchedLocation=e.location,this.watcherDisposables.add(this.fileService.watch(e.location)),this.watcherDisposables.add(this.fileService.onDidFilesChange(e=>{this.watchedLocation&&e.contains(this.watchedLocation,eS.FileChangeType.UPDATED)&&this.onUpdate()}))))}dispose(){this.watcherDisposables.dispose(),this.watchedLocation=void 0}}function tO(e,t){let o=tk.mainWindow.document.head.querySelectorAll(`.${t}`);if(0===o.length){let o=(0,eT.createStyleSheet)();o.className=t,o.textContent=e}else o[0].textContent=e}(t=k.Registry.as(ea.Extensions.JSONContribution)).registerSchema(eF,ev),t.registerSchema(eI,ek),k.Registry.as(ea.Extensions.JSONContribution).registerSchema("vscode://schemas/icon-theme",ec),k.Registry.as(ea.Extensions.JSONContribution).registerSchema("vscode://schemas/product-icon-theme",tl);var tz=e.i(970672),tM=e.i(68629),tL=e.i(83823),tP=e.i(686380),tH=e.i(693205),tN=e.i(262072),t$=e.i(905192),tj=e.i(542034),tG=e.i(455162),tU=e.i(362361),tK=e.i(828730),tW=e.i(428048),tq=e.i(704994),tV=e.i(34487),tJ=e.i(927842),tQ=e.i(155652),tY=e.i(718596),tX=e.i(318581),tZ=e.i(324726);e.i(216822);var t0=e.i(975445),t1=e.i(509046),t4=e.i(770326);let t3=(0,el.registerIcon)("theme-selection-manage-extension",tQ.Codicon.gear,(0,f.localize)(12775,"Icon for the 'Manage' action in the theme selection quick pick."));(a=g||(g={})).BROWSE_GALLERY="marketplace",a.EXTENSIONS_VIEW="extensions",a.CUSTOM_TOP_ENTRY="customTopEntry";let t8=class{constructor(e,t,o,i,r,n,s,a,l){this.getMarketplaceColorThemes=e,this.marketplaceQuery=t,this.extensionGalleryService=o,this.extensionManagementService=i,this.quickInputService=r,this.logService=n,this.progressService=s,this.extensionsWorkbenchService=a,this.dialogService=l,this._marketplaceExtensions=new Set,this._marketplaceThemes=[],this._searchOngoing=!1,this._searchError=void 0,this._onDidChange=new es.Emitter,this._queryDelayer=new th.ThrottledDelayer(200),this._installedExtensions=i.getInstalled().then(e=>{let t=new Set;for(let o of e)t.add(o.identifier.id);return t})}get themes(){return this._marketplaceThemes}get onDidChange(){return this._onDidChange.event}trigger(e){this._tokenSource&&(this._tokenSource.cancel(),this._tokenSource=void 0),this._queryDelayer.trigger(()=>(this._tokenSource=new tq.CancellationTokenSource,this.doSearch(e,this._tokenSource.token)))}async doSearch(e,t){this._searchOngoing=!0,this._onDidChange.fire();try{let o=await this._installedExtensions,i={text:`${this.marketplaceQuery} ${e}`,pageSize:20},r=await this.extensionGalleryService.query(i,t);for(let e=0;e<r.total&&e<1&&!t.isCancellationRequested;e++){let i=this._marketplaceThemes.length,n=0===e?r.firstPage:await r.getPage(e,t),s=[],a=[];for(let e=0;e<n.length&&!t.isCancellationRequested;e++){let t=n[e];o.has(t.identifier.id)||this._marketplaceExtensions.has(t.identifier.id)||(this._marketplaceExtensions.add(t.identifier.id),s.push(this.getMarketplaceColorThemes(t.publisher,t.name,t.version)),a.push(t))}let l=await Promise.all(s);for(let e=0;e<l.length;e++){let t=a[e];for(let o of l[e])this._marketplaceThemes.push({id:o.id,theme:o,label:o.label,description:`${t.displayName} \xb7 ${t.publisherDisplayName}`,galleryExtension:t,buttons:[oi]})}i!==this._marketplaceThemes.length&&(this._marketplaceThemes.sort((e,t)=>e.label.localeCompare(t.label)),this._onDidChange.fire())}}catch(e){(0,F.isCancellationError)(e)||(this.logService.error("Error while searching for themes:",e),this._searchError="message"in e?e.message:String(e))}finally{this._searchOngoing=!1,this._onDidChange.fire()}}openQuickPick(e,t,o){let i,r=new ed.DisposableStore;return new Promise((n,s)=>{let a=r.add(this.quickInputService.createQuickPick());a.items=[],a.sortByLabel=!1,a.matchOnDescription=!0,a.buttons=[this.quickInputService.backButton],a.title="Marketplace Themes",a.placeholder=(0,f.localize)(12776,"Type to Search More. Select to Install. Up/Down Keys to Preview"),a.canSelectMany=!1,r.add(a.onDidChangeValue(()=>this.trigger(a.value))),r.add(a.onDidAccept(async e=>{let r=a.selectedItems[0];r?.galleryExtension&&(i="selected",a.hide(),await this.installExtension(r.galleryExtension)?o(r.theme,!0):o(t,!0))})),r.add(a.onDidTriggerItemButton(e=>{if(oe(e.item)){let t=e.item.theme?.extensionData?.extensionId;t?this.extensionsWorkbenchService.openSearch(`@id:${t}`):this.extensionsWorkbenchService.openSearch(`${this.marketplaceQuery} ${a.value}`)}})),r.add(a.onDidChangeActive(e=>{void 0===i&&o(e[0]?.theme,!1)})),r.add(a.onDidHide(()=>{void 0===i&&(o(t,!0),i="cancelled"),n(i)})),r.add(a.onDidTriggerButton(e=>{e===this.quickInputService.backButton&&(i="back",a.hide())})),r.add(this.onDidChange(()=>{let e=this.themes;this._searchOngoing?e=e.concat({label:"$(loading~spin) Searching for themes...",id:void 0,alwaysShow:!0}):0===e.length&&this._searchError&&(e=[{label:`$(error) ${(0,f.localize)(12777,"Error while searching for themes: {0}",this._searchError)}`,id:void 0,alwaysShow:!0}]);let t=a.activeItems[0]?.id,o=t?e.find(e=>oe(e)&&e.id===t):void 0;a.items=e,o&&(a.activeItems=[o])})),this.trigger(e),a.show()}).finally(()=>{r.dispose()})}async installExtension(e){if(this.extensionsWorkbenchService.openSearch(`@id:${e.identifier.id}`),!(await this.dialogService.confirm({message:(0,f.localize)(12778,"This will install extension '{0}' published by '{1}'. Do you want to continue?",e.displayName,e.publisherDisplayName),primaryButton:(0,f.localize)(12779,"OK")})).confirmed)return!1;try{return await this.progressService.withProgress({location:tV.ProgressLocation.Notification,title:(0,f.localize)(12780,"Installing Extension {0}...",e.displayName)},async()=>{await this.extensionManagementService.installFromGallery(e,{isMachineScoped:!1})}),!0}catch(t){return this.logService.error(`Problem installing extension ${e.identifier.id}`,t),!1}}dispose(){this._tokenSource&&(this._tokenSource.cancel(),this._tokenSource=void 0),this._queryDelayer.dispose(),this._marketplaceExtensions.clear(),this._marketplaceThemes.length=0,this._onDidChange.dispose()}};t8=(0,m.__decorate)([(0,m.__param)(2,tG.IExtensionGalleryService),(0,m.__param)(3,tG.IExtensionManagementService),(0,m.__param)(4,tW.IQuickInputService),(0,m.__param)(5,tc.ILogService),(0,m.__param)(6,tJ.IProgressService),(0,m.__param)(7,tj.IExtensionsWorkbenchService),(0,m.__param)(8,tZ.IDialogService)],t8);let t2=class{constructor(e,t,o,i,r,n,s,a){this.options=e,this.setTheme=t,this.getMarketplaceColorThemes=o,this.quickInputService=i,this.extensionGalleryService=r,this.extensionsWorkbenchService=n,this.extensionResourceLoaderService=s,this.instantiationService=a}async openQuickPick(e,t){let o,i;this.extensionGalleryService.isEnabled()&&(await this.extensionResourceLoaderService.supportsExtensionGalleryResources()&&this.options.browseMessage?(o=this.instantiationService.createInstance(t8,this.getMarketplaceColorThemes.bind(this),this.options.marketplaceTag),e=[t9(this.options.browseMessage,g.BROWSE_GALLERY),...e]):e=[...e,{type:"separator"},t9(this.options.installMessage,g.EXTENSIONS_VIEW)]);let r=(e,o)=>{i&&clearTimeout(i),i=tk.mainWindow.setTimeout(()=>{i=void 0;let r=e??t;this.setTheme(r,o?"auto":"preview").then(void 0,e=>{(0,F.onUnexpectedError)(e),this.setTheme(t,void 0)})},200*!o)},n=i=>{let s=new ed.DisposableStore;return new Promise((a,l)=>{let c=!1,d=e.findIndex(e=>oe(e)&&e.id===i),h=s.add(this.quickInputService.createQuickPick({useSeparators:!0}));h.items=e,h.title=this.options.title,h.description=this.options.description,h.placeholder=this.options.placeholderMessage,h.activeItems=[e[d]],h.canSelectMany=!1,h.buttons=this.options.buttons??[],s.add(h.onDidTriggerButton(e=>this.options.onButton?.(e,h))),h.matchOnDescription=!0,s.add(h.onDidAccept(async e=>{c=!0;let i=h.selectedItems[0];!i||i.configureItem?i&&i.configureItem!==g.EXTENSIONS_VIEW?i.configureItem===g.BROWSE_GALLERY&&o&&"back"===await o.openQuickPick(h.value,t,r)&&await n(void 0):this.extensionsWorkbenchService.openSearch(`${this.options.marketplaceTag} ${h.value}`):r(i.theme,!0),h.hide(),a()})),s.add(h.onDidChangeActive(e=>r(e[0]?.theme,!1))),s.add(h.onDidHide(()=>{c||(r(t,!0),a()),h.dispose()})),s.add(h.onDidTriggerItemButton(e=>{if(oe(e.item)){let t=e.item.theme?.extensionData?.extensionId;t?this.extensionsWorkbenchService.openSearch(`@id:${t}`):this.extensionsWorkbenchService.openSearch(`${this.options.marketplaceTag} ${h.value}`)}})),h.show()}).finally(()=>{s.dispose()})};await n(t.id),o?.dispose()}};t2=(0,m.__decorate)([(0,m.__param)(3,tW.IQuickInputService),(0,m.__param)(4,tG.IExtensionGalleryService),(0,m.__param)(5,tj.IExtensionsWorkbenchService),(0,m.__param)(6,ew.IExtensionResourceLoaderService),(0,m.__param)(7,E.IInstantiationService)],t2);let t5="workbench.action.selectTheme";(0,tP.registerAction2)(class extends tP.Action2{constructor(){super({id:t5,title:(0,f.localize2)(12781,"Color Theme"),category:tN.Categories.Preferences,f1:!0,keybinding:{weight:tY.KeybindingWeight.WorkbenchContrib,primary:(0,tL.KeyChord)(tL.KeyMod.CtrlCmd|tL.KeyCode.KeyK,tL.KeyMod.CtrlCmd|tL.KeyCode.KeyT)}})}getTitle(e){switch(e){case K.ColorScheme.DARK:return(0,f.localize)(12782,"Select Color Theme for System Dark Mode");case K.ColorScheme.LIGHT:return(0,f.localize)(12783,"Select Color Theme for System Light Mode");case K.ColorScheme.HIGH_CONTRAST_DARK:return(0,f.localize)(12784,"Select Color Theme for High Contrast Dark Mode");case K.ColorScheme.HIGH_CONTRAST_LIGHT:return(0,f.localize)(12785,"Select Color Theme for High Contrast Light Mode");default:return(0,f.localize)(12786,"Select Color Theme (detect system color mode disabled)")}}async run(e){let t,o=e.get(t$.IWorkbenchThemeService),i=e.get(t1.IPreferencesService),r=o.getPreferredColorScheme(),n={tooltip:r?(0,f.localize)(12787,"Detect system color mode enabled. Click to configure."):(0,f.localize)(12788,"Detect system color mode disabled. Click to configure."),iconClass:tn.ThemeIcon.asClassName(tQ.Codicon.colorMode),location:tK.QuickInputButtonLocation.Inline},s={installMessage:(0,f.localize)(12789,"Install Additional Color Themes..."),browseMessage:"$(plus) "+(0,f.localize)(12790,"Browse Additional Color Themes..."),placeholderMessage:this.getTitle(r),marketplaceTag:"category:themes",buttons:[n],onButton:async(e,t)=>{t.hide(),await i.openSettings({query:l.DETECT_COLOR_SCHEME})}},a=e.get(E.IInstantiationService).createInstance(t2,s,(e,t)=>o.setColorTheme(e,t),(e,t,i)=>o.getMarketplaceColorThemes(e,t,i)),c=await o.getColorThemes(),d=o.getColorTheme(),h=oo(c.filter(e=>e.type===K.ColorScheme.LIGHT),(0,f.localize)(12791,"light themes")),u=oo(c.filter(e=>e.type===K.ColorScheme.DARK),(0,f.localize)(12792,"dark themes")),g=oo(c.filter(e=>(0,K.isHighContrast)(e.type)),(0,f.localize)(12793,"high contrast themes"));switch(r){case K.ColorScheme.DARK:t=[...u,...h,...g];break;case K.ColorScheme.HIGH_CONTRAST_DARK:case K.ColorScheme.HIGH_CONTRAST_LIGHT:t=[...g,...h,...u];break;case K.ColorScheme.LIGHT:default:t=[...h,...u,...g]}await a.openQuickPick(t,d)}});let t7="workbench.action.selectIconTheme";(0,tP.registerAction2)(class extends tP.Action2{constructor(){super({id:t7,title:(0,f.localize2)(12794,"File Icon Theme"),category:tN.Categories.Preferences,f1:!0})}async run(e){let t=e.get(t$.IWorkbenchThemeService),o={installMessage:(0,f.localize)(12795,"Install Additional File Icon Themes..."),placeholderMessage:(0,f.localize)(12796,"Select File Icon Theme (Up/Down Keys to Preview)"),marketplaceTag:"tag:icon-theme"},i=e.get(E.IInstantiationService).createInstance(t2,o,(e,o)=>t.setFileIconTheme(e,o),(e,o,i)=>t.getMarketplaceFileIconThemes(e,o,i)),r=[{type:"separator",label:(0,f.localize)(12797,"file icon themes")},{id:"",theme:eg.noIconTheme,label:(0,f.localize)(12798,"None"),description:(0,f.localize)(12799,"Disable File Icons")},...oo(await t.getFileIconThemes())];await i.openQuickPick(r,t.getFileIconTheme())}});let t6="workbench.action.selectProductIconTheme";function t9(e,t){return{id:void 0,label:e,alwaysShow:!0,buttons:[oi],configureItem:t}}function oe(e){return"separator"!==e.type}function ot(e){let t=e.settingsId??void 0,o={id:e.id,theme:e,label:e.label,description:e.description||(e.label===t?void 0:t)};return e.extensionData&&(o.buttons=[oi]),o}function oo(e,t){let o=e.map(ot).sort((e,t)=>e.label.localeCompare(t.label));return o.length>0&&t&&o.unshift({type:"separator",label:t}),o}(0,tP.registerAction2)(class extends tP.Action2{constructor(){super({id:t6,title:(0,f.localize2)(12800,"Product Icon Theme"),category:tN.Categories.Preferences,f1:!0})}async run(e){let t=e.get(t$.IWorkbenchThemeService),o={installMessage:(0,f.localize)(12801,"Install Additional Product Icon Themes..."),browseMessage:"$(plus) "+(0,f.localize)(12802,"Browse Additional Product Icon Themes..."),placeholderMessage:(0,f.localize)(12803,"Select Product Icon Theme (Up/Down Keys to Preview)"),marketplaceTag:"tag:product-icon-theme"},i=e.get(E.IInstantiationService).createInstance(t2,o,(e,o)=>t.setProductIconTheme(e,o),(e,o,i)=>t.getMarketplaceProductIconThemes(e,o,i)),r=[{type:"separator",label:(0,f.localize)(12804,"product icon themes")},{id:"",theme:ts.defaultTheme,label:(0,f.localize)(12805,"Default")},...oo(await t.getProductIconThemes())];await i.openQuickPick(r,t.getProductIconTheme())}}),tX.CommandsRegistry.registerCommand("workbench.action.previewColorTheme",async function(e,t,o){var i,r;let n=e.get(t$.IWorkbenchThemeService),s=(i=await n.getColorThemes(),r=t,i.filter(({extensionData:e})=>e&&e.extensionIsBuiltin&&(0,tH.equalsIgnoreCase)(e.extensionPublisher,r.publisher)&&(0,tH.equalsIgnoreCase)(e.extensionName,r.name)));for(let e of(0===s.length&&(s=await n.getMarketplaceColorThemes(t.publisher,t.name,t.version)),s))if(!o||e.settingsId===o)return await n.setColorTheme(e,"preview"),e.settingsId});let oi={iconClass:tn.ThemeIcon.asClassName(t3),tooltip:(0,f.localize)(12806,"Manage Extension")};(0,tP.registerAction2)(class extends tP.Action2{constructor(){super({id:"workbench.action.generateColorTheme",title:(0,f.localize2)(12807,"Generate Color Theme From Current Settings"),category:tN.Categories.Developer,f1:!0})}run(e){let t=e.get(t$.IWorkbenchThemeService).getColorTheme(),o=k.Registry.as(x.Extensions.ColorContribution).getColors().filter(e=>!e.deprecationMessage).map(e=>e.id).sort(),i={},r=[];for(let e of o){let o=t.getColor(e,!1);o?i[e]=B.Color.Format.CSS.formatHexA(o,!0):r.push(e)}let n=[];for(let e of r){let o=t.getColor(e);o?i["__"+e]=B.Color.Format.CSS.formatHexA(o,!0):n.push(e)}for(let e of n)i["__"+e]=null;let s=JSON.stringify({$schema:eF,type:t.type,colors:i,tokenColors:t.tokenColors.filter(e=>!!e.scope)},null," ");return s=s.replace(/\"__/g,'//"'),e.get(tU.IEditorService).openEditor({resource:void 0,contents:s,languageId:"jsonc",options:{pinned:!0}})}}),(0,tP.registerAction2)(class extends tP.Action2{constructor(){super({id:"workbench.action.toggleLightDarkThemes",title:(0,f.localize2)(12808,"Toggle between Light/Dark Themes"),category:tN.Categories.Preferences,f1:!0})}async run(e){let t=e.get(t$.IWorkbenchThemeService),o=e.get(_.IConfigurationService),i=e.get(t0.INotificationService),r=e.get(t1.IPreferencesService);if(o.getValue(l.DETECT_COLOR_SCHEME)){let e=(0,f.localize)(12809,"Cannot toggle between light and dark themes when `{0}` is enabled in settings.",l.DETECT_COLOR_SCHEME);i.prompt(t4.default.Info,e,[{label:(0,f.localize)(12810,"Open Settings"),run:()=>r.openUserSettings({query:l.DETECT_COLOR_SCHEME})}]);return}let n=t.getColorTheme(),s=l.PREFERRED_DARK_THEME;switch(n.type){case K.ColorScheme.LIGHT:s=l.PREFERRED_DARK_THEME;break;case K.ColorScheme.DARK:s=l.PREFERRED_LIGHT_THEME;break;case K.ColorScheme.HIGH_CONTRAST_LIGHT:s=l.PREFERRED_HC_DARK_THEME;break;case K.ColorScheme.HIGH_CONTRAST_DARK:s=l.PREFERRED_HC_LIGHT_THEME}let a=o.getValue(s);if(a&&"string"==typeof a){let e=(await t.getColorThemes()).find(e=>e.settingsId===a);e&&t.setColorTheme(e.id,"auto")}}}),(0,tP.registerAction2)(class extends tP.Action2{constructor(){super({id:"workbench.action.browseColorThemesInMarketplace",title:(0,f.localize2)(12811,"Browse Color Themes in Marketplace"),category:tN.Categories.Preferences,f1:!0})}async run(e){let t,o="category:themes",i=e.get(t$.IWorkbenchThemeService),r=e.get(tG.IExtensionGalleryService),n=e.get(ew.IExtensionResourceLoaderService),s=e.get(tj.IExtensionsWorkbenchService),a=e.get(E.IInstantiationService);if(!r.isEnabled())return;if(!await n.supportsExtensionGalleryResources())return void await s.openSearch(o);let l=i.getColorTheme(),c=a.createInstance(t8,(e,t,o)=>i.getMarketplaceColorThemes(e,t,o),o);await c.openQuickPick("",i.getColorTheme(),(e,o)=>{t&&clearTimeout(t),t=tk.mainWindow.setTimeout(()=>{t=void 0,i.setColorTheme(e??l,o?"auto":"preview").then(void 0,e=>{(0,F.onUnexpectedError)(e),i.setColorTheme(l,void 0)})},200*!o)}).then(void 0,F.onUnexpectedError)}});let or=new tP.MenuId("ThemesSubMenu");tP.MenuRegistry.appendMenuItem(tP.MenuId.GlobalActivity,{title:(0,f.localize)(12812,"Themes"),submenu:or,group:"2_configuration",order:7}),tP.MenuRegistry.appendMenuItem(tP.MenuId.MenubarPreferencesMenu,{title:(0,f.localize)(12813,"&&Themes"),submenu:or,group:"2_configuration",order:7}),tP.MenuRegistry.appendMenuItem(or,{command:{id:t5,title:(0,f.localize)(12781,"Color Theme")},order:1}),tP.MenuRegistry.appendMenuItem(or,{command:{id:t7,title:(0,f.localize)(12814,"File Icon Theme")},order:2}),tP.MenuRegistry.appendMenuItem(or,{command:{id:t6,title:(0,f.localize)(12815,"Product Icon Theme")},order:3});class on extends tD{registerEditorContainer(){return{dispose(){}}}setTheme(e){this.getColorThemes().then(t=>{setTimeout(()=>{this.setColorTheme(t.find(t=>t.settingsId===e)??e,v.ConfigurationTarget.MEMORY)})})}}e.s(["default",0,function(){return{...(0,tM.default)(),[tz.IThemeService.toString()]:new eO.SyncDescriptor(on,[],!1)}}],934731)}]);