@loicngr/kobo 1.11.44 → 2.1.0

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 (196) hide show
  1. package/AGENTS.md +57 -4
  2. package/CHANGELOG.md +13 -0
  3. package/CODE_OF_CONDUCT.md +16 -0
  4. package/CONFIGURATION.md +1968 -0
  5. package/CONTRIBUTING.md +83 -0
  6. package/DESIGN.md +296 -0
  7. package/README.md +48 -8
  8. package/SECURITY.md +54 -0
  9. package/THIRD_PARTY_NOTICES.md +20 -0
  10. package/dist/mcp-server/kobo-tasks-handlers.js +2 -1
  11. package/dist/mcp-server/kobo-tasks-server.js +31 -5
  12. package/dist/server/db/migrations.js +37 -0
  13. package/dist/server/db/schema.js +6 -1
  14. package/dist/server/db/session-handoff-schema.js +24 -0
  15. package/dist/server/index.js +8 -0
  16. package/dist/server/routes/documents.js +1 -1
  17. package/dist/server/routes/environment.js +18 -0
  18. package/dist/server/routes/health.js +17 -2
  19. package/dist/server/routes/integrations.js +29 -0
  20. package/dist/server/routes/settings.js +5 -0
  21. package/dist/server/routes/sounds.js +60 -0
  22. package/dist/server/routes/workspaces.js +118 -20
  23. package/dist/server/services/agent/engines/claude-code/engine.js +15 -0
  24. package/dist/server/services/agent/engines/codex/engine.js +1 -0
  25. package/dist/server/services/agent/engines/codex/options-builder.js +1 -0
  26. package/dist/server/services/agent/engines/codex/spawn.js +2 -2
  27. package/dist/server/services/agent/integration-mcp.js +49 -0
  28. package/dist/server/services/agent/orchestrator.js +68 -11
  29. package/dist/server/services/auto-loop-service.js +45 -25
  30. package/dist/server/services/custom-sound-service.js +0 -0
  31. package/dist/server/services/engine-handoff-service.js +5 -5
  32. package/dist/server/services/environment-check-service.js +125 -0
  33. package/dist/server/services/initial-prompt-template-service.js +8 -21
  34. package/dist/server/services/integration-config-service.js +65 -0
  35. package/dist/server/services/legacy-public-prompts.js +112 -0
  36. package/dist/server/services/notion-service.js +25 -61
  37. package/dist/server/services/sentry-service.js +17 -12
  38. package/dist/server/services/session-activity-service.js +17 -0
  39. package/dist/server/services/session-handoff-runtime.js +26 -0
  40. package/dist/server/services/session-handoff-service.js +479 -0
  41. package/dist/server/services/settings-defaults.js +5 -0
  42. package/dist/server/services/settings-service.js +112 -23
  43. package/dist/server/services/skill-suite-prompts.js +29 -22
  44. package/dist/server/services/templates-service.js +31 -8
  45. package/dist/server/services/terminal-service.js +16 -0
  46. package/dist/server/services/wakeup-service.js +15 -5
  47. package/dist/server/services/workspace-service.js +30 -6
  48. package/dist/server/services/worktree-service.js +3 -1
  49. package/dist/server/utils/git-repo-lock.js +7 -3
  50. package/dist/server/utils/mcp-client.js +26 -12
  51. package/dist/server/utils/mcp-process.js +25 -0
  52. package/dist/server/utils/node-pty-spawn-helper.js +31 -0
  53. package/dist/server/utils/paths.js +7 -0
  54. package/dist/server/utils/workspace-lifecycle-guard.js +35 -20
  55. package/dist/shared/auto-loop-prompts.js +6 -2
  56. package/dist/shared/automatic-admission.js +1 -0
  57. package/dist/shared/document-roots.js +2 -0
  58. package/dist/shared/environment.js +1 -0
  59. package/dist/shared/notification-assets.js +73 -0
  60. package/dist/shared/session-handoff.js +4 -0
  61. package/dist/shared/skill-suite-prompts.js +6 -3
  62. package/dist/shared/workflow-policy.js +25 -0
  63. package/docs/getting-started.md +47 -0
  64. package/docs/troubleshooting.md +49 -0
  65. package/package.json +19 -7
  66. package/src/client/dist/pwa/assets/ActivityFeed-DRgetl1M.js +8 -0
  67. package/src/client/dist/pwa/assets/{ChangelogPage-DSKCvpr2.js → ChangelogPage-BJdICFvz.js} +1 -1
  68. package/src/client/dist/pwa/assets/{ComparisonPanel-DDxcsxyC.js → ComparisonPanel-2GLd8KIy.js} +1 -1
  69. package/src/client/dist/pwa/assets/CreatePage-B9AdNJZj.js +2 -0
  70. package/src/client/dist/pwa/assets/CreatePage-B9C9J9Pw.css +1 -0
  71. package/src/client/dist/pwa/assets/DashboardPage-CzVOvjSP.js +1 -0
  72. package/src/client/dist/pwa/assets/DiffViewer-X25vuf83.js +8 -0
  73. package/src/client/dist/pwa/assets/{DocumentsPanel-DfEoI_f7.js → DocumentsPanel-BastjrEm.js} +1 -1
  74. package/src/client/dist/pwa/assets/{DrawerToggleButton-D85PwhKb.js → DrawerToggleButton-DbipGmBL.js} +1 -1
  75. package/src/client/dist/pwa/assets/{GitPanel-BFCnyhE2.css → GitPanel-C4wOcZV2.css} +1 -1
  76. package/src/client/dist/pwa/assets/GitPanel-CnW4iVao.js +3 -0
  77. package/src/client/dist/pwa/assets/{HealthPage-CaLCpejR.js → HealthPage-aieNQly-.js} +1 -1
  78. package/src/client/dist/pwa/assets/MainLayout-Cc4XzCAy.css +1 -0
  79. package/src/client/dist/pwa/assets/MainLayout-DqBbE8o4.js +2 -0
  80. package/src/client/dist/pwa/assets/{QBtnDropdown-qJWGcZpC.js → QBtnDropdown-BWy-rh45.js} +1 -1
  81. package/src/client/dist/pwa/assets/QExpansionItem-DfmdBGuW.js +1 -0
  82. package/src/client/dist/pwa/assets/QSelect-BfqaWakg.js +1 -0
  83. package/src/client/dist/pwa/assets/{QTooltip-cDK5AOQ5.js → QTooltip-Cy0T0vk2.js} +1 -1
  84. package/src/client/dist/pwa/assets/SchedulePanel-BYKSFoFj.css +1 -0
  85. package/src/client/dist/pwa/assets/SchedulePanel-YQPObRR3.js +1 -0
  86. package/src/client/dist/pwa/assets/{SearchPage-BO-J4aNc.js → SearchPage-BoBjmItc.js} +1 -1
  87. package/src/client/dist/pwa/assets/SettingsPage-0GtDcXRC.js +9 -0
  88. package/src/client/dist/pwa/assets/{SettingsPage-W6N01tGz.css → SettingsPage-BYdLXJEJ.css} +1 -1
  89. package/src/client/dist/pwa/assets/SplitWorkspacePage-4wFh65Lh.js +1 -0
  90. package/src/client/dist/pwa/assets/{TerminalPanel-DitOCad1.js → TerminalPanel-b70x_jqH.js} +9 -9
  91. package/src/client/dist/pwa/assets/{TouchPan-DvPAhZsa.js → TouchPan-CcTVcxwd.js} +1 -1
  92. package/src/client/dist/pwa/assets/{TourReplayButton-CJYdH3Jf.js → TourReplayButton-CpEMnQS8.js} +1 -1
  93. package/src/client/dist/pwa/assets/WorkspaceAttentionLabels-C5lTHTp2.js +1 -0
  94. package/src/client/dist/pwa/assets/{WorkspacePage-DAVo-E4p.css → WorkspacePage--5HsnMQ1.css} +1 -1
  95. package/src/client/dist/pwa/assets/WorkspacePage-D_V9gNON.js +4 -0
  96. package/src/client/dist/pwa/assets/{browser-BsB6cFv4.js → browser-LBbxVwWf.js} +1 -1
  97. package/src/client/dist/pwa/assets/build-path-tree-DyvtWxb0.js +1 -0
  98. package/src/client/dist/pwa/assets/custom-sounds-BpeLZUDW.js +1 -0
  99. package/src/client/dist/pwa/assets/de-v6i2HlE2.js +17 -0
  100. package/src/client/dist/pwa/assets/{documents-SCd3w8xV.js → documents-Bjx8lz-h.js} +1 -1
  101. package/src/client/dist/pwa/assets/{editor.api-BUdM7I6y.js → editor.api-BC3PbJkx.js} +1 -1
  102. package/src/client/dist/pwa/assets/efforts-BDHAnNUs.js +9 -0
  103. package/src/client/dist/pwa/assets/engineFeatures-hlEiwqt-.js +1 -0
  104. package/src/client/dist/pwa/assets/es-Bc1KgkAT.js +17 -0
  105. package/src/client/dist/pwa/assets/expand-template-DLDl1qPx.js +1 -0
  106. package/src/client/dist/pwa/assets/{format-BjQxf4pe.js → format-Q94deO3I.js} +7 -7
  107. package/src/client/dist/pwa/assets/{formatters-BejhmNTV.js → formatters-CWxRHuUu.js} +1 -1
  108. package/src/client/dist/pwa/assets/fr-ByYPK5vr.js +17 -0
  109. package/src/client/dist/pwa/assets/{freemarker2-5d5GhyRp.js → freemarker2-MPhk0eTh.js} +1 -1
  110. package/src/client/dist/pwa/assets/{handlebars-DaafEsDK.js → handlebars-C60ru5gR.js} +1 -1
  111. package/src/client/dist/pwa/assets/{html-CwHBDd2A.js → html-ClzchR9j.js} +1 -1
  112. package/src/client/dist/pwa/assets/i18n-Sy42tm-V.js +1 -0
  113. package/src/client/dist/pwa/assets/index-CqZ7sDcM.js +20 -0
  114. package/src/client/dist/pwa/assets/it-BYF_88z6.js +17 -0
  115. package/src/client/dist/pwa/assets/{javascript-DSNIEEH5.js → javascript-C43UJmMx.js} +1 -1
  116. package/src/client/dist/pwa/assets/{liquid-Dma1UpA1.js → liquid-CYTrvTKF.js} +1 -1
  117. package/src/client/dist/pwa/assets/{mdx-D8rqEAws.js → mdx-CxsXOvkQ.js} +1 -1
  118. package/src/client/dist/pwa/assets/{monaco-contributions-2E7O2zoi.js → monaco-contributions-Cl4-iVpK.js} +1 -1
  119. package/src/client/dist/pwa/assets/monaco.contribution-DkjLUmyA.js +2 -0
  120. package/src/client/dist/pwa/assets/network-auth-CXQn2wO7.js +1 -0
  121. package/src/client/dist/pwa/assets/notify-theme-BrueBr2j.js +1 -0
  122. package/src/client/dist/pwa/assets/{pending-diff-open-CeiVIFZn.js → pending-diff-open-B4POItbR.js} +1 -1
  123. package/src/client/dist/pwa/assets/permissionModes-B-ciuUbz.js +36 -0
  124. package/src/client/dist/pwa/assets/{project-color-BCp9SWoI.js → project-color-CM3hflLH.js} +1 -1
  125. package/src/client/dist/pwa/assets/{python-f-9NqRlI.js → python-s2IMpsoV.js} +1 -1
  126. package/src/client/dist/pwa/assets/{razor-DsCmoX0h.js → razor-DVNXiVBh.js} +1 -1
  127. package/src/client/dist/pwa/assets/render-chat-markdown-TU6CDfD8.js +69 -0
  128. package/src/client/dist/pwa/assets/{typescript-cEHg4L10.js → typescript-BYT_8ABE.js} +1 -1
  129. package/src/client/dist/pwa/assets/use-slide-transition-CiaDm-tR.js +1 -0
  130. package/src/client/dist/pwa/assets/use-tours-CNe8qb1q.js +2 -0
  131. package/src/client/dist/pwa/assets/workspace-templates-tBxXE52A.js +1 -0
  132. package/src/client/dist/pwa/assets/{xml-Plt-Y7we.js → xml-BIG-fmxk.js} +1 -1
  133. package/src/client/dist/pwa/assets/{yaml-ScEmaAeN.js → yaml-D7gu2CQh.js} +1 -1
  134. package/src/client/dist/pwa/index.html +1 -1
  135. package/src/client/dist/pwa/sounds/neutral.wav +0 -0
  136. package/src/client/dist/pwa/sounds/ready.wav +0 -0
  137. package/src/client/dist/pwa/sw.js +1 -1
  138. package/src/mcp-server/README.md +8 -1
  139. package/src/mcp-server/kobo-tasks-handlers.ts +4 -1
  140. package/src/mcp-server/kobo-tasks-server.ts +38 -5
  141. package/src/client/dist/pwa/assets/ActivityFeed-D_y4aikp.js +0 -8
  142. package/src/client/dist/pwa/assets/CreatePage-DKVEknbL.js +0 -2
  143. package/src/client/dist/pwa/assets/CreatePage-TY9g3hZb.css +0 -1
  144. package/src/client/dist/pwa/assets/DashboardPage-Dg2s9nnv.js +0 -1
  145. package/src/client/dist/pwa/assets/DiffViewer-BSzNScIr.js +0 -8
  146. package/src/client/dist/pwa/assets/GitPanel-CuG8MlgF.js +0 -3
  147. package/src/client/dist/pwa/assets/MainLayout-CDxYIJ_s.js +0 -2
  148. package/src/client/dist/pwa/assets/MainLayout-DTLNunOi.css +0 -1
  149. package/src/client/dist/pwa/assets/QDrawer-DX3PhMqC.js +0 -1
  150. package/src/client/dist/pwa/assets/QSelect-CY4TWW_j.js +0 -1
  151. package/src/client/dist/pwa/assets/SchedulePanel-BAA4Aajn.css +0 -1
  152. package/src/client/dist/pwa/assets/SchedulePanel-LvHiZ6ZH.js +0 -1
  153. package/src/client/dist/pwa/assets/SettingsPage-Aw89fRSq.js +0 -9
  154. package/src/client/dist/pwa/assets/SplitWorkspacePage-BIEceNwH.js +0 -1
  155. package/src/client/dist/pwa/assets/WorkspaceAttentionLabels-CY-9z9nw.js +0 -1
  156. package/src/client/dist/pwa/assets/WorkspacePage-xH_OyA3r.js +0 -4
  157. package/src/client/dist/pwa/assets/build-path-tree-CW-ER1Mt.js +0 -1
  158. package/src/client/dist/pwa/assets/de-Mu7biceO.js +0 -17
  159. package/src/client/dist/pwa/assets/efforts-DTJQP9or.js +0 -9
  160. package/src/client/dist/pwa/assets/engineFeatures-Bj6Ob41d.js +0 -1
  161. package/src/client/dist/pwa/assets/es-BY5IfNI2.js +0 -17
  162. package/src/client/dist/pwa/assets/expand-template-SM8vvYyO.js +0 -1
  163. package/src/client/dist/pwa/assets/fouet-ahh-DdxrUXRj.mp3 +0 -0
  164. package/src/client/dist/pwa/assets/fr-BMXCzFCM.js +0 -17
  165. package/src/client/dist/pwa/assets/i18n-CgWW5vfb.js +0 -1
  166. package/src/client/dist/pwa/assets/index-Di9Sz5E8.js +0 -20
  167. package/src/client/dist/pwa/assets/it-ByPZQK_K.js +0 -17
  168. package/src/client/dist/pwa/assets/monaco.contribution-DqOgo72G.js +0 -2
  169. package/src/client/dist/pwa/assets/network-auth-DNmhJTZn.js +0 -1
  170. package/src/client/dist/pwa/assets/notify-theme-B6Hiwvwb.js +0 -1
  171. package/src/client/dist/pwa/assets/permissionModes-DWdtf81n.js +0 -36
  172. package/src/client/dist/pwa/assets/render-chat-markdown-DK5BD9mU.js +0 -67
  173. package/src/client/dist/pwa/assets/use-tours-BmTbosmB.js +0 -2
  174. package/src/client/dist/pwa/assets/workspace-templates-DUWDLMIX.js +0 -1
  175. package/src/client/dist/pwa/sounds/7eme-compagnie-03.mp3 +0 -0
  176. package/src/client/dist/pwa/sounds/aller-ftg.mp3 +0 -0
  177. package/src/client/dist/pwa/sounds/arrete-de-mentir.mp3 +0 -0
  178. package/src/client/dist/pwa/sounds/arretez-les-messages.mp3 +0 -0
  179. package/src/client/dist/pwa/sounds/bah-alors-on-est-nul.mp3 +0 -0
  180. package/src/client/dist/pwa/sounds/basic-notification.mp3 +0 -0
  181. package/src/client/dist/pwa/sounds/ca_va_peter.mp3 +0 -0
  182. package/src/client/dist/pwa/sounds/dry-fart.mp3 +0 -0
  183. package/src/client/dist/pwa/sounds/faaah.mp3 +0 -0
  184. package/src/client/dist/pwa/sounds/for-shure.mp3 +0 -0
  185. package/src/client/dist/pwa/sounds/gta-v-death.mp3 +0 -0
  186. package/src/client/dist/pwa/sounds/hey.mp3 +0 -0
  187. package/src/client/dist/pwa/sounds/mais-laisse-moi-dormir-zebi.mp3 +0 -0
  188. package/src/client/dist/pwa/sounds/nan-tu-degages.mp3 +0 -0
  189. package/src/client/dist/pwa/sounds/nan-wallah-pardon.mp3 +0 -0
  190. package/src/client/dist/pwa/sounds/ouais-cest-greg.mp3 +0 -0
  191. package/src/client/dist/pwa/sounds/pas-ca-zinedine.mp3 +0 -0
  192. package/src/client/dist/pwa/sounds/ta-gueule.mp3 +0 -0
  193. package/src/client/dist/pwa/sounds/travail_termine.mp3 +0 -0
  194. package/src/client/dist/pwa/sounds/tu-vas-la-fermer.mp3 +0 -0
  195. package/src/client/dist/pwa/sounds/warcraft-3-humain-travail.mp3 +0 -0
  196. package/src/client/dist/pwa/sounds/yaaa.mp3 +0 -0
@@ -1,4 +1,4 @@
1
- import{$ as e,$a as t,$c as n,$d as r,$h as i,$i as a,$l as o,$m as s,$n as c,$o as l,$r as u,$s as d,$t as f,$u as p,A as m,Aa as h,Ac as g,Ad as _,Af as v,Ah as y,Ai as ee,Al as te,Ao as ne,As as re,At as ie,Au as ae,B as oe,Ba as se,Bd as ce,Bf as le,Bh as ue,Bi as de,Bl as b,Bm as fe,Bn as pe,Bo as me,Bp as he,Br as ge,Bs as _e,Bt as ve,Bu as ye,C as be,Ca as xe,Cc as Se,Cd as Ce,Ch as we,Cl as Te,Cm as Ee,Co as De,Ct as Oe,Cu as ke,Da as Ae,Dc as je,Dd as Me,Df as Ne,Dh as Pe,Di as Fe,Dl as Ie,Dn as Le,Do as Re,Dr as ze,Ds as Be,Dt as Ve,Du as He,E as Ue,Ea as We,Ec as Ge,Ed as Ke,Ef as qe,Eh as Je,El as Ye,Eo as Xe,Er as Ze,Et as Qe,F as $e,Fa as et,Fc as tt,Fd as nt,Fh as rt,Fi as it,Fl as at,Fm as x,Fn as ot,Fo as st,Fp as ct,Fr as lt,Fs as ut,Ft as dt,Fu as ft,G as pt,Ga as mt,Gc as S,Gh as ht,Gi as gt,Gl as _t,Gm as vt,Gn as yt,Go as bt,Gp as xt,Gr as St,Gs as Ct,Gt as wt,H as Tt,Ha as Et,Hc as Dt,Hd as Ot,Hf as kt,Hh as At,Hi as jt,Hl as Mt,Hm as C,Hn as Nt,Ho as Pt,Hp as Ft,Hr as It,Hs as w,Ht as Lt,Hu as Rt,Ic as zt,Id as Bt,Ii as Vt,Il as Ht,Im as Ut,In as Wt,Io as Gt,Ip as Kt,Ir as qt,It as Jt,J as Yt,Jc as Xt,Jd as Zt,Jh as Qt,Ji as $t,Jl as en,Jm as tn,Jn as nn,Jo as rn,Jp as an,Jr as on,Js as sn,Jt as cn,Ju as ln,Ka as un,Kc as dn,Kd as fn,Kh as pn,Ki as mn,Km as hn,Ko as gn,Kr as _n,Ks as vn,Lh as yn,Li as bn,Ll as xn,Ln as Sn,Lo as Cn,Lp as wn,Lr as Tn,M as En,Ma as Dn,Md as On,Mf as kn,Mh as An,Ml as jn,Mm as Mn,Mo as Nn,Ms as Pn,Mt as Fn,Mu as In,Na as Ln,Nc as Rn,Nd as zn,Nf as Bn,Nh as Vn,Ni as Hn,Nl as Un,No as Wn,Nr as Gn,Ns as Kn,Nt as qn,Nu as Jn,O as Yn,Oa as Xn,Od as Zn,Of as Qn,Oh as $n,Ol as er,Om as tr,On as nr,Oo as rr,Or as ir,Os as ar,Ot as or,Ou as sr,P as cr,Pa as lr,Pf as ur,Ph as dr,Pi as fr,Pl as T,Pm as pr,Pn as mr,Po as hr,Pr as gr,Ps as _r,Pu as vr,Q as yr,Qa as br,Qc as E,Qd as xr,Qh as Sr,Ql as Cr,Qm as wr,Qn as Tr,Qo as Er,Qp as Dr,Qr as Or,Qs as kr,Qt as Ar,Qu as jr,R as Mr,Ra as Nr,Rd as Pr,Rf as Fr,Rh as Ir,Rl as D,Rn as Lr,Ro as Rr,Rp as zr,Rr as Br,Rs as Vr,S as Hr,Sa as Ur,Sc as Wr,Sd as Gr,Sh as Kr,So as qr,Sr as Jr,Ss as Yr,St as Xr,Su as Zr,T as Qr,Ta as $r,Td as ei,Tf as ti,Th as ni,Tm as ri,Tn as ii,To as ai,Tr as oi,Ts as si,Tt as ci,Tu as li,U as ui,Ua as di,Ud as fi,Uf as pi,Uh as mi,Ui as hi,Ul as gi,Um as O,Uo as _i,Up as vi,Ur as yi,Us as bi,Ut as xi,Uu as k,V as Si,Vc as Ci,Vd as wi,Vf as Ti,Vh as Ei,Vi as Di,Vm as Oi,Vn as ki,Vo as Ai,Vp as ji,Vr as Mi,Vt as Ni,W as Pi,Wa as Fi,Wh as Ii,Wi as Li,Wl as A,Wn as Ri,Wo as zi,Wp as Bi,Wr as Vi,Ws as Hi,X as Ui,Xc as j,Xd as Wi,Xh as Gi,Xl as Ki,Xm as qi,Xn as Ji,Xo as Yi,Xp as Xi,Xr as Zi,Xs as Qi,Xt as $i,Y as ea,Yc as ta,Yd as na,Yh as ra,Yl as ia,Ym as aa,Yn as oa,Yo as sa,Yp as ca,Yr as la,Ys as ua,Yt as da,Yu as fa,Z as pa,Zc as M,Zd as ma,Zh as ha,Zi as ga,Zl as _a,Zm as va,Zn as ya,Zo as ba,Zp as xa,Zr as Sa,Zs as Ca,Zt as wa,Zu as Ta,_ as Ea,_a as Da,_d as N,_f as Oa,_i as ka,_l as Aa,_m as ja,_r as Ma,_s as Na,_u as Pa,a as Fa,aa as Ia,ac as La,ad as Ra,ah as za,ai as P,al as Ba,an as Va,ao as Ha,ar as Ua,as as Wa,at as Ga,au as Ka,b as qa,ba as Ja,bc as Ya,bd as F,bf as Xa,bh as Za,bi as Qa,bl as $a,bm as eo,bn as to,bo as no,br as ro,bs as io,bt as ao,bu as oo,c as so,ca as co,cc as lo,cd as uo,cm as I,co as fo,cr as po,cs as mo,cu as ho,d as go,da as _o,dc as vo,dd as yo,df as bo,dl as xo,dm as So,do as Co,du as wo,ec as To,ed as Eo,ef as Do,eg as Oo,eh as ko,ei as Ao,el as jo,em as Mo,en as No,eo as Po,es as Fo,et as Io,eu as L,f as Lo,fa as Ro,fc as zo,fd as Bo,fh as R,fl as Vo,fn as Ho,fo as Uo,fr as Wo,fs as Go,ft as Ko,fu as qo,g as Jo,ga as Yo,gc as Xo,gd as Zo,gf as Qo,gi as $o,gl as es,go as ts,gr as ns,gt as rs,gu as is,h as as,ha as os,hc as ss,hd as cs,hf as ls,hh as us,hi as ds,hl as fs,hm as ps,hn as ms,hr as hs,hs as gs,ht as _s,hu as z,i as vs,ia as B,ic as ys,id as bs,if as xs,ih as Ss,ii as Cs,il as ws,im as V,in as Ts,io as Es,is as Ds,iu as Os,j as ks,ja as As,jc as js,jd as Ms,jf as Ns,jh as Ps,ji as Fs,jl as Is,jn as Ls,jo as Rs,js as zs,ju as Bs,k as Vs,ka as Hs,kd as Us,kf as Ws,kh as Gs,ki as Ks,kl as H,km as qs,kn as Js,ko as Ys,kr as Xs,ks as Zs,kt as Qs,ku as $s,l as ec,la as tc,lc as nc,ld as rc,lh as ic,li as ac,ll as oc,lm as sc,lo as cc,lr as lc,ls as uc,lu as dc,ma as fc,mc as pc,mf as mc,mh as hc,mi as gc,ml as _c,mn as vc,mo as yc,ms as bc,mt as xc,n as Sc,na as Cc,nc as wc,nd as Tc,nf as Ec,ng as Dc,nh as Oc,ni as kc,nl as Ac,nm as jc,nn as Mc,no as Nc,nr as Pc,ns as Fc,nu as Ic,o as Lc,oa as Rc,oc as zc,od as Bc,oh as Vc,oi as Hc,ol as Uc,om as U,on as Wc,oo as Gc,os as Kc,ot as qc,ou as W,p as Jc,pa as Yc,pd as Xc,ph as G,pi as Zc,pl as Qc,pm as $c,pn as el,ps as tl,qa as nl,qc as rl,qh as il,qi as al,qm as ol,qn as sl,qo as cl,qp as ll,qr as ul,qs as dl,qu as fl,r as pl,ra as ml,rc as hl,rd as gl,rf as _l,rg as vl,rh as yl,rm as bl,rn as xl,ro as Sl,rr as Cl,rs as wl,rt as Tl,s as El,sa as Dl,sc as Ol,sd as kl,sh as Al,si as jl,sm as K,sn as Ml,so as Nl,ss as q,st as Pl,su as Fl,ta as Il,tc as Ll,tf as Rl,tg as zl,th as Bl,tl as Vl,tr as Hl,ts as Ul,u as Wl,ua as Gl,uc as Kl,ud as ql,ui as Jl,ul as Yl,um as Xl,uo as Zl,ur as Ql,us as $l,ut as eu,uu as tu,v as nu,va as ru,vc as iu,vd as au,vf as ou,vh as su,vi as cu,vm as J,vn as lu,vo as uu,vs as du,vt as fu,vu as Y,w as pu,wa as mu,wc as hu,wd as gu,wf as _u,wh as vu,wl as yu,wm as bu,wo as xu,wr as Su,ws as Cu,wt as wu,wu as Tu,x as Eu,xa as Du,xc as Ou,xd as ku,xh as Au,xi as ju,xl as Mu,xo as Nu,xr as Pu,xt as Fu,xu as Iu,y as Lu,ya as Ru,yc as zu,yd as Bu,yf as Vu,yh as Hu,yi as Uu,yl as Wu,ym as Gu,yn as Ku,yo as qu,yr as Ju,ys as Yu,yu as Xu,z as Zu,za as Qu,zd as $u,zh as ed,zi as td,zl as X,zm as nd,zo as rd,zr as id,zs as Z,zt as ad}from"./format-BjQxf4pe.js";var od,sd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},cd=function(e,t){return function(n,r){t(n,r,e)}},ld,ud=new b(`selectionAnchorSet`,!1),dd=(od=class{static get(e){return e.getContribution(ld.ID)}constructor(e,t){this.editor=e,this.selectionAnchorSetContextKey=ud.bindTo(t),this.modelChangeListener=e.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}setSelectionAnchor(){if(this.editor.hasModel()){let e=this.editor.getPosition();this.editor.changeDecorations(t=>{this.decorationId&&t.removeDecoration(this.decorationId),this.decorationId=t.addDecoration(U.fromPositions(e,e),{description:`selection-anchor`,stickiness:1,hoverMessage:new Ze().appendText(R(834,`Selection Anchor`)),className:`selection-anchor`})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),io(R(835,`Anchor set at {0}:{1}`,e.lineNumber,e.column))}}goToSelectionAnchor(){if(this.editor.hasModel()&&this.decorationId){let e=this.editor.getModel().getDecorationRange(this.decorationId);e&&this.editor.setPosition(e.getStartPosition())}}selectFromAnchorToCursor(){if(this.editor.hasModel()&&this.decorationId){let e=this.editor.getModel().getDecorationRange(this.decorationId);if(e){let t=this.editor.getPosition();this.editor.setSelection(U.fromPositions(e.getStartPosition(),t)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){let e=this.decorationId;this.editor.changeDecorations(t=>{t.removeDecoration(e),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}},ld=od,od.ID=`editor.contrib.selectionAnchorController`,od);dd=ld=sd([cd(1,X)],dd);var fd=class extends S{constructor(){super({id:`editor.action.setSelectionAnchor`,label:G(836,`Set Selection Anchor`),precondition:void 0,kbOpts:{kbExpr:B.editorTextFocus,primary:ps(2089,2080),weight:100}})}async run(e,t){dd.get(t)?.setSelectionAnchor()}},pd=class extends S{constructor(){super({id:`editor.action.goToSelectionAnchor`,label:G(837,`Go to Selection Anchor`),precondition:ud})}async run(e,t){dd.get(t)?.goToSelectionAnchor()}},md=class extends S{constructor(){super({id:`editor.action.selectFromAnchorToCursor`,label:G(838,`Select from Anchor to Cursor`),precondition:ud,kbOpts:{kbExpr:B.editorTextFocus,primary:ps(2089,2089),weight:100}})}async run(e,t){dd.get(t)?.selectFromAnchorToCursor()}},hd=class extends S{constructor(){super({id:`editor.action.cancelSelectionAnchor`,label:G(839,`Cancel Selection Anchor`),precondition:ud,kbOpts:{kbExpr:B.editorTextFocus,primary:9,weight:100}})}async run(e,t){dd.get(t)?.cancelSelectionAnchor()}};E(dd.ID,dd,4),j(fd),j(pd),j(md),j(hd);var gd,_d=q(`editorOverviewRuler.bracketMatchForeground`,`#A0A0A0`,R(840,`Overview ruler marker color for matching brackets.`)),vd=class extends S{constructor(){super({id:`editor.action.jumpToBracket`,label:G(842,`Go to Bracket`),precondition:void 0,kbOpts:{kbExpr:B.editorTextFocus,primary:3165,weight:100}})}run(e,t){Sd.get(t)?.jumpToBracket()}},yd=class extends S{constructor(){super({id:`editor.action.selectToBracket`,label:G(843,`Select to Bracket`),precondition:void 0,metadata:{description:G(844,`Select the text inside and including the brackets or curly braces`),args:[{name:`args`,schema:{type:`object`,properties:{selectBrackets:{type:`boolean`,default:!0}}}}]}})}run(e,t,n){let r=!0;n&&n.selectBrackets===!1&&(r=!1),Sd.get(t)?.selectToBracket(r)}},bd=class extends S{constructor(){super({id:`editor.action.removeBrackets`,label:G(845,`Remove Brackets`),precondition:void 0,kbOpts:{kbExpr:B.editorTextFocus,primary:2561,weight:100},canTriggerInlineEdits:!0})}run(e,t){Sd.get(t)?.removeBrackets(this.id)}},xd=class{constructor(e,t,n){this.position=e,this.brackets=t,this.options=n}},Sd=class e extends C{static get(t){return t.getContribution(e.ID)}constructor(e){super(),this._editor=e,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=this._editor.createDecorationsCollection(),this._updateBracketsSoon=this._register(new fn(()=>this._updateBrackets(),50)),this._matchBrackets=this._editor.getOption(80),this._updateBracketsSoon.schedule(),this._register(e.onDidChangeCursorPosition(e=>{this._matchBrackets!==`never`&&this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelContent(e=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModel(e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelLanguageConfiguration(e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeConfiguration(e=>{e.hasChanged(80)&&(this._matchBrackets=this._editor.getOption(80),this._decorations.clear(),this._lastBracketsData=[],this._lastVersionId=0,this._updateBracketsSoon.schedule())})),this._register(e.onDidBlurEditorWidget(()=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidFocusEditorWidget(()=>{this._updateBracketsSoon.schedule()}))}jumpToBracket(){if(!this._editor.hasModel())return;let e=this._editor.getModel(),t=this._editor.getSelections().map(t=>{let n=t.getStartPosition(),r=e.bracketPairs.matchBracket(n),i=null;if(r)r[0].containsPosition(n)&&!r[1].containsPosition(n)?i=r[1].getStartPosition():r[1].containsPosition(n)&&(i=r[0].getStartPosition());else{let t=e.bracketPairs.findEnclosingBrackets(n);if(t)i=t[1].getStartPosition();else{let t=e.bracketPairs.findNextBracket(n);t&&t.range&&(i=t.range.getStartPosition())}}return i?new U(i.lineNumber,i.column,i.lineNumber,i.column):new U(n.lineNumber,n.column,n.lineNumber,n.column)});this._editor.setSelections(t),this._editor.revealRange(t[0])}selectToBracket(e){if(!this._editor.hasModel())return;let t=this._editor.getModel(),n=[];this._editor.getSelections().forEach(r=>{let i=r.getStartPosition(),a=t.bracketPairs.matchBracket(i);if(!a&&(a=t.bracketPairs.findEnclosingBrackets(i),!a)){let e=t.bracketPairs.findNextBracket(i);e&&e.range&&(a=t.bracketPairs.matchBracket(e.range.getStartPosition()))}let o=null,s=null;if(a){a.sort(K.compareRangesUsingStarts);let[t,n]=a;if(o=e?t.getStartPosition():t.getEndPosition(),s=e?n.getEndPosition():n.getStartPosition(),n.containsPosition(i)){let e=o;o=s,s=e}}o&&s&&n.push(new U(o.lineNumber,o.column,s.lineNumber,s.column))}),n.length>0&&(this._editor.setSelections(n),this._editor.revealRange(n[0]))}removeBrackets(e){if(!this._editor.hasModel())return;let t=this._editor.getModel();this._editor.getSelections().forEach(n=>{let r=n.getPosition(),i=t.bracketPairs.matchBracket(r);i||=t.bracketPairs.findEnclosingBrackets(r),i&&(this._editor.pushUndoStop(),this._editor.executeEdits(e,[{range:i[0],text:``},{range:i[1],text:``}]),this._editor.pushUndoStop())})}_updateBrackets(){if(this._matchBrackets===`never`)return;this._recomputeBrackets();let e=[],t=0;for(let n of this._lastBracketsData){let r=n.brackets;r&&(e[t++]={range:r[0],options:n.options},e[t++]={range:r[1],options:n.options})}this._decorations.set(e)}_recomputeBrackets(){if(!this._editor.hasModel()||!this._editor.hasWidgetFocus()){this._lastBracketsData=[],this._lastVersionId=0;return}let t=this._editor.getSelections();if(t.length>100){this._lastBracketsData=[],this._lastVersionId=0;return}let n=this._editor.getModel(),r=n.getVersionId(),i=[];this._lastVersionId===r&&(i=this._lastBracketsData);let a=[],o=0;for(let e=0,n=t.length;e<n;e++){let n=t[e];n.isEmpty()&&(a[o++]=n.getStartPosition())}a.length>1&&a.sort(I.compare);let s=[],c=0,l=0,u=i.length;for(let t=0,r=a.length;t<r;t++){let r=a[t];for(;l<u&&i[l].position.isBefore(r);)l++;if(l<u&&i[l].position.equals(r))s[c++]=i[l];else{let t=n.bracketPairs.matchBracket(r,20),i=e._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;!t&&this._matchBrackets===`always`&&(t=n.bracketPairs.findEnclosingBrackets(r,20),i=e._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER),s[c++]=new xd(r,t,i)}}this._lastBracketsData=s,this._lastVersionId=r}};gd=Sd,gd.ID=`editor.contrib.bracketMatchingController`,gd._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=P.register({description:`bracket-match-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`,overviewRuler:{color:Cc(_d),position:Xo.Center}}),gd._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=P.register({description:`bracket-match-no-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`}),E(Sd.ID,Sd,1),j(yd),j(vd),j(bd),Is.appendMenuItem(H.MenubarGoMenu,{group:`5_infile_nav`,command:{id:`editor.action.jumpToBracket`,title:R(841,`Go to &&Bracket`)},order:2}),Il((e,t)=>{let n=e.getColor(al);n&&t.addRule(`.monaco-editor .bracket-match-inline { color: ${n} !important; }`)}),j(class extends S{constructor(){super({id:`editor.action.transposeLetters`,label:G(848,`Transpose Letters`),precondition:B.writable,kbOpts:{kbExpr:B.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(e,t){if(!t.hasModel())return;let n=t.getModel(),r=[],i=t.getSelections();for(let e of i){if(!e.isEmpty())continue;let t=e.startLineNumber,i=e.startColumn,a=n.getLineMaxColumn(t);if(t===1&&(i===1||i===2&&a===2))continue;let o=i===a?e.getPosition():os.rightPosition(n,e.getPosition().lineNumber,e.getPosition().column),s=os.leftPosition(n,o),c=os.leftPosition(n,s),l=n.getValueInRange(K.fromPositions(c,s)),u=n.getValueInRange(K.fromPositions(s,o)),d=K.fromPositions(c,o);r.push(new Yo(d,u+l))}r.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop())}});var Cd,wd=class e{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(t){return this.equals(t)||this.value===``||t.value.startsWith(this.value+e.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...t){return new e((this.value?[this.value,...t]:t).join(e.sep))}};Cd=wd,Cd.sep=`.`,Cd.None=new Cd(`@@none@@`),Cd.Empty=new Cd(``);var Td,Ed=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Dd=function(e,t){return function(n,r){t(n,r,e)}},Od=P.register({description:`inline-progress-widget`,stickiness:1,showIfCollapsed:!0,after:{content:`\xA0`,inlineClassName:`inline-editor-progress-decoration`,inlineClassNameAffectsLetterSpacing:!0}}),kd=class e extends C{constructor(e,t,n,r,i){super(),this.typeId=e,this.editor=t,this.range=n,this.delegate=i,this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this.create(r),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this)}create(e){this.domNode=W(`.inline-progress-widget`),this.domNode.role=`button`,this.domNode.title=e;let t=W(`span.icon`);this.domNode.append(t),t.classList.add(...A.asClassNameArray(V.loading),`codicon-modifier-spin`);let n=()=>{let e=this.editor.getOption(75);this.domNode.style.height=`${e}px`,this.domNode.style.width=`${Math.ceil(.8*e)}px`};n(),this._register(this.editor.onDidChangeConfiguration(e=>{(e.hasChanged(61)||e.hasChanged(75))&&n()})),this._register(z(this.domNode,dc.CLICK,e=>{this.delegate.cancel()}))}getId(){return e.baseId+`.`+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:{lineNumber:this.range.startLineNumber,column:this.range.startColumn},preference:[0]}}dispose(){super.dispose(),this.editor.removeContentWidget(this)}};Td=kd,Td.baseId=`editor.widget.inlineProgressWidget`;var Ad=class extends C{constructor(e,t,n){super(),this.id=e,this._editor=t,this._instantiationService=n,this._showDelay=500,this._showPromise=this._register(new vt),this._currentWidget=this._register(new vt),this._operationIdPool=0,this._currentDecorations=t.createDecorationsCollection()}dispose(){super.dispose(),this._currentDecorations.clear()}async showWhile(e,t,n,r,i){let a=this._operationIdPool++;this._currentOperation=a,this.clear(),this._showPromise.value=ma(()=>{let n=K.fromPositions(e);this._currentDecorations.set([{range:n,options:Od}]).length>0&&(this._currentWidget.value=this._instantiationService.createInstance(kd,this.id,this._editor,n,t,r))},i??this._showDelay);try{return await n}finally{this._currentOperation===a&&(this.clear(),this._currentOperation=void 0)}}clear(){this._showPromise.clear(),this._currentDecorations.clear(),this._currentWidget.clear()}};Ad=Ed([Dd(2,L)],Ad);var jd,Md=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Nd=function(e,t){return function(n,r){t(n,r,e)}},Pd,Fd=(jd=class{static get(e){return e.getContribution(Pd.ID)}constructor(e,t,n){this._openerService=n,this._messageWidget=new vt,this._messageListeners=new O,this._mouseOverMessage=!1,this._editor=e,this._visible=Pd.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){if(io(Xs(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),Xs(e)){let n=this._messageListeners.add(ro(e,{actionHandler:(e,t)=>{this.closeMessage(),ns(this._openerService,e,t.isTrusted)}}));this._messageWidget.value=new Ld(this._editor,t,n.element)}else this._messageWidget.value=new Ld(this._editor,t,e);this._messageListeners.add(Ut.debounce(this._editor.onDidBlurEditorText,(e,t)=>t,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&ft(Iu(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(z(this._messageWidget.value.getDomNode(),dc.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(z(this._messageWidget.value.getDomNode(),dc.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let n;this._messageListeners.add(this._editor.onMouseMove(e=>{e.target.position&&(n?n.containsPosition(e.target.position)||this.closeMessage():n=new K(t.lineNumber-3,1,e.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(Ld.fadeOut(this._messageWidget.value))}},Pd=jd,jd.ID=`editor.contrib.messageController`,jd.MESSAGE_VISIBLE=new b(`messageVisible`,!1,R(1333,`Whether the editor is currently showing an inline message`)),jd);Fd=Pd=Md([Nd(1,X),Nd(2,Ma)],Fd);var Id=rl.bindToContribution(Fd.get);M(new Id({id:`leaveEditorMessage`,precondition:Fd.MESSAGE_VISIBLE,handler:e=>e.closeMessage(),kbOpts:{weight:130,primary:9}}));var Ld=class{static fadeOut(e){let t=()=>{e.dispose(),clearTimeout(n),e.getDomNode().removeEventListener(`animationend`,t)},n=setTimeout(t,110);return e.getDomNode().addEventListener(`animationend`,t),e.getDomNode().classList.add(`fadeOut`),{dispose:t}}constructor(e,{lineNumber:t,column:n},r){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:n},this._domNode=document.createElement(`div`),this._domNode.classList.add(`monaco-editor-overlaymessage`),this._domNode.style.marginLeft=`-6px`;let i=document.createElement(`div`);i.classList.add(`anchor`,`top`),this._domNode.appendChild(i);let a=document.createElement(`div`);typeof r==`string`?(a.classList.add(`message`),a.textContent=r):(r.classList.add(`message`),a.appendChild(r)),this._domNode.appendChild(a);let o=document.createElement(`div`);o.classList.add(`anchor`,`below`),this._domNode.appendChild(o),this._editor.addContentWidget(this),this._domNode.classList.add(`fadeIn`)}dispose(){this._editor.removeContentWidget(this)}getId(){return`messageoverlay`}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle(`below`,e===2)}};E(Fd.ID,Fd,4);var Rd,zd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Bd=function(e,t){return function(n,r){t(n,r,e)}},Vd=class{constructor(e){this.copyMimeTypes=[],this.kind=e,this.providedDropEditKinds=[this.kind],this.providedPasteEditKinds=[this.kind]}async provideDocumentPasteEdits(e,t,n,r,i){let a=await this.getEdit(n,i);if(a)return{edits:[{insertText:a.insertText,title:a.title,kind:a.kind,handledMimeType:a.handledMimeType,yieldTo:a.yieldTo}],dispose(){}}}async provideDocumentDropEdits(e,t,n,r){let i=await this.getEdit(n,r);if(i)return{edits:[{insertText:i.insertText,title:i.title,kind:i.kind,handledMimeType:i.handledMimeType,yieldTo:i.yieldTo}],dispose(){}}}},Hd=class e extends Vd{constructor(){super(wd.Empty.append(`text`,`plain`)),this.id=e.id,this.dropMimeTypes=[js.text],this.pasteMimeTypes=[js.text]}async getEdit(e,t){let n=e.get(js.text);if(!n||e.has(js.uriList))return;let r=await n.asString();return{handledMimeType:js.text,title:R(965,`Insert Plain Text`),insertText:r,kind:this.kind}}};Rd=Hd,Rd.id=`text`;var Ud=class extends Vd{constructor(){super(wd.Empty.append(`uri`,`path`,`absolute`)),this.dropMimeTypes=[js.uriList],this.pasteMimeTypes=[js.uriList]}async getEdit(e,t){let n=await Kd(e);if(!n.length||t.isCancellationRequested)return;let r=0,i=n.map(({uri:e,originalText:t})=>e.scheme===Pr.file?e.fsPath:(r++,t)).join(` `),a;return a=r>0?n.length>1?R(966,`Insert Uris`):R(967,`Insert Uri`):n.length>1?R(968,`Insert Paths`):R(969,`Insert Path`),{handledMimeType:js.uriList,insertText:i,title:a,kind:this.kind}}},Wd=class extends Vd{constructor(e){super(wd.Empty.append(`uri`,`path`,`relative`)),this._workspaceContextService=e,this.dropMimeTypes=[js.uriList],this.pasteMimeTypes=[js.uriList]}async getEdit(e,t){let n=await Kd(e);if(!n.length||t.isCancellationRequested)return;let r=ht(n.map(({uri:e})=>{let t=this._workspaceContextService.getWorkspaceFolder(e);return t?$a(t.uri,e):void 0}));if(r.length)return{handledMimeType:js.uriList,insertText:r.join(` `),title:n.length>1?R(970,`Insert Relative Paths`):R(971,`Insert Relative Path`),kind:this.kind}}};Wd=zd([Bd(0,rs)],Wd);var Gd=class{constructor(){this.kind=new wd(`html`),this.providedPasteEditKinds=[this.kind],this.copyMimeTypes=[],this.pasteMimeTypes=[`text/html`],this._yieldTo=[{mimeType:js.text}]}async provideDocumentPasteEdits(e,t,n,r,i){if(r.triggerKind!==zr.PasteAs&&!r.only?.contains(this.kind))return;let a=await n.get(`text/html`)?.asString();if(a&&!i.isCancellationRequested)return{dispose(){},edits:[{insertText:a,yieldTo:this._yieldTo,title:R(972,`Insert HTML`),kind:this.kind}]}}};async function Kd(e){let t=e.get(js.uriList);if(!t)return[];let n=await t.asString(),r=[];for(let e of We.parse(n))try{r.push({uri:sc.parse(e),originalText:e})}catch{}return r}var qd={scheme:`*`,hasAccessToAllModels:!0},Jd=class extends C{constructor(e,t){super(),this._register(e.documentDropEditProvider.register(qd,new Hd)),this._register(e.documentDropEditProvider.register(qd,new Ud)),this._register(e.documentDropEditProvider.register(qd,new Wd(t)))}};Jd=zd([Bd(0,Z),Bd(1,rs)],Jd);var Yd=class extends C{constructor(e,t){super(),this._register(e.documentPasteEditProvider.register(qd,new Hd)),this._register(e.documentPasteEditProvider.register(qd,new Ud)),this._register(e.documentPasteEditProvider.register(qd,new Wd(t))),this._register(e.documentPasteEditProvider.register(qd,new Gd))}};Yd=zd([Bd(0,Z),Bd(1,rs)],Yd);var Xd,Zd=class e{constructor(){this.value=``,this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};let t=this.pos,n=0,r=this.value.charCodeAt(t),i;if(i=e._table[r],typeof i==`number`)return this.pos+=1,{type:i,pos:t,len:1};if(e.isDigitCharacter(r)){i=8;do n+=1,r=this.value.charCodeAt(t+n);while(e.isDigitCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}if(e.isVariableCharacter(r)){i=9;do r=this.value.charCodeAt(t+ ++n);while(e.isVariableCharacter(r)||e.isDigitCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}i=10;do n+=1,r=this.value.charCodeAt(t+n);while(!isNaN(r)&&e._table[r]===void 0&&!e.isDigitCharacter(r)&&!e.isVariableCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}};Xd=Zd,Xd._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};var Qd=class{constructor(){this._children=[]}appendChild(e){return e instanceof $d&&this._children[this._children.length-1]instanceof $d?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){let{parent:n}=e,r=n.children.indexOf(e),i=n.children.slice(0);i.splice(r,1,...t),n._children=i,(function e(t,n){for(let r of t)r.parent=n,e(r.children,r)})(t,n)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof cf)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),``)}len(){return 0}},$d=class e extends Qd{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new e(this.value)}},ef=class extends Qd{},tf=class e extends ef{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.index<t.index?-1:+(e.index>t.index)}constructor(e){super(),this.index=e}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof nf?this._children[0]:void 0}clone(){let t=new e(this.index);return this.transform&&(t.transform=this.transform.clone()),t._children=this.children.map(e=>e.clone()),t}},nf=class e extends Qd{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof $d&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){let t=new e;return this.options.forEach(t.appendChild,t),t}},rf=class e extends Qd{constructor(){super(...arguments),this.regexp=RegExp(``)}resolve(e){let t=this,n=!1,r=e.replace(this.regexp,function(){return n=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!n&&this._children.some(e=>e instanceof af&&!!e.elseValue)&&(r=this._replace([])),r}_replace(e){let t=``;for(let n of this._children)if(n instanceof af){let r=e[n.index]||``;r=n.resolve(r),t+=r}else t+=n.toString();return t}toString(){return``}clone(){let t=new e;return t.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?`i`:``)+(this.regexp.global?`g`:``)),t._children=this.children.map(e=>e.clone()),t}},af=class e extends Qd{constructor(e,t,n,r){super(),this.index=e,this.shorthandName=t,this.ifValue=n,this.elseValue=r}resolve(e){return this.shorthandName===`upcase`?e?e.toLocaleUpperCase():``:this.shorthandName===`downcase`?e?e.toLocaleLowerCase():``:this.shorthandName===`capitalize`?e?e[0].toLocaleUpperCase()+e.substr(1):``:this.shorthandName===`pascalcase`?e?this._toPascalCase(e):``:this.shorthandName===`camelcase`?e?this._toCamelCase(e):``:this.shorthandName===`kebabcase`?e?this._toKebabCase(e):``:this.shorthandName===`snakecase`?e?this._toSnakeCase(e):``:e&&typeof this.ifValue==`string`?this.ifValue:!e&&typeof this.elseValue==`string`?this.elseValue:e||``}_toKebabCase(e){if(!e.match(/[\p{L}0-9]+/gu))return e;if(!e.match(/[\p{L}0-9]/u))return e.trim().toLowerCase().replace(/^_+|_+$/g,``).replace(/[\s_]+/g,`-`);let t=e.trim().replace(/^_+|_+$/g,``),n=t.match(/\p{Lu}{2,}(?=\p{Lu}\p{Ll}+[0-9]*|[\s_-]|$)|\p{Lu}?\p{Ll}+[0-9]*|\p{Lu}(?=\p{Lu}\p{Ll})|\p{Lu}(?=[\s_-]|$)|[0-9]+/gu);return n?n.map(e=>e.toLowerCase()).join(`-`):t.split(/[\s_-]+/).filter(e=>e.length>0).map(e=>e.toLowerCase()).join(`-`)}_toPascalCase(e){let t=e.match(/[\p{L}0-9]+/gu);return t?t.map(e=>e.charAt(0).toUpperCase()+e.substr(1)).join(``):e}_toCamelCase(e){let t=e.match(/[\p{L}0-9]+/gu);return t?t.map((e,t)=>t===0?e.charAt(0).toLowerCase()+e.substr(1):e.charAt(0).toUpperCase()+e.substr(1)).join(``):e}_toSnakeCase(e){return e.replace(/(\p{Ll})(\p{Lu})/gu,`$1_$2`).replace(/[\s\-]+/g,`_`).toLowerCase()}clone(){return new e(this.index,this.shorthandName,this.ifValue,this.elseValue)}},of=class e extends ef{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||``)),t!==void 0&&(this._children=[new $d(t)],!0)}clone(){let t=new e(this.name);return this.transform&&(t.transform=this.transform.clone()),t._children=this.children.map(e=>e.clone()),t}};function sf(e,t){let n=[...e];for(;n.length>0;){let e=n.shift();if(!t(e))break;n.unshift(...e.children)}}var cf=class e extends Qd{get placeholderInfo(){if(!this._placeholders){let e=[],t;this.walk(function(n){return n instanceof tf&&(e.push(n),t=!t||t.index<n.index?n:t),!0}),this._placeholders={all:e,last:t}}return this._placeholders}get placeholders(){let{all:e}=this.placeholderInfo;return e}offset(e){let t=0,n=!1;return this.walk(r=>r===e?(n=!0,!1):(t+=r.len(),!0)),n?t:-1}fullLen(e){let t=0;return sf([e],e=>(t+=e.len(),!0)),t}enclosingPlaceholders(e){let t=[],{parent:n}=e;for(;n;)n instanceof tf&&t.push(n),n=n.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof of&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){let t=new e;return t._children=this.children.map(e=>e.clone()),t}walk(e){sf(this.children,e)}},lf=class{constructor(){this._scanner=new Zd,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,`\\$&`)}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,n){let r=new cf;return this.parseFragment(e,r),this.ensureFinalTabstop(r,n??!1,t??!1),r}parseFragment(e,t){let n=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););let r=new Map,i=[];t.walk(e=>(e instanceof tf&&(e.isFinalTabstop?r.set(0,void 0):!r.has(e.index)&&e.children.length>0?r.set(e.index,e.children):i.push(e)),!0));let a=(e,n)=>{let i=r.get(e.index);if(!i)return;let o=new tf(e.index);o.transform=e.transform;for(let e of i){let t=e.clone();o.appendChild(t),t instanceof tf&&r.has(t.index)&&!n.has(t.index)&&(n.add(t.index),a(t,n),n.delete(t.index))}t.replace(e,[o])},o=new Set;for(let e of i)a(e,o);return t.children.slice(n)}ensureFinalTabstop(e,t,n){(t||n&&e.placeholders.length>0)&&(e.placeholders.find(e=>e.index===0)||e.appendChild(new tf(0)))}_accept(e,t){if(e===void 0||this._token.type===e){let e=!t||this._scanner.tokenText(this._token);return this._token=this._scanner.next(),e}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){let t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){let e=this._scanner.next();if(e.type!==0&&e.type!==4&&e.type!==5)return!1}this._token=this._scanner.next()}let n=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,`$1`);return this._token=this._scanner.next(),n}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new $d(t)),!0):!1}_parseTabstopOrVariableName(e){let t,n=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new tf(Number(t)):new of(t)),!0):this._backTo(n)}_parseComplexPlaceholder(e){let t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(n);let r=new tf(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new $d("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(r.index>0&&this._accept(7)){let t=new nf;for(;;){if(this._parseChoiceElement(t)){if(this._accept(2))continue;if(this._accept(7)&&(r.appendChild(t),this._accept(4)))return e.appendChild(r),!0}return this._backTo(n),!1}}else if(this._accept(6))return this._parseTransform(r)?(e.appendChild(r),!0):(this._backTo(n),!1);else if(this._accept(4))return e.appendChild(r),!0;else return this._backTo(n)}_parseChoiceElement(e){let t=this._token,n=[];for(;this._token.type!==2&&this._token.type!==7;){let e;if(e=(e=this._accept(5,!0))?this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||e:this._accept(void 0,!0),!e)return this._backTo(t),!1;n.push(e)}return n.length===0?(this._backTo(t),!1):(e.appendChild(new $d(n.join(``))),!0)}_parseComplexVariable(e){let t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(n);let r=new of(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new $d("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(this._accept(6))return this._parseTransform(r)?(e.appendChild(r),!0):(this._backTo(n),!1);else if(this._accept(4))return e.appendChild(r),!0;else return this._backTo(n)}_parseTransform(e){let t=new rf,n=``,r=``;for(;!this._accept(6);){let e;if(e=this._accept(5,!0)){e=this._accept(6,!0)||e,n+=e;continue}if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let e;if(e=this._accept(5,!0)){e=this._accept(5,!0)||this._accept(6,!0)||e,t.appendChild(new $d(e));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){r+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(n,r)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){let t=this._token;if(!this._accept(0))return!1;let n=!1;this._accept(3)&&(n=!0);let r=this._accept(8,!0);if(!r)return this._backTo(t),!1;if(!n||this._accept(4))return e.appendChild(new af(Number(r))),!0;if(!this._accept(1))return this._backTo(t),!1;if(this._accept(6)){let n=this._accept(9,!0);return!n||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new af(Number(r),n)),!0)}if(this._accept(11)){let t=this._until(4);if(t)return e.appendChild(new af(Number(r),void 0,t,void 0)),!0}else if(this._accept(12)){let t=this._until(4);if(t)return e.appendChild(new af(Number(r),void 0,void 0,t)),!0}else if(this._accept(13)){let t=this._until(1);if(t){let n=this._until(4);if(n)return e.appendChild(new af(Number(r),void 0,t,n)),!0}}else{let t=this._until(4);if(t)return e.appendChild(new af(Number(r),void 0,void 0,t)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14&&(e.appendChild(new $d(this._scanner.tokenText(this._token))),this._accept(void 0),!0)}};function uf(e,t,n){return(typeof n.insertText==`string`?n.insertText===``:n.insertText.snippet===``)?{edits:n.additionalEdit?.edits??[]}:{edits:[...t.map(t=>new xc(e,{range:t,text:typeof n.insertText==`string`?lf.escape(n.insertText)+`$0`:n.insertText.snippet,insertAsSnippet:!0})),...n.additionalEdit?.edits??[]]}}function df(e){function t(e,t){return`mimeType`in e?e.mimeType===t.handledMimeType:!!t.kind&&e.kind.contains(t.kind)}let n=new Map;for(let r of e)for(let i of r.yieldTo??[])for(let a of e)if(a!==r&&t(i,a)){let e=n.get(r);e||(e=[],n.set(r,e)),e.push(a)}if(!n.size)return Array.from(e);let r=new Set,i=[];function a(e){if(!e.length)return[];let t=e[0];if(i.includes(t))return console.warn(`Yield to cycle detected`,t),e;if(r.has(t))return a(e.slice(1));let o=[],s=n.get(t);return s&&(i.push(t),o=a(s),i.pop()),r.add(t),[...o,t,...a(e.slice(1))]}return a(Array.from(e))}function ff(e,t){return t&&(e.stack||e.stacktrace)?R(33,`{0}: {1}`,mf(e),pf(e.stack)||pf(e.stacktrace)):mf(e)}function pf(e){return Array.isArray(e)?e.join(`
1
+ import{$ as e,$a as t,$c as n,$d as r,$h as i,$i as a,$l as o,$m as s,$n as c,$o as l,$r as u,$s as d,$t as f,$u as p,A as m,Aa as h,Ac as g,Ad as _,Af as v,Ah as y,Ai as ee,Al as te,Ao as ne,As as re,At as ie,Au as ae,B as oe,Ba as se,Bd as ce,Bf as le,Bh as ue,Bi as de,Bl as b,Bm as fe,Bn as pe,Bo as me,Bp as he,Br as ge,Bs as _e,Bt as ve,Bu as ye,C as be,Ca as xe,Cc as Se,Cd as Ce,Ch as we,Cl as Te,Cm as Ee,Co as De,Ct as Oe,Cu as ke,Da as Ae,Dc as je,Dd as Me,Df as Ne,Dh as Pe,Di as Fe,Dl as Ie,Dn as Le,Do as Re,Dr as ze,Ds as Be,Dt as Ve,Du as He,E as Ue,Ea as We,Ec as Ge,Ed as Ke,Ef as qe,Eh as Je,El as Ye,Eo as Xe,Er as Ze,Et as Qe,F as $e,Fa as et,Fc as tt,Fd as nt,Fh as rt,Fi as it,Fl as at,Fm as x,Fn as ot,Fo as st,Fp as ct,Fr as lt,Fs as ut,Ft as dt,Fu as ft,G as pt,Ga as mt,Gc as S,Gh as ht,Gi as gt,Gl as _t,Gm as vt,Gn as yt,Go as bt,Gp as xt,Gr as St,Gs as Ct,Gt as wt,H as Tt,Ha as Et,Hc as Dt,Hd as Ot,Hf as kt,Hh as At,Hi as jt,Hl as Mt,Hm as C,Hn as Nt,Ho as Pt,Hp as Ft,Hr as It,Hs as w,Ht as Lt,Hu as Rt,Ic as zt,Id as Bt,Ii as Vt,Il as Ht,Im as Ut,In as Wt,Io as Gt,Ip as Kt,Ir as qt,It as Jt,J as Yt,Jc as Xt,Jd as Zt,Jh as Qt,Ji as $t,Jl as en,Jm as tn,Jn as nn,Jo as rn,Jp as an,Jr as on,Js as sn,Jt as cn,Ju as ln,Ka as un,Kc as dn,Kd as fn,Kh as pn,Ki as mn,Km as hn,Ko as gn,Kr as _n,Ks as vn,Lh as yn,Li as bn,Ll as xn,Ln as Sn,Lo as Cn,Lp as wn,Lr as Tn,M as En,Ma as Dn,Md as On,Mf as kn,Mh as An,Ml as jn,Mm as Mn,Mo as Nn,Ms as Pn,Mt as Fn,Mu as In,Na as Ln,Nc as Rn,Nd as zn,Nf as Bn,Nh as Vn,Ni as Hn,Nl as Un,No as Wn,Nr as Gn,Ns as Kn,Nt as qn,Nu as Jn,O as Yn,Oa as Xn,Od as Zn,Of as Qn,Oh as $n,Ol as er,Om as tr,On as nr,Oo as rr,Or as ir,Os as ar,Ot as or,Ou as sr,P as cr,Pa as lr,Pf as ur,Ph as dr,Pi as fr,Pl as T,Pm as pr,Pn as mr,Po as hr,Pr as gr,Ps as _r,Pu as vr,Q as yr,Qa as br,Qc as E,Qd as xr,Qh as Sr,Ql as Cr,Qm as wr,Qn as Tr,Qo as Er,Qp as Dr,Qr as Or,Qs as kr,Qt as Ar,Qu as jr,R as Mr,Ra as Nr,Rd as Pr,Rf as Fr,Rh as Ir,Rl as D,Rn as Lr,Ro as Rr,Rp as zr,Rr as Br,Rs as Vr,S as Hr,Sa as Ur,Sc as Wr,Sd as Gr,Sh as Kr,So as qr,Sr as Jr,Ss as Yr,St as Xr,Su as Zr,T as Qr,Ta as $r,Td as ei,Tf as ti,Th as ni,Tm as ri,Tn as ii,To as ai,Tr as oi,Ts as si,Tt as ci,Tu as li,U as ui,Ua as di,Ud as fi,Uf as pi,Uh as mi,Ui as hi,Ul as gi,Um as O,Uo as _i,Up as vi,Ur as yi,Us as bi,Ut as xi,Uu as k,V as Si,Vc as Ci,Vd as wi,Vf as Ti,Vh as Ei,Vi as Di,Vm as Oi,Vn as ki,Vo as Ai,Vp as ji,Vr as Mi,Vt as Ni,W as Pi,Wa as Fi,Wh as Ii,Wi as Li,Wl as A,Wn as Ri,Wo as zi,Wp as Bi,Wr as Vi,Ws as Hi,X as Ui,Xc as j,Xd as Wi,Xh as Gi,Xl as Ki,Xm as qi,Xn as Ji,Xo as Yi,Xp as Xi,Xr as Zi,Xs as Qi,Xt as $i,Y as ea,Yc as ta,Yd as na,Yh as ra,Yl as ia,Ym as aa,Yn as oa,Yo as sa,Yp as ca,Yr as la,Ys as ua,Yt as da,Yu as fa,Z as pa,Zc as M,Zd as ma,Zh as ha,Zi as ga,Zl as _a,Zm as va,Zn as ya,Zo as ba,Zp as xa,Zr as Sa,Zs as Ca,Zt as wa,Zu as Ta,_ as Ea,_a as Da,_d as N,_f as Oa,_i as ka,_l as Aa,_m as ja,_r as Ma,_s as Na,_u as Pa,a as Fa,aa as Ia,ac as La,ad as Ra,ah as za,ai as P,al as Ba,an as Va,ao as Ha,ar as Ua,as as Wa,at as Ga,au as Ka,b as qa,ba as Ja,bc as Ya,bd as F,bf as Xa,bh as Za,bi as Qa,bl as $a,bm as eo,bn as to,bo as no,br as ro,bs as io,bt as ao,bu as oo,c as so,ca as co,cc as lo,cd as uo,cm as I,co as fo,cr as po,cs as mo,cu as ho,d as go,da as _o,dc as vo,dd as yo,df as bo,dl as xo,dm as So,do as Co,du as wo,ec as To,ed as Eo,ef as Do,eg as Oo,eh as ko,ei as Ao,el as jo,em as Mo,en as No,eo as Po,es as Fo,et as Io,eu as L,f as Lo,fa as Ro,fc as zo,fd as Bo,fh as R,fl as Vo,fn as Ho,fo as Uo,fr as Wo,fs as Go,ft as Ko,fu as qo,g as Jo,ga as Yo,gc as Xo,gd as Zo,gf as Qo,gi as $o,gl as es,go as ts,gr as ns,gt as rs,gu as is,h as as,ha as os,hc as ss,hd as cs,hf as ls,hh as us,hi as ds,hl as fs,hm as ps,hn as ms,hr as hs,hs as gs,ht as _s,hu as z,i as vs,ia as B,ic as ys,id as bs,if as xs,ih as Ss,ii as Cs,il as ws,im as V,in as Ts,io as Es,is as Ds,iu as Os,j as ks,ja as As,jc as js,jd as Ms,jf as Ns,jh as Ps,ji as Fs,jl as Is,jn as Ls,jo as Rs,js as zs,ju as Bs,k as Vs,ka as Hs,kd as Us,kf as Ws,kh as Gs,ki as Ks,kl as H,km as qs,kn as Js,ko as Ys,kr as Xs,ks as Zs,kt as Qs,ku as $s,l as ec,la as tc,lc as nc,ld as rc,lh as ic,li as ac,ll as oc,lm as sc,lo as cc,lr as lc,ls as uc,lu as dc,ma as fc,mc as pc,mf as mc,mh as hc,mi as gc,ml as _c,mn as vc,mo as yc,ms as bc,mt as xc,n as Sc,na as Cc,nc as wc,nd as Tc,nf as Ec,ng as Dc,nh as Oc,ni as kc,nl as Ac,nm as jc,nn as Mc,no as Nc,nr as Pc,ns as Fc,nu as Ic,o as Lc,oa as Rc,oc as zc,od as Bc,oh as Vc,oi as Hc,ol as Uc,om as U,on as Wc,oo as Gc,os as Kc,ot as qc,ou as W,p as Jc,pa as Yc,pd as Xc,ph as G,pi as Zc,pl as Qc,pm as $c,pn as el,ps as tl,qa as nl,qc as rl,qh as il,qi as al,qm as ol,qn as sl,qo as cl,qp as ll,qr as ul,qs as dl,qu as fl,r as pl,ra as ml,rc as hl,rd as gl,rf as _l,rg as vl,rh as yl,rm as bl,rn as xl,ro as Sl,rr as Cl,rs as wl,rt as Tl,s as El,sa as Dl,sc as Ol,sd as kl,sh as Al,si as jl,sm as K,sn as Ml,so as Nl,ss as q,st as Pl,su as Fl,ta as Il,tc as Ll,tf as Rl,tg as zl,th as Bl,tl as Vl,tr as Hl,ts as Ul,u as Wl,ua as Gl,uc as Kl,ud as ql,ui as Jl,ul as Yl,um as Xl,uo as Zl,ur as Ql,us as $l,ut as eu,uu as tu,v as nu,va as ru,vc as iu,vd as au,vf as ou,vh as su,vi as cu,vm as J,vn as lu,vo as uu,vs as du,vt as fu,vu as Y,w as pu,wa as mu,wc as hu,wd as gu,wf as _u,wh as vu,wl as yu,wm as bu,wo as xu,wr as Su,ws as Cu,wt as wu,wu as Tu,x as Eu,xa as Du,xc as Ou,xd as ku,xh as Au,xi as ju,xl as Mu,xo as Nu,xr as Pu,xt as Fu,xu as Iu,y as Lu,ya as Ru,yc as zu,yd as Bu,yf as Vu,yh as Hu,yi as Uu,yl as Wu,ym as Gu,yn as Ku,yo as qu,yr as Ju,ys as Yu,yu as Xu,z as Zu,za as Qu,zd as $u,zh as ed,zi as td,zl as X,zm as nd,zo as rd,zr as id,zs as Z,zt as ad}from"./format-Q94deO3I.js";var od,sd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},cd=function(e,t){return function(n,r){t(n,r,e)}},ld,ud=new b(`selectionAnchorSet`,!1),dd=(od=class{static get(e){return e.getContribution(ld.ID)}constructor(e,t){this.editor=e,this.selectionAnchorSetContextKey=ud.bindTo(t),this.modelChangeListener=e.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}setSelectionAnchor(){if(this.editor.hasModel()){let e=this.editor.getPosition();this.editor.changeDecorations(t=>{this.decorationId&&t.removeDecoration(this.decorationId),this.decorationId=t.addDecoration(U.fromPositions(e,e),{description:`selection-anchor`,stickiness:1,hoverMessage:new Ze().appendText(R(834,`Selection Anchor`)),className:`selection-anchor`})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),io(R(835,`Anchor set at {0}:{1}`,e.lineNumber,e.column))}}goToSelectionAnchor(){if(this.editor.hasModel()&&this.decorationId){let e=this.editor.getModel().getDecorationRange(this.decorationId);e&&this.editor.setPosition(e.getStartPosition())}}selectFromAnchorToCursor(){if(this.editor.hasModel()&&this.decorationId){let e=this.editor.getModel().getDecorationRange(this.decorationId);if(e){let t=this.editor.getPosition();this.editor.setSelection(U.fromPositions(e.getStartPosition(),t)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){let e=this.decorationId;this.editor.changeDecorations(t=>{t.removeDecoration(e),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}},ld=od,od.ID=`editor.contrib.selectionAnchorController`,od);dd=ld=sd([cd(1,X)],dd);var fd=class extends S{constructor(){super({id:`editor.action.setSelectionAnchor`,label:G(836,`Set Selection Anchor`),precondition:void 0,kbOpts:{kbExpr:B.editorTextFocus,primary:ps(2089,2080),weight:100}})}async run(e,t){dd.get(t)?.setSelectionAnchor()}},pd=class extends S{constructor(){super({id:`editor.action.goToSelectionAnchor`,label:G(837,`Go to Selection Anchor`),precondition:ud})}async run(e,t){dd.get(t)?.goToSelectionAnchor()}},md=class extends S{constructor(){super({id:`editor.action.selectFromAnchorToCursor`,label:G(838,`Select from Anchor to Cursor`),precondition:ud,kbOpts:{kbExpr:B.editorTextFocus,primary:ps(2089,2089),weight:100}})}async run(e,t){dd.get(t)?.selectFromAnchorToCursor()}},hd=class extends S{constructor(){super({id:`editor.action.cancelSelectionAnchor`,label:G(839,`Cancel Selection Anchor`),precondition:ud,kbOpts:{kbExpr:B.editorTextFocus,primary:9,weight:100}})}async run(e,t){dd.get(t)?.cancelSelectionAnchor()}};E(dd.ID,dd,4),j(fd),j(pd),j(md),j(hd);var gd,_d=q(`editorOverviewRuler.bracketMatchForeground`,`#A0A0A0`,R(840,`Overview ruler marker color for matching brackets.`)),vd=class extends S{constructor(){super({id:`editor.action.jumpToBracket`,label:G(842,`Go to Bracket`),precondition:void 0,kbOpts:{kbExpr:B.editorTextFocus,primary:3165,weight:100}})}run(e,t){Sd.get(t)?.jumpToBracket()}},yd=class extends S{constructor(){super({id:`editor.action.selectToBracket`,label:G(843,`Select to Bracket`),precondition:void 0,metadata:{description:G(844,`Select the text inside and including the brackets or curly braces`),args:[{name:`args`,schema:{type:`object`,properties:{selectBrackets:{type:`boolean`,default:!0}}}}]}})}run(e,t,n){let r=!0;n&&n.selectBrackets===!1&&(r=!1),Sd.get(t)?.selectToBracket(r)}},bd=class extends S{constructor(){super({id:`editor.action.removeBrackets`,label:G(845,`Remove Brackets`),precondition:void 0,kbOpts:{kbExpr:B.editorTextFocus,primary:2561,weight:100},canTriggerInlineEdits:!0})}run(e,t){Sd.get(t)?.removeBrackets(this.id)}},xd=class{constructor(e,t,n){this.position=e,this.brackets=t,this.options=n}},Sd=class e extends C{static get(t){return t.getContribution(e.ID)}constructor(e){super(),this._editor=e,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=this._editor.createDecorationsCollection(),this._updateBracketsSoon=this._register(new fn(()=>this._updateBrackets(),50)),this._matchBrackets=this._editor.getOption(80),this._updateBracketsSoon.schedule(),this._register(e.onDidChangeCursorPosition(e=>{this._matchBrackets!==`never`&&this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelContent(e=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModel(e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelLanguageConfiguration(e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeConfiguration(e=>{e.hasChanged(80)&&(this._matchBrackets=this._editor.getOption(80),this._decorations.clear(),this._lastBracketsData=[],this._lastVersionId=0,this._updateBracketsSoon.schedule())})),this._register(e.onDidBlurEditorWidget(()=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidFocusEditorWidget(()=>{this._updateBracketsSoon.schedule()}))}jumpToBracket(){if(!this._editor.hasModel())return;let e=this._editor.getModel(),t=this._editor.getSelections().map(t=>{let n=t.getStartPosition(),r=e.bracketPairs.matchBracket(n),i=null;if(r)r[0].containsPosition(n)&&!r[1].containsPosition(n)?i=r[1].getStartPosition():r[1].containsPosition(n)&&(i=r[0].getStartPosition());else{let t=e.bracketPairs.findEnclosingBrackets(n);if(t)i=t[1].getStartPosition();else{let t=e.bracketPairs.findNextBracket(n);t&&t.range&&(i=t.range.getStartPosition())}}return i?new U(i.lineNumber,i.column,i.lineNumber,i.column):new U(n.lineNumber,n.column,n.lineNumber,n.column)});this._editor.setSelections(t),this._editor.revealRange(t[0])}selectToBracket(e){if(!this._editor.hasModel())return;let t=this._editor.getModel(),n=[];this._editor.getSelections().forEach(r=>{let i=r.getStartPosition(),a=t.bracketPairs.matchBracket(i);if(!a&&(a=t.bracketPairs.findEnclosingBrackets(i),!a)){let e=t.bracketPairs.findNextBracket(i);e&&e.range&&(a=t.bracketPairs.matchBracket(e.range.getStartPosition()))}let o=null,s=null;if(a){a.sort(K.compareRangesUsingStarts);let[t,n]=a;if(o=e?t.getStartPosition():t.getEndPosition(),s=e?n.getEndPosition():n.getStartPosition(),n.containsPosition(i)){let e=o;o=s,s=e}}o&&s&&n.push(new U(o.lineNumber,o.column,s.lineNumber,s.column))}),n.length>0&&(this._editor.setSelections(n),this._editor.revealRange(n[0]))}removeBrackets(e){if(!this._editor.hasModel())return;let t=this._editor.getModel();this._editor.getSelections().forEach(n=>{let r=n.getPosition(),i=t.bracketPairs.matchBracket(r);i||=t.bracketPairs.findEnclosingBrackets(r),i&&(this._editor.pushUndoStop(),this._editor.executeEdits(e,[{range:i[0],text:``},{range:i[1],text:``}]),this._editor.pushUndoStop())})}_updateBrackets(){if(this._matchBrackets===`never`)return;this._recomputeBrackets();let e=[],t=0;for(let n of this._lastBracketsData){let r=n.brackets;r&&(e[t++]={range:r[0],options:n.options},e[t++]={range:r[1],options:n.options})}this._decorations.set(e)}_recomputeBrackets(){if(!this._editor.hasModel()||!this._editor.hasWidgetFocus()){this._lastBracketsData=[],this._lastVersionId=0;return}let t=this._editor.getSelections();if(t.length>100){this._lastBracketsData=[],this._lastVersionId=0;return}let n=this._editor.getModel(),r=n.getVersionId(),i=[];this._lastVersionId===r&&(i=this._lastBracketsData);let a=[],o=0;for(let e=0,n=t.length;e<n;e++){let n=t[e];n.isEmpty()&&(a[o++]=n.getStartPosition())}a.length>1&&a.sort(I.compare);let s=[],c=0,l=0,u=i.length;for(let t=0,r=a.length;t<r;t++){let r=a[t];for(;l<u&&i[l].position.isBefore(r);)l++;if(l<u&&i[l].position.equals(r))s[c++]=i[l];else{let t=n.bracketPairs.matchBracket(r,20),i=e._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;!t&&this._matchBrackets===`always`&&(t=n.bracketPairs.findEnclosingBrackets(r,20),i=e._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER),s[c++]=new xd(r,t,i)}}this._lastBracketsData=s,this._lastVersionId=r}};gd=Sd,gd.ID=`editor.contrib.bracketMatchingController`,gd._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=P.register({description:`bracket-match-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`,overviewRuler:{color:Cc(_d),position:Xo.Center}}),gd._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=P.register({description:`bracket-match-no-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`}),E(Sd.ID,Sd,1),j(yd),j(vd),j(bd),Is.appendMenuItem(H.MenubarGoMenu,{group:`5_infile_nav`,command:{id:`editor.action.jumpToBracket`,title:R(841,`Go to &&Bracket`)},order:2}),Il((e,t)=>{let n=e.getColor(al);n&&t.addRule(`.monaco-editor .bracket-match-inline { color: ${n} !important; }`)}),j(class extends S{constructor(){super({id:`editor.action.transposeLetters`,label:G(848,`Transpose Letters`),precondition:B.writable,kbOpts:{kbExpr:B.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(e,t){if(!t.hasModel())return;let n=t.getModel(),r=[],i=t.getSelections();for(let e of i){if(!e.isEmpty())continue;let t=e.startLineNumber,i=e.startColumn,a=n.getLineMaxColumn(t);if(t===1&&(i===1||i===2&&a===2))continue;let o=i===a?e.getPosition():os.rightPosition(n,e.getPosition().lineNumber,e.getPosition().column),s=os.leftPosition(n,o),c=os.leftPosition(n,s),l=n.getValueInRange(K.fromPositions(c,s)),u=n.getValueInRange(K.fromPositions(s,o)),d=K.fromPositions(c,o);r.push(new Yo(d,u+l))}r.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop())}});var Cd,wd=class e{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(t){return this.equals(t)||this.value===``||t.value.startsWith(this.value+e.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...t){return new e((this.value?[this.value,...t]:t).join(e.sep))}};Cd=wd,Cd.sep=`.`,Cd.None=new Cd(`@@none@@`),Cd.Empty=new Cd(``);var Td,Ed=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Dd=function(e,t){return function(n,r){t(n,r,e)}},Od=P.register({description:`inline-progress-widget`,stickiness:1,showIfCollapsed:!0,after:{content:`\xA0`,inlineClassName:`inline-editor-progress-decoration`,inlineClassNameAffectsLetterSpacing:!0}}),kd=class e extends C{constructor(e,t,n,r,i){super(),this.typeId=e,this.editor=t,this.range=n,this.delegate=i,this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this.create(r),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this)}create(e){this.domNode=W(`.inline-progress-widget`),this.domNode.role=`button`,this.domNode.title=e;let t=W(`span.icon`);this.domNode.append(t),t.classList.add(...A.asClassNameArray(V.loading),`codicon-modifier-spin`);let n=()=>{let e=this.editor.getOption(75);this.domNode.style.height=`${e}px`,this.domNode.style.width=`${Math.ceil(.8*e)}px`};n(),this._register(this.editor.onDidChangeConfiguration(e=>{(e.hasChanged(61)||e.hasChanged(75))&&n()})),this._register(z(this.domNode,dc.CLICK,e=>{this.delegate.cancel()}))}getId(){return e.baseId+`.`+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:{lineNumber:this.range.startLineNumber,column:this.range.startColumn},preference:[0]}}dispose(){super.dispose(),this.editor.removeContentWidget(this)}};Td=kd,Td.baseId=`editor.widget.inlineProgressWidget`;var Ad=class extends C{constructor(e,t,n){super(),this.id=e,this._editor=t,this._instantiationService=n,this._showDelay=500,this._showPromise=this._register(new vt),this._currentWidget=this._register(new vt),this._operationIdPool=0,this._currentDecorations=t.createDecorationsCollection()}dispose(){super.dispose(),this._currentDecorations.clear()}async showWhile(e,t,n,r,i){let a=this._operationIdPool++;this._currentOperation=a,this.clear(),this._showPromise.value=ma(()=>{let n=K.fromPositions(e);this._currentDecorations.set([{range:n,options:Od}]).length>0&&(this._currentWidget.value=this._instantiationService.createInstance(kd,this.id,this._editor,n,t,r))},i??this._showDelay);try{return await n}finally{this._currentOperation===a&&(this.clear(),this._currentOperation=void 0)}}clear(){this._showPromise.clear(),this._currentDecorations.clear(),this._currentWidget.clear()}};Ad=Ed([Dd(2,L)],Ad);var jd,Md=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Nd=function(e,t){return function(n,r){t(n,r,e)}},Pd,Fd=(jd=class{static get(e){return e.getContribution(Pd.ID)}constructor(e,t,n){this._openerService=n,this._messageWidget=new vt,this._messageListeners=new O,this._mouseOverMessage=!1,this._editor=e,this._visible=Pd.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){if(io(Xs(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),Xs(e)){let n=this._messageListeners.add(ro(e,{actionHandler:(e,t)=>{this.closeMessage(),ns(this._openerService,e,t.isTrusted)}}));this._messageWidget.value=new Ld(this._editor,t,n.element)}else this._messageWidget.value=new Ld(this._editor,t,e);this._messageListeners.add(Ut.debounce(this._editor.onDidBlurEditorText,(e,t)=>t,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&ft(Iu(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(z(this._messageWidget.value.getDomNode(),dc.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(z(this._messageWidget.value.getDomNode(),dc.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let n;this._messageListeners.add(this._editor.onMouseMove(e=>{e.target.position&&(n?n.containsPosition(e.target.position)||this.closeMessage():n=new K(t.lineNumber-3,1,e.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(Ld.fadeOut(this._messageWidget.value))}},Pd=jd,jd.ID=`editor.contrib.messageController`,jd.MESSAGE_VISIBLE=new b(`messageVisible`,!1,R(1333,`Whether the editor is currently showing an inline message`)),jd);Fd=Pd=Md([Nd(1,X),Nd(2,Ma)],Fd);var Id=rl.bindToContribution(Fd.get);M(new Id({id:`leaveEditorMessage`,precondition:Fd.MESSAGE_VISIBLE,handler:e=>e.closeMessage(),kbOpts:{weight:130,primary:9}}));var Ld=class{static fadeOut(e){let t=()=>{e.dispose(),clearTimeout(n),e.getDomNode().removeEventListener(`animationend`,t)},n=setTimeout(t,110);return e.getDomNode().addEventListener(`animationend`,t),e.getDomNode().classList.add(`fadeOut`),{dispose:t}}constructor(e,{lineNumber:t,column:n},r){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:n},this._domNode=document.createElement(`div`),this._domNode.classList.add(`monaco-editor-overlaymessage`),this._domNode.style.marginLeft=`-6px`;let i=document.createElement(`div`);i.classList.add(`anchor`,`top`),this._domNode.appendChild(i);let a=document.createElement(`div`);typeof r==`string`?(a.classList.add(`message`),a.textContent=r):(r.classList.add(`message`),a.appendChild(r)),this._domNode.appendChild(a);let o=document.createElement(`div`);o.classList.add(`anchor`,`below`),this._domNode.appendChild(o),this._editor.addContentWidget(this),this._domNode.classList.add(`fadeIn`)}dispose(){this._editor.removeContentWidget(this)}getId(){return`messageoverlay`}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle(`below`,e===2)}};E(Fd.ID,Fd,4);var Rd,zd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Bd=function(e,t){return function(n,r){t(n,r,e)}},Vd=class{constructor(e){this.copyMimeTypes=[],this.kind=e,this.providedDropEditKinds=[this.kind],this.providedPasteEditKinds=[this.kind]}async provideDocumentPasteEdits(e,t,n,r,i){let a=await this.getEdit(n,i);if(a)return{edits:[{insertText:a.insertText,title:a.title,kind:a.kind,handledMimeType:a.handledMimeType,yieldTo:a.yieldTo}],dispose(){}}}async provideDocumentDropEdits(e,t,n,r){let i=await this.getEdit(n,r);if(i)return{edits:[{insertText:i.insertText,title:i.title,kind:i.kind,handledMimeType:i.handledMimeType,yieldTo:i.yieldTo}],dispose(){}}}},Hd=class e extends Vd{constructor(){super(wd.Empty.append(`text`,`plain`)),this.id=e.id,this.dropMimeTypes=[js.text],this.pasteMimeTypes=[js.text]}async getEdit(e,t){let n=e.get(js.text);if(!n||e.has(js.uriList))return;let r=await n.asString();return{handledMimeType:js.text,title:R(965,`Insert Plain Text`),insertText:r,kind:this.kind}}};Rd=Hd,Rd.id=`text`;var Ud=class extends Vd{constructor(){super(wd.Empty.append(`uri`,`path`,`absolute`)),this.dropMimeTypes=[js.uriList],this.pasteMimeTypes=[js.uriList]}async getEdit(e,t){let n=await Kd(e);if(!n.length||t.isCancellationRequested)return;let r=0,i=n.map(({uri:e,originalText:t})=>e.scheme===Pr.file?e.fsPath:(r++,t)).join(` `),a;return a=r>0?n.length>1?R(966,`Insert Uris`):R(967,`Insert Uri`):n.length>1?R(968,`Insert Paths`):R(969,`Insert Path`),{handledMimeType:js.uriList,insertText:i,title:a,kind:this.kind}}},Wd=class extends Vd{constructor(e){super(wd.Empty.append(`uri`,`path`,`relative`)),this._workspaceContextService=e,this.dropMimeTypes=[js.uriList],this.pasteMimeTypes=[js.uriList]}async getEdit(e,t){let n=await Kd(e);if(!n.length||t.isCancellationRequested)return;let r=ht(n.map(({uri:e})=>{let t=this._workspaceContextService.getWorkspaceFolder(e);return t?$a(t.uri,e):void 0}));if(r.length)return{handledMimeType:js.uriList,insertText:r.join(` `),title:n.length>1?R(970,`Insert Relative Paths`):R(971,`Insert Relative Path`),kind:this.kind}}};Wd=zd([Bd(0,rs)],Wd);var Gd=class{constructor(){this.kind=new wd(`html`),this.providedPasteEditKinds=[this.kind],this.copyMimeTypes=[],this.pasteMimeTypes=[`text/html`],this._yieldTo=[{mimeType:js.text}]}async provideDocumentPasteEdits(e,t,n,r,i){if(r.triggerKind!==zr.PasteAs&&!r.only?.contains(this.kind))return;let a=await n.get(`text/html`)?.asString();if(a&&!i.isCancellationRequested)return{dispose(){},edits:[{insertText:a,yieldTo:this._yieldTo,title:R(972,`Insert HTML`),kind:this.kind}]}}};async function Kd(e){let t=e.get(js.uriList);if(!t)return[];let n=await t.asString(),r=[];for(let e of We.parse(n))try{r.push({uri:sc.parse(e),originalText:e})}catch{}return r}var qd={scheme:`*`,hasAccessToAllModels:!0},Jd=class extends C{constructor(e,t){super(),this._register(e.documentDropEditProvider.register(qd,new Hd)),this._register(e.documentDropEditProvider.register(qd,new Ud)),this._register(e.documentDropEditProvider.register(qd,new Wd(t)))}};Jd=zd([Bd(0,Z),Bd(1,rs)],Jd);var Yd=class extends C{constructor(e,t){super(),this._register(e.documentPasteEditProvider.register(qd,new Hd)),this._register(e.documentPasteEditProvider.register(qd,new Ud)),this._register(e.documentPasteEditProvider.register(qd,new Wd(t))),this._register(e.documentPasteEditProvider.register(qd,new Gd))}};Yd=zd([Bd(0,Z),Bd(1,rs)],Yd);var Xd,Zd=class e{constructor(){this.value=``,this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};let t=this.pos,n=0,r=this.value.charCodeAt(t),i;if(i=e._table[r],typeof i==`number`)return this.pos+=1,{type:i,pos:t,len:1};if(e.isDigitCharacter(r)){i=8;do n+=1,r=this.value.charCodeAt(t+n);while(e.isDigitCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}if(e.isVariableCharacter(r)){i=9;do r=this.value.charCodeAt(t+ ++n);while(e.isVariableCharacter(r)||e.isDigitCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}i=10;do n+=1,r=this.value.charCodeAt(t+n);while(!isNaN(r)&&e._table[r]===void 0&&!e.isDigitCharacter(r)&&!e.isVariableCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}};Xd=Zd,Xd._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};var Qd=class{constructor(){this._children=[]}appendChild(e){return e instanceof $d&&this._children[this._children.length-1]instanceof $d?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){let{parent:n}=e,r=n.children.indexOf(e),i=n.children.slice(0);i.splice(r,1,...t),n._children=i,(function e(t,n){for(let r of t)r.parent=n,e(r.children,r)})(t,n)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof cf)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),``)}len(){return 0}},$d=class e extends Qd{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new e(this.value)}},ef=class extends Qd{},tf=class e extends ef{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.index<t.index?-1:+(e.index>t.index)}constructor(e){super(),this.index=e}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof nf?this._children[0]:void 0}clone(){let t=new e(this.index);return this.transform&&(t.transform=this.transform.clone()),t._children=this.children.map(e=>e.clone()),t}},nf=class e extends Qd{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof $d&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){let t=new e;return this.options.forEach(t.appendChild,t),t}},rf=class e extends Qd{constructor(){super(...arguments),this.regexp=RegExp(``)}resolve(e){let t=this,n=!1,r=e.replace(this.regexp,function(){return n=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!n&&this._children.some(e=>e instanceof af&&!!e.elseValue)&&(r=this._replace([])),r}_replace(e){let t=``;for(let n of this._children)if(n instanceof af){let r=e[n.index]||``;r=n.resolve(r),t+=r}else t+=n.toString();return t}toString(){return``}clone(){let t=new e;return t.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?`i`:``)+(this.regexp.global?`g`:``)),t._children=this.children.map(e=>e.clone()),t}},af=class e extends Qd{constructor(e,t,n,r){super(),this.index=e,this.shorthandName=t,this.ifValue=n,this.elseValue=r}resolve(e){return this.shorthandName===`upcase`?e?e.toLocaleUpperCase():``:this.shorthandName===`downcase`?e?e.toLocaleLowerCase():``:this.shorthandName===`capitalize`?e?e[0].toLocaleUpperCase()+e.substr(1):``:this.shorthandName===`pascalcase`?e?this._toPascalCase(e):``:this.shorthandName===`camelcase`?e?this._toCamelCase(e):``:this.shorthandName===`kebabcase`?e?this._toKebabCase(e):``:this.shorthandName===`snakecase`?e?this._toSnakeCase(e):``:e&&typeof this.ifValue==`string`?this.ifValue:!e&&typeof this.elseValue==`string`?this.elseValue:e||``}_toKebabCase(e){if(!e.match(/[\p{L}0-9]+/gu))return e;if(!e.match(/[\p{L}0-9]/u))return e.trim().toLowerCase().replace(/^_+|_+$/g,``).replace(/[\s_]+/g,`-`);let t=e.trim().replace(/^_+|_+$/g,``),n=t.match(/\p{Lu}{2,}(?=\p{Lu}\p{Ll}+[0-9]*|[\s_-]|$)|\p{Lu}?\p{Ll}+[0-9]*|\p{Lu}(?=\p{Lu}\p{Ll})|\p{Lu}(?=[\s_-]|$)|[0-9]+/gu);return n?n.map(e=>e.toLowerCase()).join(`-`):t.split(/[\s_-]+/).filter(e=>e.length>0).map(e=>e.toLowerCase()).join(`-`)}_toPascalCase(e){let t=e.match(/[\p{L}0-9]+/gu);return t?t.map(e=>e.charAt(0).toUpperCase()+e.substr(1)).join(``):e}_toCamelCase(e){let t=e.match(/[\p{L}0-9]+/gu);return t?t.map((e,t)=>t===0?e.charAt(0).toLowerCase()+e.substr(1):e.charAt(0).toUpperCase()+e.substr(1)).join(``):e}_toSnakeCase(e){return e.replace(/(\p{Ll})(\p{Lu})/gu,`$1_$2`).replace(/[\s\-]+/g,`_`).toLowerCase()}clone(){return new e(this.index,this.shorthandName,this.ifValue,this.elseValue)}},of=class e extends ef{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||``)),t!==void 0&&(this._children=[new $d(t)],!0)}clone(){let t=new e(this.name);return this.transform&&(t.transform=this.transform.clone()),t._children=this.children.map(e=>e.clone()),t}};function sf(e,t){let n=[...e];for(;n.length>0;){let e=n.shift();if(!t(e))break;n.unshift(...e.children)}}var cf=class e extends Qd{get placeholderInfo(){if(!this._placeholders){let e=[],t;this.walk(function(n){return n instanceof tf&&(e.push(n),t=!t||t.index<n.index?n:t),!0}),this._placeholders={all:e,last:t}}return this._placeholders}get placeholders(){let{all:e}=this.placeholderInfo;return e}offset(e){let t=0,n=!1;return this.walk(r=>r===e?(n=!0,!1):(t+=r.len(),!0)),n?t:-1}fullLen(e){let t=0;return sf([e],e=>(t+=e.len(),!0)),t}enclosingPlaceholders(e){let t=[],{parent:n}=e;for(;n;)n instanceof tf&&t.push(n),n=n.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof of&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){let t=new e;return t._children=this.children.map(e=>e.clone()),t}walk(e){sf(this.children,e)}},lf=class{constructor(){this._scanner=new Zd,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,`\\$&`)}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,n){let r=new cf;return this.parseFragment(e,r),this.ensureFinalTabstop(r,n??!1,t??!1),r}parseFragment(e,t){let n=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););let r=new Map,i=[];t.walk(e=>(e instanceof tf&&(e.isFinalTabstop?r.set(0,void 0):!r.has(e.index)&&e.children.length>0?r.set(e.index,e.children):i.push(e)),!0));let a=(e,n)=>{let i=r.get(e.index);if(!i)return;let o=new tf(e.index);o.transform=e.transform;for(let e of i){let t=e.clone();o.appendChild(t),t instanceof tf&&r.has(t.index)&&!n.has(t.index)&&(n.add(t.index),a(t,n),n.delete(t.index))}t.replace(e,[o])},o=new Set;for(let e of i)a(e,o);return t.children.slice(n)}ensureFinalTabstop(e,t,n){(t||n&&e.placeholders.length>0)&&(e.placeholders.find(e=>e.index===0)||e.appendChild(new tf(0)))}_accept(e,t){if(e===void 0||this._token.type===e){let e=!t||this._scanner.tokenText(this._token);return this._token=this._scanner.next(),e}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){let t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){let e=this._scanner.next();if(e.type!==0&&e.type!==4&&e.type!==5)return!1}this._token=this._scanner.next()}let n=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,`$1`);return this._token=this._scanner.next(),n}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new $d(t)),!0):!1}_parseTabstopOrVariableName(e){let t,n=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new tf(Number(t)):new of(t)),!0):this._backTo(n)}_parseComplexPlaceholder(e){let t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(n);let r=new tf(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new $d("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(r.index>0&&this._accept(7)){let t=new nf;for(;;){if(this._parseChoiceElement(t)){if(this._accept(2))continue;if(this._accept(7)&&(r.appendChild(t),this._accept(4)))return e.appendChild(r),!0}return this._backTo(n),!1}}else if(this._accept(6))return this._parseTransform(r)?(e.appendChild(r),!0):(this._backTo(n),!1);else if(this._accept(4))return e.appendChild(r),!0;else return this._backTo(n)}_parseChoiceElement(e){let t=this._token,n=[];for(;this._token.type!==2&&this._token.type!==7;){let e;if(e=(e=this._accept(5,!0))?this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||e:this._accept(void 0,!0),!e)return this._backTo(t),!1;n.push(e)}return n.length===0?(this._backTo(t),!1):(e.appendChild(new $d(n.join(``))),!0)}_parseComplexVariable(e){let t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(n);let r=new of(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new $d("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(this._accept(6))return this._parseTransform(r)?(e.appendChild(r),!0):(this._backTo(n),!1);else if(this._accept(4))return e.appendChild(r),!0;else return this._backTo(n)}_parseTransform(e){let t=new rf,n=``,r=``;for(;!this._accept(6);){let e;if(e=this._accept(5,!0)){e=this._accept(6,!0)||e,n+=e;continue}if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let e;if(e=this._accept(5,!0)){e=this._accept(5,!0)||this._accept(6,!0)||e,t.appendChild(new $d(e));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){r+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(n,r)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){let t=this._token;if(!this._accept(0))return!1;let n=!1;this._accept(3)&&(n=!0);let r=this._accept(8,!0);if(!r)return this._backTo(t),!1;if(!n||this._accept(4))return e.appendChild(new af(Number(r))),!0;if(!this._accept(1))return this._backTo(t),!1;if(this._accept(6)){let n=this._accept(9,!0);return!n||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new af(Number(r),n)),!0)}if(this._accept(11)){let t=this._until(4);if(t)return e.appendChild(new af(Number(r),void 0,t,void 0)),!0}else if(this._accept(12)){let t=this._until(4);if(t)return e.appendChild(new af(Number(r),void 0,void 0,t)),!0}else if(this._accept(13)){let t=this._until(1);if(t){let n=this._until(4);if(n)return e.appendChild(new af(Number(r),void 0,t,n)),!0}}else{let t=this._until(4);if(t)return e.appendChild(new af(Number(r),void 0,void 0,t)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14&&(e.appendChild(new $d(this._scanner.tokenText(this._token))),this._accept(void 0),!0)}};function uf(e,t,n){return(typeof n.insertText==`string`?n.insertText===``:n.insertText.snippet===``)?{edits:n.additionalEdit?.edits??[]}:{edits:[...t.map(t=>new xc(e,{range:t,text:typeof n.insertText==`string`?lf.escape(n.insertText)+`$0`:n.insertText.snippet,insertAsSnippet:!0})),...n.additionalEdit?.edits??[]]}}function df(e){function t(e,t){return`mimeType`in e?e.mimeType===t.handledMimeType:!!t.kind&&e.kind.contains(t.kind)}let n=new Map;for(let r of e)for(let i of r.yieldTo??[])for(let a of e)if(a!==r&&t(i,a)){let e=n.get(r);e||(e=[],n.set(r,e)),e.push(a)}if(!n.size)return Array.from(e);let r=new Set,i=[];function a(e){if(!e.length)return[];let t=e[0];if(i.includes(t))return console.warn(`Yield to cycle detected`,t),e;if(r.has(t))return a(e.slice(1));let o=[],s=n.get(t);return s&&(i.push(t),o=a(s),i.pop()),r.add(t),[...o,t,...a(e.slice(1))]}return a(Array.from(e))}function ff(e,t){return t&&(e.stack||e.stacktrace)?R(33,`{0}: {1}`,mf(e),pf(e.stack)||pf(e.stacktrace)):mf(e)}function pf(e){return Array.isArray(e)?e.join(`
2
2
  `):e}function mf(e){return e.code===`ERR_UNC_HOST_NOT_ALLOWED`?`${e.message}. Please update the 'security.allowedUNCHosts' setting if you want to allow this host.`:typeof e.code==`string`&&typeof e.errno==`number`&&typeof e.syscall==`string`?R(34,`A system error occurred ({0})`,e.message):e.message||R(35,`An unknown error occurred. Please consult the log for more details.`)}function hf(e=null,t=!1){if(!e)return R(36,`An unknown error occurred. Please consult the log for more details.`);if(Array.isArray(e)){let n=ht(e),r=hf(n[0],t);return n.length>1?R(37,`{0} ({1} errors in total)`,r,n.length):r}if(Je(e))return e;if(e.detail){let n=e.detail;if(n.error)return ff(n.error,t);if(n.exception)return ff(n.exception,t)}return e.stack?ff(e,t):e.message?e.message:R(38,`An unknown error occurred. Please consult the log for more details.`)}var gf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},_f=function(e,t){return function(n,r){t(n,r,e)}},vf,yf=`acceptSelectedCodeAction`,bf=`previewSelectedCodeAction`,xf=class{get templateId(){return`header`}renderTemplate(e){e.classList.add(`group-header`);let t=document.createElement(`span`);return e.append(t),{container:e,text:t}}renderElement(e,t,n){n.text.textContent=e.group?.title??e.label??``}disposeTemplate(e){}},Sf=class{get templateId(){return`separator`}renderTemplate(e){e.classList.add(`separator`);let t=document.createElement(`span`);return e.append(t),{container:e,text:t}}renderElement(e,t,n){n.text.textContent=e.label??``}disposeTemplate(e){}},Cf=class{get templateId(){return`action`}constructor(e,t,n,r,i,a,o,s,c){this._supportsPreview=e,this._onRemoveItem=t,this._onShowSubmenu=n,this._hasAnySubmenuActions=r,this._groupTitleByIndex=i,this._linkHandler=a,this._hideDefaultKeybindingTooltip=o,this._keybindingService=s,this._openerService=c}renderTemplate(e){e.classList.add(this.templateId);let t=document.createElement(`div`);t.className=`icon`,e.append(t);let n=document.createElement(`span`);n.className=`title`,e.append(n);let r=document.createElement(`span`);r.className=`action-item-badge`,e.append(r);let i=document.createElement(`span`);i.className=`description`,e.append(i);let a=document.createElement(`span`);a.className=`group-title`,e.append(a);let o=document.createElement(`span`);o.className=`detail`,e.append(o);let c=new oe(e,s),l=document.createElement(`div`);l.className=`action-list-item-toolbar`,e.append(l);let u=document.createElement(`div`);return u.className=`action-list-submenu-indicator`,e.append(u),{container:e,icon:t,text:n,detail:o,badge:r,description:i,groupTitle:a,keybinding:c,toolbar:l,submenuIndicator:u,elementDisposables:new O}}renderElement(e,t,n){if(n.elementDisposables.clear(),e.group?.icon?(n.icon.className=A.asClassName(e.group.icon),e.group.icon.color&&(n.icon.style.color=Ds(e.group.icon.color.id))):(n.icon.className=A.asClassName(V.lightBulb),n.icon.style.color=`var(--vscode-editorLightBulb-foreground)`),!e.item||!e.label)return;if(Ta(!e.hideIcon,n.icon),e.isSectionToggle){let t=e.group?.icon===V.chevronDown;n.container.setAttribute(`aria-expanded`,String(t))}else n.container.removeAttribute(`aria-expanded`);if(n.previousClassName&&n.container.classList.remove(n.previousClassName),n.container.classList.toggle(`action-list-custom`,!!e.className),e.className&&n.container.classList.add(e.className),n.previousClassName=e.className,n.text.textContent=kf(e.label),e.badge?(n.badge.textContent=e.badge,n.badge.style.display=``):(n.badge.textContent=``,n.badge.style.display=`none`),e.keybinding)n.description.textContent=e.keybinding.getLabel(),n.description.style.display=`inline`,n.description.style.letterSpacing=`0.5px`;else if(e.description){if(Xu(n.description),typeof e.description==`string`)n.description.textContent=kf(e.description);else{let t=ro(e.description,{actionHandler:t=>{let n=sc.parse(t);this._linkHandler?this._linkHandler(n,e):this._openerService.open(n,{allowCommands:!0})}});n.elementDisposables.add(t),n.description.appendChild(t.element)}n.description.style.display=`inline`}else n.description.textContent=``,n.description.style.display=`none`;let r=this._groupTitleByIndex.get(t);r?(n.groupTitle.textContent=r,n.groupTitle.style.display=``):(n.groupTitle.textContent=``,n.groupTitle.style.display=`none`),e.detail?(n.detail.textContent=kf(e.detail),n.detail.style.display=``):(n.detail.textContent=``,n.detail.style.display=`none`);let i=this._keybindingService.lookupKeybinding(yf)?.getLabel(),a=this._keybindingService.lookupKeybinding(bf)?.getLabel();n.container.classList.toggle(`option-disabled`,!!e.disabled),e.hover===void 0?e.tooltip?n.container.title=e.tooltip:e.disabled?n.container.title=e.label:this._hideDefaultKeybindingTooltip?n.container.title=``:i&&a?this._supportsPreview&&e.canPreview?n.container.title=R(1705,`{0} to Apply, {1} to Preview`,i,a):n.container.title=R(1706,`{0} to Apply`,i):n.container.title=``:n.container.title=``,Xu(n.toolbar);let o=[...e.toolbarActions??[]];if(e.onRemove&&o.push(Ki({id:`actionList.remove`,label:R(1707,`Remove`),class:A.asClassName(V.close),run:async()=>{await e.onRemove(),this._onRemoveItem?.(e)}})),n.container.classList.toggle(`has-toolbar`,o.length>0),o.length>0){let e=new Mc(n.toolbar);n.elementDisposables.add(e),e.push(o,{icon:!0,label:!1})}e.submenuActions?.length&&!e.hover?.content?(n.submenuIndicator.className=`action-list-submenu-indicator has-submenu `+A.asClassName(V.chevronRight),n.submenuIndicator.style.display=``,n.submenuIndicator.style.visibility=``,n.elementDisposables.add(z(n.submenuIndicator,dc.CLICK,t=>{t.stopPropagation(),this._onShowSubmenu?.(e)}))):this._hasAnySubmenuActions?(n.submenuIndicator.className=`action-list-submenu-indicator`,n.submenuIndicator.style.display=``,n.submenuIndicator.style.visibility=`hidden`):(n.submenuIndicator.className=`action-list-submenu-indicator`,n.submenuIndicator.style.display=`none`)}disposeTemplate(e){e.keybinding.dispose(),e.elementDisposables.dispose()}};Cf=gf([_f(7,Fs),_f(8,Ma)],Cf);var wf=class extends UIEvent{constructor(){super(`acceptSelectedAction`)}},Tf=class extends UIEvent{constructor(){super(`previewSelectedAction`)}};function Ef(e){if(e.kind===`action`)return e.label}var Df=vf=class extends C{constructor(e,t,n,r,i,a,o,s,c){if(super(),this._supportsPreview=t,this._delegate=r,this._options=a,this._keybindingService=o,this._openerService=s,this._instantiationService=c,this._headerLineHeight=24,this._separatorLineHeight=8,this.cts=this._register(new Gu),this._submenuDisposables=this._register(new O),this._collapsedSections=new Set,this._filterText=``,this._suppressHover=!1,this._hasLaidOut=!1,this._filterCts=this._register(new vt),this._groupTitleByIndex=new Map,this._onDidRequestLayout=this._register(new x),this.onDidRequestLayout=this._onDidRequestLayout.event,this.domNode=document.createElement(`div`),this.domNode.classList.add(`actionList`),this._options?.inlineDescription&&this.domNode.classList.add(`inline-description`),this._options?.className){let e=this._options.className.split(/\s+/).filter(e=>e.length>0);e.length>0&&this.domNode.classList.add(...e)}if(this._actionLineHeight=24,this._submenuContainer=document.createElement(`div`),this._submenuContainer.className=`action-list-submenu-panel action-widget`,this._submenuContainer.style.display=`none`,this._submenuContainer.tabIndex=-1,this.domNode.append(this._submenuContainer),this._register(z(this._submenuContainer,`mouseenter`,()=>{this._cancelSubmenuHide()})),this._register(z(this._submenuContainer,`mouseleave`,()=>{this._scheduleSubmenuHide()})),this._register(qi(()=>{this._cancelSubmenuHide(),this._cancelSubmenuShow()})),this._options?.collapsedByDefault)for(let e of this._options.collapsedByDefault)this._collapsedSections.add(e);let l={getHeight:e=>this._getItemHeight(e),getTemplateId:e=>e.kind},u=(this._options?.reserveSubmenuSpace??!0)&&n.some(e=>!!e.submenuActions?.length&&!e.hover?.content);if(this._list=this._register(new Le(e,this.domNode,l,[new Cf(this._supportsPreview,e=>this._removeItem(e),e=>this._showSubmenuForItem(e),u,this._groupTitleByIndex,this._options?.linkHandler,this._options?.hideDefaultKeybindingTooltip??!1,this._keybindingService,this._openerService),new xf,new Sf],{keyboardSupport:!1,typeNavigationEnabled:!this._options?.showFilter,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:Ef},accessibilityProvider:{getAriaLabel:e=>{if(e.kind===`action`){let t=e.label?kf(e?.label):``;if(e.detail&&(t=t+`, `+kf(e.detail)),e.ariaDescription)t=t+`, `+kf(e.ariaDescription);else if(e.description){let n=typeof e.description==`string`?e.description:e.description.value;t=t+`, `+kf(n)}if(e.hover?.content&&!e.ariaDescription&&!e.description){let n=e.hover.content,r=typeof n==`string`?n:Xs(n)?n.value:ye(n)?n.textContent??void 0:void 0;r&&(!e.detail||kf(e.detail)!==kf(r))&&(t=t+`, `+kf(r))}return e.group?.title&&(t=t+`, `+e.group.title),e.disabled&&(t=R(1708,`{0}, Disabled Reason: {1}`,t,e.disabled)),e.submenuActions?.length&&(t=R(1709,`{0}, use right arrow to access options`,t)),t}return null},getWidgetAriaLabel:()=>R(1710,`Action Widget`),getRole:e=>{switch(e.kind){case`action`:return`option`;case`separator`:return`separator`;default:return`separator`}},getWidgetRole:()=>`listbox`,...i}})),this._list.style(ms),this._register(this._list.onMouseClick(e=>this.onListClick(e))),this._register(this._list.onMouseOver(e=>this.onListHover(e))),this._register(this._list.onDidChangeFocus(()=>this.onFocus())),this._register(this._list.onDidChangeSelection(e=>this.onListSelection(e))),this._allMenuItems=[...n],this._options?.showFilter||this._options?.secondaryHeading){this._filterContainer=document.createElement(`div`),this._filterContainer.className=`action-list-filter`;let e=Y(this._filterContainer,W(`.action-list-filter-row`));if(this._options?.showFilter){this._filterInput=document.createElement(`input`),this._filterInput.type=`text`,this._filterInput.className=`action-list-filter-input`,this._filterInput.placeholder=this._options?.filterPlaceholder??R(1711,`Search...`),this._filterInput.setAttribute(`aria-label`,R(1712,`Filter items`)),e.appendChild(this._filterInput);let t=this._options?.filterActions??[];if(t.length>0){let n=Y(e,W(`.action-list-filter-actions`));this._register(new Mc(n)).push(t,{icon:!0,label:!1})}this._register(z(this._filterInput,`input`,()=>{this._filterText=this._filterInput.value,this._applyOrUpdateFilter()}))}if(this._options?.secondaryHeading){let t=Y(e,W(`.action-list-filter-label`));t.textContent=this._options.secondaryHeading}}if(this._options?.footerText&&(this._footerContainer=document.createElement(`div`),this._footerContainer.className=`action-list-footer`,this._footerContainer.textContent=this._options.footerText),this._options?.headerText){if(this._headerContainer=document.createElement(`div`),this._headerContainer.className=`action-list-header`,this._options.headerIcon){let e=Y(this._headerContainer,W(`span.action-list-header-icon`));e.classList.add(...A.asClassNameArray(this._options.headerIcon)),e.setAttribute(`aria-hidden`,`true`)}let e=Y(this._headerContainer,W(`span.action-list-header-text`));e.textContent=this._options.headerText}this._applyFilter(),this._list.length&&this._focusCheckedOrFirst(),this._register(z(this.domNode,`keydown`,e=>{if(e.key===`ArrowRight`){let t=this._list.getFocus();if(t.length>0){let n=this._list.element(t[0]);if(n?.submenuActions?.length){ho.stop(e,!0);let r=this._getRowElement(t[0]);r&&(this._showSubmenuForElement(n,r),this._currentSubmenuWidget?.focus())}}}})),this._filterInput&&this._register(z(this.domNode,`keydown`,e=>{this._filterInput&&!vr(this._filterInput)&&e.key.length===1&&e.key!==` `&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&(this._filterInput.focus(),this._filterInput.value=e.key,this._filterText=e.key,this._applyOrUpdateFilter(),e.preventDefault(),e.stopPropagation())}))}_toggleSection(e){this._collapsedSections.has(e)?this._collapsedSections.delete(e):this._collapsedSections.add(e),this._options?.onDidToggleSection?.(e,this._collapsedSections.has(e)),this._applyFilter()}_applyOrUpdateFilter(){if(!this._delegate.onFilter){this._applyFilter();return}let e=this._filterText;this._filterCts.value?.cancel();let t=new Gu;this._filterCts.value=t,this._delegate.onFilter(e,t.token).then(e=>{t.token.isCancellationRequested||(this._allMenuItems=[...e],this._applyFilter(!0))}).catch(()=>{})}_applyFilter(e=!1,t=!0){let n=e?``:this._filterText.toLowerCase(),r=!e&&n.length>0,i=[],a=this._list.getFocus(),o;if(a.length>0&&(o=this._list.element(a[0])),r){let e,t=[],r=!1,a=()=>{e&&r&&i.push(e),i.push(...t),e=void 0,t=[],r=!1},o=e=>{let t=(e.label??``).toLowerCase(),r=typeof e.description==`string`?e.description:e.description?.value??``;return t.includes(n)||r.toLowerCase().includes(n)};for(let n of this._allMenuItems)if(n.kind!==`header`){if(n.kind===`separator`){a(),e=n.label?n:void 0;continue}if(n.showAlways){t.push(n);continue}n.isSectionToggle||o(n)&&(r=!0,t.push(n))}a()}else for(let e of this._allMenuItems){if(e.kind===`header`){i.push(e);continue}if(e.kind===`separator`){if(e.section&&this._collapsedSections.has(e.section))continue;i.push(e);continue}if(e.isSectionToggle&&e.section){let t=this._collapsedSections.has(e.section);i.push({...e,group:{...e.group,icon:t?V.chevronRight:V.chevronDown}});continue}e.section&&this._collapsedSections.has(e.section)||i.push(e)}let s=[],c=!1;for(let e=0;e<i.length;e++)s[e]=c,i[e].kind===`action`&&(c=!0);let l=[],u=!1;for(let e=i.length-1;e>=0;e--){if(i[e].kind===`action`){u=!0;continue}i[e].kind===`separator`&&(l[e]=u,u=!1)}for(let e=i.length-1;e>=0;e--){let t=i[e];if(t.kind!==`separator`)continue;let n=l[e],r=!t.label&&!s[e];(!n||r)&&i.splice(e,1)}this._options?.showGroupTitleOnFirstItem&&this._recomputeGroupTitles(i);let d=this._filterInput&&vr(this._filterInput);if(this._list.splice(0,this._list.length,i),t&&this._onDidRequestLayout.fire(),d)this._filterInput?.focus(),this._focusCheckedOrFirst();else if(this._hasLaidOut&&o){let e=o.item?.id;if(e){for(let t=0;t<this._list.length;t++)if(this._list.element(t).item?.id===e){this._list.setFocus([t]),this._list.reveal(t),this._list.domFocus();break}}}}get filterContainer(){return this._filterContainer}get footerContainer(){return this._footerContainer}get headerContainer(){return this._headerContainer}get filterInput(){return this._filterInput}focusCondition(e){return!e.disabled&&e.kind===`action`}focus(){if(this._filterInput&&this._options?.focusFilterOnOpen){this._filterInput.focus(),this._focusCheckedOrFirst();return}this._list.domFocus(),this._focusCheckedOrFirst()}clearFocus(){this._list.setFocus([])}getFocusedElement(){let e=this._list.getFocus();if(e.length>0)return this._list.element(e[0])}_focusCheckedOrFirst(){this._suppressHover=!0;try{for(let e=0;e<this._list.length;e++){let t=this._list.element(e);if(t.kind===`action`&&t.item?.checked){this._list.setFocus([e]),this._list.reveal(e);return}}this._list.focusFirst(void 0,this.focusCondition);let e=this._list.getFocus();e.length>0&&this._list.reveal(e[0])}finally{this._suppressHover=!1}}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._filterCts.value?.cancel(),this._filterCts.clear(),this._hideSubmenu()}clearFilter(){return this._filterInput&&this._filterText?(this._filterInput.value=``,this._filterText=``,this._applyOrUpdateFilter(),!0):!1}get hasDynamicHeight(){return this._options?.showFilter?!0:this._allMenuItems.some(e=>e.isSectionToggle)}get lineHeight(){return this._actionLineHeight}_getItemHeight(e){switch(e.kind){case`header`:return this._headerLineHeight;case`separator`:return e.label?this._actionLineHeight:this._separatorLineHeight;default:return e.detail?this._options?.detailItemHeight??48:this._actionLineHeight}}computeFullHeight(){let e=0;for(let t of this._allMenuItems)e+=this._getItemHeight(t);return e}computeListHeight(){let e=this._list.length,t=0;for(let n=0;n<e;n++){let e=this._list.element(n);t+=this._getItemHeight(e)}return t}layout(e,t){this._hasLaidOut=!0,this._list.layout(e,t),this.domNode.style.height=`${e}px`,this._filterContainer&&this._filterContainer.parentElement&&this._filterContainer.parentElement.insertBefore(this._filterContainer,this.domNode)}computeMaxWidth(e){let t=this._list.length,n=Math.max(e,this._options?.minWidth??0),r=this._options?.maxWidth??1/0,i=Math.max(r,n),a=e=>Math.min(Math.max(e,n),i),o=n,s=this._allMenuItems.length;if(s>=50)return a(380);if(s>t){let e=[];for(let n=0;n<t;n++)e.push(this._list.element(n));let n=[...this._allMenuItems];this._list.splice(0,t,n);let r=0;for(let e of n)r+=this._getItemHeight(e);this._list.layout(r);let i=[];for(let e=0;e<n.length;e++){let t=this._getRowElement(e);if(t){t.style.width=`auto`;let r=t.getBoundingClientRect().width;t.style.width=``,i.push(r+this._computeToolbarWidth(n[e]))}}return o=a(Math.max(...i)),this._list.splice(0,n.length,e),o}let c=[];for(let e=0;e<t;e++){let t=this._getRowElement(e);if(t){t.style.width=`auto`;let n=t.getBoundingClientRect().width;t.style.width=``,c.push(n+this._computeToolbarWidth(this._list.element(e)))}}return a(Math.max(...c))}focusPrevious(){if(this._filterInput&&vr(this._filterInput)){this._list.domFocus();let e=this._list.getFocus();if(e.length>0){this._list.focusPrevious(1,!1,void 0,this.focusCondition);let t=this._list.getFocus();t.length>0&&t[0]>=e[0]?this._filterInput.focus():t.length>0&&this._list.reveal(t[0])}else{this._list.focusLast(void 0,this.focusCondition);let e=this._list.getFocus();e.length>0&&this._list.reveal(e[0])}return}let e=this._list.getFocus();this._list.focusPrevious(1,!0,void 0,this.focusCondition);let t=this._list.getFocus();if(t.length>0){if(this._filterInput&&e.length>0&&t[0]>e[0]){this._list.setFocus([]),this._filterInput.focus();return}this._list.reveal(t[0])}}focusNext(){if(this._filterInput&&vr(this._filterInput)){if(this._list.domFocus(),this._list.getFocus().length>0){this._list.focusNext(1,!1,void 0,this.focusCondition);let e=this._list.getFocus();e.length>0&&this._list.reveal(e[0])}else{this._list.focusFirst(void 0,this.focusCondition);let e=this._list.getFocus();e.length>0&&this._list.reveal(e[0])}return}let e=this._list.getFocus();this._list.focusNext(1,!0,void 0,this.focusCondition);let t=this._list.getFocus();if(t.length>0){if(this._filterInput&&e.length>0&&t[0]<e[0]){this._list.setFocus([]),this._filterInput.focus();return}this._list.reveal(t[0])}}collapseFocusedSection(){let e=this._getFocusedSection();e&&!this._collapsedSections.has(e)&&this._toggleSection(e)}expandFocusedSection(){let e=this._getFocusedSection();e&&this._collapsedSections.has(e)&&this._toggleSection(e)}toggleFocusedSection(){let e=this._list.getFocus();if(e.length===0)return!1;let t=this._list.element(e[0]);return t.isSectionToggle&&t.section?(this._toggleSection(t.section),!0):!1}_getFocusedSection(){let e=this._list.getFocus();if(e.length===0)return;let t=this._list.element(e[0]);return t.isSectionToggle&&t.section,t.section}acceptSelected(e){let t=this._list.getFocus();if(t.length===0)return;let n=t[0],r=this._list.element(n);if(!this.focusCondition(r))return;let i=e?new Tf:new wf;this._list.setSelection([n],i)}onListSelection(e){if(!e.elements.length)return;let t=e.elements[0];if(t.isSectionToggle&&t.section){this._list.setSelection([]);let e=t.section;queueMicrotask(()=>{this._toggleSection(e)});return}if(Rt(e.browserEvent)){let t=e.browserEvent.target;if(ye(t)&&(t.closest(`.action-list-item-toolbar`)||t.closest(`.action-list-submenu-indicator`))){this._list.setSelection([]);return}}if(t.item&&this.focusCondition(t)){let n=e.browserEvent instanceof Tf;this._delegate.onSelect(t.item,n&&this._supportsPreview)}else this._list.setSelection([])}onFocus(){let e=this._list.getFocus();if(e.length===0)return;let t=e[0],n=this._list.element(t);this._delegate.onFocus?.(n.item),this._suppressHover||this._showHoverForElement(n,t)}_removeItem(e){let t=this._allMenuItems.indexOf(e);t>=0&&(this._allMenuItems.splice(t,1),this._applyFilter())}_recomputeGroupTitles(e){this._groupTitleByIndex.clear();let t=new Set;for(let n=0;n<e.length;n++){let r=e[n];r.kind===`action`&&r.group?.title&&!t.has(r.group.title)&&(t.add(r.group.title),this._groupTitleByIndex.set(n,r.group.title))}}_computeToolbarWidth(e){let t=e.toolbarActions?.length??0;return e.onRemove&&t++,t===0?0:t*22+6}_getRowElement(e){return this.domNode.ownerDocument.getElementById(this._list.getElementID(e))}_showHoverForElement(e,t){if(this._currentSubmenuElement===e)return;let n=!!e.hover?.content,r=!!e.submenuActions?.length;if(n||r){let n=this._getRowElement(t);n&&this._showSubmenuForElement(e,n);return}this._hideSubmenu()}_showSubmenuForItem(e){let t=this._list.indexOf(e);if(t>=0){let n=this._getRowElement(t);n&&this._showSubmenuForElement(e,n)}}_showSubmenuForElement(e,t){if(this._currentSubmenuElement===e)return;this._submenuDisposables.clear(),this._currentSubmenuElement=e,this._clearSubmenuContainer();let n,r=e.hover?.content;if(r){if(ye(r))n=r,e.hover?.disposable&&this._register(e.hover.disposable);else{let t=typeof r==`string`?new Ze(r):r,i=this._options?.linkHandler,a=ro(t,{actionHandler:t=>{let n=sc.parse(t);i?i(n,e):this._openerService.open(n,{allowCommands:!0})}});this._submenuDisposables.add(a),n=a.element}n.classList.add(`action-list-submenu-hover-header`),e.submenuActions?.length&&n.classList.add(`has-submenu`),this._submenuContainer.appendChild(n)}let i=!!e.submenuActions?.length;this._submenuContainer.style.display=``,this._submenuContainer.style.position=`absolute`,this._submenuContainer.removeAttribute(`role`);let a=t.getBoundingClientRect(),o=this.domNode.getBoundingClientRect(),s=Bs(this.domNode),c=0,l=n?n.offsetWidth:0;if(i){let t=[],n=e.submenuActions.filter(e=>e instanceof ia).filter(e=>e.actions.length>0);for(let e=0;e<n.length;e++){let r=n[e];r.label&&t.push({kind:`header`,group:{title:r.label},label:r.label});for(let e=0;e<r.actions.length;e++){let n=r.actions[e],i=n,a=i.icon??A.fromId(n.checked?V.check.id:V.blank.id),o=i.hoverContent;t.push({item:n,kind:`action`,label:n.label,description:n.tooltip||void 0,group:{title:``,icon:a},hideIcon:!1,hover:o?{content:o}:{},onRemove:i.onRemove})}e<n.length-1&&t.push({kind:`separator`,label:``})}for(let n of e.submenuActions)if(!(n instanceof ia)){let e=n;t.push({item:n,kind:`action`,label:n.label,description:n.tooltip||void 0,group:{title:``},hideIcon:!1,hover:{},onRemove:e.onRemove})}let r=this._submenuDisposables.add(this._instantiationService.createInstance(vf,`submenu`,!1,t,{onHide:()=>{},onSelect:e=>{e.run();let t=this._currentSubmenuElement?.item;this._hideSubmenu(),t&&this._delegate.onSelect(t),this.hide()}},void 0,void 0));this._submenuContainer.appendChild(r.domNode),this._currentSubmenuWidget=r,r.clearFocus(),c=r.computeListHeight(),r.layout(c);let i=r.computeMaxWidth(0);l=Math.max(l,i),r.layout(c,l),r.domNode.style.width=`${l}px`,this._submenuDisposables.add(z(r.domNode,`keydown`,e=>{if(e.key===`ArrowLeft`||e.key===`Escape`)ho.stop(e,!0),this._hideSubmenu(),this._list.domFocus();else if(e.key===`Enter`){ho.stop(e,!0);let t=r.getFocusedElement();if(t?.item){t.item.run();let e=this._currentSubmenuElement?.item;this._hideSubmenu(),e&&this._delegate.onSelect(e),this.hide()}}else e.key===`ArrowDown`?(ho.stop(e,!0),r.focusNext()):e.key===`ArrowUp`&&(ho.stop(e,!0),r.focusPrevious())}))}let u=s.innerWidth-a.right,d=o.left,f=l+10;u>=f||u>=d?this._submenuContainer.style.left=`${o.right-o.left+4}px`:this._submenuContainer.style.left=`${-f-4}px`;let p=n?n.offsetHeight:0,m=c+p,h=s.innerHeight,g=a.height,_=a.top-o.top+(g-m)/2,v=o.top+_+m;v>h&&(_-=v-h+8),o.top+_<0&&(_=-o.top),this._submenuContainer.style.top=`${_}px`}_hideSubmenu(){this._cancelSubmenuHide(),this._cancelSubmenuShow(),this._submenuDisposables.clear(),this._currentSubmenuWidget=void 0,this._currentSubmenuElement=void 0,this._clearSubmenuContainer(),this._submenuContainer.style.display=`none`}_clearSubmenuContainer(){this._submenuContainer.contains(Iu())&&this._list.domFocus(),Xu(this._submenuContainer)}_scheduleSubmenuHide(){this._cancelSubmenuHide(),this._submenuHideTimeout=setTimeout(()=>{this._hideSubmenu()},300)}_cancelSubmenuHide(){this._submenuHideTimeout!==void 0&&(clearTimeout(this._submenuHideTimeout),this._submenuHideTimeout=void 0)}_scheduleSubmenuShow(e,t){this._cancelSubmenuShow(),this._submenuShowTimeout=setTimeout(()=>{this._submenuShowTimeout=void 0;let n=typeof t==`number`?this._getRowElement(t):null;n&&this._showSubmenuForElement(e,n)},500)}_cancelSubmenuShow(){this._submenuShowTimeout!==void 0&&(clearTimeout(this._submenuShowTimeout),this._submenuShowTimeout=void 0)}async onListHover(e){let t=e.element;if(t&&t.item&&this.focusCondition(t)){if(ye(e.browserEvent.target)&&e.browserEvent.target.closest(`.action-list-item-toolbar`)!==null){t.submenuActions?.length||this._cancelSubmenuShow(),this._list.setFocus([]);return}let n=!!(t.submenuActions?.length||t.hover?.content);if(n&&(this._suppressHover=!0),this._list.setFocus(typeof e.index==`number`?[e.index]:[]),n&&(this._suppressHover=!1),n){this._currentSubmenuElement===t?(this._cancelSubmenuHide(),this._cancelSubmenuShow()):(this._hideSubmenu(),this._scheduleSubmenuShow(t,e.index));return}if(this._currentSubmenuElement===t?this._cancelSubmenuHide():(this._cancelSubmenuShow(),this._hideSubmenu()),this._delegate.onHover&&!t.disabled&&t.kind===`action`&&this._currentSubmenuElement!==t){let n=await this._delegate.onHover(t.item,this.cts.token),r=n?n.canPreview:void 0;r!==t.canPreview&&(t.canPreview=r,typeof e.index==`number`&&(this._list.splice(e.index,1,[t]),this._list.setFocus([e.index])))}}else t&&t.hover?.content&&typeof e.index==`number`&&(this._currentSubmenuElement===t?(this._cancelSubmenuHide(),this._cancelSubmenuShow()):(this._hideSubmenu(),this._scheduleSubmenuShow(t,e.index)))}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};Df=vf=gf([_f(6,Fs),_f(7,Ma),_f(8,L)],Df);var Of=class extends C{get domNode(){return this._widget.domNode}get filterContainer(){return this._widget.filterContainer}get footerContainer(){return this._widget.footerContainer}get headerContainer(){return this._widget.headerContainer}get filterInput(){return this._widget.filterInput}get anchorPosition(){if(this._showAbove!==void 0)return+!!this._showAbove}constructor(e,t,n,r,i,a,o,s,c,l){super(),this._contextViewService=s,this._layoutService=c,this._lastMinWidth=0,this._hasLaidOut=!1,this._anchor=o,this._widget=this._register(l.createInstance(Df,e,t,n,r,i,a)),this._register(this._widget.onDidRequestLayout(()=>{this._hasLaidOut&&(this.layout(this._lastMinWidth),this._contextViewService.layout())}))}focus(){this._widget.focus()}hide(e){this._widget.hide(e),this._contextViewService.hideContextView()}clearFilter(){return this._widget.clearFilter()}focusPrevious(){this._widget.focusPrevious()}focusNext(){this._widget.focusNext()}collapseFocusedSection(){this._widget.collapseFocusedSection()}expandFocusedSection(){this._widget.expandFocusedSection()}toggleFocusedSection(){return this._widget.toggleFocusedSection()}acceptSelected(e){this._widget.acceptSelected(e)}hasDynamicHeight(){return this._widget.hasDynamicHeight}computeActionWidgetVerticalChromeHeight(){let e=this.domNode.parentElement?.closest(`.action-widget`);if(!e)return 0;let t=Bs(e).getComputedStyle(e),n=e=>Number.parseFloat(e)||0;return n(t.paddingTop)+n(t.paddingBottom)+n(t.borderTopWidth)+n(t.borderBottomWidth)}computeHeight(){let e=this._widget.computeListHeight(),t=this._widget.filterContainer?36:0,n=this._widget.footerContainer?32:0,r=this._widget.headerContainer?this._widget.headerContainer.offsetHeight||36:0,i=t+n+r,a=Bs(this.domNode),o;if(this.hasDynamicHeight()){let e=a.innerHeight,t=Wo(this._anchor),n=t.top-a.pageYOffset,r=e-n-t.height-30,s=n;if(this._showAbove===void 0){let e=i+this._widget.computeFullHeight();this._showAbove=e>r&&s>r}o=Math.max(0,(this._showAbove?s:r)-this.computeActionWidgetVerticalChromeHeight())}else{let e=this._layoutService.getContainer(a).clientHeight,t=this.domNode.getBoundingClientRect().top;o=t>0?e-t-10:e*.7}let s=Math.floor(a.innerHeight*.6),c=this._widget.lineHeight,l=Math.min(Math.max(o,c*3+i),s);return Math.min(e+i,l)-i}layout(e){this._hasLaidOut=!0,this._lastMinWidth=e;let t=this.computeHeight();this._widget.layout(t);let n=this._widget.computeMaxWidth(e);return this._cachedMaxWidth=n,this._widget.layout(t,this._cachedMaxWidth),this._cachedMaxWidth}};Of=gf([_f(7,Zi),_f(8,Ql),_f(9,L)],Of);function kf(e){return e.replace(/\r\n|\r|\n/g,` `)}var Af=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},jf=function(e,t){return function(n,r){t(n,r,e)}};q(`actionBar.toggledBackground`,Es,R(1713,`Background color for toggled action items in action bar.`));var Mf={Visible:new b(`codeActionMenuVisible`,!1,R(1714,`Whether the action widget list is visible`)),FilterFocused:new b(`codeActionMenuFilterFocused`,!1,R(1715,`Whether the action widget filter input is focused`))},Nf=Ic(`actionWidgetService`),Pf=class extends C{get isVisible(){return Mf.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,n){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=n,this._list=this._register(new vt)}show(e,t,n,r,i,a,o,s,c){let l=Mf.Visible.bindTo(this._contextKeyService),u=this._instantiationService.createInstance(Of,e,t,n,r,s,c,i);this._contextViewService.showContextView({getAnchor:()=>i,render:e=>(l.set(!0),this._renderWidget(e,u,o??[])),onHide:e=>{l.reset(),this._onWidgetClosed(e)},get anchorPosition(){return u.anchorPosition}},a,!1)}acceptSelected(e){this._list.value?.acceptSelected(e)}focusPrevious(){this._list?.value?.focusPrevious()}focusNext(){this._list?.value?.focusNext()}collapseSection(){this._list?.value?.collapseFocusedSection()}expandSection(){this._list?.value?.expandFocusedSection()}toggleSection(){return this._list?.value?.toggleFocusedSection()??!1}clearFilter(){return this._list?.value?.clearFilter()??!1}hide(e){this._list.value?.hide(e),this._list.clear()}_renderWidget(e,t,n){let r=document.createElement(`div`);if(r.classList.add(`action-widget`),e.appendChild(r),this._list.value=t,this._list.value)this._list.value.headerContainer&&r.appendChild(this._list.value.headerContainer),this._list.value.filterContainer&&r.appendChild(this._list.value.filterContainer),r.appendChild(this._list.value.domNode),this._list.value.footerContainer&&r.appendChild(this._list.value.footerContainer);else throw Error(`List has no value`);let i=new O,a=this._list.value.headerContainer;a&&i.add(qo(a,e=>e.preventDefault()));let o=document.createElement(`div`),s=e.appendChild(o);s.classList.add(`context-view-block`),i.add(qo(s,e=>e.stopPropagation()));let c=document.createElement(`div`),l=e.appendChild(c);l.classList.add(`context-view-pointerBlock`),i.add(z(l,dc.POINTER_MOVE,()=>l.remove())),i.add(qo(l,()=>l.remove()));let u=0;if(n.length){let e=this._createActionBar(`.action-widget-action-bar`,n);e&&(r.appendChild(e.getContainer().parentElement),i.add(e),u=e.getContainer().offsetWidth)}let d=this._list.value?.layout(u);r.style.width=`${d}px`,this._list.value?.focus();let f=Mf.FilterFocused.bindTo(this._contextKeyService);if(i.add({dispose:()=>f.reset()}),this._list.value?.filterInput){let e=this._list.value.filterInput;i.add(z(e,`focus`,()=>f.set(!0))),i.add(z(e,`blur`,()=>f.set(!1)))}let p=i.add(Eo(e));return i.add(p.onDidBlur(()=>{let e=Iu();e?.closest(`.action-widget-hover`)||e?.closest(`.action-list-submenu-panel`)||this.hide(!0)})),i}_createActionBar(e,t){if(!t.length)return;let n=W(e),r=new Mc(n);return r.push(t,{icon:!1,label:!0}),r}_onWidgetClosed(e){this._list.value?.hide(e)}};Pf=Af([jf(0,Zi),jf(1,X),jf(2,L)],Pf),Rn(Nf,Pf,1);var Ff=1100;T(class extends Ie{constructor(){super({id:`hideCodeActionWidget`,title:G(1716,`Hide action widget`),precondition:Mf.Visible,keybinding:{weight:Ff,primary:9,secondary:[1033]}})}run(e){e.get(Nf).hide(!0)}}),T(class extends Ie{constructor(){super({id:`clearFilterCodeActionWidget`,title:G(1717,`Clear action widget filter`),precondition:D.and(Mf.Visible,Mf.FilterFocused),keybinding:{weight:1101,primary:9}})}run(e){let t=e.get(Nf);t instanceof Pf&&(t.clearFilter()||t.hide(!0))}}),T(class extends Ie{constructor(){super({id:`selectPrevCodeAction`,title:G(1718,`Select previous action`),precondition:Mf.Visible,keybinding:{weight:Ff,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(e){let t=e.get(Nf);t instanceof Pf&&t.focusPrevious()}}),T(class extends Ie{constructor(){super({id:`selectNextCodeAction`,title:G(1719,`Select next action`),precondition:Mf.Visible,keybinding:{weight:Ff,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(e){let t=e.get(Nf);t instanceof Pf&&t.focusNext()}}),T(class extends Ie{constructor(){super({id:`collapseSectionCodeAction`,title:G(1720,`Collapse section`),precondition:D.and(Mf.Visible,Mf.FilterFocused.negate()),keybinding:{weight:Ff,primary:15}})}run(e){let t=e.get(Nf);t instanceof Pf&&t.collapseSection()}}),T(class extends Ie{constructor(){super({id:`expandSectionCodeAction`,title:G(1721,`Expand section`),precondition:D.and(Mf.Visible,Mf.FilterFocused.negate()),keybinding:{weight:Ff,primary:17}})}run(e){let t=e.get(Nf);t instanceof Pf&&t.expandSection()}}),T(class extends Ie{constructor(){super({id:`toggleSectionCodeAction`,title:G(1722,`Toggle section`),precondition:D.and(Mf.Visible,Mf.FilterFocused.negate()),keybinding:{weight:Ff,primary:10}})}run(e){let t=e.get(Nf);t instanceof Pf&&(t.toggleSection()||t.acceptSelected())}}),T(class extends Ie{constructor(){super({id:yf,title:G(1723,`Accept selected action`),precondition:Mf.Visible,keybinding:{weight:Ff,primary:3,secondary:[2137]}})}run(e){let t=e.get(Nf);t instanceof Pf&&t.acceptSelected()}}),T(class extends Ie{constructor(){super({id:bf,title:G(1724,`Preview selected action`),precondition:Mf.Visible,keybinding:{weight:Ff,primary:2051}})}run(e){let t=e.get(Nf);t instanceof Pf&&t.acceptSelected(!0)}});var If,Lf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Rf=function(e,t){return function(n,r){t(n,r,e)}},zf,Bf=(If=class extends C{constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this.typeId=e,this.editor=t,this.showCommand=r,this.range=i,this.edits=a,this.onSelectNewEdit=o,this.additionalActions=s,this._keybindingService=l,this._actionWidgetService=u,this.allowEditorOverflow=!0,this.suppressMouseDown=!0,this.create(),this.visibleContext=n.bindTo(c),this.visibleContext.set(!0),this._register(qi(()=>this.visibleContext.reset())),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this),this._register(qi((()=>this.editor.removeContentWidget(this)))),this._register(this.editor.onDidChangeCursorPosition(e=>{this.dispose()})),this._register(Ut.runAndSubscribe(l.onDidUpdateKeybindings,()=>{this._updateButtonTitle()}))}_updateButtonTitle(){this.button.element.title=this._keybindingService.appendKeybinding(this.showCommand.label,this.showCommand.id)}create(){this.domNode=W(`.post-edit-widget`),this.button=this._register(new pt(this.domNode,{supportIcons:!0})),this.button.label=`$(insert)`,this._register(z(this.domNode,dc.CLICK,()=>this.showSelector()))}getId(){return zf.baseId+`.`+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:this.range.getEndPosition(),preference:[2]}}showSelector(){let e=li(this.button.element),t={x:e.left+e.width,y:e.top+e.height};this._actionWidgetService.show(`postEditWidget`,!1,this.edits.allEdits.map((e,t)=>({kind:`action`,item:e,label:e.title,disabled:!1,canPreview:!1,group:{title:``,icon:A.fromId(t===this.edits.activeEditIndex?V.check.id:V.blank.id)}})),{onHide:()=>{this.editor.focus()},onSelect:e=>{this._actionWidgetService.hide(!1);let t=this.edits.allEdits.findIndex(t=>t===e);if(t!==this.edits.activeEditIndex)return this.onSelectNewEdit(t)}},t,this.editor.getDomNode()??void 0,this.additionalActions)}},zf=If,If.baseId=`editor.widget.postEditWidget`,If);Bf=zf=Lf([Rf(8,X),Rf(9,Fs),Rf(10,Nf)],Bf);var Vf=class extends C{constructor(e,t,n,r,i,a,o,s){super(),this._id=e,this._editor=t,this._visibleContext=n,this._showCommand=r,this._getAdditionalActions=i,this._instantiationService=a,this._bulkEditService=o,this._notificationService=s,this._currentWidget=this._register(new vt),this._register(Ut.any(t.onDidChangeModel,t.onDidChangeModelContent)(()=>this.clear()))}async applyEditAndShowIfNeeded(e,t,n,r,i){if(!e.length||!this._editor.hasModel())return;let a=this._editor.getModel(),o=t.allEdits.at(t.activeEditIndex);if(!o)return;let s=async a=>{let o=this._editor.getModel();o&&(await o.undo(),this.applyEditAndShowIfNeeded(e,{activeEditIndex:a,allEdits:t.allEdits},n,r,i))},c=(r,i)=>{yn(r)||(this._notificationService.error(i),n&&this.show(e[0],t,s))},l=new El(this._editor,3,void 0,i),u;try{u=await Do(r(o,l.token),l.token)}catch(e){return c(e,R(976,`Error resolving edit '{0}':
3
3
  {1}`,o.title,hf(e)))}finally{l.dispose()}if(i.isCancellationRequested)return;let d=uf(a.uri,e,u),f=e[0],p=a.deltaDecorations([],[{range:f,options:{description:`paste-line-suffix`,stickiness:0}}]);this._editor.focus();let m,h;try{m=await this._bulkEditService.apply(d,{editor:this._editor,token:i}),h=a.getDecorationRange(p[0])}catch(e){return c(e,R(977,`Error applying edit '{0}':
4
4
  {1}`,o.title,hf(e)))}finally{a.deltaDecorations(p,[])}i.isCancellationRequested||n&&m.isApplied&&t.allEdits.length>1&&this.show(h??f,t,s)}show(e,t,n){this.clear(),this._editor.hasModel()&&(this._currentWidget.value=this._instantiationService.createInstance(Bf,this._id,this._editor,this._visibleContext,this._showCommand,e,t,n,this._getAdditionalActions()))}clear(){this._currentWidget.clear()}tryShowSelector(){this._currentWidget.value?.showSelector()}};Vf=Lf([Rf(5,L),Rf(6,Ko),Rf(7,bn)],Vf);var Hf,Uf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Wf=function(e,t){return function(n,r){t(n,r,e)}},Gf,Kf=`editor.changePasteType`,qf=`editor.pasteAs.preferences`,Jf=new b(`pasteWidgetVisible`,!1,R(956,`Whether the paste widget is showing`)),Yf=`application/vnd.code.copymetadata`,Xf=(Hf=class extends C{static get(e){return e.getContribution(Gf.ID)}constructor(e,t,n,r,i,a,o,s,c,l){super(),this._logService=n,this._bulkEditService=r,this._clipboardService=i,this._commandService=a,this._configService=o,this._languageFeaturesService=s,this._quickInputService=c,this._progressService=l,this._editor=e,this._register(e.onWillCopy(e=>this.handleCopy(e))),this._register(e.onWillCut(e=>this.handleCopy(e))),this._register(e.onWillPaste(e=>this.handlePaste(e))),this._pasteProgressManager=this._register(new Ad(`pasteIntoEditor`,e,t)),this._postPasteWidgetManager=this._register(t.createInstance(Vf,`pasteIntoEditor`,e,Jf,{id:Kf,label:R(957,`Show paste options...`)},()=>Gf._configureDefaultAction?[Gf._configureDefaultAction]:[]))}changePasteType(){this._postPasteWidgetManager.tryShowSelector()}async pasteAs(e){this._logService.trace(`CopyPasteController.pasteAs`),this._editor.focus();try{this._logService.trace(`Before calling editor.action.clipboardPasteAction`),this._pasteAsActionContext={preferred:e},await this._commandService.executeCommand(`editor.action.clipboardPasteAction`)}finally{this._pasteAsActionContext=void 0}}clearWidgets(){this._postPasteWidgetManager.clear()}isPasteAsEnabled(){return this._editor.getOption(97).enabled}async finishedPaste(){await this._currentPasteOperation}handleCopy(e){if(this._logService.trace(`CopyPasteController#handleCopy`),!this._editor.hasTextFocus()||(this._clipboardService.clearInternalState?.(),!this.isPasteAsEnabled()))return;let t=this._editor.getModel(),n=this._editor._getViewModel(),r=this._editor.getSelections();if(!t||!n||!r?.length)return;let i={multicursorText:e.dataToCopy.multicursorText??null,pasteOnNewLine:e.dataToCopy.isFromEmptySelection,mode:null},a=this._languageFeaturesService.documentPasteEditProvider.ordered(t).filter(e=>!!e.prepareDocumentPaste);if(!a.length){this.setCopyMetadata(e.clipboardData,{defaultPastePayload:i});return}let o=new Ae,s=a.flatMap(e=>e.copyMimeTypes??[]),c=As();this.setCopyMetadata(e.clipboardData,{id:c,providerCopyMimeTypes:s,defaultPastePayload:i});let l=a.map(n=>({providerMimeTypes:n.copyMimeTypes,operation:Wi(r=>n.prepareDocumentPaste(t,e.dataToCopy.sourceRanges,o,r).catch(e=>{console.error(e)}))}));Gf._currentCopyOperation?.operations.forEach(e=>e.operation.cancel()),Gf._currentCopyOperation={handle:c,operations:l}}async handlePaste(e){if(this._logService.trace(`CopyPasteController#handlePaste for id : `,e.metadata?.id),!this._editor.hasTextFocus())return;let t=e.toExternalVSDataTransfer();if(!t)return;t.delete(Yf),Fd.get(this._editor)?.closeMessage(),this._currentPasteOperation?.cancel(),this._currentPasteOperation=void 0;let n=this._editor.getModel(),r=this._editor.getSelections();if(!r?.length||!n||this._editor.getOption(104)||!this.isPasteAsEnabled()&&!this._pasteAsActionContext)return;let i=this.fetchCopyMetadata(e);this._logService.trace(`CopyPasteController#handlePaste with metadata : `,i?.id,` and text.length : `,e.clipboardData.getData(`text/plain`).length);let a=Array.from(e.clipboardData.files).map(e=>e.type),o=[...e.clipboardData.types,...a,...i?.providerCopyMimeTypes??[],js.uriList],s=this._languageFeaturesService.documentPasteEditProvider.ordered(n).filter(e=>{let t=this._pasteAsActionContext?.preferred;return t&&!this.providerMatchesPreference(e,t)?!1:e.pasteMimeTypes?.some(e=>Hs(e,o))});if(!s.length){this._pasteAsActionContext?.preferred&&(this.showPasteAsNoEditMessage(r,this._pasteAsActionContext.preferred),e.setHandled());return}e.setHandled(),this._pasteAsActionContext?this.showPasteAsPick(this._pasteAsActionContext.preferred,s,r,t,i):this.doPasteInline(s,r,t,i,e.browserEvent)}showPasteAsNoEditMessage(e,t){let n=`only`in t?t.only.value:`preferences`in t?t.preferences.length?t.preferences.map(e=>e.value).join(`, `):R(958,`empty`):t.providerId;Fd.get(this._editor)?.showMessage(R(959,`No paste edits for '{0}' found`,n),e[0].getStartPosition())}doPasteInline(e,t,n,i,a){this._logService.trace(`CopyPasteController#doPasteInline`);let o=this._editor;if(!o.hasModel())return;let s=new El(o,3,void 0),c=Wi(async o=>{let l=this._editor;if(!l.hasModel())return;let u=l.getModel(),d=new O,f=d.add(new Gu(o));d.add(s.token.onCancellationRequested(()=>f.cancel()));let p=f.token;try{if(await this.mergeInDataFromCopy(e,n,i,p),p.isCancellationRequested)return;let o=e.filter(e=>this.isSupportedPasteProvider(e,n));if(!o.length||o.length===1&&o[0]instanceof Hd)return this.applyDefaultPasteHandler(n,i,p,a);let s={triggerKind:zr.Automatic},c=await this.getPasteEdits(o,n,u,t,s,p);if(d.add(c),p.isCancellationRequested)return;if(c.edits.length===1&&c.edits[0].provider instanceof Hd)return this.applyDefaultPasteHandler(n,i,p,a);if(c.edits.length){let e=l.getOption(97).showPasteSelector===`afterPaste`;return this._postPasteWidgetManager.applyEditAndShowIfNeeded(t,{activeEditIndex:this.getInitialActiveEditIndex(u,c.edits),allEdits:c.edits},e,async(e,n)=>{if(!e.provider.resolveDocumentPasteEdit)return e;let i=e.provider.resolveDocumentPasteEdit(e,n),a=new Ot,o=await this._pasteProgressManager.showWhile(t[0].getEndPosition(),R(960,`Resolving paste edit for '{0}'. Click to cancel`,e.title),r(Promise.race([a.p,i]),n),{cancel:()=>a.cancel()},0);return o&&(e.insertText=o.insertText,e.additionalEdit=o.additionalEdit),e},p)}await this.applyDefaultPasteHandler(n,i,p,a)}finally{d.dispose(),this._currentPasteOperation===c&&(this._currentPasteOperation=void 0)}});this._pasteProgressManager.showWhile(t[0].getEndPosition(),R(961,`Running paste handlers. Click to cancel and do basic paste`),c,{cancel:async()=>{c.cancel(),!s.token.isCancellationRequested&&await this.applyDefaultPasteHandler(n,i,s.token,a)}}).finally(()=>{s.dispose()}),this._currentPasteOperation=c}showPasteAsPick(e,t,n,r,i){this._logService.trace(`CopyPasteController#showPasteAsPick`);let a=Wi(async o=>{let s=this._editor;if(!s.hasModel())return;let c=s.getModel(),l=new O,u=l.add(new El(s,3,void 0,o));try{if(await this.mergeInDataFromCopy(t,r,i,u.token),u.token.isCancellationRequested)return;let a=t.filter(t=>this.isSupportedPasteProvider(t,r,e));e&&(a=a.filter(t=>this.providerMatchesPreference(t,e)));let o={triggerKind:zr.PasteAs,only:e&&`only`in e?e.only:void 0},s=l.add(await this.getPasteEdits(a,r,c,n,o,u.token));if(u.token.isCancellationRequested)return;if(e&&(s={edits:s.edits.filter(t=>`only`in e?e.only.contains(t.kind):`preferences`in e?e.preferences.some(e=>e.contains(t.kind)):e.providerId===t.provider.id),dispose:s.dispose}),!s.edits.length){e&&this.showPasteAsNoEditMessage(n,e);return}let d;if(e)d=s.edits.at(0);else{let e={id:`editor.pasteAs.default`,label:R(962,`Configure default paste action`),edit:void 0},t=await this._quickInputService.pick([...s.edits.map(e=>({label:e.title,description:e.kind?.value,edit:e})),...Gf._configureDefaultAction?[$n({type:`separator`}),{label:Gf._configureDefaultAction.label,edit:void 0}]:[]],{placeHolder:R(963,`Select Paste Action`)});if(t===e){Gf._configureDefaultAction?.run();return}d=t?.edit}if(!d)return;let f=uf(c.uri,n,d);await this._bulkEditService.apply(f,{editor:this._editor})}finally{l.dispose(),this._currentPasteOperation===a&&(this._currentPasteOperation=void 0)}});this._progressService.withProgress({location:10,title:R(964,`Running paste handlers`)},()=>a)}setCopyMetadata(e,t){this._logService.trace(`CopyPasteController#setCopyMetadata new id : `,t.id),e.setData(Yf,JSON.stringify(t))}fetchCopyMetadata(e){this._logService.trace(`CopyPasteController#fetchCopyMetadata`);let t=e.clipboardData.getData(Yf);if(t)try{return JSON.parse(t)}catch{return}if(e.metadata)return{defaultPastePayload:{mode:e.metadata.mode,multicursorText:e.metadata.multicursorText??null,pasteOnNewLine:!!e.metadata.isFromEmptySelection}}}async mergeInDataFromCopy(e,t,n,r){if(this._logService.trace(`CopyPasteController#mergeInDataFromCopy with metadata : `,n?.id),n?.id&&Gf._currentCopyOperation?.handle===n.id){let n=Gf._currentCopyOperation.operations.filter(t=>e.some(e=>e.pasteMimeTypes.some(e=>Hs(e,t.providerMimeTypes)))).map(e=>e.operation),i=await Promise.all(n);if(r.isCancellationRequested)return;for(let e of i.reverse())if(e)for(let[n,r]of e)t.replace(n,r)}if(!t.has(js.uriList)){let e=await this._clipboardService.readResources();if(r.isCancellationRequested)return;e.length&&t.append(js.uriList,Xn(We.create(e)))}}async getPasteEdits(e,t,n,i,a,o){let s=new O,c=await r(Promise.all(e.map(async e=>{try{let r=await e.provideDocumentPasteEdits?.(n,i,t,a,o);return r&&s.add(r),r?.edits?.map(t=>({...t,provider:e}))}catch(e){yn(e)||console.error(e);return}})),o);return{edits:df(ht(c??[]).flat().filter(e=>!a.only||a.only.contains(e.kind))),dispose:()=>s.dispose()}}async applyDefaultPasteHandler(e,t,n,r){let i=await(e.get(js.text)??e.get(`text`))?.asString()??``;if(n.isCancellationRequested)return;let a={clipboardEvent:r,text:i,pasteOnNewLine:t?.defaultPastePayload.pasteOnNewLine??!1,multicursorText:t?.defaultPastePayload.multicursorText??null,mode:null};this._logService.trace(`CopyPasteController#applyDefaultPasteHandler for id : `,t?.id),this._editor.trigger(`keyboard`,`paste`,a)}isSupportedPasteProvider(e,t,n){return e.pasteMimeTypes?.some(e=>t.matches(e))?!n||this.providerMatchesPreference(e,n):!1}providerMatchesPreference(e,t){return`only`in t?e.providedPasteEditKinds.some(e=>t.only.contains(e)):`preferences`in t?e.providedPasteEditKinds.some(e=>t.preferences.some(t=>t.contains(e))):e.id===t.providerId}getInitialActiveEditIndex(e,t){let n=this._configService.getValue(qf,{resource:e.uri});for(let e of Array.isArray(n)?n:[]){let n=new wd(e),r=t.findIndex(e=>n.contains(e.kind));if(r>=0)return r}return 0}},Gf=Hf,Hf.ID=`editor.contrib.copyPasteActionController`,Hf);Xf=Gf=Uf([Wf(1,L),Wf(2,ws),Wf(3,Ko),Wf(4,Lr),Wf(5,gi),Wf(6,zt),Wf(7,Z),Wf(8,Pc),Wf(9,ci)],Xf);var Zf=`9_cutcopypaste`,Qf=Ss||document.queryCommandSupported(`cut`),$f=Ss||document.queryCommandSupported(`copy`),ep=navigator.clipboard===void 0||bo?document.queryCommandSupported(`paste`):!0;function tp(e){return e.register(),e}var np=Qf?tp(new Xt({id:`editor.action.clipboardCutAction`,precondition:void 0,kbOpts:Ss?{primary:2102,win:{primary:2102,secondary:[1044]},weight:100}:void 0,menuOpts:[{menuId:H.MenubarEditMenu,group:`2_ccp`,title:R(849,`Cu&&t`),order:1},{menuId:H.EditorContext,group:Zf,title:R(850,`Cut`),when:B.writable,order:1},{menuId:H.CommandPalette,group:``,title:R(851,`Cut`),order:1},{menuId:H.SimpleEditorContext,group:Zf,title:R(852,`Cut`),when:B.writable,order:1}]})):void 0,rp=$f?tp(new Xt({id:`editor.action.clipboardCopyAction`,precondition:void 0,kbOpts:Ss?{primary:2081,win:{primary:2081,secondary:[2067]},weight:100}:void 0,menuOpts:[{menuId:H.MenubarEditMenu,group:`2_ccp`,title:R(853,`&&Copy`),order:2},{menuId:H.EditorContext,group:Zf,title:R(854,`Copy`),order:2},{menuId:H.CommandPalette,group:``,title:R(855,`Copy`),order:1},{menuId:H.SimpleEditorContext,group:Zf,title:R(856,`Copy`),order:2}]})):void 0;Is.appendMenuItem(H.MenubarEditMenu,{submenu:H.MenubarCopy,title:G(861,`Copy As`),group:`2_ccp`,order:3}),Is.appendMenuItem(H.EditorContext,{submenu:H.EditorContextCopy,title:G(862,`Copy As`),group:Zf,order:3}),Is.appendMenuItem(H.EditorContext,{submenu:H.EditorContextShare,title:G(863,`Share`),group:`11_share`,order:-1,when:D.and(D.notEquals(`resourceScheme`,`output`),B.editorTextFocus)}),Is.appendMenuItem(H.ExplorerContext,{submenu:H.ExplorerContextShare,title:G(864,`Share`),group:`11_share`,order:-1});var ip=ep?tp(new Xt({id:`editor.action.clipboardPasteAction`,precondition:void 0,kbOpts:Ss?{primary:2100,win:{primary:2100,secondary:[1043]},linux:{primary:2100,secondary:[1043]},weight:100}:void 0,menuOpts:[{menuId:H.MenubarEditMenu,group:`2_ccp`,title:R(857,`&&Paste`),order:4},{menuId:H.EditorContext,group:Zf,title:R(858,`Paste`),when:B.writable,order:4},{menuId:H.CommandPalette,group:``,title:R(859,`Paste`),order:1},{menuId:H.SimpleEditorContext,group:Zf,title:R(860,`Paste`),when:B.writable,order:4}]})):void 0,ap=class extends S{constructor(){super({id:`editor.action.clipboardCopyWithSyntaxHighlightingAction`,label:G(865,`Copy with Syntax Highlighting`),precondition:void 0,kbOpts:{kbExpr:B.textInputFocus,primary:0,weight:100}})}run(e,t){let n=e.get(ws),r=e.get(Lr);n.trace(`ExecCommandCopyWithSyntaxHighlightingAction#run`),t.hasModel()&&(t.getOption(45)||!t.getSelection().isEmpty())&&(Du.forceCopyWithSyntaxHighlighting=!0,t.focus(),n.trace(`ExecCommandCopyWithSyntaxHighlightingAction (before execCommand copy)`),op(t,r),n.trace(`ExecCommandCopyWithSyntaxHighlightingAction (after execCommand copy)`),Du.forceCopyWithSyntaxHighlighting=!1)}};function op(e,t){if(Du.electronBugWorkaroundCopyEventHasFired=!1,e.getContainerDomNode().ownerDocument.execCommand(`copy`),Ss&&Du.electronBugWorkaroundCopyEventHasFired===!1){let{dataToCopy:n}=xe(e._getViewModel(),void 0,bo);t.writeText(n.text)}}function sp(e,t){e&&(e.addImplementation(1e4,`code-editor`,(e,n)=>{let r=e.get(ws),i=e.get(Lr);r.trace(`registerExecCommandImpl (addImplementation code-editor for : `,t,`)`);let a=e.get(o).getFocusedCodeEditor();if(a&&a.hasTextFocus()&&a.hasModel()){let e=a.getOption(45),n=a.getSelection();return n&&n.isEmpty()&&!e||(a.getOption(170)&&t===`cut`?(cp(a),r.trace(`registerExecCommandImpl (before execCommand copy)`),op(a,i),a.trigger(void 0,`cut`,void 0),r.trace(`registerExecCommandImpl (after execCommand copy)`)):(cp(a),r.trace(`registerExecCommandImpl (before execCommand `+t+`)`),t===`copy`?op(a,i):a.getContainerDomNode().ownerDocument.execCommand(t),r.trace(`registerExecCommandImpl (after execCommand `+t+`)`))),!0}return!1}),e.addImplementation(0,`generic-dom`,(e,n)=>{let r=e.get(ws);return r.trace(`registerExecCommandImpl (addImplementation generic-dom for : `,t,`)`),r.trace(`registerExecCommandImpl (before execCommand `+t+`)`),oo().execCommand(t),r.trace(`registerExecCommandImpl (after execCommand `+t+`)`),!0}))}function cp(e){if(e.getOption(170)){let t=ee.get(e.getId());t&&t.handleWillCopy()}}sp(np,`cut`),sp(rp,`copy`),ip&&(ip.addImplementation(1e4,`code-editor`,(e,t)=>{let n=e.get(ws);n.trace(`registerExecCommandImpl (addImplementation code-editor for : paste)`);let r=e.get(o),i=e.get(Lr),a=r.getFocusedCodeEditor();if(a&&a.hasModel()&&a.hasTextFocus()){if(a.getOption(170)){let e=ee.get(a.getId());e&&e.handleWillPaste()}n.trace(`registerExecCommandImpl (before triggerPaste)`);let e=i.triggerPaste(Zr().vscodeWindowId);return e?(n.trace(`registerExecCommandImpl (triggerPaste defined)`),e.then(async()=>(n.trace(`registerExecCommandImpl (after triggerPaste)`),Xf.get(a)?.finishedPaste()??Promise.resolve()))):(n.trace(`registerExecCommandImpl (triggerPaste undefined)`),!za||(n.trace(`registerExecCommandImpl (Paste handling on web)`),(async()=>{let e=await i.readText();if(e!==``){let t=Ur.INSTANCE.get(e),r=!1,i=null,o=null;t&&(r=a.getOption(45)&&!!t.isFromEmptySelection,i=t.multicursorText===void 0?null:t.multicursorText,o=t.mode),n.trace(`registerExecCommandImpl (clipboardText.length : `,e.length,` id : `,t?.id,`)`),a.trigger(`keyboard`,`paste`,{text:e,pasteOnNewLine:r,multicursorText:i,mode:o})}})()))}return!1}),ip.addImplementation(0,`generic-dom`,(e,t)=>(e.get(ws).trace(`registerExecCommandImpl (addImplementation generic-dom for : paste)`),e.get(Lr).triggerPaste(Zr().vscodeWindowId)??!1))),$f&&j(ap);var lp=new class{constructor(){this.QuickFix=new wd(`quickfix`),this.Refactor=new wd(`refactor`),this.RefactorExtract=this.Refactor.append(`extract`),this.RefactorInline=this.Refactor.append(`inline`),this.RefactorMove=this.Refactor.append(`move`),this.RefactorRewrite=this.Refactor.append(`rewrite`),this.Notebook=new wd(`notebook`),this.Source=new wd(`source`),this.SourceOrganizeImports=this.Source.append(`organizeImports`),this.SourceFixAll=this.Source.append(`fixAll`),this.SurroundWith=this.Refactor.append(`surround`)}},up;(function(e){e.Refactor=`refactor`,e.RefactorPreview=`refactor preview`,e.Lightbulb=`lightbulb`,e.Default=`other (default)`,e.SourceAction=`source action`,e.QuickFix=`quick fix action`,e.FixAll=`fix all`,e.OrganizeImports=`organize imports`,e.AutoFix=`auto fix`,e.QuickFixHover=`quick fix hover window`,e.OnSave=`save participants`,e.ProblemsView=`problems view`})(up||={});function dp(e,t){return!(e.include&&!e.include.intersects(t)||e.excludes&&e.excludes.some(n=>pp(t,n,e.include))||!e.includeSourceActions&&lp.Source.contains(t))}function fp(e,t){let n=t.kind?new wd(t.kind):void 0;return!(e.include&&(!n||!e.include.contains(n))||e.excludes&&n&&e.excludes.some(t=>pp(n,t,e.include))||!e.includeSourceActions&&n&&lp.Source.contains(n)||e.onlyIncludePreferredActions&&!t.isPreferred)}function pp(e,t,n){return!(!t.contains(e)||n&&t.contains(n))}var mp=class e{static fromUser(t,n){return!t||typeof t!=`object`?new e(n.kind,n.apply,!1):new e(e.getKindFromUser(t,n.kind),e.getApplyFromUser(t,n.apply),e.getPreferredUser(t))}static getApplyFromUser(e,t){switch(typeof e.apply==`string`?e.apply.toLowerCase():``){case`first`:return`first`;case`never`:return`never`;case`ifsingle`:return`ifSingle`;default:return t}}static getKindFromUser(e,t){return typeof e.kind==`string`?new wd(e.kind):t}static getPreferredUser(e){return typeof e.preferred==`boolean`&&e.preferred}constructor(e,t,n){this.kind=e,this.apply=t,this.preferred=n}},hp=class{constructor(e,t,n){this.action=e,this.provider=t,this.highlightRange=n}async resolve(e){if(this.provider?.resolveCodeAction&&!this.action.edit){let t;try{t=await this.provider.resolveCodeAction(this.action,e)}catch(e){ed(e)}t&&(this.action.edit=t.edit)}return this}},gp=`editor.action.codeAction`,_p=`editor.action.quickFix`,vp=`editor.action.autoFix`,yp=`editor.action.refactor`,bp=`editor.action.sourceAction`,xp=`editor.action.organizeImports`,Sp=`editor.action.fixAll`,Cp=1e3,wp=class e extends C{static codeActionsPreferredComparator(e,t){return e.isPreferred&&!t.isPreferred?-1:!e.isPreferred&&t.isPreferred?1:0}static codeActionsComparator({action:t},{action:n}){return t.isAI&&!n.isAI?1:!t.isAI&&n.isAI?-1:Sr(t.diagnostics)?Sr(n.diagnostics)?e.codeActionsPreferredComparator(t,n):-1:Sr(n.diagnostics)?1:e.codeActionsPreferredComparator(t,n)}constructor(t,n,r){super(),this.documentation=n,this._register(r),this.allActions=[...t].sort(e.codeActionsComparator),this.validActions=this.allActions.filter(({action:e})=>!e.disabled)}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&lp.QuickFix.contains(new wd(e.kind))&&!!e.isPreferred)}get hasAIFix(){return this.validActions.some(({action:e})=>!!e.isAI)}get allAIFixes(){return this.validActions.every(({action:e})=>!!e.isAI)}},Tp={actions:[],documentation:void 0};async function Ep(e,t,n,r,i,a){let o=r.filter||{},s={...o,excludes:[...o.excludes||[],lp.Notebook]},c={only:o.include?.value,trigger:r.type},l=new so(t,a),u=Dp(e,t,r.type===2?s:o),d=new O,f=u.map(async e=>{let r=setTimeout(()=>i.report(e),1250);try{let r=await e.provideCodeActions(t,n,c,l.token);if(l.token.isCancellationRequested)return r?.dispose(),Tp;r&&d.add(r);let i=(r?.actions||[]).filter(e=>e&&fp(o,e)),a=kp(e,i,o.include);return{actions:i.map(t=>new hp(t,e)),documentation:a}}catch(e){if(yn(e))throw e;return ed(e),Tp}finally{clearTimeout(r)}}),p=e.onDidChange(()=>{let n=e.all(t);ra(n,u)||l.cancel()});try{let n=await Promise.all(f),i=n.map(e=>e.actions).flat(),a=new wp(i,[...ht(n.map(e=>e.documentation)),...Op(e,t,r,i)],d);return d.add(a),a}catch(e){throw d.dispose(),e}finally{p.dispose(),l.dispose()}}function Dp(e,t,n){return e.all(t).filter(e=>!e.providedCodeActionKinds||e.providedCodeActionKinds.some(e=>dp(n,new wd(e))))}function*Op(e,t,n,r){if(t&&r.length)for(let i of e.all(t))i._getAdditionalMenuItems&&(yield*i._getAdditionalMenuItems?.({trigger:n.type,only:n.filter?.include?.value},r.map(e=>e.action)))}function kp(e,t,n){if(!e.documentation)return;let r=e.documentation.map(e=>({kind:new wd(e.kind),command:e.command}));if(n){let e;for(let t of r)t.kind.contains(n)&&(e?e.kind.contains(t.kind)&&(e=t):e=t);if(e)return e?.command}for(let e of t)if(e.kind){for(let t of r)if(t.kind.contains(new wd(e.kind)))return t.command}}var Ap;(function(e){e.OnSave=`onSave`,e.FromProblemsView=`fromProblemsView`,e.FromCodeActions=`fromCodeActions`,e.FromAILightbulb=`fromAILightbulb`,e.FromProblemsHover=`fromProblemsHover`})(Ap||={});async function jp(e,t,n,r,i=J.None){let a=e.get(Ko),o=e.get(gi),s=e.get(Ye),c=e.get(bn),l=e.get(ki);if(s.publicLog2(`codeAction.applyCodeAction`,{codeActionTitle:t.action.title,codeActionKind:t.action.kind,codeActionIsPreferred:!!t.action.isPreferred,reason:n}),l.playSignal(pe.codeActionTriggered),await t.resolve(i),!i.isCancellationRequested&&(!t.action.edit?.edits.length||(await a.apply(t.action.edit,{editor:r?.editor,label:t.action.title,quotableLabel:t.action.title,code:`undoredo.codeAction`,respectAutoSaveConfig:n!==Ap.OnSave,showPreview:r?.preview,reason:Qa.codeAction({kind:t.action.kind,providerId:ca.fromExtensionId(t.provider?.extensionId)})})).isApplied)){if(t.action.command)try{await o.executeCommand(t.action.command.id,...t.action.command.arguments||[])}catch(e){let t=Mp(e);c.error(typeof t==`string`?t:R(866,`An unknown error occurred while applying the code action`))}setTimeout(()=>l.playSignal(pe.codeActionApplied),Cp)}}function Mp(e){if(typeof e==`string`)return e;if(e instanceof Error&&typeof e.message==`string`)return e.message}Mt.registerCommand(`_executeCodeActionProvider`,async function(e,t,n,r,i){if(!(t instanceof sc))throw rt();let{codeActionProvider:a}=e.get(Z),o=e.get(Cr).getModel(t);if(!o)throw rt();let s=U.isISelection(n)?U.liftSelection(n):K.isIRange(n)?o.validateRange(n):void 0;if(!s)throw rt();let c=typeof r==`string`?new wd(r):void 0,l=await Ep(a,o,s,{type:1,triggerAction:up.Default,filter:{includeSourceActions:!0,include:c}},Qe.None,J.None),u=[],d=Math.min(l.validActions.length,typeof i==`number`?i:0);for(let e=0;e<d;e++)u.push(l.validActions[e].resolve(J.None));try{return await Promise.all(u),l.validActions.map(e=>e.action)}finally{setTimeout(()=>l.dispose(),100)}});var Np,Pp=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Fp=function(e,t){return function(n,r){t(n,r,e)}},Ip,Lp=(Np=class{constructor(e){this.keybindingService=e}getResolver(){let e=new Ti(()=>this.keybindingService.getKeybindings().filter(e=>Ip.codeActionCommands.indexOf(e.command)>=0).filter(e=>e.resolvedKeybinding).map(e=>{let t=e.commandArgs;return e.command===`editor.action.organizeImports`?t={kind:lp.SourceOrganizeImports.value}:e.command===`editor.action.fixAll`&&(t={kind:lp.SourceFixAll.value}),{resolvedKeybinding:e.resolvedKeybinding,...mp.fromUser(t,{kind:wd.None,apply:`never`})}}));return t=>{if(t.kind)return this.bestKeybindingForCodeAction(t,e.value)?.resolvedKeybinding}}bestKeybindingForCodeAction(e,t){if(!e.kind)return;let n=new wd(e.kind);return t.filter(e=>e.kind.contains(n)).filter(t=>!t.preferred||e.isPreferred).reduceRight((e,t)=>e?e.kind.contains(t.kind)?t:e:t,void 0)}},Ip=Np,Np.codeActionCommands=[yp,gp,bp,xp,Sp],Np);Lp=Ip=Pp([Fp(0,Fs)],Lp),q(`symbolIcon.arrayForeground`,Fc,R(1547,`The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.booleanForeground`,Fc,R(1548,`The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.classForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},R(1549,`The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.colorForeground`,Fc,R(1550,`The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.constantForeground`,Fc,R(1551,`The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.constructorForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},R(1552,`The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.enumeratorForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},R(1553,`The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.enumeratorMemberForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},R(1554,`The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.eventForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},R(1555,`The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.fieldForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},R(1556,`The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.fileForeground`,Fc,R(1557,`The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.folderForeground`,Fc,R(1558,`The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.functionForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},R(1559,`The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.interfaceForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},R(1560,`The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.keyForeground`,Fc,R(1561,`The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.keywordForeground`,Fc,R(1562,`The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.methodForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},R(1563,`The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.moduleForeground`,Fc,R(1564,`The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.namespaceForeground`,Fc,R(1565,`The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.nullForeground`,Fc,R(1566,`The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.numberForeground`,Fc,R(1567,`The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.objectForeground`,Fc,R(1568,`The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.operatorForeground`,Fc,R(1569,`The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.packageForeground`,Fc,R(1570,`The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.propertyForeground`,Fc,R(1571,`The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.referenceForeground`,Fc,R(1572,`The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.snippetForeground`,Fc,R(1573,`The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.stringForeground`,Fc,R(1574,`The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.structForeground`,Fc,R(1575,`The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.textForeground`,Fc,R(1576,`The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.typeParameterForeground`,Fc,R(1577,`The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.unitForeground`,Fc,R(1578,`The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),q(`symbolIcon.variableForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},R(1579,`The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`));var Rp=Object.freeze({kind:wd.Empty,title:R(902,`More Actions...`)}),zp=Object.freeze([{kind:lp.QuickFix,title:R(903,`Quick Fix`)},{kind:lp.RefactorExtract,title:R(904,`Extract`),icon:V.wrench},{kind:lp.RefactorInline,title:R(905,`Inline`),icon:V.wrench},{kind:lp.RefactorRewrite,title:R(906,`Rewrite`),icon:V.wrench},{kind:lp.RefactorMove,title:R(907,`Move`),icon:V.wrench},{kind:lp.SurroundWith,title:R(908,`Surround With`),icon:V.surroundWith},{kind:lp.Source,title:R(909,`Source Action`),icon:V.symbolFile},Rp]);function Bp(e,t,n){if(!t)return e.map(e=>({kind:`action`,item:e,group:Rp,disabled:!!e.action.disabled,label:e.action.disabled||e.action.title,canPreview:!!e.action.edit?.edits.length}));let r=zp.map(e=>({group:e,actions:[]}));for(let t of e){let e=t.action.kind?new wd(t.action.kind):wd.None;for(let n of r)if(n.group.kind.contains(e)){n.actions.push(t);break}}let i=[];for(let e of r)if(e.actions.length){i.push({kind:`header`,group:e.group});for(let t of e.actions){let r=e.group;i.push({kind:`action`,item:t,group:t.action.isAI?{title:r.title,kind:r.kind,icon:V.sparkle}:r,label:t.action.title,disabled:!!t.action.disabled,keybinding:n(t.action)})}}return i}var Vp=new b(`supportedCodeAction`,``),Hp=class extends C{constructor(e,t,n,r=250){super(),this._editor=e,this._markerService=t,this._signalChange=n,this._delay=r,this._autoTriggerTimer=this._register(new Zt),this.ignoreLightbulbOff=!1,this._register(this._markerService.onMarkerChanged(e=>this._onMarkerChanges(e))),this._register(this._editor.onDidChangeCursorPosition(()=>this._tryAutoTrigger()))}trigger(e){let t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);this._signalChange(t?{trigger:e,selection:t}:void 0)}_onMarkerChanges(e){let t=this._editor.getModel();t&&e.some(e=>es(e,t.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:up.Default})},this._delay)}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;let t=this._editor.getSelection();if(e.type===1)return t;let n=this._editor.getOption(73).enabled;if(n!==ri.Off||this.ignoreLightbulbOff){if(n===ri.Off||n===ri.On)return t;if(n===ri.OnCode){if(!t.isEmpty())return t;let e=this._editor.getModel(),{lineNumber:n,column:r}=t.getPosition(),i=e.getLineContent(n);if(i.length===0)return;if(r===1){if(/\s/.test(i[0]))return}else if(r===e.getLineMaxColumn(n)){if(/\s/.test(i[i.length-1]))return}else if(/\s/.test(i[r-2])&&/\s/.test(i[r-1]))return}return t}}},Up;(function(e){e.Empty={type:0};class t{constructor(e,t,n){this.trigger=e,this.position=t,this._cancellablePromise=n,this.type=1,this.actions=n.catch(e=>{if(yn(e))return Wp;throw e})}cancel(){this._cancellablePromise.cancel()}}e.Triggered=t})(Up||={});var Wp=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1,hasAIFix:!1,allAIFixes:!1}),Gp=class extends C{constructor(e,t,n,r,i,a){super(),this._editor=e,this._registry=t,this._markerService=n,this._progressService=i,this._configurationService=a,this._codeActionOracle=this._register(new vt),this._state=Up.Empty,this._onDidChangeState=this._register(new x),this.onDidChangeState=this._onDidChangeState.event,this.codeActionsDisposable=this._register(new vt),this._disposed=!1,this._ignoreLightbulbOff=!1,this._supportedCodeActions=Vp.bindTo(r),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(73)&&this._update()})),this._update()}dispose(){this._disposed||(this._disposed=!0,super.dispose(),this.setState(Up.Empty,!0))}_settingEnabledNearbyQuickfixes(){let e=this._editor?.getModel();return this._configurationService?this._configurationService.getValue(`editor.codeActionWidget.includeNearbyQuickFixes`,{resource:e?.uri}):!1}_update(){if(this._disposed)return;this._codeActionOracle.value=void 0,this.setState(Up.Empty);let e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(104)){let t=this._registry.all(e).flatMap(e=>e.providedCodeActionKinds??[]);this._supportedCodeActions.set(t.join(` `));let n=new Hp(this._editor,this._markerService,t=>{if(!t){this.setState(Up.Empty);return}let n=t.selection.getStartPosition(),r=Wi(async n=>{if(this._settingEnabledNearbyQuickfixes()&&t.trigger.type===1&&(t.trigger.triggerAction===up.QuickFix||t.trigger.filter?.include?.contains(lp.QuickFix))){let r=await Ep(this._registry,e,t.selection,t.trigger,Qe.None,n);this.codeActionsDisposable.value=r;let i=[...r.allActions];if(n.isCancellationRequested)return r.dispose(),Wp;let a=r.validActions?.some(e=>e.action.kind&&lp.QuickFix.contains(new wd(e.action.kind))&&!e.action.isAI),o=this._markerService.read({resource:e.uri});if(a){for(let e of r.validActions)e.action.command?.arguments?.some(e=>typeof e==`string`&&e.includes(`_typescript.applyFixAllCodeAction`))&&(e.action.diagnostics=[...o.filter(e=>e.relatedInformation)]);return{validActions:r.validActions,allActions:i,documentation:r.documentation,hasAutoFix:r.hasAutoFix,hasAIFix:r.hasAIFix,allAIFixes:r.allAIFixes,dispose:()=>{this.codeActionsDisposable.value=r}}}if(!a&&o.length>0){let a=t.selection.getPosition(),s=a,c=Number.MAX_VALUE,l=[...r.validActions];for(let u of o){let d=u.endColumn,f=u.endLineNumber,p=u.startLineNumber;if(f===a.lineNumber||p===a.lineNumber){s=new I(f,d);let u={type:t.trigger.type,triggerAction:t.trigger.triggerAction,filter:{include:t.trigger.filter?.include?t.trigger.filter?.include:lp.QuickFix},autoApply:t.trigger.autoApply,context:{notAvailableMessage:t.trigger.context?.notAvailableMessage||``,position:s}},p=new U(s.lineNumber,s.column,s.lineNumber,s.column),m=await Ep(this._registry,e,p,u,Qe.None,n);if(n.isCancellationRequested)return m.dispose(),Wp;if(m.validActions.length!==0){for(let e of m.validActions)e.action.command?.arguments?.some(e=>typeof e==`string`&&e.includes(`_typescript.applyFixAllCodeAction`))&&(e.action.diagnostics=[...o.filter(e=>e.relatedInformation)]);r.allActions.length===0&&i.push(...m.allActions),Math.abs(a.column-d)<c?l.unshift(...m.validActions):l.push(...m.validActions)}c=Math.abs(a.column-d)}}let u=l.filter((e,t,n)=>n.findIndex(t=>t.action.title===e.action.title)===t);return u.sort((e,t)=>e.action.isPreferred&&!t.action.isPreferred?-1:!e.action.isPreferred&&t.action.isPreferred||e.action.isAI&&!t.action.isAI?1:!e.action.isAI&&t.action.isAI?-1:0),{validActions:u,allActions:i,documentation:r.documentation,hasAutoFix:r.hasAutoFix,hasAIFix:r.hasAIFix,allAIFixes:r.allAIFixes,dispose:()=>{this.codeActionsDisposable.value=r}}}}if(t.trigger.type===1){let r=await Ep(this._registry,e,t.selection,t.trigger,Qe.None,n);return this.codeActionsDisposable.value=r,r}let r=await Ep(this._registry,e,t.selection,t.trigger,Qe.None,n);return this.codeActionsDisposable.value=r,r});t.trigger.type===1&&this._progressService?.showWhile(r,250);let i=new Up.Triggered(t.trigger,n,r),a=!1;this._state.type===1&&(a=this._state.trigger.type===1&&i.type===1&&i.trigger.type===2&&this._state.position!==i.position),a?setTimeout(()=>{this.setState(i)},500):this.setState(i)},void 0);n.ignoreLightbulbOff=this._ignoreLightbulbOff,this._codeActionOracle.value=n,this._codeActionOracle.value.trigger({type:2,triggerAction:up.Default})}else this._supportedCodeActions.reset()}trigger(e){this._codeActionOracle.value?.trigger(e),this.codeActionsDisposable.dispose()}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!this._disposed&&this._onDidChangeState.fire(e))}},Kp,qp=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Jp=function(e,t){return function(n,r){t(n,r,e)}},Yp,Xp=Mr(`gutter-lightbulb`,V.lightBulb,R(910,`Icon which spawns code actions menu from the gutter when there is no space in the editor.`)),Zp=Mr(`gutter-lightbulb-auto-fix`,V.lightbulbAutofix,R(911,`Icon which spawns code actions menu from the gutter when there is no space in the editor and a quick fix is available.`)),Qp=Mr(`gutter-lightbulb-sparkle`,V.lightbulbSparkle,R(912,`Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix is available.`)),$p=Mr(`gutter-lightbulb-aifix-auto-fix`,V.lightbulbSparkleAutofix,R(913,`Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available.`)),em=Mr(`gutter-lightbulb-sparkle-filled`,V.sparkleFilled,R(914,`Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available.`)),tm;(function(e){e.Hidden={type:0};class t{constructor(e,t,n,r){this.actions=e,this.trigger=t,this.editorPosition=n,this.widgetPosition=r,this.type=1}}e.Showing=t})(tm||={});function nm(e,t,n,r,i=!1){if(e.validActions.length<=0)return;let a,o=!1;e.allAIFixes?(a=i?em:V.sparkleFilled,e.validActions.length===1&&(o=!0)):a=e.hasAutoFix?e.hasAIFix?i?$p:V.lightbulbSparkleAutofix:i?Zp:V.lightbulbAutofix:e.hasAIFix?i?Qp:V.lightbulbSparkle:i?Xp:V.lightBulb;let s;return s=o?R(915,`Run: {0}`,e.validActions[0].action.title):e.hasAutoFix&&n?R(916,`Show Code Actions. Preferred Quick Fix Available ({0})`,n):!e.hasAutoFix&&r?R(917,`Show Code Actions ({0})`,r):R(918,`Show Code Actions`),{actions:e,trigger:t,icon:a,autoRun:o,title:s,isGutter:i}}var rm=(Kp=class extends C{static _computeLightBulbInfo(e,t,n,r){if(e.type===1)return nm(e.actions,e.trigger,n,r,t)}constructor(e,t){super(),this._editor=e,this._keybindingService=t,this.onlyWithEmptySelection=!1,this._onClick=this._register(new x),this.onClick=this._onClick.event,this._state=Bo(this,tm.Hidden),this._gutterState=Bo(this,tm.Hidden),this._combinedInfo=F(this,e=>{let t=this._gutterState.read(e);if(t.type===1)return Yp._computeLightBulbInfo(t,!0,this._preferredKbLabel.read(e),this._quickFixKbLabel.read(e));let n=this._state.read(e);if(n.type===1)return Yp._computeLightBulbInfo(n,!1,this._preferredKbLabel.read(e),this._quickFixKbLabel.read(e))}),this._iconClasses=[],this.lightbulbClasses=[`codicon-`+Xp.id,`codicon-`+$p.id,`codicon-`+Zp.id,`codicon-`+Qp.id,`codicon-`+em.id],this._preferredKbLabel=Bo(this,void 0),this._quickFixKbLabel=Bo(this,void 0),this.gutterDecoration=Yp.GUTTER_DECORATION,this._domNode=W(`div.lightBulbWidget`),this._domNode.role=`listbox`,this._register(se.ignoreTarget(this._domNode)),this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(e=>{let t=this._editor.getModel(),n=this._state.get();(n.type!==1||!t||n.editorPosition.lineNumber>=t.getLineCount())&&this.hide();let r=this._gutterState.get();(r.type!==1||!t||r.editorPosition.lineNumber>=t.getLineCount())&&this.gutterHide()})),this._register(is(this._domNode,e=>{let t=this._state.get();if(t.type!==1)return;this._editor.focus(),e.preventDefault();let{top:n,height:r}=li(this._domNode),i=this._editor.getOption(75),a=Math.floor(i/3);t.widgetPosition.position!==null&&t.widgetPosition.position.lineNumber<t.editorPosition.lineNumber&&(a+=i),this._onClick.fire({x:e.posx,y:n+r+a,actions:t.actions,trigger:t.trigger})})),this._register(z(this._domNode,`mouseenter`,e=>{(e.buttons&1)==1&&this.hide()})),this._register(Ut.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings,()=>{this._preferredKbLabel.set(this._keybindingService.lookupKeybinding(`editor.action.autoFix`)?.getLabel()??void 0,void 0),this._quickFixKbLabel.set(this._keybindingService.lookupKeybinding(`editor.action.quickFix`)?.getLabel()??void 0,void 0)})),this._register(N(e=>{let t=this._combinedInfo.read(e);this._updateLightBulbTitleAndIcon(t),this._updateGutterDecorationOptions(t)})),this._register(this._editor.onMouseDown(async e=>{if(!e.target.element||!this.lightbulbClasses.some(t=>e.target.element&&e.target.element.classList.contains(t)))return;let t=this._gutterState.get();if(t.type!==1)return;this._editor.focus();let{top:n,height:r}=li(e.target.element),i=this._editor.getOption(75),a=Math.floor(i/3);t.widgetPosition.position!==null&&t.widgetPosition.position.lineNumber<t.editorPosition.lineNumber&&(a+=i),this._onClick.fire({x:e.event.posx,y:n+r+a,actions:t.actions,trigger:t.trigger})}))}dispose(){super.dispose(),this._editor.removeContentWidget(this),this._gutterDecorationID&&this._removeGutterDecoration(this._gutterDecorationID)}getId(){return`LightBulbWidget`}getDomNode(){return this._domNode}getPosition(){let e=this._state.get();return e.type===1?e.widgetPosition:null}update(e,t,n){if(e.validActions.length<=0||this.onlyWithEmptySelection&&!this._editor.getSelection()?.isEmpty()||!this._editor.hasTextFocus()||this._editor.getOptions().get(73).enabled===ri.Off)return this.gutterHide(),this.hide();let r=this._editor.getModel();if(!r)return this.gutterHide(),this.hide();let{lineNumber:i,column:a}=r.validatePosition(n),o=r.getOptions().tabSize,s=this._editor.getOptions().get(59),c=r.getLineContent(i),l=mn(c,o),u=s.spaceWidth*l>22,d=e=>e>2&&this._editor.getTopForLineNumber(e)===this._editor.getTopForLineNumber(e-1),f=this._editor.getLineDecorations(i),p=!1;if(f)for(let e of f){let t=e.options.glyphMarginClassName;if(t&&!this.lightbulbClasses.some(e=>t.includes(e))){p=!0;break}}let m=i,h=1;if(!u){let o=e=>{let t=r.getLineContent(e);return/^\s*$|^\s+/.test(t)||t.length<=h};if(i>1&&!d(i-1)){let a=i===r.getLineCount(),s=i>1&&o(i-1),c=!a&&o(i+1),l=o(i),u=!c&&!s;if(!c&&!s&&!p)return this._gutterState.set(new tm.Showing(e,t,n,{position:{lineNumber:m,column:h},preference:Yp._posPref}),void 0),this.renderGutterLightbub(),this.hide();s||a||s&&!l?--m:(c||u&&l)&&(m+=1)}else if(i===1&&(i===r.getLineCount()||!o(i+1)&&!o(i))){if(this._gutterState.set(new tm.Showing(e,t,n,{position:{lineNumber:m,column:h},preference:Yp._posPref}),void 0),p)this.gutterHide();else return this.renderGutterLightbub(),this.hide()}else if(i<r.getLineCount()&&!d(i+1))m+=1;else if(a*s.spaceWidth<22)return this.hide();h=/^\S\s*$/.test(r.getLineContent(m))?2:1}this._state.set(new tm.Showing(e,t,n,{position:{lineNumber:m,column:h},preference:Yp._posPref}),void 0),this._gutterDecorationID&&(this._removeGutterDecoration(this._gutterDecorationID),this.gutterHide());let g=e.validActions,_=e.validActions[0].action.kind;if(g.length!==1||!_){this._editor.layoutContentWidget(this);return}this._editor.layoutContentWidget(this)}hide(){this._state.get()!==tm.Hidden&&(this._state.set(tm.Hidden,void 0),this._editor.layoutContentWidget(this))}gutterHide(){this._gutterState.get()!==tm.Hidden&&(this._gutterDecorationID&&this._removeGutterDecoration(this._gutterDecorationID),this._gutterState.set(tm.Hidden,void 0))}_updateLightBulbTitleAndIcon(e){this._domNode.classList.remove(...this._iconClasses),this._iconClasses=[],e&&!e.isGutter&&(this._domNode.title=e.title,this._iconClasses=A.asClassNameArray(e.icon),this._domNode.classList.add(...this._iconClasses))}_updateGutterDecorationOptions(e){e&&e.isGutter&&(this.gutterDecoration=P.register({description:`codicon-gutter-lightbulb-decoration`,glyphMarginClassName:A.asClassName(e.icon),glyphMargin:{position:pc.Left},stickiness:1}))}renderGutterLightbub(){let e=this._editor.getSelection();e&&(this._gutterDecorationID===void 0?this._addGutterDecoration(e.startLineNumber):this._updateGutterDecoration(this._gutterDecorationID,e.startLineNumber))}_addGutterDecoration(e){this._editor.changeDecorations(t=>{this._gutterDecorationID=t.addDecoration(new K(e,0,e,0),this.gutterDecoration)})}_removeGutterDecoration(e){this._editor.changeDecorations(t=>{t.removeDecoration(e),this._gutterDecorationID=void 0})}_updateGutterDecoration(e,t){this._editor.changeDecorations(n=>{n.changeDecoration(e,new K(t,0,t,0)),n.changeDecorationOptions(e,this.gutterDecoration)})}},Yp=Kp,Kp.GUTTER_DECORATION=P.register({description:`codicon-gutter-lightbulb-decoration`,glyphMarginClassName:A.asClassName(V.lightBulb),glyphMargin:{position:pc.Left},stickiness:1}),Kp.ID=`editor.contrib.lightbulbWidget`,Kp._posPref=[0],Kp);rm=Yp=qp([Jp(1,Fs)],rm);var im,am=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},om=function(e,t){return function(n,r){t(n,r,e)}},sm,cm=(im=class extends C{static get(e){return e.getContribution(sm.ID)}constructor(e,t,n,r,i,a,o,s,c,l,u,d){super(),this._commandService=o,this._configurationService=s,this._actionWidgetService=c,this._instantiationService=l,this._progressService=u,this._keybindingService=d,this._activeCodeActions=this._register(new vt),this._showDisabled=!1,this._disposed=!1,this._onlyLightBulbWithEmptySelection=!1,this._lightBulbInfoObs=Bo(this,void 0),this._preferredKbLabel=Bo(this,void 0),this._quickFixKbLabel=Bo(this,void 0),this._editor=e,this._model=this._register(new Gp(this._editor,i.codeActionProvider,t,n,a,s)),this._register(this._model.onDidChangeState(e=>this.update(e))),this._register(Ut.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings,()=>{this._preferredKbLabel.set(this._keybindingService.lookupKeybinding(`editor.action.autoFix`)?.getLabel()??void 0,void 0),this._quickFixKbLabel.set(this._keybindingService.lookupKeybinding(`editor.action.quickFix`)?.getLabel()??void 0,void 0)})),this._lightBulbWidget=new Ti(()=>{let e=this._editor.getContribution(rm.ID);return e&&(this._register(e.onClick(e=>this.showCodeActionsFromLightbulb(e.actions,e))),e.onlyWithEmptySelection=this._onlyLightBulbWithEmptySelection),e}),this._resolver=r.createInstance(Lp),this._register(this._editor.onDidLayoutChange(()=>this._actionWidgetService.hide()))}dispose(){this._disposed=!0,super.dispose()}async showCodeActionsFromLightbulb(e,t){if(e.allAIFixes&&e.validActions.length===1){let t=e.validActions[0],n=t.action.command;n&&n.id===`inlineChat.start`&&n.arguments&&n.arguments.length>=1&&n.arguments[0]&&(n.arguments[0]={...n.arguments[0],autoSend:!1}),await this.applyCodeAction(t,!1,!1,Ap.FromAILightbulb);return}await this.showCodeActionList(e,t,{includeDisabledActions:!1,fromLightbulb:!0})}showCodeActions(e,t,n){return this.showCodeActionList(t,n,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,t,n,r){if(!this._editor.hasModel())return;Fd.get(this._editor)?.closeMessage();let i=this._editor.getPosition();this._trigger({type:1,triggerAction:t,filter:n,autoApply:r,context:{notAvailableMessage:e,position:i}})}_trigger(e){return this._model.trigger(e)}async applyCodeAction(e,t,n,r){let i=this._progressService.show(!0,500);try{await this._instantiationService.invokeFunction(jp,e,r,{preview:n,editor:this._editor})}finally{t&&this._trigger({type:2,triggerAction:up.QuickFix,filter:{}}),i.done()}}hideLightBulbWidget(){this._lightBulbWidget.rawValue?.hide(),this._lightBulbWidget.rawValue?.gutterHide()}async update(e){if(e.type!==1){this.hideLightBulbWidget(),this._lightBulbInfoObs.set(void 0,void 0);return}let t;try{t=await e.actions}catch(e){Ir(e);return}if(!this._disposed&&this._editor.getSelection()?.startLineNumber===e.position.lineNumber){if(this._lightBulbWidget.value?.update(t,e.trigger,e.position),this._lightBulbInfoObs.set(nm(t,e.trigger,this._preferredKbLabel.get(),this._quickFixKbLabel.get()),void 0),e.trigger.type===1){if(e.trigger.filter?.include){let n=this.tryGetValidActionToApply(e.trigger,t);if(n){try{this.hideLightBulbWidget(),await this.applyCodeAction(n,!1,!1,Ap.FromCodeActions)}finally{t.dispose()}return}if(e.trigger.context){let n=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,t);if(n&&n.action.disabled){Fd.get(this._editor)?.showMessage(n.action.disabled,e.trigger.context.position),t.dispose();return}}}let n=!!e.trigger.filter?.include;if(e.trigger.context&&(!t.allActions.length||!n&&!t.validActions.length)){Fd.get(this._editor)?.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=t,t.dispose();return}this._activeCodeActions.value=t,this.showCodeActionList(t,this.toCoords(e.position),{includeDisabledActions:n,fromLightbulb:!1})}else this._actionWidgetService.isVisible?t.dispose():this._activeCodeActions.value=t}}getInvalidActionThatWouldHaveBeenApplied(e,t){if(t.allActions.length&&(e.autoApply===`first`&&t.validActions.length===0||e.autoApply===`ifSingle`&&t.allActions.length===1))return t.allActions.find(({action:e})=>e.disabled)}tryGetValidActionToApply(e,t){if(t.validActions.length&&(e.autoApply===`first`&&t.validActions.length>0||e.autoApply===`ifSingle`&&t.validActions.length===1))return t.validActions[0]}async showCodeActionList(e,t,n){let r=this._editor.createDecorationsCollection(),i=this._editor.getDomNode();if(!i)return;let a=n.includeDisabledActions&&(this._showDisabled||e.validActions.length===0)?e.allActions:e.validActions;if(!a.length)return;let o=I.isIPosition(t)?this.toCoords(t):t;this._actionWidgetService.show(`codeActionWidget`,!0,Bp(a,this._shouldShowHeaders(),this._resolver.getResolver()),{onSelect:async(e,t)=>{this.applyCodeAction(e,!0,!!t,n.fromLightbulb?Ap.FromAILightbulb:Ap.FromCodeActions),this._actionWidgetService.hide(!1),r.clear()},onHide:e=>{this._editor?.focus(),r.clear()},onHover:async(e,t)=>{if(t.isCancellationRequested)return;let n=!1,r=e.action.kind;if(r){let e=new wd(r);n=[lp.RefactorExtract,lp.RefactorInline,lp.RefactorRewrite,lp.RefactorMove,lp.Source].some(t=>t.contains(e))}return{canPreview:n||!!e.action.edit?.edits.length}},onFocus:e=>{if(e&&e.action){let t=e.action.ranges,n=e.action.diagnostics;if(r.clear(),t&&t.length>0){let e=n&&n?.length>1?n.map(e=>({range:e,options:sm.DECORATION})):t.map(e=>({range:e,options:sm.DECORATION}));r.set(e)}else if(n&&n.length>0){let e=n.map(e=>({range:e,options:sm.DECORATION}));r.set(e);let t=n[0];if(t.startLineNumber&&t.startColumn){let e=this._editor.getModel()?.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn})?.word;Yr(R(899,`Context: {0} at line {1} and column {2}.`,e,t.startLineNumber,t.startColumn))}}}else r.clear()}},o,i,this._getActionBarActions(e,t,n))}toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();let t=this._editor.getScrolledVisiblePosition(e),n=li(this._editor.getDomNode());return{x:n.left+t.left,y:n.top+t.top+t.height}}_shouldShowHeaders(){let e=this._editor?.getModel();return this._configurationService.getValue(`editor.codeActionWidget.showHeaders`,{resource:e?.uri})}_getActionBarActions(e,t,n){if(n.fromLightbulb)return[];let r=e.documentation.map(e=>({id:e.id,label:e.title,tooltip:e.tooltip??``,class:void 0,enabled:!0,run:()=>this._commandService.executeCommand(e.id,...e.arguments??[])}));return n.includeDisabledActions&&e.validActions.length>0&&e.allActions.length!==e.validActions.length&&r.push(this._showDisabled?{id:`hideMoreActions`,label:R(900,`Hide Disabled`),enabled:!0,tooltip:``,class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,t,n))}:{id:`showMoreActions`,label:R(901,`Show Disabled`),enabled:!0,tooltip:``,class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,t,n))}),r}},sm=im,im.ID=`editor.contrib.codeActionController`,im.DECORATION=P.register({description:`quickfix-highlight`,className:`quickfix-edit-highlight`}),im);cm=sm=am([om(1,or),om(2,X),om(3,L),om(4,Z),om(5,wu),om(6,gi),om(7,zt),om(8,Nf),om(9,L),om(10,wu),om(11,Fs)],cm),Il((e,t)=>{((e,n)=>{n&&t.addRule(`.monaco-editor ${e} { background-color: ${n}; }`)})(`.quickfix-edit-highlight`,e.getColor(Xe));let n=e.getColor(Re);n&&t.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${mt(e.type)?`dotted`:`solid`} ${n}; box-sizing: border-box; }`)});function lm(e){return D.regex(Vp.keys()[0],RegExp(`(\\s|^)`+_u(e.value)+`\\b`))}var um={type:`object`,defaultSnippets:[{body:{kind:``}}],properties:{kind:{type:`string`,description:R(867,`Kind of the code action to run.`)},apply:{type:`string`,description:R(868,`Controls when the returned actions are applied.`),default:`ifSingle`,enum:[`first`,`ifSingle`,`never`],enumDescriptions:[R(869,`Always apply the first returned code action.`),R(870,`Apply the first returned code action if it is the only one.`),R(871,`Do not apply the returned code actions.`)]},preferred:{type:`boolean`,default:!1,description:R(872,`Controls if only preferred code actions should be returned.`)}}};function dm(e,t,n,r,i=up.Default){e.hasModel()&&cm.get(e)?.manualTriggerAtCurrentPosition(t,i,n,r)}var fm=class extends dn{constructor(){super({id:_p,title:G(889,`Quick Fix...`),precondition:D.and(B.writable,B.hasCodeActionsProvider),icon:V.lightBulb,f1:!0,keybinding:{when:B.textInputFocus,primary:2137,weight:100},menu:{id:H.InlineChatEditorAffordance,group:`1_quickfix`,order:0,when:D.and(B.writable,B.hasCodeActionsProvider)}})}runEditorCommand(e,t){return dm(t,R(873,`No code actions available`),void 0,void 0,up.QuickFix)}},pm=class extends rl{constructor(){super({id:gp,precondition:D.and(B.writable,B.hasCodeActionsProvider),metadata:{description:`Trigger a code action`,args:[{name:`args`,schema:um}]}})}runEditorCommand(e,t,n){let r=mp.fromUser(n,{kind:wd.Empty,apply:`ifSingle`});return dm(t,typeof n?.kind==`string`?r.preferred?R(874,`No preferred code actions for '{0}' available`,n.kind):R(875,`No code actions for '{0}' available`,n.kind):r.preferred?R(876,`No preferred code actions available`):R(877,`No code actions available`),{include:r.kind,includeSourceActions:!0,onlyIncludePreferredActions:r.preferred},r.apply)}},mm=class extends S{constructor(){super({id:yp,label:G(890,`Refactor...`),precondition:D.and(B.writable,B.hasCodeActionsProvider),kbOpts:{kbExpr:B.textInputFocus,primary:3120,mac:{primary:1328},weight:100},contextMenuOpts:{group:`1_modification`,order:2,when:D.and(B.writable,lm(lp.Refactor))},metadata:{description:`Refactor...`,args:[{name:`args`,schema:um}]}})}run(e,t,n){let r=mp.fromUser(n,{kind:lp.Refactor,apply:`never`});return dm(t,typeof n?.kind==`string`?r.preferred?R(878,`No preferred refactorings for '{0}' available`,n.kind):R(879,`No refactorings for '{0}' available`,n.kind):r.preferred?R(880,`No preferred refactorings available`):R(881,`No refactorings available`),{include:lp.Refactor.contains(r.kind)?r.kind:wd.None,onlyIncludePreferredActions:r.preferred},r.apply,up.Refactor)}},hm=class extends S{constructor(){super({id:bp,label:G(891,`Source Action...`),precondition:D.and(B.writable,B.hasCodeActionsProvider),contextMenuOpts:{group:`1_modification`,order:2.1,when:D.and(B.writable,lm(lp.Source))},metadata:{description:`Source Action...`,args:[{name:`args`,schema:um}]}})}run(e,t,n){let r=mp.fromUser(n,{kind:lp.Source,apply:`never`});return dm(t,typeof n?.kind==`string`?r.preferred?R(882,`No preferred source actions for '{0}' available`,n.kind):R(883,`No source actions for '{0}' available`,n.kind):r.preferred?R(884,`No preferred source actions available`):R(885,`No source actions available`),{include:lp.Source.contains(r.kind)?r.kind:wd.None,includeSourceActions:!0,onlyIncludePreferredActions:r.preferred},r.apply,up.SourceAction)}},gm=class extends S{constructor(){super({id:xp,label:G(892,`Organize Imports`),precondition:D.and(B.writable,lm(lp.SourceOrganizeImports)),kbOpts:{kbExpr:B.textInputFocus,primary:1581,weight:100},metadata:{description:G(893,`Organize imports in the current file. Also called 'Optimize Imports' by some tools`)}})}run(e,t){return dm(t,R(886,`No organize imports action available`),{include:lp.SourceOrganizeImports,includeSourceActions:!0},`ifSingle`,up.OrganizeImports)}},_m=class extends S{constructor(){super({id:Sp,label:G(894,`Fix All`),precondition:D.and(B.writable,lm(lp.SourceFixAll))})}run(e,t){return dm(t,R(887,`No fix all action available`),{include:lp.SourceFixAll,includeSourceActions:!0},`ifSingle`,up.FixAll)}},vm=class extends S{constructor(){super({id:vp,label:G(895,`Auto Fix...`),precondition:D.and(B.writable,lm(lp.QuickFix)),kbOpts:{kbExpr:B.textInputFocus,primary:1625,mac:{primary:2649},weight:100}})}run(e,t){return dm(t,R(888,`No auto fixes available`),{include:lp.QuickFix,onlyIncludePreferredActions:!0},`ifSingle`,up.AutoFix)}};E(cm.ID,cm,3),E(rm.ID,rm,4),T(fm),j(mm),j(hm),j(gm),j(vm),j(_m),M(new pm),Ht.as(je.Configuration).registerConfiguration({...Pl,properties:{"editor.codeActionWidget.showHeaders":{type:`boolean`,scope:6,description:R(896,`Enable/disable showing group headers in the Code Action menu.`),default:!0}}}),Ht.as(je.Configuration).registerConfiguration({...Pl,properties:{"editor.codeActionWidget.includeNearbyQuickFixes":{type:`boolean`,scope:6,description:R(897,`Enable/disable showing nearest Quick Fix within a line when not currently on a diagnostic.`),default:!0}}}),Ht.as(je.Configuration).registerConfiguration({...Pl,properties:{"editor.codeActions.triggerOnFocusChange":{type:`boolean`,scope:6,markdownDescription:R(898,`Enable triggering {0} when {1} is set to {2}. Code Actions must be set to {3} to be triggered for window and focus changes.`,"`#editor.codeActionsOnSave#`","`#files.autoSave#`","`afterDelay`","`always`"),default:!1}}});var ym,bm=class{constructor(){this.lenses=[]}dispose(){this._store?.dispose()}get isDisposed(){return this._store?.isDisposed??!1}add(e,t){aa(e)&&(this._store??=new O,this._store.add(e));for(let n of e.lenses)this.lenses.push({symbol:n,provider:t})}};ym=bm,ym.Empty=new ym;async function xm(e,t,n){let r=e.ordered(t),i=new Map,a=new bm,o=r.map(async(e,r)=>{i.set(e,r);try{let r=await Promise.resolve(e.provideCodeLenses(t,n));r&&a.add(r,e)}catch(e){ed(e)}});return await Promise.all(o),n.isCancellationRequested?(a.dispose(),bm.Empty):(a.lenses=a.lenses.sort((e,t)=>e.symbol.range.startLineNumber<t.symbol.range.startLineNumber?-1:e.symbol.range.startLineNumber>t.symbol.range.startLineNumber?1:i.get(e.provider)<i.get(t.provider)?-1:i.get(e.provider)>i.get(t.provider)?1:e.symbol.range.startColumn<t.symbol.range.startColumn?-1:+(e.symbol.range.startColumn>t.symbol.range.startColumn)),a)}Mt.registerCommand(`_executeCodeLensProvider`,function(e,...t){let[n,r]=t;Za(sc.isUri(n)),Za(typeof r==`number`||!r);let{codeLensProvider:i}=e.get(Z),a=e.get(Cr).getModel(n);if(!a)throw rt();let o=[],s=new O;return xm(i,a,J.None).then(e=>{s.add(e);let t=[];for(let n of e.lenses)r==null||n.symbol.command?o.push(n.symbol):r-->0&&n.provider.resolveCodeLens&&t.push(Promise.resolve(n.provider.resolveCodeLens(a,n.symbol,J.None)).then(e=>o.push(e||n.symbol)));return Promise.all(t)}).then(()=>o).finally(()=>{setTimeout(()=>s.dispose(),100)})});var Sm=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Cm=function(e,t){return function(n,r){t(n,r,e)}},wm=Ic(`ICodeLensCache`),Tm=class{constructor(e,t){this.lineCount=e,this.data=t}},Em=class{constructor(e){this._fakeProvider=new class{provideCodeLenses(){throw Error(`not supported`)}},this._cache=new Te(20,.75),fa(pi,()=>e.remove(`codelens/cache`,1));let t=`codelens/cache2`,n=e.get(t,1,`{}`);this._deserialize(n);let r=Ut.filter(e.onWillSaveState,e=>e.reason===Hl.SHUTDOWN);Ut.once(r)(n=>{e.store(t,this._serialize(),1,1)})}put(e,t){let n=t.lenses.map(e=>({range:e.symbol.range,command:e.symbol.command&&{id:``,title:e.symbol.command?.title}})),r=new bm;r.add({lenses:n},this._fakeProvider);let i=new Tm(e.getLineCount(),r);this._cache.set(e.uri.toString(),i)}get(e){let t=this._cache.get(e.uri.toString());return t&&t.lineCount===e.getLineCount()?t.data:void 0}delete(e){this._cache.delete(e.uri.toString())}_serialize(){let e=Object.create(null);for(let[t,n]of this._cache){let r=new Set;for(let e of n.data.lenses)r.add(e.symbol.range.startLineNumber);e[t]={lineCount:n.lineCount,lines:[...r.values()]}}return JSON.stringify(e)}_deserialize(e){try{let t=JSON.parse(e);for(let e in t){let n=t[e],r=[];for(let e of n.lines)r.push({range:new K(e,1,e,11)});let i=new bm;i.add({lenses:r},this._fakeProvider),this._cache.set(e,new Tm(n.lineCount,i))}}catch{}}};Em=Sm([Cm(0,c)],Em),Rn(wm,Em,1);var Dm,Om=class{constructor(e,t,n){this.afterColumn=1073741824,this.afterLineNumber=e,this.heightInPx=t,this._onHeight=n,this.suppressMouseDown=!0,this.domNode=document.createElement(`div`)}onComputedHeight(e){this._lastHeight===void 0?this._lastHeight=e:this._lastHeight!==e&&(this._lastHeight=e,this._onHeight())}isVisible(){return this._lastHeight!==0&&this.domNode.hasAttribute(`monaco-visible-view-zone`)}},km=class e{constructor(t,n){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=t,this._id=`codelens.widget-${e._idPool++}`,this.updatePosition(n),this._domNode=document.createElement(`span`),this._domNode.className=`codelens-decoration`}withCommands(t,n){this._commands.clear();let r=[],i=!1;for(let n=0;n<t.length;n++){let a=t[n];if(a&&(i=!0,a.command)){let i=Jr(a.command.title.trim());if(a.command.id){let t=`c${e._idPool++}`;r.push(W(`a`,{id:t,title:a.command.tooltip,role:`button`},...i)),this._commands.set(t,a.command)}else r.push(W(`span`,{title:a.command.tooltip},...i));n+1<t.length&&r.push(W(`span`,void 0,`\xA0|\xA0`))}}i?(fl(this._domNode,...r),this._isEmpty&&n&&this._domNode.classList.add(`fadein`),this._isEmpty=!1):fl(this._domNode,W(`span`,void 0,`no commands`))}getCommand(e){return e.parentElement===this._domNode?this._commands.get(e.id):void 0}getId(){return this._id}getDomNode(){return this._domNode}updatePosition(e){let t=this._editor.getModel().getLineFirstNonWhitespaceColumn(e);this._widgetPosition={position:{lineNumber:e,column:t},preference:[1]}}getPosition(){return this._widgetPosition||null}};Dm=km,Dm._idPool=0;var Am=class{constructor(){this._removeDecorations=[],this._addDecorations=[],this._addDecorationsCallbacks=[]}addDecoration(e,t){this._addDecorations.push(e),this._addDecorationsCallbacks.push(t)}removeDecoration(e){this._removeDecorations.push(e)}commit(e){let t=e.deltaDecorations(this._removeDecorations,this._addDecorations);for(let e=0,n=t.length;e<n;e++)this._addDecorationsCallbacks[e](t[e])}},jm=P.register({collapseOnReplaceEdit:!0,description:`codelens`}),Mm=class{constructor(e,t,n,r,i,a){this._isDisposed=!1,this._editor=t,this._data=e,this._decorationIds=[];let o,s=[];this._data.forEach((e,t)=>{e.symbol.command&&s.push(e.symbol),n.addDecoration({range:e.symbol.range,options:jm},e=>this._decorationIds[t]=e),o=o?K.plusRange(o,e.symbol.range):K.lift(e.symbol.range)}),this._viewZone=new Om(o.startLineNumber-1,i,a),this._viewZoneId=r.addZone(this._viewZone),s.length>0&&(this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(s,!1))}_createContentWidgetIfNecessary(){this._contentWidget?this._editor.layoutContentWidget(this._contentWidget):(this._contentWidget=new km(this._editor,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget))}dispose(e,t){this._decorationIds.forEach(e.removeDecoration,e),this._decorationIds=[],t?.removeZone(this._viewZoneId),this._contentWidget&&=(this._editor.removeContentWidget(this._contentWidget),void 0),this._isDisposed=!0}isDisposed(){return this._isDisposed}isValid(){return this._decorationIds.some((e,t)=>{let n=this._editor.getModel().getDecorationRange(e),r=this._data[t].symbol;return!!(n&&K.isEmpty(r.range)===n.isEmpty())})}updateCodeLensSymbols(e,t){this._decorationIds.forEach(t.removeDecoration,t),this._decorationIds=[],this._data=e,this._data.forEach((e,n)=>{t.addDecoration({range:e.symbol.range,options:jm},e=>this._decorationIds[n]=e)})}updateHeight(e,t){this._viewZone.heightInPx=e,t.layoutZone(this._viewZoneId),this._contentWidget&&this._editor.layoutContentWidget(this._contentWidget)}computeIfNecessary(e){if(!this._viewZone.isVisible())return null;for(let t=0;t<this._decorationIds.length;t++){let n=e.getDecorationRange(this._decorationIds[t]);n&&(this._data[t].symbol.range=n)}return this._data}updateCommands(e){this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(e,!0);for(let t=0;t<this._data.length;t++){let n=e[t];if(n){let{symbol:e}=this._data[t];e.command=n.command||e.command}}}getCommand(e){return this._contentWidget?.getCommand(e)}getLineNumber(){let e=this._editor.getModel().getDecorationRange(this._decorationIds[0]);return e?e.startLineNumber:-1}update(e){if(this.isValid()){let t=this._editor.getModel().getDecorationRange(this._decorationIds[0]);t&&(this._viewZone.afterLineNumber=t.startLineNumber-1,e.layoutZone(this._viewZoneId),this._contentWidget&&(this._contentWidget.updatePosition(t.startLineNumber),this._editor.layoutContentWidget(this._contentWidget)))}}},Nm,Pm=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Fm=function(e,t){return function(n,r){t(n,r,e)}},Im=(Nm=class{constructor(e,t,n,r,i,a){this._editor=e,this._languageFeaturesService=t,this._commandService=r,this._notificationService=i,this._codeLensCache=a,this._disposables=new O,this._localToDispose=new O,this._lenses=[],this._oldCodeLensModels=new O,this._provideCodeLensDebounce=n.for(t.codeLensProvider,`CodeLensProvide`,{min:250}),this._resolveCodeLensesDebounce=n.for(t.codeLensProvider,`CodeLensResolve`,{min:250,salt:`resolve`}),this._resolveCodeLensesScheduler=new fn(()=>this._resolveCodeLensesInViewport(),this._resolveCodeLensesDebounce.default()),this._disposables.add(this._editor.onDidChangeModel(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeConfiguration(e=>{(e.hasChanged(59)||e.hasChanged(25)||e.hasChanged(24))&&this._updateLensStyle(),e.hasChanged(23)&&this._onModelChange()})),this._disposables.add(t.codeLensProvider.onDidChange(this._onModelChange,this)),this._onModelChange(),this._updateLensStyle()}dispose(){this._localDispose(),this._localToDispose.dispose(),this._disposables.dispose(),this._resolveCodeLensesScheduler.dispose(),this._oldCodeLensModels.dispose(),this._currentCodeLensModel?.dispose()}_getLayoutInfo(){let e=Math.max(1.3,this._editor.getOption(75)/this._editor.getOption(61)),t=this._editor.getOption(25);return(!t||t<5)&&(t=this._editor.getOption(61)*.9|0),{fontSize:t,codeLensHeight:t*e|0}}_updateLensStyle(){let{codeLensHeight:e,fontSize:t}=this._getLayoutInfo(),n=this._editor.getOption(24),r=this._editor.getOption(59),{style:i}=this._editor.getContainerDomNode();i.setProperty(`--vscode-editorCodeLens-lineHeight`,`${e}px`),i.setProperty(`--vscode-editorCodeLens-fontSize`,`${t}px`),i.setProperty(`--vscode-editorCodeLens-fontFeatureSettings`,r.fontFeatureSettings),n&&(i.setProperty(`--vscode-editorCodeLens-fontFamily`,n),i.setProperty(`--vscode-editorCodeLens-fontFamilyDefault`,Mn.fontFamily)),this._editor.changeViewZones(t=>{for(let n of this._lenses)n.updateHeight(e,t)})}_localDispose(){this._getCodeLensModelPromise?.cancel(),this._getCodeLensModelPromise=void 0,this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0,this._localToDispose.clear(),this._oldCodeLensModels.clear(),this._currentCodeLensModel?.dispose()}_onModelChange(){this._localDispose();let e=this._editor.getModel();if(!e||!this._editor.getOption(23)||e.isTooLargeForTokenization())return;let t=this._codeLensCache.get(e);if(t&&this._renderCodeLensSymbols(t),!this._languageFeaturesService.codeLensProvider.has(e)){t&&ma(()=>{let n=this._codeLensCache.get(e);t===n&&(this._codeLensCache.delete(e),this._onModelChange())},3e4,this._localToDispose);return}for(let t of this._languageFeaturesService.codeLensProvider.all(e))if(typeof t.onDidChange==`function`){let e=t.onDidChange(()=>n.schedule());this._localToDispose.add(e)}let n=new fn(()=>{let t=Date.now();this._getCodeLensModelPromise?.cancel(),this._getCodeLensModelPromise=Wi(t=>xm(this._languageFeaturesService.codeLensProvider,e,t)),this._getCodeLensModelPromise.then(r=>{this._currentCodeLensModel&&this._oldCodeLensModels.add(this._currentCodeLensModel),this._currentCodeLensModel=r,this._codeLensCache.put(e,r);let i=this._provideCodeLensDebounce.update(e,Date.now()-t);n.delay=i,this._renderCodeLensSymbols(r),this._resolveCodeLensesInViewportSoon()},Ir)},this._provideCodeLensDebounce.get(e));this._localToDispose.add(n),this._localToDispose.add(qi(()=>this._resolveCodeLensesScheduler.cancel())),this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._editor.changeDecorations(e=>{this._editor.changeViewZones(t=>{let n=[],r=-1;this._lenses.forEach(e=>{!e.isValid()||r===e.getLineNumber()?n.push(e):(e.update(t),r=e.getLineNumber())});let i=new Am;n.forEach(e=>{e.dispose(i,t),this._lenses.splice(this._lenses.indexOf(e),1)}),i.commit(e)})}),n.schedule(),this._resolveCodeLensesScheduler.cancel(),this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0})),this._localToDispose.add(this._editor.onDidFocusEditorText(()=>{n.schedule()})),this._localToDispose.add(this._editor.onDidBlurEditorText(()=>{n.cancel()})),this._localToDispose.add(this._editor.onDidScrollChange(e=>{e.scrollTopChanged&&this._lenses.length>0&&this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(this._editor.onDidLayoutChange(()=>{this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(qi(()=>{if(this._editor.getModel()){let e=Vs.capture(this._editor);this._editor.changeDecorations(e=>{this._editor.changeViewZones(t=>{this._disposeAllLenses(e,t)})}),e.restore(this._editor)}else this._disposeAllLenses(void 0,void 0)})),this._localToDispose.add(this._editor.onMouseDown(e=>{if(e.target.type!==9)return;let t=e.target.element;if(t?.tagName===`SPAN`&&(t=t.parentElement),t?.tagName===`A`)for(let e of this._lenses){let n=e.getCommand(t);if(n){this._commandService.executeCommand(n.id,...n.arguments||[]).catch(e=>this._notificationService.error(e));break}}})),n.schedule()}_disposeAllLenses(e,t){let n=new Am;for(let e of this._lenses)e.dispose(n,t);e&&n.commit(e),this._lenses.length=0}_renderCodeLensSymbols(e){if(!this._editor.hasModel())return;let t=this._editor.getModel().getLineCount(),n=[],r;for(let i of e.lenses){let e=i.symbol.range.startLineNumber;e<1||e>t||(r&&r[r.length-1].symbol.range.startLineNumber===e?r.push(i):(r=[i],n.push(r)))}if(!n.length&&!this._lenses.length)return;let i=Vs.capture(this._editor),a=this._getLayoutInfo();this._editor.changeDecorations(e=>{this._editor.changeViewZones(t=>{let r=new Am,i=0,o=0;for(;o<n.length&&i<this._lenses.length;){let e=n[o][0].symbol.range.startLineNumber,s=this._lenses[i].getLineNumber();s<e?(this._lenses[i].dispose(r,t),this._lenses.splice(i,1)):s===e?(this._lenses[i].updateCodeLensSymbols(n[o],r),o++,i++):(this._lenses.splice(i,0,new Mm(n[o],this._editor,r,t,a.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),i++,o++)}for(;i<this._lenses.length;)this._lenses[i].dispose(r,t),this._lenses.splice(i,1);for(;o<n.length;)this._lenses.push(new Mm(n[o],this._editor,r,t,a.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),o++;r.commit(e)})}),i.restore(this._editor)}_resolveCodeLensesInViewportSoon(){this._editor.getModel()&&this._resolveCodeLensesScheduler.schedule()}_resolveCodeLensesInViewport(){this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0;let e=this._editor.getModel();if(!e)return;let t=[],n=[];if(this._lenses.forEach(r=>{let i=r.computeIfNecessary(e);i&&(t.push(i),n.push(r))}),t.length===0){this._oldCodeLensModels.clear();return}let r=Date.now(),i=Wi(r=>{let i=t.map((t,i)=>{let a=Array(t.length),o=t.map((t,n)=>!t.symbol.command&&typeof t.provider.resolveCodeLens==`function`?Promise.resolve(t.provider.resolveCodeLens(e,t.symbol,r)).then(e=>{a[n]=e},ed):(a[n]=t.symbol,Promise.resolve(void 0)));return Promise.all(o).then(()=>{!r.isCancellationRequested&&!n[i].isDisposed()&&n[i].updateCommands(a)})});return Promise.all(i)});this._resolveCodeLensesPromise=i,this._resolveCodeLensesPromise.then(()=>{let t=this._resolveCodeLensesDebounce.update(e,Date.now()-r);this._resolveCodeLensesScheduler.delay=t,this._currentCodeLensModel&&this._codeLensCache.put(e,this._currentCodeLensModel),this._oldCodeLensModels.clear(),i===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)},e=>{Ir(e),i===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)})}async getModel(){return await this._getCodeLensModelPromise,await this._resolveCodeLensesPromise,this._currentCodeLensModel?.isDisposed?void 0:this._currentCodeLensModel}},Nm.ID=`css.editor.codeLens`,Nm);Im=Pm([Fm(1,Z),Fm(2,sl),Fm(3,gi),Fm(4,bn),Fm(5,wm)],Im),E(Im.ID,Im,1),j(class extends S{constructor(){super({id:`codelens.showLensesInCurrentLine`,precondition:B.hasCodeLensProvider,label:G(920,`Show CodeLens Commands for Current Line`)})}async run(e,t){if(!t.hasModel())return;let n=e.get(Pc),r=e.get(gi),i=e.get(bn),a=t.getSelection().positionLineNumber,o=t.getContribution(Im.ID);if(!o)return;let s=await o.getModel();if(!s)return;let c=[];for(let e of s.lenses)e.symbol.command&&e.symbol.range.startLineNumber===a&&c.push({label:e.symbol.command.title,command:e.symbol.command});if(c.length===0)return;let l=await n.pick(c,{canPickMany:!1,placeHolder:R(919,`Select a command`)});if(!l)return;let u=l.command;if(s.isDisposed){let e=(await o.getModel())?.lenses.find(e=>e.symbol.range.startLineNumber===a&&e.symbol.command?.title===u.title);if(!e||!e.symbol.command)return;u=e.symbol.command}try{await r.executeCommand(u.id,...u.arguments||[])}catch(e){i.error(e)}}});var Lm=class{constructor(e,t,n,r){this.priority=e,this.range=t,this.initialMousePosX=n,this.initialMousePosY=r,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,t){return e.type===1&&t.lineNumber===this.range.startLineNumber}},Rm=class{constructor(e,t,n,r,i,a){this.priority=e,this.owner=t,this.range=n,this.initialMousePosX=r,this.initialMousePosY=i,this.supportsMarkerHover=a,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,t){return e.type===2&&this.owner===e.owner}},zm=class{constructor(e,t){this.renderedHoverParts=e,this.disposables=t}dispose(){for(let e of this.renderedHoverParts)e.dispose();this.disposables?.dispose()}},Bm=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}},Vm=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Hm=function(e,t){return function(n,r){t(n,r,e)}},Um=class{constructor(e){this._editorWorkerService=e}async provideDocumentColors(e,t){return this._editorWorkerService.computeDefaultDocumentColors(e.uri)}provideColorPresentations(e,t,n){let r=t.range,i=t.color,a=new w(new Hi(Math.round(255*i.red),Math.round(255*i.green),Math.round(255*i.blue),i.alpha)),o=w.Format.CSS.formatRGB(a),s=w.Format.CSS.formatHSL(a),c=w.Format.CSS.formatHexA(a,!0),l=[];return l.push({label:o,textEdit:{range:r,text:o}}),l.push({label:s,textEdit:{range:r,text:s}}),l.push({label:c,textEdit:{range:r,text:c}}),l}};Um=Vm([Hm(0,Yu)],Um);var Wm=class extends C{constructor(e,t){super(),this._register(e.colorProvider.register(`*`,new Um(t)))}};Wm=Vm([Hm(0,Z),Hm(1,Yu)],Wm);async function Gm(e,t,n,r=`auto`){return Xm(new qm,e,t,n,r)}function Km(e,t,n,r){return Promise.resolve(n.provideColorPresentations(e,t,r))}var qm=class{constructor(){}async compute(e,t,n,r){let i=await e.provideDocumentColors(t,n);if(Array.isArray(i))for(let t of i)r.push({colorInfo:t,provider:e});return Array.isArray(i)}},Jm=class{constructor(){}async compute(e,t,n,r){let i=await e.provideDocumentColors(t,n);if(Array.isArray(i))for(let e of i)r.push({range:e.range,color:[e.color.red,e.color.green,e.color.blue,e.color.alpha]});return Array.isArray(i)}},Ym=class{constructor(e){this.colorInfo=e}async compute(e,t,n,r){let i=await e.provideColorPresentations(t,this.colorInfo,J.None);return Array.isArray(i)&&r.push(...i),Array.isArray(i)}};async function Xm(e,t,n,r,i){let a=!1,o,s=[],c=t.ordered(n);for(let t=c.length-1;t>=0;t--){let l=c[t];if(i!==`always`&&l instanceof Um)o=l;else try{await e.compute(l,n,r,s)&&(a=!0)}catch(e){ed(e)}}return a?s:o&&i!==`never`?(await e.compute(o,n,r,s),s):[]}function Zm(e,t){let{colorProvider:n}=e.get(Z),r=e.get(Cr).getModel(t);if(!r)throw rt();return{model:r,colorProviderRegistry:n,defaultColorDecoratorsEnablement:e.get(zt).getValue(`editor.defaultColorDecorators`,{resource:t})}}var Qm,$m=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},eh=function(e,t){return function(n,r){t(n,r,e)}},th,nh=Object.create({}),rh=(Qm=class extends C{constructor(e,t,n,r){super(),this._editor=e,this._configurationService=t,this._languageFeaturesService=n,this._localToDispose=this._register(new O),this._decorationsIds=[],this._colorDatas=new Map,this._decoratorLimitReporter=this._register(new ih),this._colorDecorationClassRefs=this._register(new O),this._colorDecoratorIds=this._editor.createDecorationsCollection(),this._ruleFactory=this._register(new un(this._editor)),this._debounceInformation=r.for(n.colorProvider,`Document Colors`,{min:th.RECOMPUTE_TIME}),this._register(e.onDidChangeModel(()=>{this._isColorDecoratorsEnabled=this.isEnabled(),this.updateColors()})),this._register(e.onDidChangeModelLanguage(()=>this.updateColors())),this._register(n.colorProvider.onDidChange(()=>this.updateColors())),this._register(e.onDidChangeConfiguration(e=>{let t=this._isColorDecoratorsEnabled;this._isColorDecoratorsEnabled=this.isEnabled(),this._defaultColorDecoratorsEnablement=this._editor.getOption(167);let n=t!==this._isColorDecoratorsEnabled||e.hasChanged(27),r=e.hasChanged(167);(n||r)&&(this._isColorDecoratorsEnabled?this.updateColors():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isColorDecoratorsEnabled=this.isEnabled(),this._defaultColorDecoratorsEnablement=this._editor.getOption(167),this.updateColors()}isEnabled(){let e=this._editor.getModel();if(!e)return!1;let t=e.getLanguageId(),n=this._configurationService.getValue(t);if(n&&typeof n==`object`){let e=n.colorDecorators;if(e&&e.enable!==void 0&&!e.enable)return e.enable}return this._editor.getOption(26)}static get(e){return e.getContribution(this.ID)}dispose(){this.stop(),this.removeAllDecorations(),super.dispose()}updateColors(){if(this.stop(),!this._isColorDecoratorsEnabled)return;let e=this._editor.getModel();e&&this._languageFeaturesService.colorProvider.has(e)&&(this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new Zt,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},this._debounceInformation.get(e)))})),this.beginCompute())}async beginCompute(){this._computePromise=Wi(async e=>{let t=this._editor.getModel();if(!t)return[];let n=new fe(!1),r=await Gm(this._languageFeaturesService.colorProvider,t,e,this._defaultColorDecoratorsEnablement);return this._debounceInformation.update(t,n.elapsed()),r});try{let e=await this._computePromise;this.updateDecorations(e),this.updateColorDecorators(e),this._computePromise=null}catch(e){Ir(e)}}stop(){this._timeoutTimer&&=(this._timeoutTimer.cancel(),null),this._computePromise&&=(this._computePromise.cancel(),null),this._localToDispose.clear()}updateDecorations(e){let t=e.map(e=>({range:{startLineNumber:e.colorInfo.range.startLineNumber,startColumn:e.colorInfo.range.startColumn,endLineNumber:e.colorInfo.range.endLineNumber,endColumn:e.colorInfo.range.endColumn},options:P.EMPTY}));this._editor.changeDecorations(n=>{this._decorationsIds=n.deltaDecorations(this._decorationsIds,t),this._colorDatas=new Map,this._decorationsIds.forEach((t,n)=>this._colorDatas.set(t,e[n]))})}updateColorDecorators(e){this._colorDecorationClassRefs.clear();let t=[],n=this._editor.getOption(27);for(let r=0;r<e.length&&t.length<n;r++){let{red:n,green:i,blue:a,alpha:o}=e[r].colorInfo.color,s=new Hi(Math.round(n*255),Math.round(i*255),Math.round(a*255),o),c=`rgba(${s.r}, ${s.g}, ${s.b}, ${s.a})`,l=this._colorDecorationClassRefs.add(this._ruleFactory.createClassNameRef({backgroundColor:c}));t.push({range:{startLineNumber:e[r].colorInfo.range.startLineNumber,startColumn:e[r].colorInfo.range.startColumn,endLineNumber:e[r].colorInfo.range.endLineNumber,endColumn:e[r].colorInfo.range.endColumn},options:{description:`colorDetector`,before:{content:`\xA0`,inlineClassName:`${l.className} colorpicker-color-decoration`,inlineClassNameAffectsLetterSpacing:!0,attachedData:nh}}})}let r=n<e.length&&n;this._decoratorLimitReporter.update(e.length,r),this._colorDecoratorIds.set(t)}removeAllDecorations(){this._editor.removeDecorations(this._decorationsIds),this._decorationsIds=[],this._colorDecoratorIds.clear(),this._colorDecorationClassRefs.clear()}getColorData(e){let t=this._editor.getModel();if(!t)return null;let n=t.getDecorationsInRange(K.fromPositions(e,e)).filter(e=>this._colorDatas.has(e.id));return n.length===0?null:this._colorDatas.get(n[0].id)}isColorDecoration(e){return this._colorDecoratorIds.has(e)}},th=Qm,Qm.ID=`editor.contrib.colorDetector`,Qm.RECOMPUTE_TIME=1e3,Qm);rh=th=$m([eh(1,zt),eh(2,Z),eh(3,sl)],rh);var ih=class extends C{constructor(){super(...arguments),this._onDidChange=this._register(new x),this._computed=0,this._limited=!1}update(e,t){(e!==this._computed||t!==this._limited)&&(this._computed=e,this._limited=t,this._onDidChange.fire())}},ah=`editor.action.showHover`,oh=`editor.action.showDefinitionPreviewHover`,sh=`editor.action.hideHover`,ch=`editor.action.scrollUpHover`,lh=`editor.action.scrollDownHover`,uh=`editor.action.scrollLeftHover`,dh=`editor.action.scrollRightHover`,fh=`editor.action.pageUpHover`,ph=`editor.action.pageDownHover`,mh=`editor.action.goToTopHover`,hh=`editor.action.goToBottomHover`,gh=`editor.action.increaseHoverVerbosityLevel`,_h=R(1145,`Increase Hover Verbosity Level`),vh=`editor.action.decreaseHoverVerbosityLevel`,yh=R(1146,`Decrease Hover Verbosity Level`),bh=`editor.action.hideLongLineWarningHover`,xh=`editor.action.inlineSuggest.commit`,Sh=`editor.action.inlineSuggest.commitAlternativeAction`,Ch=`editor.action.inlineSuggest.showPrevious`,wh=`editor.action.inlineSuggest.showNext`,Th=`editor.action.inlineSuggest.jump`,Eh=`editor.action.inlineSuggest.hide`,Dh=`editor.action.inlineSuggest.toggleShowCollapsed`,Oh=`editor.action.inlineSuggest.renameSymbol`,kh,Ah=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},jh=function(e,t){return function(n,r){t(n,r,e)}},Mh,Nh=class extends C{constructor(e,t,n){super(),this.editor=e,this.model=t,this.instantiationService=n,this.alwaysShowToolbar=rc(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(71).showToolbar===`always`),this.sessionPosition=void 0,this.position=F(this,e=>{let t=this.model.read(e)?.primaryGhostText.read(e);if(!this.alwaysShowToolbar.read(e)||!t||t.parts.length===0)return this.sessionPosition=void 0,null;let n=t.parts[0].column;this.sessionPosition&&this.sessionPosition.lineNumber!==t.lineNumber&&(this.sessionPosition=void 0);let r=new I(t.lineNumber,Math.min(n,this.sessionPosition?.column??2**53-1));return this.sessionPosition=r,r}),this._register(Bu((t,n)=>{let r=this.model.read(t);if(!r||!this.alwaysShowToolbar.read(t))return;let i=F(t=>{let n=t.store.add(this.instantiationService.createInstance(Ih.hot.read(t),this.editor,!0,this.position,r.selectedInlineCompletionIndex,r.inlineCompletionsCount,r.activeCommands,r.warning,()=>{}));return e.addContentWidget(n),t.store.add(qi(()=>e.removeContentWidget(n))),t.store.add(N(e=>{this.position.read(e)&&r.lastTriggerKind.read(e)!==xt.Explicit&&r.triggerExplicitly()})),n}),a=bs(this,(e,t)=>!!this.position.read(e)||!!t);n.add(N(e=>{a.read(e)&&i.read(e)}))}))}};Nh=Ah([jh(2,L)],Nh);var Ph=Mr(`inline-suggestion-hints-next`,V.chevronRight,R(1250,`Icon for show next parameter hint.`)),Fh=Mr(`inline-suggestion-hints-previous`,V.chevronLeft,R(1251,`Icon for show previous parameter hint.`)),Ih=(kh=class extends C{static get dropDownVisible(){return this._dropDownVisible}createCommandAction(e,t,n){let r=new _t(e,t,n,!0,()=>this._commandService.executeCommand(e));return r.tooltip=this.keybindingService.appendKeybinding(t,e,this._contextKeyService),r}constructor(e,t,n,r,i,a,o,s,c,l,u,d,f){super(),this.editor=e,this.withBorder=t,this._position=n,this._currentSuggestionIdx=r,this._suggestionCount=i,this._extraCommands=a,this._warning=o,this._relayout=s,this._commandService=c,this.keybindingService=u,this._contextKeyService=d,this._menuService=f,this.id=`InlineSuggestionHintsContentWidget${Mh.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._warningMessageContentNode=F(e=>{let t=this._warning.read(e);if(t)return typeof t.message==`string`?t.message:e.store.add(ro(t.message)).element}),this._warningMessageNode=k.div({class:`warningMessage`,style:{maxWidth:400,margin:4,marginBottom:4,display:F(e=>this._warning.read(e)?`block`:`none`)}},[this._warningMessageContentNode]).keepUpdated(this._store),this.nodes=In(`div.inlineSuggestionsHints`,{className:this.withBorder?`monaco-hover monaco-hover-content`:``},[this._warningMessageNode.element,In(`div@toolBar`)]),this.previousAction=this._register(this.createCommandAction(Ch,R(1252,`Previous`),A.asClassName(Fh))),this.availableSuggestionCountAction=this._register(new _t(`inlineSuggestionHints.availableSuggestionCount`,``,void 0,!1)),this.nextAction=this._register(this.createCommandAction(wh,R(1253,`Next`),A.asClassName(Ph))),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu(H.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new fn(()=>{this.availableSuggestionCountAction.label=``},100)),this.disableButtonsDebounced=this._register(new fn(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this._register(N(e=>{this._warningMessageContentNode.read(e),this._warningMessageNode.readEffect(e),this._relayout()})),this.toolBar=this._register(l.createInstance(zh,this.nodes.toolBar,H.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:e=>e.startsWith(`primary`)},actionViewItemProvider:(e,t)=>{if(e instanceof te)return l.createInstance(Rh,e,void 0);if(e===this.availableSuggestionCountAction){let t=new Lh(void 0,e,{label:!0,icon:!1});return t.setClass(`availableSuggestionCount`),t}},telemetrySource:`InlineSuggestionToolbar`})),this.toolBar.setPrependedPrimaryActions([this.previousAction,this.availableSuggestionCountAction,this.nextAction]),this._register(this.toolBar.onDidChangeDropdownVisibility(e=>{Mh._dropDownVisible=e})),this._register(N(e=>{this._position.read(e),this.editor.layoutContentWidget(this)})),this._register(N(e=>{let t=this._suggestionCount.read(e),n=this._currentSuggestionIdx.read(e);t===void 0?this.clearAvailableSuggestionCountLabelDebounced.schedule():(this.clearAvailableSuggestionCountLabelDebounced.cancel(),this.availableSuggestionCountAction.label=`${n+1}/${t}`),t!==void 0&&t>1?(this.disableButtonsDebounced.cancel(),this.previousAction.enabled=this.nextAction.enabled=!0):this.disableButtonsDebounced.schedule()})),this._register(N(e=>{let t=this._extraCommands.read(e).map(e=>({class:void 0,id:e.command.id,enabled:!0,tooltip:e.command.tooltip||``,label:e.command.title,run:()=>this._commandService.executeCommand(e.command.id,...e.command.arguments??[])}));for(let[e,n]of this.inlineCompletionsActionsMenus.getActions())for(let e of n)e instanceof te&&t.push(e);t.length>0&&t.unshift(new en),this.toolBar.setAdditionalSecondaryActions(t)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}},Mh=kh,kh.hot=En(kh),kh._dropDownVisible=!1,kh.id=0,kh);Ih=Mh=Ah([jh(8,gi),jh(9,L),jh(10,Fs),jh(11,X),jh(12,er)],Ih);var Lh=class extends ii{constructor(){super(...arguments),this._className=void 0}setClass(e){this._className=e}render(e){super.render(e),this._className&&e.classList.add(this._className)}updateTooltip(){}},Rh=class extends xl{updateLabel(){let e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService,!0);if(!e)return super.updateLabel();if(this.label){let t=In(`div.keybinding`).root;this._register(new oe(t,s,{disableTitle:!0,...Si})).set(e),this.label.textContent=this._action.label,this.label.appendChild(t),this.label.classList.add(`inlineSuggestionStatusBarItemLabel`)}}updateTooltip(){}},zh=class extends Ea{constructor(e,t,n,r,i,a,o,s,c){super(e,{resetMenu:t,...n},r,i,a,o,s,c),this.menuId=t,this.options2=n,this.menuService=r,this.contextKeyService=i,this.menu=this._store.add(this.menuService.createMenu(this.menuId,this.contextKeyService,{emitEventsForSubmenuChanges:!0})),this.additionalActions=[],this.prependedPrimaryActions=[],this.additionalPrimaryActions=[],this._store.add(this.menu.onDidChange(()=>this.updateToolbar())),this.updateToolbar()}updateToolbar(){let{primary:e,secondary:t}=Wc(this.menu.getActions(this.options2?.menuOptions),this.options2?.toolbarOptions?.primaryGroup,this.options2?.toolbarOptions?.shouldInlineSubmenu,this.options2?.toolbarOptions?.useSeparatorsInPrimaryActions);t.push(...this.additionalActions),e.unshift(...this.prependedPrimaryActions),e.push(...this.additionalPrimaryActions),this.setActions(e,t)}setPrependedPrimaryActions(e){ra(this.prependedPrimaryActions,e,(e,t)=>e===t)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){ra(this.additionalActions,e,(e,t)=>e===t)||(this.additionalActions=e,this.updateToolbar())}};zh=Ah([jh(3,er),jh(4,X),jh(5,la),jh(6,Fs),jh(7,gi),jh(8,Ye)],zh);function Bh(e,t,n){let r=li(e);return!(t<r.left+3||t>r.left+r.width-3||n<r.top+3||n>r.top+r.height-3)}function Vh(e,t,n){return e===`on`||e!==`off`&&Hh(t,n.event)}function Hh(e,t){return e===`altKey`?t.ctrlKey||t.metaKey:t.altKey}var Uh=class{constructor(e,t,n,r){this.value=e,this.isComplete=t,this.hasLoadingMessage=n,this.options=r}},Wh=class extends C{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new x),this.onResult=this._onResult.event,this._asyncComputationScheduler=this._register(new Gh(e=>this._triggerAsyncComputation(e),0)),this._syncComputationScheduler=this._register(new Gh(e=>this._triggerSyncComputation(e),0)),this._loadingMessageScheduler=this._register(new Gh(e=>this._triggerLoadingMessage(e),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&=(this._asyncIterable.cancel(),null),this._options=void 0,super.dispose()}get _hoverTime(){return this._editor.getOption(69).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,t){this._options=t,this._state=e,this._fireResult(t)}_triggerAsyncComputation(e){this._setState(2,e),this._syncComputationScheduler.schedule(e,this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=na(t=>this._computer.computeAsync(e,t)),(async()=>{try{for await(let t of this._asyncIterable)t&&(this._result.push(t),this._fireResult(e));this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0,e)}catch(e){Ir(e)}})()):this._asyncIterableDone=!0}_triggerSyncComputation(e){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync(e))),this._setState(this._asyncIterableDone?0:3,e)}_triggerLoadingMessage(e){this._state===3&&this._setState(4,e)}_fireResult(e){if(this._state===1||this._state===2)return;let t=this._state===0,n=this._state===4;this._onResult.fire(new Uh(this._result.slice(0),t,n,e))}start(e,t){if(e===0)this._state===0&&(this._setState(1,t),this._asyncComputationScheduler.schedule(t,this._firstWaitTime),this._loadingMessageScheduler.schedule(t,this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(t),this._syncComputationScheduler.cancel(),this._triggerSyncComputation(t);break;case 2:this._syncComputationScheduler.cancel(),this._triggerSyncComputation(t)}}cancel(){this._asyncComputationScheduler.cancel(),this._syncComputationScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&=(this._asyncIterable.cancel(),null),this._result=[],this._options=void 0,this._state=0}get options(){return this._options}},Gh=class extends C{constructor(e,t){super(),this._scheduler=this._register(new fn(()=>e(this._options),t))}schedule(e,t){this._options=e,this._scheduler.schedule(t)}cancel(){this._scheduler.cancel()}},Kh=class{get onDidWillResize(){return this._onDidWillResize.event}get onDidResize(){return this._onDidResize.event}constructor(){this._onDidWillResize=new x,this._onDidResize=new x,this._sashListener=new O,this._size=new Fl(0,0),this._minSize=new Fl(0,0),this._maxSize=new Fl(2**53-1,2**53-1),this.domNode=document.createElement(`div`),this._eastSash=new wa(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new wa(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new wa(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:$i.North}),this._southSash=new wa(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:$i.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,t=0,n=0;this._sashListener.add(Ut.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,t=0,n=0)})),this._sashListener.add(Ut.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,t=0,n=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(r=>{e&&(n=r.currentX-r.startX,this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(r=>{e&&(n=-(r.currentX-r.startX),this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(r=>{e&&(t=-(r.currentY-r.startY),this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(r=>{e&&(t=r.currentY-r.startY,this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(Ut.any(this._eastSash.onDidReset,this._westSash.onDidReset)(e=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(Ut.any(this._northSash.onDidReset,this._southSash.onDidReset)(e=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,t,n,r){this._northSash.state=e?3:0,this._eastSash.state=t?3:0,this._southSash.state=n?3:0,this._westSash.state=r?3:0}layout(e=this.size.height,t=this.size.width){let{height:n,width:r}=this._minSize,{height:i,width:a}=this._maxSize;e=Math.max(n,Math.min(i,e)),t=Math.max(r,Math.min(a,t));let o=new Fl(t,e);Fl.equals(o,this._size)||(this.domNode.style.height=e+`px`,this.domNode.style.width=t+`px`,this._size=o,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}},qh=30,Jh=24,Yh=class extends C{constructor(e,t=new Fl(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new Kh),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position=`absolute`,this._resizableNode.minSize=Fl.lift(t),this._resizableNode.layout(t.height,t.width),this._resizableNode.enableSashes(!0,!0,!0,!0),this._register(this._resizableNode.onDidResize(e=>{this._resize(new Fl(e.dimension.width,e.dimension.height)),e.done&&(this._isResizing=!1)})),this._register(this._resizableNode.onDidWillResize(()=>{this._isResizing=!0}))}get isResizing(){return this._isResizing}getDomNode(){return this._resizableNode.domNode}getPosition(){return this._contentPosition}get position(){return this._contentPosition?.position?I.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){let t=this._editor.getDomNode(),n=this._editor.getScrolledVisiblePosition(e);if(t&&n)return li(t).top+n.top-qh}_availableVerticalSpaceBelow(e){let t=this._editor.getDomNode(),n=this._editor.getScrolledVisiblePosition(e);if(!t||!n)return;let r=li(t),i=ke(t.ownerDocument.body),a=r.top+n.top+n.height;return i.height-a-Jh}_findPositionPreference(e,t){let n=Math.min(this._availableVerticalSpaceBelow(t)??1/0,e),r=Math.min(this._availableVerticalSpaceAbove(t)??1/0,e),i=Math.min(e,Math.min(Math.max(r,n),e)),a;return a=this._editor.getOption(69).above?i<=r?1:2:i<=n?2:1,a===1?this._resizableNode.enableSashes(!0,!0,!1,!1):this._resizableNode.enableSashes(!1,!0,!0,!1),a}_resize(e){this._resizableNode.layout(e.height,e.width)}},Xh,Zh=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Qh=function(e,t){return function(n,r){t(n,r,e)}},$h,eg=30,tg=(Xh=class extends Yh{get isVisibleFromKeyboard(){return this._renderedHover?.source===2}get isVisible(){return this._hoverVisibleKey.get()??!1}get isFocused(){return this._hoverFocusedKey.get()??!1}constructor(e,t,n,r,i){let a=e.getOption(75)+8,o=new Fl(150,a);super(e,o),this._configurationService=n,this._accessibilityService=r,this._keybindingService=i,this._hover=this._register(new _n(!0)),this._onDidResize=this._register(new x),this.onDidResize=this._onDidResize.event,this._onDidScroll=this._register(new x),this.onDidScroll=this._onDidScroll.event,this._onContentsChanged=this._register(new x),this.onContentsChanged=this._onContentsChanged.event,this._minimumSize=o,this._hoverVisibleKey=B.hoverVisible.bindTo(t),this._hoverFocusedKey=B.hoverFocused.bindTo(t),Y(this._resizableNode.domNode,this._hover.containerDomNode),this._resizableNode.domNode.style.zIndex=`50`,this._resizableNode.domNode.className=`monaco-resizable-hover`,this._register(this._editor.onDidLayoutChange(()=>{this.isVisible&&this._updateMaxDimensions()})),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(59)&&this._updateFont()}));let s=this._register(Eo(this._resizableNode.domNode));this._register(s.onDidFocus(()=>{this._hoverFocusedKey.set(!0)})),this._register(s.onDidBlur(()=>{this._hoverFocusedKey.set(!1)})),this._register(this._hover.scrollbar.onScroll(e=>{this._onDidScroll.fire(e)})),this._setRenderedHover(void 0),this._editor.addContentWidget(this)}dispose(){super.dispose(),this._renderedHover?.dispose(),this._editor.removeContentWidget(this)}getId(){return $h.ID}static _applyDimensions(e,t,n){let r=typeof t==`number`?`${t}px`:t,i=typeof n==`number`?`${n}px`:n;e.style.width=r,e.style.height=i}_setContentsDomNodeDimensions(e,t){let n=this._hover.contentsDomNode;return $h._applyDimensions(n,e,t)}_setContainerDomNodeDimensions(e,t){let n=this._hover.containerDomNode;return $h._applyDimensions(n,e,t)}_setScrollableElementDimensions(e,t){let n=this._hover.scrollbar.getDomNode();return $h._applyDimensions(n,e,t)}_setHoverWidgetDimensions(e,t){this._setContainerDomNodeDimensions(e,t),this._setScrollableElementDimensions(e,t),this._setContentsDomNodeDimensions(e,t),this._layoutContentWidget()}static _applyMaxDimensions(e,t,n){let r=typeof t==`number`?`${t}px`:t,i=typeof n==`number`?`${n}px`:n;e.style.maxWidth=r,e.style.maxHeight=i}_setHoverWidgetMaxDimensions(e,t){$h._applyMaxDimensions(this._hover.contentsDomNode,e,t),$h._applyMaxDimensions(this._hover.scrollbar.getDomNode(),e,t),$h._applyMaxDimensions(this._hover.containerDomNode,e,t),this._hover.containerDomNode.style.setProperty(`--vscode-hover-maxWidth`,typeof e==`number`?`${e}px`:e),this._layoutContentWidget()}_setAdjustedHoverWidgetDimensions(e){this._setHoverWidgetMaxDimensions(`none`,`none`),this._setHoverWidgetDimensions(e.width,e.height)}_updateResizableNodeMaxDimensions(){let e=this._findMaximumRenderingWidth()??1/0,t=this._findMaximumRenderingHeight()??1/0;this._resizableNode.maxSize=new Fl(e,t),this._setHoverWidgetMaxDimensions(e,t)}_resize(e){$h._lastDimensions=new Fl(e.width,e.height),this._setAdjustedHoverWidgetDimensions(e),this._resizableNode.layout(e.height,e.width),this._updateResizableNodeMaxDimensions(),this._hover.scrollbar.scanDomNode(),this._editor.layoutContentWidget(this),this._onDidResize.fire()}_findAvailableSpaceVertically(){let e=this._renderedHover?.showAtPosition;if(e)return this._positionPreference===1?this._availableVerticalSpaceAbove(e):this._availableVerticalSpaceBelow(e)}_findMaximumRenderingHeight(){let e=this._findAvailableSpaceVertically();if(!e)return;let t=this._hover.contentsDomNode.children.length-1;return Array.from(this._hover.contentsDomNode.children).forEach(e=>{t+=e.clientHeight}),Math.min(e,t)}_isHoverTextOverflowing(){this._hover.containerDomNode.style.setProperty(`--vscode-hover-whiteSpace`,`nowrap`),this._hover.containerDomNode.style.setProperty(`--vscode-hover-sourceWhiteSpace`,`nowrap`);let e=Array.from(this._hover.contentsDomNode.children).some(e=>e.scrollWidth>e.clientWidth);return this._hover.containerDomNode.style.removeProperty(`--vscode-hover-whiteSpace`),this._hover.containerDomNode.style.removeProperty(`--vscode-hover-sourceWhiteSpace`),e}_findMaximumRenderingWidth(){if(!this._editor||!this._editor.hasModel())return;let e=this._isHoverTextOverflowing(),t=this._contentWidth===void 0?0:this._contentWidth;return e||this._hover.containerDomNode.clientWidth<t?ke(this._hover.containerDomNode.ownerDocument.body).width-14:this._hover.containerDomNode.clientWidth}isMouseGettingCloser(e,t){if(!this._renderedHover)return!1;if(this._renderedHover.initialMousePosX===void 0||this._renderedHover.initialMousePosY===void 0)return this._renderedHover.initialMousePosX=e,this._renderedHover.initialMousePosY=t,!1;let n=li(this.getDomNode());this._renderedHover.closestMouseDistance===void 0&&(this._renderedHover.closestMouseDistance=ng(this._renderedHover.initialMousePosX,this._renderedHover.initialMousePosY,n.left,n.top,n.width,n.height));let r=ng(e,t,n.left,n.top,n.width,n.height);return r>this._renderedHover.closestMouseDistance+4?!1:(this._renderedHover.closestMouseDistance=Math.min(this._renderedHover.closestMouseDistance,r),!0)}_setRenderedHover(e){this._renderedHover?.dispose(),this._renderedHover=e,this._hoverVisibleKey.set(!!e),this._hover.containerDomNode.classList.toggle(`hidden`,!e)}_updateFont(){let{fontSize:e,lineHeight:t}=this._editor.getOption(59),n=this._hover.contentsDomNode;n.style.fontSize=`${e}px`,n.style.lineHeight=`${t/e}`,Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName(`code`)).forEach(e=>this._editor.applyFontInfo(e))}_updateContent(e){let t=this._hover.contentsDomNode;t.style.paddingBottom=``,t.textContent=``,t.appendChild(e)}_layoutContentWidget(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}_updateMaxDimensions(){let e=Math.max(this._editor.getLayoutInfo().height/4,250,$h._lastDimensions.height),t=Math.max(this._editor.getLayoutInfo().width*.66,750,$h._lastDimensions.width);this._resizableNode.maxSize=new Fl(t,e),this._setHoverWidgetMaxDimensions(t,e)}_render(e){this._setRenderedHover(e),this._updateFont(),this._updateContent(e.domNode),this.handleContentsChanged(),this._editor.render()}getPosition(){return this._renderedHover?{position:this._renderedHover.showAtPosition,secondaryPosition:this._renderedHover.showAtSecondaryPosition,positionAffinity:this._renderedHover.shouldAppearBeforeContent?3:void 0,preference:[this._positionPreference??1]}:null}show(e){if(!this._editor||!this._editor.hasModel())return;this._render(e);let t=$s(this._hover.containerDomNode),n=e.showAtPosition;this._positionPreference=this._findPositionPreference(t,n)??1,this.handleContentsChanged(),e.shouldFocus&&this._hover.containerDomNode.focus(),this._onDidResize.fire();let r=this._hover.containerDomNode.ownerDocument.activeElement===this._hover.containerDomNode&&on(this._configurationService.getValue(`accessibility.verbosity.hover`)===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding(`editor.action.accessibleView`)?.getAriaLabel()??``);r&&(this._hover.contentsDomNode.ariaLabel=this._hover.contentsDomNode.textContent+`, `+r)}hide(){if(!this._renderedHover)return;let e=this._renderedHover.shouldFocus||this._hoverFocusedKey.get();this._setRenderedHover(void 0),this._resizableNode.maxSize=new Fl(1/0,1/0),this._resizableNode.clearSashHoverState(),this._hoverFocusedKey.set(!1),this._editor.layoutContentWidget(this),e&&this._editor.focus()}_removeConstraintsRenderNormally(){let e=this._editor.getLayoutInfo();this._resizableNode.layout(e.height,e.width),this._setHoverWidgetDimensions(`auto`,`auto`),this._updateMaxDimensions()}setMinimumDimensions(e){this._minimumSize=new Fl(Math.max(this._minimumSize.width,e.width),Math.max(this._minimumSize.height,e.height)),this._updateMinimumWidth()}_updateMinimumWidth(){let e=this._contentWidth===void 0?this._minimumSize.width:Math.min(this._contentWidth,this._minimumSize.width);this._resizableNode.minSize=new Fl(e,this._minimumSize.height)}handleContentsChanged(){this._removeConstraintsRenderNormally();let e=this._hover.contentsDomNode,t=$s(e),n=ae(e)+2;if(this._resizableNode.layout(t,n),this._setHoverWidgetDimensions(n,t),t=$s(e),n=ae(e),this._contentWidth=n,this._updateMinimumWidth(),this._resizableNode.layout(t,n),this._renderedHover?.showAtPosition){let e=$s(this._hover.containerDomNode);this._positionPreference=this._findPositionPreference(e,this._renderedHover.showAtPosition)}this._layoutContentWidget(),this._onContentsChanged.fire()}focus(){this._hover.containerDomNode.focus()}scrollUp(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(59);this._hover.scrollbar.setScrollPosition({scrollTop:e-t.lineHeight})}scrollDown(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(59);this._hover.scrollbar.setScrollPosition({scrollTop:e+t.lineHeight})}scrollLeft(){let e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e-eg})}scrollRight(){let e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+eg})}pageUp(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e-t})}pageDown(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e+t})}goToTop(){this._hover.scrollbar.setScrollPosition({scrollTop:0})}goToBottom(){this._hover.scrollbar.setScrollPosition({scrollTop:this._hover.scrollbar.getScrollDimensions().scrollHeight})}},$h=Xh,Xh.ID=`editor.contrib.resizableContentHoverWidget`,Xh._lastDimensions=new Fl(0,0),Xh);tg=$h=Zh([Qh(1,X),Qh(2,zt),Qh(3,gs),Qh(4,Fs)],tg);function ng(e,t,n,r,i,a){let o=n+i/2,s=r+a/2,c=Math.max(Math.abs(e-o)-i/2,0),l=Math.max(Math.abs(t-s)-a/2,0);return Math.sqrt(c*c+l*l)}var rg=class e{constructor(e,t){this._editor=e,this._participants=t}static _getLineDecorations(e,t){if(t.type!==1&&!t.supportsMarkerHover)return[];let n=e.getModel(),r=t.range.startLineNumber;if(r>n.getLineCount())return[];let i=n.getLineMaxColumn(r);return e.getLineDecorations(r).filter(e=>{if(e.options.isWholeLine)return!0;let n=e.range.startLineNumber===r?e.range.startColumn:1,a=e.range.endLineNumber===r?e.range.endColumn:i;if(e.options.showIfCollapsed){if(n>t.range.startColumn+1||t.range.endColumn-1>a)return!1}else if(n>t.range.startColumn||t.range.endColumn>a)return!1;return!0})}computeAsync(t,n){let r=t.anchor;if(!this._editor.hasModel()||!r)return wi.EMPTY;let i=e._getLineDecorations(this._editor,r);return wi.merge(this._participants.map(e=>e.computeAsync?e.computeAsync(r,i,t.source,n):wi.EMPTY))}computeSync(t){if(!this._editor.hasModel())return[];let n=t.anchor,r=e._getLineDecorations(this._editor,n),i=[];for(let e of this._participants)i=i.concat(e.computeSync(n,r,t.source));return ht(i)}},ig=class{constructor(e,t,n){this.hoverParts=e,this.isComplete=t,this.options=n}filter(e){let t=this.hoverParts.filter(t=>t.isValidForHoverAnchor(e));return t.length===this.hoverParts.length?this:new ag(this,t,this.isComplete,this.options)}},ag=class extends ig{constructor(e,t,n,r){super(t,n,r),this.original=e}filter(e){return this.original.filter(e)}},og=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sg=function(e,t){return function(n,r){t(n,r,e)}},cg=W,lg=class extends C{get hasContent(){return this._hasContent}constructor(e,t){super(),this._keybindingService=e,this._hoverService=t,this.actions=[],this._hasContent=!1,this.hoverElement=cg(`div.hover-row.status-bar`),this.hoverElement.tabIndex=0,this.actionsElement=Y(this.hoverElement,cg(`div.actions`))}addAction(e){let t=this._keybindingService.lookupKeybinding(e.commandId),n=t?t.getLabel():null;this._hasContent=!0;let r=this._register(St.render(this.actionsElement,e,n));return this._register(this._hoverService.setupManagedHover(Ls(`element`),r.actionContainer,r.actionRenderedLabel)),this.actions.push(r),r}append(e){let t=Y(this.actionsElement,e);return this._hasContent=!0,t}};lg=og([sg(0,Fs),sg(1,Sa)],lg);var ug,dg=class e{constructor(e){this._editor=e,this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null,this._startPosition=this._editor.getPosition()}dispose(){this._editor.removeDecorations(this._allDecorations()),this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}reset(){this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}getCount(){return this._decorations.length}getFindScope(){return this._findScopeDecorationIds[0]?this._editor.getModel().getDecorationRange(this._findScopeDecorationIds[0]):null}getFindScopes(){if(this._findScopeDecorationIds.length){let e=this._findScopeDecorationIds.map(e=>this._editor.getModel().getDecorationRange(e)).filter(e=>!!e);if(e.length)return e}return null}getStartPosition(){return this._startPosition}setStartPosition(e){this._startPosition=e,this.setCurrentFindMatch(null)}_getDecorationIndex(e){let t=this._decorations.indexOf(e);return t>=0?t+1:1}getDecorationRangeAt(e){let t=e<this._decorations.length?this._decorations[e]:null;return t?this._editor.getModel().getDecorationRange(t):null}getCurrentMatchesPosition(t){let n=this._editor.getModel().getDecorationsInRange(t);for(let t of n){let n=t.options;if(n===e._FIND_MATCH_DECORATION||n===e._FIND_MATCH_NO_OVERVIEW_DECORATION||n===e._CURRENT_FIND_MATCH_DECORATION)return this._getDecorationIndex(t.id)}return 0}setCurrentFindMatch(t){let n=null,r=0;if(t)for(let e=0,i=this._decorations.length;e<i;e++){let i=this._editor.getModel().getDecorationRange(this._decorations[e]);if(t.equalsRange(i)){n=this._decorations[e],r=e+1;break}}return(this._highlightedDecorationId!==null||n!==null)&&this._editor.changeDecorations(t=>{if(this._highlightedDecorationId!==null&&(t.changeDecorationOptions(this._highlightedDecorationId,e._FIND_MATCH_DECORATION),this._highlightedDecorationId=null),n!==null&&(this._highlightedDecorationId=n,t.changeDecorationOptions(this._highlightedDecorationId,e._CURRENT_FIND_MATCH_DECORATION)),this._rangeHighlightDecorationId!==null&&(t.removeDecoration(this._rangeHighlightDecorationId),this._rangeHighlightDecorationId=null),n!==null){let r=this._editor.getModel().getDecorationRange(n);if(r.startLineNumber!==r.endLineNumber&&r.endColumn===1){let e=r.endLineNumber-1,t=this._editor.getModel().getLineMaxColumn(e);r=new K(r.startLineNumber,r.startColumn,e,t)}this._rangeHighlightDecorationId=t.addDecoration(r,e._RANGE_HIGHLIGHT_DECORATION)}}),r}set(t,n){this._editor.changeDecorations(r=>{let i=e._FIND_MATCH_DECORATION,a=[];if(t.length>1e3){i=e._FIND_MATCH_NO_OVERVIEW_DECORATION;let n=this._editor.getModel().getLineCount(),r=this._editor.getLayoutInfo().height/n,o=Math.max(2,Math.ceil(3/r)),s=t[0].range.startLineNumber,c=t[0].range.endLineNumber;for(let n=1,r=t.length;n<r;n++){let r=t[n].range;c+o>=r.startLineNumber?r.endLineNumber>c&&(c=r.endLineNumber):(a.push({range:new K(s,1,c,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION}),s=r.startLineNumber,c=r.endLineNumber)}a.push({range:new K(s,1,c,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION})}let o=Array(t.length);for(let e=0,n=t.length;e<n;e++)o[e]={range:t[e].range,options:i};this._decorations=r.deltaDecorations(this._decorations,o),this._overviewRulerApproximateDecorations=r.deltaDecorations(this._overviewRulerApproximateDecorations,a),this._rangeHighlightDecorationId&&=(r.removeDecoration(this._rangeHighlightDecorationId),null),this._findScopeDecorationIds.length&&(this._findScopeDecorationIds.forEach(e=>r.removeDecoration(e)),this._findScopeDecorationIds=[]),n?.length&&(this._findScopeDecorationIds=n.map(t=>r.addDecoration(t,e._FIND_SCOPE_DECORATION)))})}matchBeforePosition(e){if(this._decorations.length===0)return null;for(let t=this._decorations.length-1;t>=0;t--){let n=this._decorations[t],r=this._editor.getModel().getDecorationRange(n);if(!(!r||r.endLineNumber>e.lineNumber)&&(r.endLineNumber<e.lineNumber||!(r.endColumn>e.column)))return r}return this._editor.getModel().getDecorationRange(this._decorations[this._decorations.length-1])}matchAfterPosition(e){if(this._decorations.length===0)return null;for(let t=0,n=this._decorations.length;t<n;t++){let n=this._decorations[t],r=this._editor.getModel().getDecorationRange(n);if(!(!r||r.startLineNumber<e.lineNumber)&&(r.startLineNumber>e.lineNumber||!(r.startColumn<e.column)))return r}return this._editor.getModel().getDecorationRange(this._decorations[0])}_allDecorations(){let e=[];return e=e.concat(this._decorations),e=e.concat(this._overviewRulerApproximateDecorations),this._findScopeDecorationIds.length&&e.push(...this._findScopeDecorationIds),this._rangeHighlightDecorationId&&e.push(this._rangeHighlightDecorationId),e}};ug=dg,ug._CURRENT_FIND_MATCH_DECORATION=P.register({description:`current-find-match`,stickiness:1,zIndex:13,className:`currentFindMatch`,inlineClassName:`currentFindMatchInline`,showIfCollapsed:!0,overviewRuler:{color:Cc(rn),position:Xo.Center},minimap:{color:Cc(yc),position:1}}),ug._FIND_MATCH_DECORATION=P.register({description:`find-match`,stickiness:1,zIndex:10,className:`findMatch`,inlineClassName:`findMatchInline`,showIfCollapsed:!0,overviewRuler:{color:Cc(rn),position:Xo.Center},minimap:{color:Cc(yc),position:1}}),ug._FIND_MATCH_NO_OVERVIEW_DECORATION=P.register({description:`find-match-no-overview`,stickiness:1,className:`findMatch`,showIfCollapsed:!0}),ug._FIND_MATCH_ONLY_OVERVIEW_DECORATION=P.register({description:`find-match-only-overview`,stickiness:1,overviewRuler:{color:Cc(rn),position:Xo.Center}}),ug._RANGE_HIGHLIGHT_DECORATION=P.register({description:`find-range-highlight`,stickiness:1,className:`rangeHighlight`,isWholeLine:!0}),ug._FIND_SCOPE_DECORATION=P.register({description:`find-scope`,className:`findScope`,isWholeLine:!0});var fg=class{constructor(e,t,n){this._editorSelection=e,this._ranges=t,this._replaceStrings=n,this._trackedEditorSelectionId=null}getEditOperations(e,t){if(this._ranges.length>0){let e=[];for(let t=0;t<this._ranges.length;t++)e.push({range:this._ranges[t],text:this._replaceStrings[t]});e.sort((e,t)=>K.compareRangesUsingStarts(e.range,t.range));let n=[],r=e[0];for(let t=1;t<e.length;t++)r.range.endLineNumber===e[t].range.startLineNumber&&r.range.endColumn===e[t].range.startColumn?(r.range=r.range.plusRange(e[t].range),r.text+=e[t].text):(n.push(r),r=e[t]);n.push(r);for(let e of n)t.addEditOperation(e.range,e.text)}this._trackedEditorSelectionId=t.trackSelection(this._editorSelection)}computeCursorState(e,t){return t.getTrackedSelection(this._trackedEditorSelectionId)}};function pg(e,t){if(e&&e[0]!==``){let n=mg(e,t,`-`),r=mg(e,t,`_`);return n&&!r?hg(e,t,`-`):!n&&r?hg(e,t,`_`):e[0].toUpperCase()===e[0]?t.toUpperCase():e[0].toLowerCase()===e[0]?t.toLowerCase():Xa(e[0][0])&&t.length>0?t[0].toUpperCase()+t.substr(1):e[0][0].toUpperCase()!==e[0][0]&&t.length>0?t[0].toLowerCase()+t.substr(1):t}return t}function mg(e,t,n){return e[0].indexOf(n)!==-1&&t.indexOf(n)!==-1&&e[0].split(n).length===t.split(n).length}function hg(e,t,n){let r=t.split(n),i=e[0].split(n),a=``;return r.forEach((e,t)=>{a+=pg([i[t]],e)+n}),a.slice(0,-1)}var gg=class{constructor(e){this.staticValue=e,this.kind=0}},_g=class{constructor(e){this.pieces=e,this.kind=1}},vg=class e{static fromStaticValue(t){return new e([yg.staticValue(t)])}get hasReplacementPatterns(){return this._state.kind===1}constructor(e){this._state=!e||e.length===0?new gg(``):e.length===1&&e[0].staticValue!==null?new gg(e[0].staticValue):new _g(e)}buildReplaceString(t,n){if(this._state.kind===0)return n?pg(t,this._state.staticValue):this._state.staticValue;let r=``;for(let n=0,i=this._state.pieces.length;n<i;n++){let i=this._state.pieces[n];if(i.staticValue!==null){r+=i.staticValue;continue}let a=e._substitute(i.matchIndex,t);if(i.caseOps!==null&&i.caseOps.length>0){let e=[],t=i.caseOps.length,n=0;for(let r=0,o=a.length;r<o;r++){if(n>=t){e.push(a.slice(r));break}switch(i.caseOps[n]){case`U`:e.push(a[r].toUpperCase());break;case`u`:e.push(a[r].toUpperCase()),n++;break;case`L`:e.push(a[r].toLowerCase());break;case`l`:e.push(a[r].toLowerCase()),n++;break;default:e.push(a[r])}}a=e.join(``)}r+=a}return r}static _substitute(e,t){if(t===null)return``;if(e===0)return t[0];let n=``;for(;e>0;){if(e<t.length)return(t[e]||``)+n;n=String(e%10)+n,e=Math.floor(e/10)}return`$`+n}},yg=class e{static staticValue(t){return new e(t,-1,null)}static caseOps(t,n){return new e(null,t,n)}constructor(e,t,n){this.staticValue=e,this.matchIndex=t,this.caseOps=!n||n.length===0?null:n.slice(0)}},bg=class{constructor(e){this._source=e,this._lastCharIndex=0,this._result=[],this._resultLen=0,this._currentStaticPiece=``}emitUnchanged(e){this._emitStatic(this._source.substring(this._lastCharIndex,e)),this._lastCharIndex=e}emitStatic(e,t){this._emitStatic(e),this._lastCharIndex=t}_emitStatic(e){e.length!==0&&(this._currentStaticPiece+=e)}emitMatchIndex(e,t,n){this._currentStaticPiece.length!==0&&(this._result[this._resultLen++]=yg.staticValue(this._currentStaticPiece),this._currentStaticPiece=``),this._result[this._resultLen++]=yg.caseOps(e,n),this._lastCharIndex=t}finalize(){return this.emitUnchanged(this._source.length),this._currentStaticPiece.length!==0&&(this._result[this._resultLen++]=yg.staticValue(this._currentStaticPiece),this._currentStaticPiece=``),new vg(this._result)}};function xg(e){if(!e||e.length===0)return new vg(null);let t=[],n=new bg(e);for(let r=0,i=e.length;r<i;r++){let a=e.charCodeAt(r);if(a===92){if(r++,r>=i)break;let a=e.charCodeAt(r);switch(a){case 92:n.emitUnchanged(r-1),n.emitStatic(`\\`,r+1);break;case 110:n.emitUnchanged(r-1),n.emitStatic(`