@harperfast/harper 5.3.0 → 5.3.1
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.
- package/bin/copyDb.ts +5 -1
- package/bin/deployRenderer.ts +3 -0
- package/components/Application.ts +66 -22
- package/components/DESIGN.md +89 -36
- package/components/componentLoader.ts +2 -0
- package/components/deploymentRecorder.ts +18 -1
- package/components/installFingerprint.ts +123 -0
- package/components/mcp/DESIGN.md +4 -4
- package/components/operations.js +29 -0
- package/config/DESIGN.md +5 -5
- package/dataLayer/DESIGN.md +37 -22
- package/dataLayer/backupRepository.ts +248 -0
- package/dataLayer/restoreMarker.ts +30 -75
- package/dataLayer/rocksdbBackup.ts +253 -110
- package/dist/bin/copyDb.js +3 -0
- package/dist/bin/copyDb.js.map +1 -1
- package/dist/bin/deployRenderer.js +3 -0
- package/dist/bin/deployRenderer.js.map +1 -1
- package/dist/components/Application.d.ts +5 -0
- package/dist/components/Application.js +51 -19
- package/dist/components/Application.js.map +1 -1
- package/dist/components/componentLoader.js +2 -0
- package/dist/components/componentLoader.js.map +1 -1
- package/dist/components/deploymentRecorder.js +18 -1
- package/dist/components/deploymentRecorder.js.map +1 -1
- package/dist/components/installFingerprint.d.ts +39 -0
- package/dist/components/installFingerprint.js +113 -0
- package/dist/components/installFingerprint.js.map +1 -0
- package/dist/components/operations.d.ts +2 -0
- package/dist/components/operations.js +31 -0
- package/dist/components/operations.js.map +1 -1
- package/dist/dataLayer/backupRepository.d.ts +33 -0
- package/dist/dataLayer/backupRepository.js +232 -0
- package/dist/dataLayer/backupRepository.js.map +1 -0
- package/dist/dataLayer/restoreMarker.d.ts +4 -1
- package/dist/dataLayer/restoreMarker.js +29 -68
- package/dist/dataLayer/restoreMarker.js.map +1 -1
- package/dist/dataLayer/rocksdbBackup.js +221 -112
- package/dist/dataLayer/rocksdbBackup.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js.map +1 -1
- package/dist/json/systemSchema.json +14 -0
- package/dist/resources/DatabaseTransaction.d.ts +140 -11
- package/dist/resources/DatabaseTransaction.js +1055 -464
- package/dist/resources/DatabaseTransaction.js.map +1 -1
- package/dist/resources/IterableEventQueue.d.ts +2 -1
- package/dist/resources/IterableEventQueue.js +16 -8
- package/dist/resources/IterableEventQueue.js.map +1 -1
- package/dist/resources/LMDBTransaction.d.ts +13 -2
- package/dist/resources/LMDBTransaction.js +219 -93
- package/dist/resources/LMDBTransaction.js.map +1 -1
- package/dist/resources/RecordEncoder.js +2 -3
- package/dist/resources/RecordEncoder.js.map +1 -1
- package/dist/resources/Resource.js +5 -6
- package/dist/resources/Resource.js.map +1 -1
- package/dist/resources/ResourceInterface.d.ts +3 -1
- package/dist/resources/ResourceInterface.js.map +1 -1
- package/dist/resources/RocksIndexStore.d.ts +2 -1
- package/dist/resources/RocksIndexStore.js +3 -0
- package/dist/resources/RocksIndexStore.js.map +1 -1
- package/dist/resources/Table.js +116 -12
- package/dist/resources/Table.js.map +1 -1
- package/dist/resources/analytics/write.js +6 -2
- package/dist/resources/analytics/write.js.map +1 -1
- package/dist/resources/auditStore.d.ts +71 -17
- package/dist/resources/auditStore.js +248 -64
- package/dist/resources/auditStore.js.map +1 -1
- package/dist/resources/branchDatabase.js +2 -0
- package/dist/resources/branchDatabase.js.map +1 -1
- package/dist/resources/databases.js +8 -2
- package/dist/resources/databases.js.map +1 -1
- package/dist/resources/indexes/fullTextNativeBinding.d.ts +6 -2
- package/dist/resources/indexes/fullTextNativeBinding.js +12 -2
- package/dist/resources/indexes/fullTextNativeBinding.js.map +1 -1
- package/dist/resources/indexes/fullTextQueryIndex.d.ts +4 -0
- package/dist/resources/indexes/fullTextQueryIndex.js +207 -10
- package/dist/resources/indexes/fullTextQueryIndex.js.map +1 -1
- package/dist/resources/models/Models.d.ts +11 -0
- package/dist/resources/models/Models.js +95 -4
- package/dist/resources/models/Models.js.map +1 -1
- package/dist/resources/models/backendRegistry.d.ts +8 -0
- package/dist/resources/models/backendRegistry.js +15 -1
- package/dist/resources/models/backendRegistry.js.map +1 -1
- package/dist/resources/models/bootstrap.d.ts +2 -0
- package/dist/resources/models/bootstrap.js +6 -0
- package/dist/resources/models/bootstrap.js.map +1 -1
- package/dist/resources/models/calibration.d.ts +88 -0
- package/dist/resources/models/calibration.js +244 -0
- package/dist/resources/models/calibration.js.map +1 -0
- package/dist/resources/models/calibrationStore.d.ts +163 -0
- package/dist/resources/models/calibrationStore.js +986 -0
- package/dist/resources/models/calibrationStore.js.map +1 -0
- package/dist/resources/models/decisionStore.d.ts +24 -0
- package/dist/resources/models/decisionStore.js +45 -0
- package/dist/resources/models/decisionStore.js.map +1 -1
- package/dist/resources/models/generativeDecision.js +44 -15
- package/dist/resources/models/generativeDecision.js.map +1 -1
- package/dist/resources/models/types.d.ts +7 -0
- package/dist/resources/recordLock.d.ts +8 -5
- package/dist/resources/recordLock.js +6 -4
- package/dist/resources/recordLock.js.map +1 -1
- package/dist/resources/replayLogs.js +8 -1
- package/dist/resources/replayLogs.js.map +1 -1
- package/dist/resources/scheduler/engine.d.ts +4 -0
- package/dist/resources/scheduler/engine.js +30 -2
- package/dist/resources/scheduler/engine.js.map +1 -1
- package/dist/resources/search.d.ts +16 -4
- package/dist/resources/search.js +117 -13
- package/dist/resources/search.js.map +1 -1
- package/dist/resources/transaction.js +85 -5
- package/dist/resources/transaction.js.map +1 -1
- package/dist/resources/transactionBroadcast.d.ts +8 -0
- package/dist/resources/transactionBroadcast.js +65 -0
- package/dist/resources/transactionBroadcast.js.map +1 -1
- package/dist/security/keys.d.ts +1 -1
- package/dist/security/keys.js +170 -120
- package/dist/security/keys.js.map +1 -1
- package/dist/server/http.js +10 -0
- package/dist/server/http.js.map +1 -1
- package/dist/server/serverHelpers/Request.js +11 -2
- package/dist/server/serverHelpers/Request.js.map +1 -1
- package/dist/server/serverHelpers/contentTypes.js +8 -3
- package/dist/server/serverHelpers/contentTypes.js.map +1 -1
- package/dist/server/serverHelpers/uwsServer.js +38 -7
- package/dist/server/serverHelpers/uwsServer.js.map +1 -1
- package/dist/server/threads/manageThreads.d.ts +3 -3
- package/dist/server/threads/manageThreads.js +15 -13
- package/dist/server/threads/manageThreads.js.map +1 -1
- package/dist/server/threads/threadServer.d.ts +3 -0
- package/dist/server/threads/threadServer.js +24 -6
- package/dist/server/threads/threadServer.js.map +1 -1
- package/dist/upgrade/directives/5-3-0.js +9 -3
- package/dist/upgrade/directives/5-3-0.js.map +1 -1
- package/dist/utility/durableFile.d.ts +36 -0
- package/dist/utility/durableFile.js +106 -0
- package/dist/utility/durableFile.js.map +1 -0
- package/dist/utility/errors/hdbError.d.ts +4 -0
- package/dist/utility/errors/hdbError.js +10 -1
- package/dist/utility/errors/hdbError.js.map +1 -1
- package/dist/utility/globalSchema.d.ts +9 -0
- package/dist/utility/hdbTerms.d.ts +1 -0
- package/dist/utility/hdbTerms.js +1 -0
- package/dist/utility/hdbTerms.js.map +1 -1
- package/dist/validation/configValidator.js +29 -0
- package/dist/validation/configValidator.js.map +1 -1
- package/index.ts +7 -0
- package/json/systemSchema.json +14 -0
- package/npm-shrinkwrap.json +22 -22
- package/package.json +2 -2
- package/resources/DESIGN.md +57 -272
- package/resources/DatabaseTransaction.ts +708 -87
- package/resources/FULL_TEXT.md +6 -2
- package/resources/IterableEventQueue.ts +14 -7
- package/resources/LMDBTransaction.ts +212 -84
- package/resources/RecordEncoder.ts +2 -3
- package/resources/Resource.ts +5 -6
- package/resources/ResourceInterface.ts +3 -1
- package/resources/RocksIndexStore.ts +5 -0
- package/resources/Table.ts +118 -15
- package/resources/analytics/write.ts +6 -2
- package/resources/audit-retention.md +203 -0
- package/resources/auditStore.ts +306 -84
- package/resources/branchDatabase.ts +2 -0
- package/resources/databases.ts +6 -2
- package/resources/indexes/DESIGN.md +120 -177
- package/resources/indexes/fullTextNativeBinding.ts +22 -3
- package/resources/indexes/fullTextQueryIndex.ts +274 -11
- package/resources/models/DESIGN.md +11 -3
- package/resources/models/Models.ts +127 -4
- package/resources/models/backendRegistry.ts +17 -0
- package/resources/models/bootstrap.ts +9 -1
- package/resources/models/calibration.ts +298 -0
- package/resources/models/calibrationStore.ts +1167 -0
- package/resources/models/decisionStore.ts +57 -0
- package/resources/models/generativeDecision.ts +54 -16
- package/resources/models/types.ts +6 -0
- package/resources/record-locks.md +155 -141
- package/resources/recordLock.ts +12 -6
- package/resources/replayLogs.ts +9 -2
- package/resources/scheduler/DESIGN.md +4 -3
- package/resources/scheduler/engine.ts +35 -2
- package/resources/search.ts +154 -16
- package/resources/transaction.ts +50 -5
- package/resources/transactionBroadcast.ts +69 -0
- package/security/DESIGN.md +9 -30
- package/security/keys.ts +175 -127
- package/server/DESIGN.md +70 -36
- package/server/http.ts +10 -0
- package/server/serverHelpers/Request.ts +10 -2
- package/server/serverHelpers/contentTypes.ts +5 -3
- package/server/serverHelpers/uwsServer.ts +34 -7
- package/server/threads/manageThreads.js +16 -14
- package/server/threads/threadServer.js +24 -6
- package/studio/web/assets/{Chat-CNEKMllJ.js → Chat-4LMxI0yB.js} +1 -1
- package/studio/web/assets/{FloatingChat-CEnWhHeR.js → FloatingChat-kWHApEtF.js} +3 -3
- package/studio/web/assets/{SearchDialog-CwhJdEdY.js → SearchDialog-B7ymna97.js} +1 -1
- package/studio/web/assets/{apiToken-DC5vsaaO.js → apiToken-CE3AAt9f.js} +1 -1
- package/studio/web/assets/{applications-DQZxDy0x.js → applications-DdN7CqsB.js} +1 -1
- package/studio/web/assets/{cssMode-Dz2DxF4e.js → cssMode-BpySZUSt.js} +1 -1
- package/studio/web/assets/{editor-B3mjd3tz.js → editor-myLCVv9C.js} +1 -1
- package/studio/web/assets/{html-BsRGM7tp.js → html-DGNYO55O.js} +1 -1
- package/studio/web/assets/{htmlMode-tUKJaA3o.js → htmlMode-BUgpQr41.js} +1 -1
- package/studio/web/assets/{index-BuqFjN5K.js → index-FN4KC9va.js} +39 -39
- package/studio/web/assets/index-QLZw6xrU.css +1 -0
- package/studio/web/assets/{index.lazy-CcpfQFY_.js → index.lazy-DZFuaumG.js} +1 -1
- package/studio/web/assets/{javascript-BZ_uRGHl.js → javascript-DiBzh4pj.js} +1 -1
- package/studio/web/assets/{jsonMode-DgB-aFMj.js → jsonMode-Bm312nmu.js} +1 -1
- package/studio/web/assets/{languageServices-BleuBw17.js → languageServices-Dz2K9rZN.js} +1 -1
- package/studio/web/assets/{lspLanguageFeatures-ByVYLSsQ.js → lspLanguageFeatures-CNu1L5xn.js} +1 -1
- package/studio/web/assets/{notifications-TuzN0IMi.js → notifications--nwFLGmM.js} +1 -1
- package/studio/web/assets/{notifications-D1Nf-Edn.js → notifications-BelKw5bR.js} +1 -1
- package/studio/web/assets/{profile-D7C7Lupz.js → profile-AU5FjOBx.js} +1 -1
- package/studio/web/assets/{regions-nGQCm-v8.js → regions-C0sTSEHH.js} +1 -1
- package/studio/web/assets/{register-C3x9Ze6P.js → register-DyNR2rGk.js} +2 -2
- package/studio/web/assets/{setComponentFile-DpjrRqeG.js → setComponentFile-BkWx8AN3.js} +1 -1
- package/studio/web/assets/{setup-CGiKLZ9e.js → setup-D6LZS78d.js} +2 -2
- package/studio/web/assets/{status-CGJwrNPH.js → status-BCWnn70o.js} +1 -1
- package/studio/web/assets/{toggleHighContrast-C-Ne6P7T.js → toggleHighContrast-pyeGJ6W1.js} +1 -1
- package/studio/web/assets/{tsMode-CSreYTys.js → tsMode-CGV3iaWC.js} +1 -1
- package/studio/web/assets/{typescript-MnxBk89W.js → typescript-Ci7Khvwo.js} +1 -1
- package/studio/web/assets/{useEntityRestURL-TNrh77-s.js → useEntityRestURL-DNiz3aZ0.js} +1 -1
- package/studio/web/assets/{workers-BfZlUNVI.js → workers-byzxjbqy.js} +1 -1
- package/studio/web/assets/{xml-BHd6qGH7.js → xml-DGnHQ3CX.js} +1 -1
- package/studio/web/assets/{yaml-C53R8OQq.js → yaml-BUoTnPWb.js} +1 -1
- package/studio/web/index.html +2 -2
- package/upgrade/directives/5-3-0.ts +10 -3
- package/utility/durableFile.ts +96 -0
- package/utility/errors/hdbError.ts +9 -0
- package/utility/hdbTerms.ts +1 -0
- package/validation/configValidator.ts +31 -0
- package/studio/web/assets/index-72cEH474.css +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{$ as e,$a as t,$c as n,$d as r,$i as i,$l as a,$n as o,$o as s,$r as c,$s as l,$t as u,$u as d,A as f,Aa as p,Ac as m,Ad as h,Af as g,Ai as _,Al as v,An as y,Ao as b,Ar as ee,As as te,At as ne,Au as re,B as ie,Ba as ae,Bc as oe,Bd as se,Bi as ce,Bl as le,Bn as ue,Bo as de,Br as fe,Bs as pe,Bt as me,Bu as he,C as ge,Ca as _e,Cc as ve,Cd as x,Cf as ye,Ci as be,Cl as xe,Cn as Se,Co as Ce,Cr as we,Cs as Te,Ct as Ee,Cu as De,D as Oe,Da as ke,Dc as Ae,Dd as je,Df as Me,Di as Ne,Dl as Pe,Dn as Fe,Do as Ie,Dr as Le,Ds as Re,Dt as ze,Du as Be,E as Ve,Ea as He,Ec as Ue,Ed as We,Ef as Ge,Ei as Ke,El as S,En as qe,Eo as Je,Er as Ye,Es as Xe,Et as Ze,Eu as Qe,F as $e,Fa as et,Fc as tt,Fd as nt,Fi as rt,Fl as it,Fn as at,Fo as ot,Fr as st,Fs as ct,Ft as lt,Fu as ut,G as dt,Ga as ft,Gc as pt,Gd as mt,Gi as ht,Gl as gt,Gn as _t,Go as vt,Gr as yt,Gs as bt,Gt as xt,Gu as St,H as Ct,Ha as wt,Hc as Tt,Hd as Et,Hi as Dt,Hl as Ot,Hn as kt,Ho as At,Hr as jt,Hs as Mt,Ht as Nt,Hu as Pt,I as Ft,Ia as It,Ic as Lt,Id as Rt,Ii as zt,Il as Bt,In as Vt,Io as Ht,Ir as Ut,Is as Wt,It as Gt,Iu as Kt,J as qt,Ja as Jt,Jc as Yt,Jd as Xt,Ji as Zt,Jl as Qt,Jn as $t,Jo as en,Jr as tn,Js as nn,Jt as rn,Ju as an,K as on,Ka as sn,Kc as cn,Kd as ln,Ki as un,Kl as dn,Kn as fn,Ko as pn,Kr as mn,Ks as C,Kt as hn,Ku as gn,L as _n,La as vn,Lc as yn,Ld as bn,Li as xn,Ll as Sn,Ln as Cn,Lo as wn,Lr as Tn,Ls as En,Lt as Dn,Lu as On,M as kn,Ma as An,Mc as jn,Md as Mn,Mi as Nn,Ml as Pn,Mn as Fn,Mo as In,Mr as Ln,Ms as Rn,Mt as zn,Mu as Bn,N as Vn,Na as Hn,Nc as Un,Nd as Wn,Ni as Gn,Nl as Kn,Nn as qn,No as Jn,Nr as Yn,Ns as Xn,Nt as Zn,Nu as Qn,O as $n,Oa as er,Oc as w,Od as tr,Of as nr,Oi as rr,Ol as ir,On as ar,Oo as or,Or as sr,Os as cr,Ot as lr,Ou as ur,P as dr,Pa as fr,Pc as pr,Pd as mr,Pi as hr,Pl as gr,Pn as _r,Po as vr,Pr as yr,Ps as br,Pt as xr,Pu as Sr,Q as Cr,Qa as wr,Qc as Tr,Qd as Er,Qi as Dr,Ql as Or,Qn as kr,Qo as Ar,Qr as jr,Qs as Mr,Qt as Nr,Qu as T,R as Pr,Ra as Fr,Rc as Ir,Rd as Lr,Ri as Rr,Rl as zr,Rn as Br,Ro as Vr,Rr as Hr,Rs as Ur,Rt as Wr,Ru as Gr,S as Kr,Sa as qr,Sc as E,Sd as Jr,Sf as Yr,Si as Xr,Sl as D,Sn as Zr,So as O,Sr as Qr,Ss as $r,St as ei,Su as ti,T as ni,Ta as ri,Tc as ii,Td as ai,Tf as oi,Ti as si,Tl as ci,Tn as li,To as ui,Tr as di,Ts as fi,Tt as pi,Tu as mi,U as hi,Ua as gi,Uc as _i,Ud as k,Ui as vi,Ul as yi,Un as bi,Uo as xi,Ur as Si,Us as Ci,Ut as wi,Uu as Ti,V as Ei,Va as Di,Vc as Oi,Vd as ki,Vi as Ai,Vl as ji,Vn as Mi,Vo as Ni,Vr as Pi,Vs as Fi,Vt as Ii,Vu as Li,W as Ri,Wa as zi,Wc as Bi,Wd as A,Wi as Vi,Wl as Hi,Wn as Ui,Wo as Wi,Wr as Gi,Ws as Ki,Wt as qi,Wu as Ji,X as Yi,Xa as Xi,Xc as Zi,Xd as Qi,Xi as $i,Xl as ea,Xn as ta,Xo as na,Xr as ra,Xs as ia,Xt as aa,Xu as oa,Ya as sa,Yc as ca,Yd as la,Yi as ua,Yl as da,Yn as fa,Yo as pa,Yr as ma,Ys as ha,Yt as ga,Yu as _a,Z as va,Za as j,Zc as ya,Zd as ba,Zi as xa,Zl as Sa,Zn as Ca,Zo as wa,Zr as Ta,Zs as M,Zt as Ea,Zu as N,_a as Da,_c as Oa,_d as ka,_f as Aa,_i as ja,_l as Ma,_n as Na,_o as Pa,_r as Fa,_s as Ia,_t as La,_u as Ra,aa as za,ac as Ba,ad as Va,af as Ha,ai as P,al as Ua,an as Wa,ao as Ga,ar as Ka,as as qa,at as Ja,au as Ya,b as Xa,ba as Za,bc as Qa,bd as $a,bf as eo,bi as to,bl as no,bn as ro,bo as io,br as ao,bs as F,bt as oo,bu as so,ca as co,cc as lo,cd as uo,cf as fo,ci as po,cl as mo,cn as ho,co as go,cr as _o,cs as vo,ct as yo,cu as bo,da as xo,dc as So,dd as Co,df as wo,di as To,dl as Eo,dn as I,do as Do,dr as Oo,ds as ko,dt as Ao,du as jo,ea as Mo,ec as No,ed as L,ef as Po,ei as Fo,el as Io,en as Lo,eo as Ro,er as zo,es as Bo,et as Vo,eu as Ho,fa as Uo,fc as Wo,fd as Go,ff as Ko,fi as qo,fl as Jo,fn as Yo,fo as Xo,fr as Zo,fs as Qo,ft as $o,fu as es,ga as ts,gc as ns,gd as rs,gf as is,gi as as,gl as os,gn as ss,go as cs,gr as ls,gs as us,gt as ds,gu as fs,ha as ps,hc as ms,hd as hs,hf as gs,hi as _s,hl as vs,hn as ys,ho as bs,hr as xs,hs as Ss,ht as Cs,hu as ws,ia as Ts,ic as Es,id as Ds,if as Os,ii as ks,il as As,in as js,io as Ms,ir as Ns,is as Ps,it as Fs,iu as Is,j as Ls,ja as Rs,jc as R,jd as zs,jf as Bs,ji as Vs,jl as Hs,jn as Us,jo as Ws,jr as Gs,js as Ks,jt as qs,ju as Js,k as Ys,ka as Xs,kc as Zs,kd as Qs,kf as $s,ki as ec,kl as tc,kn as nc,ko as rc,kr as ic,ks as ac,kt as oc,ku as sc,la as cc,lc,ld as uc,lf as dc,li as fc,ll as pc,ln as mc,lo as hc,lr as gc,ls as _c,lt as vc,lu as yc,ma as bc,mc as z,md as xc,mf as Sc,mi as Cc,ml as wc,mn as Tc,mo as Ec,mr as Dc,ms as B,mt as Oc,mu as kc,na as Ac,nc as jc,nd as Mc,nf as Nc,ni as Pc,nl as Fc,nn as Ic,no as Lc,nr as Rc,ns as zc,nt as Bc,nu as Vc,oa as Hc,oc as V,od as Uc,of as Wc,oi as Gc,ol as Kc,on as qc,oo as Jc,or as Yc,os as Xc,ot as Zc,ou as Qc,pa as $c,pc as el,pf as tl,pi as nl,pl as rl,pn as il,po as al,pr as ol,ps as sl,pt as cl,pu as ll,q as ul,qa as dl,qc as fl,qd as pl,qi as ml,ql as hl,qn as gl,qo as _l,qr as vl,qs as yl,qt as bl,qu as xl,ra as Sl,rc as H,rd as Cl,rf as wl,ri as Tl,rl as El,rn as Dl,ro as Ol,rr as kl,rs as Al,rt as jl,ru as Ml,sa as Nl,sc as Pl,sd as U,sf as Fl,si as Il,sl as Ll,sn as Rl,so as zl,sr as Bl,ss as Vl,st as Hl,su as Ul,ta as Wl,tc as W,td as Gl,tf as Kl,ti as ql,tl as Jl,tn as Yl,to as Xl,tr as Zl,ts as Ql,tt as $l,tu as eu,ua as tu,uc as nu,ud as ru,uf as iu,ui as au,ul as ou,un as su,uo as cu,ur as lu,us as uu,ut as du,uu as fu,v as pu,va as mu,vc as G,vd as K,vf as hu,vi as gu,vl as _u,vn as vu,vo as yu,vr as bu,vs as xu,vt as Su,vu as Cu,w as wu,wa as Tu,wc as Eu,wd as q,wf as Du,wi as Ou,wl as ku,wn as Au,wo as J,wr as ju,ws as Mu,wt as Nu,wu as Pu,x as Fu,xa as Iu,xc as Lu,xd as Ru,xf as zu,xi as Bu,xl as Vu,xn as Hu,xo as Uu,xr as Y,xs as X,xt as Wu,xu as Gu,y as Ku,ya as qu,yc as Ju,yd as Yu,yf as Xu,yi as Zu,yl as Qu,yn as $u,yo as ed,yr as td,ys as Z,yt as nd,yu as rd,z as id,za as ad,zc as od,zd as sd,zi as cd,zl as ld,zn as ud,zo as dd,zr as fd,zs as pd,zt as md,zu as hd}from"./register-C3x9Ze6P.js";var gd=class extends Ki{constructor(){super({id:`diffEditor.toggleCollapseUnchangedRegions`,title:A(101,`Toggle Collapse Unchanged Regions`),icon:N.map,toggled:W.has(`config.diffEditor.hideUnchangedRegions.enabled`),precondition:W.has(`isInDiffEditor`),menu:{when:W.has(`isInDiffEditor`),id:C.EditorTitle,order:22,group:`navigation`}})}run(e,...t){let n=e.get(ko),r=!n.getValue(`diffEditor.hideUnchangedRegions.enabled`);n.updateValue(`diffEditor.hideUnchangedRegions.enabled`,r)}},_d=class extends Ki{constructor(){super({id:`diffEditor.toggleShowMovedCodeBlocks`,title:A(102,`Toggle Show Moved Code Blocks`),precondition:W.has(`isInDiffEditor`)})}run(e,...t){let n=e.get(ko),r=!n.getValue(`diffEditor.experimental.showMoves`);n.updateValue(`diffEditor.experimental.showMoves`,r)}},vd=class extends Ki{constructor(){super({id:`diffEditor.toggleUseInlineViewWhenSpaceIsLimited`,title:A(103,`Toggle Use Inline View When Space Is Limited`),precondition:W.has(`isInDiffEditor`)})}run(e,...t){let n=e.get(ko),r=!n.getValue(`diffEditor.useInlineViewWhenSpaceIsLimited`);n.updateValue(`diffEditor.useInlineViewWhenSpaceIsLimited`,r)}},yd=A(104,`Diff Editor`),bd=class extends Ss{constructor(){super({id:`diffEditor.switchSide`,title:A(105,`Switch Side`),icon:N.arrowSwap,precondition:W.has(`isInDiffEditor`),f1:!0,category:yd})}runEditorCommand(e,t,n){let r=kd(e);if(r instanceof $n){if(n&&n.dryRun)return{destinationSelection:r.mapToOtherSide().destinationSelection};r.switchSide()}}},xd=class extends Ss{constructor(){super({id:`diffEditor.exitCompareMove`,title:A(106,`Exit Compare Move`),icon:N.close,precondition:P.comparingMovedCode,f1:!1,category:yd,keybinding:{weight:1e4,primary:9}})}runEditorCommand(e,t,...n){let r=kd(e);r instanceof $n&&r.exitCompareMove()}},Sd=class extends Ss{constructor(){super({id:`diffEditor.collapseAllUnchangedRegions`,title:A(107,`Collapse All Unchanged Regions`),icon:N.fold,precondition:W.has(`isInDiffEditor`),f1:!0,category:yd})}runEditorCommand(e,t,...n){let r=kd(e);r instanceof $n&&r.collapseAllUnchangedRegions()}},Cd=class extends Ss{constructor(){super({id:`diffEditor.showAllUnchangedRegions`,title:A(108,`Show All Unchanged Regions`),icon:N.unfold,precondition:W.has(`isInDiffEditor`),f1:!0,category:yd})}runEditorCommand(e,t,...n){let r=kd(e);r instanceof $n&&r.showAllUnchangedRegions()}},wd=class extends Ki{constructor(){super({id:`diffEditor.revert`,title:A(109,`Revert`),f1:!0,category:yd,precondition:W.has(`isInDiffEditor`)})}run(e,t){return t?this.runViaToolbarContext(e,t):this.runViaCursorOrSelection(e)}runViaCursorOrSelection(e){let t=kd(e);t instanceof $n&&t.revertFocusedRangeMappings()}runViaToolbarContext(e,t){let n=Od(e,t.originalUri,t.modifiedUri);n instanceof $n&&n.revertRangeMappings(t.mapping.innerChanges??[])}},Td=A(110,`Accessible Diff Viewer`),Ed=class e extends Ki{static{this.id=`editor.action.accessibleDiffViewer.next`}constructor(){super({id:e.id,title:A(111,`Go to Next Difference`),category:Td,precondition:W.has(`isInDiffEditor`),keybinding:{primary:65,weight:100},f1:!0})}run(e){kd(e)?.accessibleDiffViewerNext()}},Dd=class e extends Ki{static{this.id=`editor.action.accessibleDiffViewer.prev`}constructor(){super({id:e.id,title:A(112,`Go to Previous Difference`),category:Td,precondition:W.has(`isInDiffEditor`),keybinding:{primary:1089,weight:100},f1:!0})}run(e){kd(e)?.accessibleDiffViewerPrev()}};function Od(e,t,n){return e.get(el).listDiffEditors().find(e=>{let r=e.getModifiedEditor(),i=e.getOriginalEditor();return r&&r.getModel()?.uri.toString()===n.toString()&&i&&i.getModel()?.uri.toString()===t.toString()})||null}function kd(e){let t=e.get(el).listDiffEditors(),n=pr();if(n){for(let e of t)if(e.getContainerDomNode().contains(n))return e}return null}M(gd),M(_d),M(vd),nn.appendMenuItem(C.EditorTitle,{command:{id:new _d().desc.id,title:k(135,`Show Moved Code Blocks`),icon:N.move,toggled:No.create(`config.diffEditor.experimental.showMoves`,!0),precondition:W.has(`isInDiffEditor`)},order:10,group:`1_diff`,when:W.has(`isInDiffEditor`)}),M(wd);for(let e of[{icon:N.arrowRight,key:P.diffEditorInlineMode.toNegated()},{icon:N.discard,key:P.diffEditorInlineMode}])nn.appendMenuItem(C.DiffEditorHunkToolbar,{command:{id:new wd().desc.id,title:k(136,`Revert Block`),icon:e.icon},when:W.and(P.diffEditorModifiedWritable,e.key),order:5,group:`primary`}),nn.appendMenuItem(C.DiffEditorSelectionToolbar,{command:{id:new wd().desc.id,title:k(137,`Revert Selection`),icon:e.icon},when:W.and(P.diffEditorModifiedWritable,e.key),order:5,group:`primary`});M(bd),M(xd),M(Sd),M(Cd),nn.appendMenuItem(C.EditorTitle,{command:{id:Ed.id,title:k(138,`Open Accessible Diff Viewer`),precondition:W.has(`isInDiffEditor`)},order:10,group:`2_diff`,when:W.and(P.accessibleDiffViewerVisible.negate(),W.has(`isInDiffEditor`))}),Es.registerCommandAlias(`editor.action.diffReview.next`,Ed.id),M(Ed),Es.registerCommandAlias(`editor.action.diffReview.prev`,Dd.id),M(Dd);var Ad=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},jd=function(e,t){return function(n,r){t(n,r,e)}},Md,Nd=new H(`selectionAnchorSet`,!1),Pd=class{static{Md=this}static{this.ID=`editor.contrib.selectionAnchorController`}static get(e){return e.getContribution(Md.ID)}constructor(e,t){this.editor=e,this.selectionAnchorSetContextKey=Nd.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(T.fromPositions(e,e),{description:`selection-anchor`,stickiness:1,hoverMessage:new gl().appendText(k(849,`Selection Anchor`)),className:`selection-anchor`})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),go(k(850,`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(T.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()}};Pd=Md=Ad([jd(1,jc)],Pd);var Fd=class extends B{constructor(){super({id:`editor.action.setSelectionAnchor`,label:A(851,`Set Selection Anchor`),precondition:void 0,kbOpts:{kbExpr:P.editorTextFocus,primary:Va(2089,2080),weight:100}})}async run(e,t){Pd.get(t)?.setSelectionAnchor()}},Id=class extends B{constructor(){super({id:`editor.action.goToSelectionAnchor`,label:A(852,`Go to Selection Anchor`),precondition:Nd})}async run(e,t){Pd.get(t)?.goToSelectionAnchor()}},Ld=class extends B{constructor(){super({id:`editor.action.selectFromAnchorToCursor`,label:A(853,`Select from Anchor to Cursor`),precondition:Nd,kbOpts:{kbExpr:P.editorTextFocus,primary:Va(2089,2089),weight:100}})}async run(e,t){Pd.get(t)?.selectFromAnchorToCursor()}},Rd=class extends B{constructor(){super({id:`editor.action.cancelSelectionAnchor`,label:A(854,`Cancel Selection Anchor`),precondition:Nd,kbOpts:{kbExpr:P.editorTextFocus,primary:9,weight:100}})}async run(e,t){Pd.get(t)?.cancelSelectionAnchor()}};X(Pd.ID,Pd,4),Z(Fd),Z(Id),Z(Ld),Z(Rd);var zd=j(`editorOverviewRuler.bracketMatchForeground`,`#A0A0A0`,k(855,`Overview ruler marker color for matching brackets.`)),Bd=class extends B{constructor(){super({id:`editor.action.jumpToBracket`,label:A(857,`Go to Bracket`),precondition:void 0,kbOpts:{kbExpr:P.editorTextFocus,primary:3165,weight:100}})}run(e,t){Wd.get(t)?.jumpToBracket()}},Vd=class extends B{constructor(){super({id:`editor.action.selectToBracket`,label:A(858,`Select to Bracket`),precondition:void 0,metadata:{description:A(859,`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),Wd.get(t)?.selectToBracket(r)}},Hd=class extends B{constructor(){super({id:`editor.action.removeBrackets`,label:A(860,`Remove Brackets`),precondition:void 0,kbOpts:{kbExpr:P.editorTextFocus,primary:2561,weight:100},canTriggerInlineEdits:!0})}run(e,t){Wd.get(t)?.removeBrackets(this.id)}},Ud=class{constructor(e,t,n){this.position=e,this.brackets=t,this.options=n}},Wd=class e extends x{static{this.ID=`editor.contrib.bracketMatchingController`}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 ea(()=>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 T(i.lineNumber,i.column,i.lineNumber,i.column):new T(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(d.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 T(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())})}static{this._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=Y.register({description:`bracket-match-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`,overviewRuler:{color:Tl(zd),position:wa.Center}})}static{this._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=Y.register({description:`bracket-match-no-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`})}_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(L.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 Ud(r,t,i)}}this._lastBracketsData=s,this._lastVersionId=r}};X(Wd.ID,Wd,1),Z(Vd),Z(Bd),Z(Hd),nn.appendMenuItem(C.MenubarGoMenu,{group:`5_infile_nav`,command:{id:`editor.action.jumpToBracket`,title:k(856,`Go to &&Bracket`)},order:2}),Pc((e,t)=>{let n=e.getColor(jr);n&&t.addRule(`.monaco-editor .bracket-match-inline { color: ${n} !important; }`)}),Z(class extends B{constructor(){super({id:`editor.action.transposeLetters`,label:A(863,`Transpose Letters`),precondition:P.writable,kbOpts:{kbExpr:P.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():as.rightPosition(n,e.getPosition().lineNumber,e.getPosition().column),s=as.leftPosition(n,o),c=as.leftPosition(n,s),l=n.getValueInRange(d.fromPositions(c,s)),u=n.getValueInRange(d.fromPositions(s,o)),f=d.fromPositions(c,o);r.push(new ja(f,u+l))}r.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop())}});var Gd=class e{static{this.sep=`.`}static{this.None=new e(`@@none@@`)}static{this.Empty=new 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))}},Kd=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},qd=function(e,t){return function(n,r){t(n,r,e)}},Jd=Y.register({description:`inline-progress-widget`,stickiness:1,showIfCollapsed:!0,after:{content:`\xA0`,inlineClassName:`inline-editor-progress-decoration`,inlineClassNameAffectsLetterSpacing:!0,widthInEm:1}}),Yd=class e extends x{static{this.baseId=`editor.widget.inlineProgressWidget`}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=G(`.inline-progress-widget`),this.domNode.role=`button`,this.domNode.title=e;let t=G(`span.icon`);this.domNode.append(t),t.classList.add(...V.asClassNameArray(N.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(w(this.domNode,E.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)}},Xd=class extends x{constructor(e,t,n){super(),this.id=e,this._editor=t,this._instantiationService=n,this._showDelay=500,this._showPromise=this._register(new ai),this._currentWidget=this._register(new ai),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=Ho(()=>{let n=d.fromPositions(e);this._currentDecorations.set([{range:n,options:Jd}]).length>0&&(this._currentWidget.value=this._instantiationService.createInstance(Yd,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()}};Xd=Kd([qd(2,z)],Xd);var 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},Qd=function(e,t){return function(n,r){t(n,r,e)}},$d,ef=class{static{$d=this}static{this.ID=`editor.contrib.messageController`}static{this.MESSAGE_VISIBLE=new H(`messageVisible`,!1,k(1353,`Whether the editor is currently showing an inline message`))}static get(e){return e.getContribution($d.ID)}constructor(e,t,n){this._openerService=n,this._messageWidget=new ai,this._messageListeners=new q,this._mouseOverMessage=!1,this._editor=e,this._visible=$d.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){if(go(ta(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),ta(e)){let n=this._messageListeners.add(kt(e,{actionHandler:(e,t)=>{this.closeMessage(),ud(this._openerService,e,t.isTrusted)}}));this._messageWidget.value=new nf(this._editor,t,n.element)}else this._messageWidget.value=new nf(this._editor,t,e);this._messageListeners.add(Yu.debounce(this._editor.onDidBlurEditorText,(e,t)=>t,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&Yt(pr(),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(w(this._messageWidget.value.getDomNode(),E.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(w(this._messageWidget.value.getDomNode(),E.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 d(t.lineNumber-3,1,e.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(nf.fadeOut(this._messageWidget.value))}};ef=$d=Zd([Qd(1,jc),Qd(2,ue)],ef);var tf=us.bindToContribution(ef.get);F(new tf({id:`leaveEditorMessage`,precondition:ef.MESSAGE_VISIBLE,handler:e=>e.closeMessage(),kbOpts:{weight:130,primary:9}}));var nf=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)}};X(ef.ID,ef,4);var rf=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},af=function(e,t){return function(n,r){t(n,r,e)}},of=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(){}}}},sf=class e extends of{static{this.id=`text`}constructor(){super(Gd.Empty.append(`text`,`plain`)),this.id=e.id,this.dropMimeTypes=[vo.text],this.pasteMimeTypes=[vo.text]}async getEdit(e,t){let n=e.get(vo.text);if(!n||e.has(vo.uriList))return;let r=await n.asString();return{handledMimeType:vo.text,title:k(980,`Insert Plain Text`),insertText:r,kind:this.kind}}},cf=class extends of{constructor(){super(Gd.Empty.append(`uri`,`path`,`absolute`)),this.dropMimeTypes=[vo.uriList],this.pasteMimeTypes=[vo.uriList]}async getEdit(e,t){let n=await df(e);if(!n.length||t.isCancellationRequested)return;let r=0,i=n.map(({uri:e,originalText:t})=>e.scheme===Hi.file?e.fsPath:(r++,t)).join(` `),a;return a=r>0?n.length>1?k(981,`Insert Uris`):k(982,`Insert Uri`):n.length>1?k(983,`Insert Paths`):k(984,`Insert Path`),{handledMimeType:vo.uriList,insertText:i,title:a,kind:this.kind}}},lf=class extends of{constructor(e){super(Gd.Empty.append(`uri`,`path`,`relative`)),this._workspaceContextService=e,this.dropMimeTypes=[vo.uriList],this.pasteMimeTypes=[vo.uriList]}async getEdit(e,t){let n=await df(e);if(!n.length||t.isCancellationRequested)return;let r=Xu(n.map(({uri:e})=>{let t=this._workspaceContextService.getWorkspaceFolder(e);return t?pd(t.uri,e):void 0}));if(r.length)return{handledMimeType:vo.uriList,insertText:r.join(` `),title:n.length>1?k(985,`Insert Relative Paths`):k(986,`Insert Relative Path`),kind:this.kind}}};lf=rf([af(0,nd)],lf);var uf=class{constructor(){this.kind=new Gd(`html`),this.providedPasteEditKinds=[this.kind],this.copyMimeTypes=[],this.pasteMimeTypes=[`text/html`],this._yieldTo=[{mimeType:vo.text}]}async provideDocumentPasteEdits(e,t,n,r,i){if(r.triggerKind!==ut.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:k(987,`Insert HTML`),kind:this.kind}]}}};async function df(e){let t=e.get(vo.uriList);if(!t)return[];let n=await t.asString(),r=[];for(let e of Ne.parse(n))try{r.push({uri:Gl.parse(e),originalText:e})}catch{}return r}var ff={scheme:`*`,hasAccessToAllModels:!0},pf=class extends x{constructor(e,t){super(),this._register(e.documentDropEditProvider.register(ff,new sf)),this._register(e.documentDropEditProvider.register(ff,new cf)),this._register(e.documentDropEditProvider.register(ff,new lf(t)))}};pf=rf([af(0,O),af(1,nd)],pf);var mf=class extends x{constructor(e,t){super(),this._register(e.documentPasteEditProvider.register(ff,new sf)),this._register(e.documentPasteEditProvider.register(ff,new cf)),this._register(e.documentPasteEditProvider.register(ff,new lf(t))),this._register(e.documentPasteEditProvider.register(ff,new uf))}};mf=rf([af(0,O),af(1,nd)],mf);var hf=class e{constructor(){this.value=``,this.pos=0}static{this._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13}}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}}},gf=class{constructor(){this._children=[]}appendChild(e){return e instanceof _f&&this._children[this._children.length-1]instanceof _f?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 Tf)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),``)}len(){return 0}},_f=class e extends gf{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new e(this.value)}},vf=class extends gf{},yf=class e extends vf{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 bf?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}},bf=class e extends gf{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof _f&&(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}},xf=class e extends gf{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 Sf&&!!e.elseValue)&&(r=this._replace([])),r}_replace(e){let t=``;for(let n of this._children)if(n instanceof Sf){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}},Sf=class e extends gf{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)}},Cf=class e extends vf{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 _f(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 wf(e,t){let n=[...e];for(;n.length>0;){let e=n.shift();if(!t(e))break;n.unshift(...e.children)}}var Tf=class e extends gf{get placeholderInfo(){if(!this._placeholders){let e=[],t;this.walk(function(n){return n instanceof yf&&(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 wf([e],e=>(t+=e.len(),!0)),t}enclosingPlaceholders(e){let t=[],{parent:n}=e;for(;n;)n instanceof yf&&t.push(n),n=n.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof Cf&&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){wf(this.children,e)}},Ef=class{constructor(){this._scanner=new hf,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 Tf;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 yf&&(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 yf(e.index);o.transform=e.transform;for(let e of i){let t=e.clone();o.appendChild(t),t instanceof yf&&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 yf(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 _f(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 yf(Number(t)):new Cf(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 yf(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new _f("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(r.index>0&&this._accept(7)){let t=new bf;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 _f(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 Cf(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new _f("${"+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 xf,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 _f(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 Sf(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 Sf(Number(r),n)),!0)}if(this._accept(11)){let t=this._until(4);if(t)return e.appendChild(new Sf(Number(r),void 0,t,void 0)),!0}else if(this._accept(12)){let t=this._until(4);if(t)return e.appendChild(new Sf(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 Sf(Number(r),void 0,t,n)),!0}}else{let t=this._until(4);if(t)return e.appendChild(new Sf(Number(r),void 0,void 0,t)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14&&(e.appendChild(new _f(this._scanner.tokenText(this._token))),this._accept(void 0),!0)}};function Df(e,t,n){return(typeof n.insertText==`string`?n.insertText===``:n.insertText.snippet===``)?{edits:n.additionalEdit?.edits??[]}:{edits:[...t.map(t=>new La(e,{range:t,text:typeof n.insertText==`string`?Ef.escape(n.insertText)+`$0`:n.insertText.snippet,insertAsSnippet:!0})),...n.additionalEdit?.edits??[]]}}function Of(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 kf(e,t){return t&&(e.stack||e.stacktrace)?k(33,`{0}: {1}`,jf(e),Af(e.stack)||Af(e.stacktrace)):jf(e)}function Af(e){return Array.isArray(e)?e.join(`
|
|
1
|
+
import{$ as e,$a as t,$c as n,$d as r,$i as i,$l as a,$n as o,$o as s,$r as c,$s as l,$t as u,$u as d,A as f,Aa as p,Ac as m,Ad as h,Af as g,Ai as _,Al as v,An as y,Ao as b,Ar as ee,As as te,At as ne,Au as re,B as ie,Ba as ae,Bc as oe,Bd as se,Bi as ce,Bl as le,Bn as ue,Bo as de,Br as fe,Bs as pe,Bt as me,Bu as he,C as ge,Ca as _e,Cc as ve,Cd as x,Cf as ye,Ci as be,Cl as xe,Cn as Se,Co as Ce,Cr as we,Cs as Te,Ct as Ee,Cu as De,D as Oe,Da as ke,Dc as Ae,Dd as je,Df as Me,Di as Ne,Dl as Pe,Dn as Fe,Do as Ie,Dr as Le,Ds as Re,Dt as ze,Du as Be,E as Ve,Ea as He,Ec as Ue,Ed as We,Ef as Ge,Ei as Ke,El as S,En as qe,Eo as Je,Er as Ye,Es as Xe,Et as Ze,Eu as Qe,F as $e,Fa as et,Fc as tt,Fd as nt,Fi as rt,Fl as it,Fn as at,Fo as ot,Fr as st,Fs as ct,Ft as lt,Fu as ut,G as dt,Ga as ft,Gc as pt,Gd as mt,Gi as ht,Gl as gt,Gn as _t,Go as vt,Gr as yt,Gs as bt,Gt as xt,Gu as St,H as Ct,Ha as wt,Hc as Tt,Hd as Et,Hi as Dt,Hl as Ot,Hn as kt,Ho as At,Hr as jt,Hs as Mt,Ht as Nt,Hu as Pt,I as Ft,Ia as It,Ic as Lt,Id as Rt,Ii as zt,Il as Bt,In as Vt,Io as Ht,Ir as Ut,Is as Wt,It as Gt,Iu as Kt,J as qt,Ja as Jt,Jc as Yt,Jd as Xt,Ji as Zt,Jl as Qt,Jn as $t,Jo as en,Jr as tn,Js as nn,Jt as rn,Ju as an,K as on,Ka as sn,Kc as cn,Kd as ln,Ki as un,Kl as dn,Kn as fn,Ko as pn,Kr as mn,Ks as C,Kt as hn,Ku as gn,L as _n,La as vn,Lc as yn,Ld as bn,Li as xn,Ll as Sn,Ln as Cn,Lo as wn,Lr as Tn,Ls as En,Lt as Dn,Lu as On,M as kn,Ma as An,Mc as jn,Md as Mn,Mi as Nn,Ml as Pn,Mn as Fn,Mo as In,Mr as Ln,Ms as Rn,Mt as zn,Mu as Bn,N as Vn,Na as Hn,Nc as Un,Nd as Wn,Ni as Gn,Nl as Kn,Nn as qn,No as Jn,Nr as Yn,Ns as Xn,Nt as Zn,Nu as Qn,O as $n,Oa as er,Oc as w,Od as tr,Of as nr,Oi as rr,Ol as ir,On as ar,Oo as or,Or as sr,Os as cr,Ot as lr,Ou as ur,P as dr,Pa as fr,Pc as pr,Pd as mr,Pi as hr,Pl as gr,Pn as _r,Po as vr,Pr as yr,Ps as br,Pt as xr,Pu as Sr,Q as Cr,Qa as wr,Qc as Tr,Qd as Er,Qi as Dr,Ql as Or,Qn as kr,Qo as Ar,Qr as jr,Qs as Mr,Qt as Nr,Qu as T,R as Pr,Ra as Fr,Rc as Ir,Rd as Lr,Ri as Rr,Rl as zr,Rn as Br,Ro as Vr,Rr as Hr,Rs as Ur,Rt as Wr,Ru as Gr,S as Kr,Sa as qr,Sc as E,Sd as Jr,Sf as Yr,Si as Xr,Sl as D,Sn as Zr,So as O,Sr as Qr,Ss as $r,St as ei,Su as ti,T as ni,Ta as ri,Tc as ii,Td as ai,Tf as oi,Ti as si,Tl as ci,Tn as li,To as ui,Tr as di,Ts as fi,Tt as pi,Tu as mi,U as hi,Ua as gi,Uc as _i,Ud as k,Ui as vi,Ul as yi,Un as bi,Uo as xi,Ur as Si,Us as Ci,Ut as wi,Uu as Ti,V as Ei,Va as Di,Vc as Oi,Vd as ki,Vi as Ai,Vl as ji,Vn as Mi,Vo as Ni,Vr as Pi,Vs as Fi,Vt as Ii,Vu as Li,W as Ri,Wa as zi,Wc as Bi,Wd as A,Wi as Vi,Wl as Hi,Wn as Ui,Wo as Wi,Wr as Gi,Ws as Ki,Wt as qi,Wu as Ji,X as Yi,Xa as Xi,Xc as Zi,Xd as Qi,Xi as $i,Xl as ea,Xn as ta,Xo as na,Xr as ra,Xs as ia,Xt as aa,Xu as oa,Ya as sa,Yc as ca,Yd as la,Yi as ua,Yl as da,Yn as fa,Yo as pa,Yr as ma,Ys as ha,Yt as ga,Yu as _a,Z as va,Za as j,Zc as ya,Zd as ba,Zi as xa,Zl as Sa,Zn as Ca,Zo as wa,Zr as Ta,Zs as M,Zt as Ea,Zu as N,_a as Da,_c as Oa,_d as ka,_f as Aa,_i as ja,_l as Ma,_n as Na,_o as Pa,_r as Fa,_s as Ia,_t as La,_u as Ra,aa as za,ac as Ba,ad as Va,af as Ha,ai as P,al as Ua,an as Wa,ao as Ga,ar as Ka,as as qa,at as Ja,au as Ya,b as Xa,ba as Za,bc as Qa,bd as $a,bf as eo,bi as to,bl as no,bn as ro,bo as io,br as ao,bs as F,bt as oo,bu as so,ca as co,cc as lo,cd as uo,cf as fo,ci as po,cl as mo,cn as ho,co as go,cr as _o,cs as vo,ct as yo,cu as bo,da as xo,dc as So,dd as Co,df as wo,di as To,dl as Eo,dn as I,do as Do,dr as Oo,ds as ko,dt as Ao,du as jo,ea as Mo,ec as No,ed as L,ef as Po,ei as Fo,el as Io,en as Lo,eo as Ro,er as zo,es as Bo,et as Vo,eu as Ho,fa as Uo,fc as Wo,fd as Go,ff as Ko,fi as qo,fl as Jo,fn as Yo,fo as Xo,fr as Zo,fs as Qo,ft as $o,fu as es,ga as ts,gc as ns,gd as rs,gf as is,gi as as,gl as os,gn as ss,go as cs,gr as ls,gs as us,gt as ds,gu as fs,ha as ps,hc as ms,hd as hs,hf as gs,hi as _s,hl as vs,hn as ys,ho as bs,hr as xs,hs as Ss,ht as Cs,hu as ws,ia as Ts,ic as Es,id as Ds,if as Os,ii as ks,il as As,in as js,io as Ms,ir as Ns,is as Ps,it as Fs,iu as Is,j as Ls,ja as Rs,jc as R,jd as zs,jf as Bs,ji as Vs,jl as Hs,jn as Us,jo as Ws,jr as Gs,js as Ks,jt as qs,ju as Js,k as Ys,ka as Xs,kc as Zs,kd as Qs,kf as $s,ki as ec,kl as tc,kn as nc,ko as rc,kr as ic,ks as ac,kt as oc,ku as sc,la as cc,lc,ld as uc,lf as dc,li as fc,ll as pc,ln as mc,lo as hc,lr as gc,ls as _c,lt as vc,lu as yc,ma as bc,mc as z,md as xc,mf as Sc,mi as Cc,ml as wc,mn as Tc,mo as Ec,mr as Dc,ms as B,mt as Oc,mu as kc,na as Ac,nc as jc,nd as Mc,nf as Nc,ni as Pc,nl as Fc,nn as Ic,no as Lc,nr as Rc,ns as zc,nt as Bc,nu as Vc,oa as Hc,oc as V,od as Uc,of as Wc,oi as Gc,ol as Kc,on as qc,oo as Jc,or as Yc,os as Xc,ot as Zc,ou as Qc,pa as $c,pc as el,pf as tl,pi as nl,pl as rl,pn as il,po as al,pr as ol,ps as sl,pt as cl,pu as ll,q as ul,qa as dl,qc as fl,qd as pl,qi as ml,ql as hl,qn as gl,qo as _l,qr as vl,qs as yl,qt as bl,qu as xl,ra as Sl,rc as H,rd as Cl,rf as wl,ri as Tl,rl as El,rn as Dl,ro as Ol,rr as kl,rs as Al,rt as jl,ru as Ml,sa as Nl,sc as Pl,sd as U,sf as Fl,si as Il,sl as Ll,sn as Rl,so as zl,sr as Bl,ss as Vl,st as Hl,su as Ul,ta as Wl,tc as W,td as Gl,tf as Kl,ti as ql,tl as Jl,tn as Yl,to as Xl,tr as Zl,ts as Ql,tt as $l,tu as eu,ua as tu,uc as nu,ud as ru,uf as iu,ui as au,ul as ou,un as su,uo as cu,ur as lu,us as uu,ut as du,uu as fu,v as pu,va as mu,vc as G,vd as K,vf as hu,vi as gu,vl as _u,vn as vu,vo as yu,vr as bu,vs as xu,vt as Su,vu as Cu,w as wu,wa as Tu,wc as Eu,wd as q,wf as Du,wi as Ou,wl as ku,wn as Au,wo as J,wr as ju,ws as Mu,wt as Nu,wu as Pu,x as Fu,xa as Iu,xc as Lu,xd as Ru,xf as zu,xi as Bu,xl as Vu,xn as Hu,xo as Uu,xr as Y,xs as X,xt as Wu,xu as Gu,y as Ku,ya as qu,yc as Ju,yd as Yu,yf as Xu,yi as Zu,yl as Qu,yn as $u,yo as ed,yr as td,ys as Z,yt as nd,yu as rd,z as id,za as ad,zc as od,zd as sd,zi as cd,zl as ld,zn as ud,zo as dd,zr as fd,zs as pd,zt as md,zu as hd}from"./register-DyNR2rGk.js";var gd=class extends Ki{constructor(){super({id:`diffEditor.toggleCollapseUnchangedRegions`,title:A(101,`Toggle Collapse Unchanged Regions`),icon:N.map,toggled:W.has(`config.diffEditor.hideUnchangedRegions.enabled`),precondition:W.has(`isInDiffEditor`),menu:{when:W.has(`isInDiffEditor`),id:C.EditorTitle,order:22,group:`navigation`}})}run(e,...t){let n=e.get(ko),r=!n.getValue(`diffEditor.hideUnchangedRegions.enabled`);n.updateValue(`diffEditor.hideUnchangedRegions.enabled`,r)}},_d=class extends Ki{constructor(){super({id:`diffEditor.toggleShowMovedCodeBlocks`,title:A(102,`Toggle Show Moved Code Blocks`),precondition:W.has(`isInDiffEditor`)})}run(e,...t){let n=e.get(ko),r=!n.getValue(`diffEditor.experimental.showMoves`);n.updateValue(`diffEditor.experimental.showMoves`,r)}},vd=class extends Ki{constructor(){super({id:`diffEditor.toggleUseInlineViewWhenSpaceIsLimited`,title:A(103,`Toggle Use Inline View When Space Is Limited`),precondition:W.has(`isInDiffEditor`)})}run(e,...t){let n=e.get(ko),r=!n.getValue(`diffEditor.useInlineViewWhenSpaceIsLimited`);n.updateValue(`diffEditor.useInlineViewWhenSpaceIsLimited`,r)}},yd=A(104,`Diff Editor`),bd=class extends Ss{constructor(){super({id:`diffEditor.switchSide`,title:A(105,`Switch Side`),icon:N.arrowSwap,precondition:W.has(`isInDiffEditor`),f1:!0,category:yd})}runEditorCommand(e,t,n){let r=kd(e);if(r instanceof $n){if(n&&n.dryRun)return{destinationSelection:r.mapToOtherSide().destinationSelection};r.switchSide()}}},xd=class extends Ss{constructor(){super({id:`diffEditor.exitCompareMove`,title:A(106,`Exit Compare Move`),icon:N.close,precondition:P.comparingMovedCode,f1:!1,category:yd,keybinding:{weight:1e4,primary:9}})}runEditorCommand(e,t,...n){let r=kd(e);r instanceof $n&&r.exitCompareMove()}},Sd=class extends Ss{constructor(){super({id:`diffEditor.collapseAllUnchangedRegions`,title:A(107,`Collapse All Unchanged Regions`),icon:N.fold,precondition:W.has(`isInDiffEditor`),f1:!0,category:yd})}runEditorCommand(e,t,...n){let r=kd(e);r instanceof $n&&r.collapseAllUnchangedRegions()}},Cd=class extends Ss{constructor(){super({id:`diffEditor.showAllUnchangedRegions`,title:A(108,`Show All Unchanged Regions`),icon:N.unfold,precondition:W.has(`isInDiffEditor`),f1:!0,category:yd})}runEditorCommand(e,t,...n){let r=kd(e);r instanceof $n&&r.showAllUnchangedRegions()}},wd=class extends Ki{constructor(){super({id:`diffEditor.revert`,title:A(109,`Revert`),f1:!0,category:yd,precondition:W.has(`isInDiffEditor`)})}run(e,t){return t?this.runViaToolbarContext(e,t):this.runViaCursorOrSelection(e)}runViaCursorOrSelection(e){let t=kd(e);t instanceof $n&&t.revertFocusedRangeMappings()}runViaToolbarContext(e,t){let n=Od(e,t.originalUri,t.modifiedUri);n instanceof $n&&n.revertRangeMappings(t.mapping.innerChanges??[])}},Td=A(110,`Accessible Diff Viewer`),Ed=class e extends Ki{static{this.id=`editor.action.accessibleDiffViewer.next`}constructor(){super({id:e.id,title:A(111,`Go to Next Difference`),category:Td,precondition:W.has(`isInDiffEditor`),keybinding:{primary:65,weight:100},f1:!0})}run(e){kd(e)?.accessibleDiffViewerNext()}},Dd=class e extends Ki{static{this.id=`editor.action.accessibleDiffViewer.prev`}constructor(){super({id:e.id,title:A(112,`Go to Previous Difference`),category:Td,precondition:W.has(`isInDiffEditor`),keybinding:{primary:1089,weight:100},f1:!0})}run(e){kd(e)?.accessibleDiffViewerPrev()}};function Od(e,t,n){return e.get(el).listDiffEditors().find(e=>{let r=e.getModifiedEditor(),i=e.getOriginalEditor();return r&&r.getModel()?.uri.toString()===n.toString()&&i&&i.getModel()?.uri.toString()===t.toString()})||null}function kd(e){let t=e.get(el).listDiffEditors(),n=pr();if(n){for(let e of t)if(e.getContainerDomNode().contains(n))return e}return null}M(gd),M(_d),M(vd),nn.appendMenuItem(C.EditorTitle,{command:{id:new _d().desc.id,title:k(135,`Show Moved Code Blocks`),icon:N.move,toggled:No.create(`config.diffEditor.experimental.showMoves`,!0),precondition:W.has(`isInDiffEditor`)},order:10,group:`1_diff`,when:W.has(`isInDiffEditor`)}),M(wd);for(let e of[{icon:N.arrowRight,key:P.diffEditorInlineMode.toNegated()},{icon:N.discard,key:P.diffEditorInlineMode}])nn.appendMenuItem(C.DiffEditorHunkToolbar,{command:{id:new wd().desc.id,title:k(136,`Revert Block`),icon:e.icon},when:W.and(P.diffEditorModifiedWritable,e.key),order:5,group:`primary`}),nn.appendMenuItem(C.DiffEditorSelectionToolbar,{command:{id:new wd().desc.id,title:k(137,`Revert Selection`),icon:e.icon},when:W.and(P.diffEditorModifiedWritable,e.key),order:5,group:`primary`});M(bd),M(xd),M(Sd),M(Cd),nn.appendMenuItem(C.EditorTitle,{command:{id:Ed.id,title:k(138,`Open Accessible Diff Viewer`),precondition:W.has(`isInDiffEditor`)},order:10,group:`2_diff`,when:W.and(P.accessibleDiffViewerVisible.negate(),W.has(`isInDiffEditor`))}),Es.registerCommandAlias(`editor.action.diffReview.next`,Ed.id),M(Ed),Es.registerCommandAlias(`editor.action.diffReview.prev`,Dd.id),M(Dd);var Ad=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},jd=function(e,t){return function(n,r){t(n,r,e)}},Md,Nd=new H(`selectionAnchorSet`,!1),Pd=class{static{Md=this}static{this.ID=`editor.contrib.selectionAnchorController`}static get(e){return e.getContribution(Md.ID)}constructor(e,t){this.editor=e,this.selectionAnchorSetContextKey=Nd.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(T.fromPositions(e,e),{description:`selection-anchor`,stickiness:1,hoverMessage:new gl().appendText(k(849,`Selection Anchor`)),className:`selection-anchor`})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),go(k(850,`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(T.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()}};Pd=Md=Ad([jd(1,jc)],Pd);var Fd=class extends B{constructor(){super({id:`editor.action.setSelectionAnchor`,label:A(851,`Set Selection Anchor`),precondition:void 0,kbOpts:{kbExpr:P.editorTextFocus,primary:Va(2089,2080),weight:100}})}async run(e,t){Pd.get(t)?.setSelectionAnchor()}},Id=class extends B{constructor(){super({id:`editor.action.goToSelectionAnchor`,label:A(852,`Go to Selection Anchor`),precondition:Nd})}async run(e,t){Pd.get(t)?.goToSelectionAnchor()}},Ld=class extends B{constructor(){super({id:`editor.action.selectFromAnchorToCursor`,label:A(853,`Select from Anchor to Cursor`),precondition:Nd,kbOpts:{kbExpr:P.editorTextFocus,primary:Va(2089,2089),weight:100}})}async run(e,t){Pd.get(t)?.selectFromAnchorToCursor()}},Rd=class extends B{constructor(){super({id:`editor.action.cancelSelectionAnchor`,label:A(854,`Cancel Selection Anchor`),precondition:Nd,kbOpts:{kbExpr:P.editorTextFocus,primary:9,weight:100}})}async run(e,t){Pd.get(t)?.cancelSelectionAnchor()}};X(Pd.ID,Pd,4),Z(Fd),Z(Id),Z(Ld),Z(Rd);var zd=j(`editorOverviewRuler.bracketMatchForeground`,`#A0A0A0`,k(855,`Overview ruler marker color for matching brackets.`)),Bd=class extends B{constructor(){super({id:`editor.action.jumpToBracket`,label:A(857,`Go to Bracket`),precondition:void 0,kbOpts:{kbExpr:P.editorTextFocus,primary:3165,weight:100}})}run(e,t){Wd.get(t)?.jumpToBracket()}},Vd=class extends B{constructor(){super({id:`editor.action.selectToBracket`,label:A(858,`Select to Bracket`),precondition:void 0,metadata:{description:A(859,`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),Wd.get(t)?.selectToBracket(r)}},Hd=class extends B{constructor(){super({id:`editor.action.removeBrackets`,label:A(860,`Remove Brackets`),precondition:void 0,kbOpts:{kbExpr:P.editorTextFocus,primary:2561,weight:100},canTriggerInlineEdits:!0})}run(e,t){Wd.get(t)?.removeBrackets(this.id)}},Ud=class{constructor(e,t,n){this.position=e,this.brackets=t,this.options=n}},Wd=class e extends x{static{this.ID=`editor.contrib.bracketMatchingController`}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 ea(()=>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 T(i.lineNumber,i.column,i.lineNumber,i.column):new T(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(d.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 T(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())})}static{this._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=Y.register({description:`bracket-match-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`,overviewRuler:{color:Tl(zd),position:wa.Center}})}static{this._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=Y.register({description:`bracket-match-no-overview`,stickiness:1,className:`bracket-match`,inlineClassName:`bracket-match-inline`})}_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(L.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 Ud(r,t,i)}}this._lastBracketsData=s,this._lastVersionId=r}};X(Wd.ID,Wd,1),Z(Vd),Z(Bd),Z(Hd),nn.appendMenuItem(C.MenubarGoMenu,{group:`5_infile_nav`,command:{id:`editor.action.jumpToBracket`,title:k(856,`Go to &&Bracket`)},order:2}),Pc((e,t)=>{let n=e.getColor(jr);n&&t.addRule(`.monaco-editor .bracket-match-inline { color: ${n} !important; }`)}),Z(class extends B{constructor(){super({id:`editor.action.transposeLetters`,label:A(863,`Transpose Letters`),precondition:P.writable,kbOpts:{kbExpr:P.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():as.rightPosition(n,e.getPosition().lineNumber,e.getPosition().column),s=as.leftPosition(n,o),c=as.leftPosition(n,s),l=n.getValueInRange(d.fromPositions(c,s)),u=n.getValueInRange(d.fromPositions(s,o)),f=d.fromPositions(c,o);r.push(new ja(f,u+l))}r.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop())}});var Gd=class e{static{this.sep=`.`}static{this.None=new e(`@@none@@`)}static{this.Empty=new 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))}},Kd=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},qd=function(e,t){return function(n,r){t(n,r,e)}},Jd=Y.register({description:`inline-progress-widget`,stickiness:1,showIfCollapsed:!0,after:{content:`\xA0`,inlineClassName:`inline-editor-progress-decoration`,inlineClassNameAffectsLetterSpacing:!0,widthInEm:1}}),Yd=class e extends x{static{this.baseId=`editor.widget.inlineProgressWidget`}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=G(`.inline-progress-widget`),this.domNode.role=`button`,this.domNode.title=e;let t=G(`span.icon`);this.domNode.append(t),t.classList.add(...V.asClassNameArray(N.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(w(this.domNode,E.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)}},Xd=class extends x{constructor(e,t,n){super(),this.id=e,this._editor=t,this._instantiationService=n,this._showDelay=500,this._showPromise=this._register(new ai),this._currentWidget=this._register(new ai),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=Ho(()=>{let n=d.fromPositions(e);this._currentDecorations.set([{range:n,options:Jd}]).length>0&&(this._currentWidget.value=this._instantiationService.createInstance(Yd,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()}};Xd=Kd([qd(2,z)],Xd);var 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},Qd=function(e,t){return function(n,r){t(n,r,e)}},$d,ef=class{static{$d=this}static{this.ID=`editor.contrib.messageController`}static{this.MESSAGE_VISIBLE=new H(`messageVisible`,!1,k(1353,`Whether the editor is currently showing an inline message`))}static get(e){return e.getContribution($d.ID)}constructor(e,t,n){this._openerService=n,this._messageWidget=new ai,this._messageListeners=new q,this._mouseOverMessage=!1,this._editor=e,this._visible=$d.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){if(go(ta(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),ta(e)){let n=this._messageListeners.add(kt(e,{actionHandler:(e,t)=>{this.closeMessage(),ud(this._openerService,e,t.isTrusted)}}));this._messageWidget.value=new nf(this._editor,t,n.element)}else this._messageWidget.value=new nf(this._editor,t,e);this._messageListeners.add(Yu.debounce(this._editor.onDidBlurEditorText,(e,t)=>t,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&Yt(pr(),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(w(this._messageWidget.value.getDomNode(),E.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(w(this._messageWidget.value.getDomNode(),E.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 d(t.lineNumber-3,1,e.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(nf.fadeOut(this._messageWidget.value))}};ef=$d=Zd([Qd(1,jc),Qd(2,ue)],ef);var tf=us.bindToContribution(ef.get);F(new tf({id:`leaveEditorMessage`,precondition:ef.MESSAGE_VISIBLE,handler:e=>e.closeMessage(),kbOpts:{weight:130,primary:9}}));var nf=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)}};X(ef.ID,ef,4);var rf=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},af=function(e,t){return function(n,r){t(n,r,e)}},of=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(){}}}},sf=class e extends of{static{this.id=`text`}constructor(){super(Gd.Empty.append(`text`,`plain`)),this.id=e.id,this.dropMimeTypes=[vo.text],this.pasteMimeTypes=[vo.text]}async getEdit(e,t){let n=e.get(vo.text);if(!n||e.has(vo.uriList))return;let r=await n.asString();return{handledMimeType:vo.text,title:k(980,`Insert Plain Text`),insertText:r,kind:this.kind}}},cf=class extends of{constructor(){super(Gd.Empty.append(`uri`,`path`,`absolute`)),this.dropMimeTypes=[vo.uriList],this.pasteMimeTypes=[vo.uriList]}async getEdit(e,t){let n=await df(e);if(!n.length||t.isCancellationRequested)return;let r=0,i=n.map(({uri:e,originalText:t})=>e.scheme===Hi.file?e.fsPath:(r++,t)).join(` `),a;return a=r>0?n.length>1?k(981,`Insert Uris`):k(982,`Insert Uri`):n.length>1?k(983,`Insert Paths`):k(984,`Insert Path`),{handledMimeType:vo.uriList,insertText:i,title:a,kind:this.kind}}},lf=class extends of{constructor(e){super(Gd.Empty.append(`uri`,`path`,`relative`)),this._workspaceContextService=e,this.dropMimeTypes=[vo.uriList],this.pasteMimeTypes=[vo.uriList]}async getEdit(e,t){let n=await df(e);if(!n.length||t.isCancellationRequested)return;let r=Xu(n.map(({uri:e})=>{let t=this._workspaceContextService.getWorkspaceFolder(e);return t?pd(t.uri,e):void 0}));if(r.length)return{handledMimeType:vo.uriList,insertText:r.join(` `),title:n.length>1?k(985,`Insert Relative Paths`):k(986,`Insert Relative Path`),kind:this.kind}}};lf=rf([af(0,nd)],lf);var uf=class{constructor(){this.kind=new Gd(`html`),this.providedPasteEditKinds=[this.kind],this.copyMimeTypes=[],this.pasteMimeTypes=[`text/html`],this._yieldTo=[{mimeType:vo.text}]}async provideDocumentPasteEdits(e,t,n,r,i){if(r.triggerKind!==ut.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:k(987,`Insert HTML`),kind:this.kind}]}}};async function df(e){let t=e.get(vo.uriList);if(!t)return[];let n=await t.asString(),r=[];for(let e of Ne.parse(n))try{r.push({uri:Gl.parse(e),originalText:e})}catch{}return r}var ff={scheme:`*`,hasAccessToAllModels:!0},pf=class extends x{constructor(e,t){super(),this._register(e.documentDropEditProvider.register(ff,new sf)),this._register(e.documentDropEditProvider.register(ff,new cf)),this._register(e.documentDropEditProvider.register(ff,new lf(t)))}};pf=rf([af(0,O),af(1,nd)],pf);var mf=class extends x{constructor(e,t){super(),this._register(e.documentPasteEditProvider.register(ff,new sf)),this._register(e.documentPasteEditProvider.register(ff,new cf)),this._register(e.documentPasteEditProvider.register(ff,new lf(t))),this._register(e.documentPasteEditProvider.register(ff,new uf))}};mf=rf([af(0,O),af(1,nd)],mf);var hf=class e{constructor(){this.value=``,this.pos=0}static{this._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13}}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}}},gf=class{constructor(){this._children=[]}appendChild(e){return e instanceof _f&&this._children[this._children.length-1]instanceof _f?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 Tf)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),``)}len(){return 0}},_f=class e extends gf{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new e(this.value)}},vf=class extends gf{},yf=class e extends vf{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 bf?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}},bf=class e extends gf{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof _f&&(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}},xf=class e extends gf{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 Sf&&!!e.elseValue)&&(r=this._replace([])),r}_replace(e){let t=``;for(let n of this._children)if(n instanceof Sf){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}},Sf=class e extends gf{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)}},Cf=class e extends vf{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 _f(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 wf(e,t){let n=[...e];for(;n.length>0;){let e=n.shift();if(!t(e))break;n.unshift(...e.children)}}var Tf=class e extends gf{get placeholderInfo(){if(!this._placeholders){let e=[],t;this.walk(function(n){return n instanceof yf&&(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 wf([e],e=>(t+=e.len(),!0)),t}enclosingPlaceholders(e){let t=[],{parent:n}=e;for(;n;)n instanceof yf&&t.push(n),n=n.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof Cf&&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){wf(this.children,e)}},Ef=class{constructor(){this._scanner=new hf,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 Tf;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 yf&&(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 yf(e.index);o.transform=e.transform;for(let e of i){let t=e.clone();o.appendChild(t),t instanceof yf&&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 yf(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 _f(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 yf(Number(t)):new Cf(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 yf(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new _f("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(r.index>0&&this._accept(7)){let t=new bf;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 _f(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 Cf(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new _f("${"+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 xf,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 _f(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 Sf(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 Sf(Number(r),n)),!0)}if(this._accept(11)){let t=this._until(4);if(t)return e.appendChild(new Sf(Number(r),void 0,t,void 0)),!0}else if(this._accept(12)){let t=this._until(4);if(t)return e.appendChild(new Sf(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 Sf(Number(r),void 0,t,n)),!0}}else{let t=this._until(4);if(t)return e.appendChild(new Sf(Number(r),void 0,void 0,t)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14&&(e.appendChild(new _f(this._scanner.tokenText(this._token))),this._accept(void 0),!0)}};function Df(e,t,n){return(typeof n.insertText==`string`?n.insertText===``:n.insertText.snippet===``)?{edits:n.additionalEdit?.edits??[]}:{edits:[...t.map(t=>new La(e,{range:t,text:typeof n.insertText==`string`?Ef.escape(n.insertText)+`$0`:n.insertText.snippet,insertAsSnippet:!0})),...n.additionalEdit?.edits??[]]}}function Of(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 kf(e,t){return t&&(e.stack||e.stacktrace)?k(33,`{0}: {1}`,jf(e),Af(e.stack)||Af(e.stacktrace)):jf(e)}function Af(e){return Array.isArray(e)?e.join(`
|
|
2
2
|
`):e}function jf(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`?k(34,`A system error occurred ({0})`,e.message):e.message||k(35,`An unknown error occurred. Please consult the log for more details.`)}function Mf(e=null,t=!1){if(!e)return k(36,`An unknown error occurred. Please consult the log for more details.`);if(Array.isArray(e)){let n=Xu(e),r=Mf(n[0],t);return n.length>1?k(37,`{0} ({1} errors in total)`,r,n.length):r}if(Kl(e))return e;if(e.detail){let n=e.detail;if(n.error)return kf(n.error,t);if(n.exception)return kf(n.exception,t)}return e.stack?kf(e,t):e.message?e.message:k(38,`An unknown error occurred. Please consult the log for more details.`)}var Nf=class extends x{constructor(e){super(),this._onChange=this._register(new K),this.onChange=this._onChange.event,this._checked=!!e.checked,this._title=e.title??e.ariaLabel,this.domNode=G(`button.monaco-switch`),this.domNode.type=`button`,this.domNode.setAttribute(`role`,`switch`),R(this.domNode,G(`.monaco-switch-thumb`)),this._register(Yo().setupDelayedHover(this.domNode,()=>({content:this._title,style:1}))),this.setAriaLabel(e.ariaLabel,e.title),this.disabled=!!e.disabled,this._applyState(),this._register(w(this.domNode,E.CLICK,e=>{Lu.stop(e,!0),!this.domNode.disabled&&(this._checked=!this._checked,this._applyState(),this._onChange.fire(this._checked))}))}get checked(){return this._checked}set checked(e){this._checked!==e&&(this._checked=e,this._applyState())}get disabled(){return this.domNode.disabled}set disabled(e){this.domNode.disabled=e}setAriaLabel(e,t=e){this.domNode.setAttribute(`aria-label`,e),this._title=t}_applyState(){this.domNode.setAttribute(`aria-checked`,String(this._checked)),this.domNode.classList.toggle(`checked`,this._checked)}},Pf=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},Ff=function(e,t){return function(n,r){t(n,r,e)}},If=class extends x{get enabled(){return this._enabled}set enabled(e){e?(this.el.setAttribute(`aria-disabled`,`false`),this.el.tabIndex=0,this.el.style.pointerEvents=`auto`,this.el.style.opacity=`1`,this.el.style.cursor=`pointer`,this._enabled=!1):(this.el.setAttribute(`aria-disabled`,`true`),this.el.tabIndex=-1,this.el.style.pointerEvents=`none`,this.el.style.opacity=`0.4`,this.el.style.cursor=`default`,this._enabled=!0),this._enabled=e}constructor(e,t,n={},r,i){super(),this._link=t,this._hoverService=r,this._enabled=!0,this.el=R(e,G(`a.monaco-link`,{tabIndex:t.tabIndex??0,href:t.href},t.label)),this.hoverDelegate=n.hoverDelegate??il(`mouse`),this.setTooltip(t.title),this.el.setAttribute(`role`,`button`);let a=this._register(new hr(this.el,`click`)),o=this._register(new hr(this.el,`keydown`)),s=Yu.chain(o.event,e=>e.map(e=>new Ul(e)).filter(e=>e.keyCode===3||e.keyCode===10)),c=this._register(new hr(this.el,Rr.Tap)).event;this._register(cd.addTarget(this.el));let l=Yu.any(a.event,s,c);this._register(l(e=>{this.enabled&&(Lu.stop(e,!0),n?.opener?n.opener(this._link.href):i.open(this._link.href,{allowCommands:!0}))})),this.enabled=!0}setTooltip(e){!this.hover&&e?this.hover=this._register(this._hoverService.setupManagedHover(this.hoverDelegate,this.el,e)):this.hover&&this.hover.update(e)}};If=Pf([Ff(3,xs),Ff(4,ue)],If);var 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=`acceptSelectedCodeAction`,Vf=`previewSelectedCodeAction`,Hf=new Set([Bf,Vf,`toggleSectionCodeAction`]),Uf=`actionList.remove`,Wf=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){}},Gf=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.container.classList.toggle(`has-label`,!!e.label),n.text.textContent=e.label??``}disposeTemplate(e){}};function Kf(e){return!!e.submenuActions?.length&&!e.hover?.content||!!e.hover?.expandable}function qf(e){return Kf(e)&&e.hover?.showIndicator!==!1}var Jf=class{get templateId(){return`action`}constructor(e,t,n,r,i,a,o,s,c,l,u,d){this._supportsPreview=e,this._onRemoveItem=t,this._onShowSubmenu=n,this._reservesSubmenuSpace=r,this._groupTitleByIndex=i,this._linkHandler=a,this._hideDefaultKeybindingTooltip=o,this._stopToolbarPointerPropagation=s,this._registerStandaloneToggle=c,this._registerToolbar=l,this._keybindingService=u,this._openerService=d}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`,r.ariaHidden=`true`,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 s=new Cr(e,Wn),c=document.createElement(`div`);c.className=`action-list-item-toolbar`,e.append(c);let l=document.createElement(`div`);l.className=`action-list-submenu-indicator`,e.append(l);let u=document.createElement(`div`);return u.className=`action-list-item-inline-toggle`,e.append(u),{container:e,icon:t,text:n,detail:o,badge:r,description:i,groupTitle:a,keybinding:s,toolbar:c,submenuIndicator:l,inlineToggleContainer:u,elementDisposables:new q}}renderElement(e,t,n){if(n.elementDisposables.clear(),e.iconClasses?.length?(n.icon.className=[`icon`,...e.iconClasses].join(` `),n.icon.style.color=``):e.group?.icon?(n.icon.className=V.asClassName(e.group.icon),n.icon.style.color=e.group.icon.color?Jt(e.group.icon.color.id):``):(n.icon.className=V.asClassName(N.lightBulb),n.icon.style.color=`var(--vscode-editorLightBulb-foreground)`),!e.item&&!e.standaloneToggle||!e.label)return;if(As(!e.hideIcon,n.icon),e.isSectionToggle){let t=e.group?.icon===N.chevronDown;n.container.setAttribute(`aria-expanded`,String(t))}else n.container.removeAttribute(`aria-expanded`);n.previousClassNames?.length&&n.container.classList.remove(...n.previousClassNames);let r=e.className?.split(/\s+/).filter(e=>e.length>0)??[];if(n.container.classList.toggle(`action-list-custom`,r.length>0),r.length&&n.container.classList.add(...r),n.previousClassNames=r,n.text.textContent=ep(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(jn(n.description),typeof e.description==`string`)n.description.textContent=ep(e.description);else{let t=kt(e.description,{actionHandler:t=>{let n=Gl.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 i=this._groupTitleByIndex.get(t);i?(n.groupTitle.textContent=i,n.groupTitle.style.display=``):(n.groupTitle.textContent=``,n.groupTitle.style.display=`none`),e.detail?(n.detail.textContent=ep(e.detail),n.detail.style.display=``):(n.detail.textContent=``,n.detail.style.display=`none`),n.container.classList.toggle(`has-detail`,!!e.detail),jn(n.inlineToggleContainer);let a=e.standaloneToggle??e.inlineToggle;if(a){let t=document.createElement(`span`);t.className=`action-list-item-inline-toggle-label`,t.textContent=ep(a.label),e.standaloneToggle||n.inlineToggleContainer.append(t),n.inlineToggleContainer.style.display=``,n.container.classList.toggle(`has-inline-toggle`,!!e.inlineToggle),n.container.classList.toggle(`has-standalone-toggle`,!!e.standaloneToggle);let r=n.elementDisposables.add(new Nf({ariaLabel:a.title??a.label,checked:a.checked,disabled:a.disabled}));n.inlineToggleContainer.append(r.domNode),e.standaloneToggle&&n.elementDisposables.add(this._registerStandaloneToggle(e,r)),n.elementDisposables.add(r.onChange(()=>a.onChange(r.checked))),n.elementDisposables.add(w(n.inlineToggleContainer,E.CLICK,e=>e.stopPropagation()))}else n.inlineToggleContainer.style.display=`none`,n.container.classList.remove(`has-inline-toggle`),n.container.classList.remove(`has-standalone-toggle`);let o=this._keybindingService.lookupKeybinding(Bf)?.getLabel(),s=this._keybindingService.lookupKeybinding(Vf)?.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:e.standaloneToggle||this._hideDefaultKeybindingTooltip?n.container.title=``:o&&s?this._supportsPreview&&e.canPreview?n.container.title=k(1731,`{0} to Apply, {1} to Preview`,o,s):n.container.title=k(1732,`{0} to Apply`,o):n.container.title=``:n.container.title=``,jn(n.toolbar);let c=[...e.toolbarActions??[]];if(e.onRemove&&c.push(nu({id:Uf,label:k(1733,`Remove`),class:V.asClassName(N.close),run:async()=>{await e.onRemove(),this._onRemoveItem?.(e)}})),n.container.classList.toggle(`has-toolbar`,c.length>0),c.length>0){let t=new aa(n.toolbar);n.elementDisposables.add(t),this._stopToolbarPointerPropagation?(n.elementDisposables.add(Ue(n.toolbar,e=>{e.preventDefault(),e.stopPropagation()})),n.elementDisposables.add(w(n.toolbar,E.CLICK,e=>e.stopPropagation())),n.elementDisposables.add(w(n.toolbar,Rr.Tap,e=>e.stopPropagation()))):n.elementDisposables.add(Ue(n.toolbar,e=>e.preventDefault())),t.push(c,{icon:!0,label:!1}),n.elementDisposables.add(this._registerToolbar(e,t))}qf(e)?(n.submenuIndicator.className=`action-list-submenu-indicator has-submenu `+V.asClassName(N.chevronRight),n.submenuIndicator.style.display=``,n.submenuIndicator.style.visibility=``,n.elementDisposables.add(w(n.submenuIndicator,E.CLICK,t=>{t.stopPropagation(),this._onShowSubmenu?.(e)}))):this._reservesSubmenuSpace()?(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`),Kf(e)?(n.container.setAttribute(`aria-haspopup`,e.hover?.expandable?`dialog`:`menu`),n.container.setAttribute(`aria-expanded`,`false`)):(n.container.removeAttribute(`aria-haspopup`),e.isSectionToggle||n.container.removeAttribute(`aria-expanded`))}disposeTemplate(e){e.keybinding.dispose(),e.elementDisposables.dispose()}};Jf=Lf([Rf(10,Hr),Rf(11,ue)],Jf);var Yf=class extends UIEvent{constructor(){super(`acceptSelectedAction`)}},Xf=class extends UIEvent{constructor(){super(`previewSelectedAction`)}};function Zf(e){if(e.kind===`action`)return e.label}var Qf=zf=class extends x{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 uo),this._submenuDisposables=this._register(new q),this._submenuHoverActionElements=[],this._itemMoveAnimation=this._register(new ai),this._collapsedSections=new Set,this._filterText=``,this._imeSessionInProgress=!1,this._isMeasuringWidth=!1,this._suppressHover=!1,this._hoverEnabled=!0,this._ignoreInitialHover=!0,this._hasLaidOut=!1,this._filterCts=this._register(new ai),this._groupTitleByIndex=new Map,this._standaloneToggles=new Map,this._itemToolbars=new Map,this._onDidRequestLayout=this._register(new K),this.onDidRequestLayout=this._onDidRequestLayout.event,this._visibleMenuItems=n,this._initialFocusItemId=this._options?.initialFocusItemId,this._filterText=this._options?.showFilter?this._options.initialFilterValue??``:``,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._options?.persistentHover&&(this._submenuContainer.style.boxSizing=`border-box`),this._submenuContainer.tabIndex=-1,this.domNode.append(this._submenuContainer),this._register(w(this._submenuContainer,`keydown`,e=>{if((e.key===`Enter`||e.key===` `)&&this._currentSubmenuElement?.hover?.tabThroughPanel){let t=ya(e.target)?e.target:void 0;if(t&&this._currentSubmenuElement.hover.getTabbableElements?.().includes(t)){e.stopPropagation();return}}if(e.key!==`ArrowLeft`&&e.key!==`Escape`)return;Lu.stop(e,!0);let t=e.key===`Escape`&&this._currentSubmenuWidget!==void 0;if(this._hideSubmenu(),t){this.hide();return}this._setKeyboardNavigation(!0),this._list.domFocus()})),this._register(w(this._submenuContainer,`mouseenter`,()=>{this._cancelSubmenuHide(),this._usesSubmenuPointerIntent()&&(this._cancelSubmenuShow(),this._resetSubmenuPointer())})),this._register(w(this._submenuContainer,`mouseleave`,()=>{this._scheduleSubmenuHide()})),this._register(w(this.domNode,E.MOUSE_LEAVE,()=>{this._cancelSubmenuShow(),this._resetSubmenuPointer()})),this._usesSubmenuPointerIntent()&&this._register(w(this.domNode,E.MOUSE_MOVE,e=>{ya(e.target)&&this._expandedTrigger?.contains(e.target)&&this._updateSubmenuPointer(e)})),this._register(h(()=>{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=()=>{let e=this._options?.reserveSubmenuSpace??!0;return e===`always`||e&&this._allMenuItems.some(qf)};this._list=this._register(new su(e,this.domNode,l,[new Jf(this._supportsPreview,e=>this._removeItem(e),e=>this._showSubmenuForItem(e),u,this._groupTitleByIndex,this._options?.linkHandler,this._options?.hideDefaultKeybindingTooltip??!1,this._options?.stopToolbarPointerPropagation??!1,(e,t)=>(this._standaloneToggles.set(e,t),h(()=>{this._standaloneToggles.get(e)===t&&this._standaloneToggles.delete(e)})),(e,t)=>(this._itemToolbars.set(e,t),this._updateToolbarFocusability(),h(()=>{this._itemToolbars.get(e)===t&&this._itemToolbars.delete(e)})),this._keybindingService,this._openerService),new Wf,new Gf],{keyboardSupport:!1,typeNavigationEnabled:!this._options?.showFilter&&!this._options?.onType,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:Zf},accessibilityProvider:{getAriaLabel:e=>{if(e.kind===`action`){let t=e.label?ep(e?.label):``;if(e.badge&&(t=t+`, `+ep(e.badge)),e.detail&&(t=t+`, `+ep(e.detail)),e.ariaDescription)t=t+`, `+ep(e.ariaDescription);else if(e.description){let n=typeof e.description==`string`?e.description:e.description.value;t=t+`, `+ep(n)}if(e.hover?.content&&!e.ariaDescription&&!e.description){let n=e.hover.content,r=typeof n==`string`?n:ta(n)?n.value:ya(n)?n.textContent??void 0:void 0;r&&(!e.detail||ep(e.detail)!==ep(r))&&(t=t+`, `+ep(r))}e.group?.title&&(t=t+`, `+e.group.title);let n=e.standaloneToggle??e.inlineToggle;return n&&(t=e.standaloneToggle?n.checked?k(1734,`{0}, on`,n.label):k(1735,`{0}, off`,n.label):t+`, `+(n.checked?k(1736,`{0}, on`,n.label):k(1737,`{0}, off`,n.label))),e.disabled&&(t=k(1738,`{0}, Disabled Reason: {1}`,t,e.disabled)),e.submenuActions?.length&&(t=k(1739,`{0}, use right arrow to access options`,t)),t}return null},getWidgetAriaLabel:()=>k(1740,`Action Widget`),getSetSize:()=>this._visibleMenuItems.filter(e=>e.kind===`action`).length,getPosInSet:(e,t)=>Math.max(this._visibleMenuItems.slice(0,t+1).filter(e=>e.kind===`action`).length,1),getRole:e=>{switch(e.kind){case`action`:return`option`;case`separator`:return`separator`;default:return`separator`}},getWidgetRole:()=>`listbox`,...i}})),this._list.style(Wa),this._register(this._list.onKeyDown(()=>this._setKeyboardNavigation(!0))),this._register(w(this._list.getHTMLElement(),E.MOUSE_MOVE,e=>{(e.movementX!==0||e.movementY!==0)&&this._setKeyboardNavigation(!1)})),this._register(this._list.onMouseClick(e=>this.onListClick(e))),this._register(this._list.onMouseOver(e=>{this._ignoreInitialHover||this.onListHover(e)}));let d=this._register(new ai);if(d.value=this._list.onMouseMove(e=>{(e.browserEvent.movementX!==0||e.browserEvent.movementY!==0)&&(d.clear(),this._ignoreInitialHover=!1,this.onListHover(e))}),this._register(this._list.onMouseDown(()=>{d.clear(),this._ignoreInitialHover=!1,this._setKeyboardNavigation(!1)})),this._register(this._list.onDidChangeFocus(()=>{this._updateToolbarFocusability(),this.onFocus()})),this._register(this._list.onDidChangeSelection(e=>this.onListSelection(e))),this._register(this._list.onDidScroll(()=>{this._isMeasuringWidth||this._layoutSubmenu?.()})),this._allMenuItems=[...n],this._options?.showFilter||this._options?.secondaryHeading){this._filterContainer=document.createElement(`div`),this._filterContainer.className=`action-list-filter`;let e=R(this._filterContainer,G(`.action-list-filter-row`));if(this._options?.showFilter){if(this._filterInput=document.createElement(`input`),this._filterInput.type=`text`,this._filterInput.className=`action-list-filter-input`,this._filterInput.placeholder=this._options?.filterPlaceholder??k(1741,`Search...`),this._filterInput.value=this._filterText,this._filterInput.setAttribute(`aria-label`,k(1742,`Filter items`)),e.appendChild(this._filterInput),this._register(w(this._filterInput,E.KEY_DOWN,e=>{if(this._setKeyboardNavigation(!0),e.isComposing||!this._filterInput?.closest(`.action-list-submenu-panel`))return;let t=this._keybindingService.softDispatch(new Ul(e),this._filterInput);(t.kind===2&&t.commandId!==null&&Hf.has(t.commandId)||e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey)&&e.stopPropagation()})),this._register(w(this._filterInput,E.MOUSE_DOWN,()=>this._setKeyboardNavigation(!1))),this._options.tabThroughItemActions&&this._register(w(this._filterInput,`keydown`,e=>this._handleTabThroughPanelKeyDown(e),!0)),this._options.filterAsCombobox){let e=this._list.getHTMLElement();e.id=this._list.domId,this._filterInput.setAttribute(`role`,`combobox`),this._filterInput.setAttribute(`aria-label`,this._filterInput.placeholder),this._filterInput.setAttribute(`aria-autocomplete`,`list`),this._filterInput.setAttribute(`aria-expanded`,`true`),this._filterInput.setAttribute(`aria-controls`,e.id),this._register(this._list.onDidChangeFocus(()=>this._updateFilterActiveDescendant())),this._register(w(this._filterInput,`focus`,()=>this._updateFilterActiveDescendant())),this._register(w(this._filterInput,`blur`,()=>this._updateFilterActiveDescendant())),this._register(m(this._filterInput,`keydown`,e=>{if(this._imeSessionInProgress||e.browserEvent.isComposing||e.keyCode===114||e.keyCode===15||e.keyCode===17||e.keyCode===14||e.keyCode===13){e.stopPropagation();return}let t=e.keyCode===16||e.keyCode===18;if(t||e.keyCode===3){if(e.ctrlKey||e.metaKey||e.altKey||e.shiftKey){t&&e.stopPropagation();return}Lu.stop(e,!0),e.keyCode===16?this.focusPrevious():e.keyCode===18?this.focusNext():this.acceptSelected()}}))}let t=this._options?.filterActions??[];if(t.length>0){let n=R(e,G(`.action-list-filter-actions`));this._register(new aa(n)).push(t,{icon:!0,label:!1})}let n=()=>{let e=this._filterInput.value;this._imeSessionInProgress||e===this._filterText&&!this._filterCts.value?.token.isCancellationRequested||(this._filterText=e,this._applyOrUpdateFilter())};this._register(w(this._filterInput,`compositionstart`,()=>{this._imeSessionInProgress=!0,this._filterCts.value?.cancel()})),this._register(w(this._filterInput,`compositionend`,()=>{this._imeSessionInProgress=!1,n()})),this._register(w(this._filterInput,`input`,n))}if(this._options?.secondaryHeading){let t=R(e,G(`.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=R(this._headerContainer,G(`span.action-list-header-icon`));e.classList.add(...V.asClassNameArray(this._options.headerIcon)),e.setAttribute(`aria-hidden`,`true`)}let e=R(this._headerContainer,G(`span.action-list-header-text`));if(e.textContent=this._options.headerText,this._register(w(this._headerContainer,E.MOUSE_ENTER,()=>{this._options?.persistentHover?(this._cancelSubmenuShow(),this._resetSubmenuPointer()):this._hideSubmenu()})),this._options.headerLink){let{label:t,uri:n}=this._options.headerLink;e.textContent+=` `,this._register(this._instantiationService.createInstance(If,e,{label:t,href:n.toString(!0)},{}))}if(this._options.headerDismiss){let e=this._options.headerDismiss,t=R(this._headerContainer,G(`span.action-list-header-dismiss`));t.appendChild(G(V.asCSSSelector(N.close))),t.tabIndex=0,t.setAttribute(`role`,`button`),t.setAttribute(`aria-label`,k(1743,`Dismiss`));let n=()=>{e(),this.focus(),this._headerContainer?.remove(),this._headerContainer=void 0,this._onDidRequestLayout.fire()};this._register(Ae(t,()=>n())),this._register(w(t,E.KEY_DOWN,e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n())}))}}this._applyFilter(),this._list.length&&this._focusCheckedOrFirst(),this._register(w(this.domNode,`keydown`,e=>{if(e.key===`ArrowRight`&&!e.isComposing){let t=this._list.getFocus();if(t.length>0){let n=this._list.element(t[0]);if(n?.submenuActions?.length||n?.hover?.expandable){Lu.stop(e,!0);let r=this._getRowElement(t[0]);r&&(this._showSubmenuForElement(n,r),n.hover?.tabThroughPanel?this._focusFirstTabThroughPanelControl(n,r):this._currentSubmenuWidget?this._currentSubmenuWidget.focus():this._submenuContainer.focus())}}}})),this._register(w(this.domNode,`keydown`,e=>this._handleTabThroughPanelKeyDown(e),!0)),(this._filterInput||this._options?.onType)&&this._register(w(this.domNode,`keydown`,e=>{let t=e.target;(this._options?.onType||this._options?.filterAsCombobox)&&ya(t)&&(Zi(t)||t.closest(`button, a, [contenteditable="true"], .action-list-submenu-panel`))||(!this._filterInput||!fl(this._filterInput))&&!e.isComposing&&e.key.length===1&&e.key!==` `&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&(e.preventDefault(),e.stopPropagation(),this._filterInput?(this._filterInput.focus(),this._filterInput.value=e.key,this._filterText=e.key,this._applyOrUpdateFilter()):this._options?.onType?.(e.key))}))}_toggleSection(e){let t=this._collapsedSections.has(e);if(t)this._collapsedSections.delete(e);else{this._collapsedSections.add(e);let t=this.getFocusedElement();if(t?.section===e&&!t.isSectionToggle){let t=this._visibleMenuItems.findIndex(t=>t.section===e&&t.isSectionToggle);t>=0&&this._list.setFocus([t])}}this._options?.onDidToggleSection?.(e,this._collapsedSections.has(e)),this._applyFilter(),t&&this._revealFirstItemOfSection(e)}_revealFirstItemOfSection(e){for(let t=0;t<this._list.length;t++){let n=this._list.element(t);if(n.section===e&&!n.isSectionToggle){this._list.reveal(t);return}}}_applyOrUpdateFilter(){if(!this._delegate.onFilter){this._applyFilter();return}let e=this._filterText;this._filterCts.value?.cancel();let t=new uo;this._filterCts.value=t,this._delegate.onFilter(e,t.token).then(e=>{t.token.isCancellationRequested||(this._allMenuItems=[...e],this._applyFilter(!0))}).catch(()=>{}).finally(()=>{this._filterCts.value===t&&!t.token.isCancellationRequested&&this._filterCts.clear()})}_applyFilter(e=!1,t=!0,n){this._itemMoveAnimation.clear();let r=e?``:this._filterText.toLowerCase(),i=!e&&r.length>0,a=[],o=this._list.getFocus(),s;if(o.length>0&&(s=this._list.element(o[0])),i){let e,t=[],n=!1,i=()=>{e&&n&&a.push(e),a.push(...t),e=void 0,t=[],n=!1},o=e=>{let t=(e.label??``).toLowerCase(),n=typeof e.description==`string`?e.description:e.description?.value??``;return t.includes(r)||n.toLowerCase().includes(r)};for(let r of this._allMenuItems)if(r.kind!==`header`){if(r.kind===`separator`){i(),e=r.label?r:void 0;continue}if(r.showAlways){t.push(r);continue}if(!r.isSectionToggle){if(r.filterItems){let e=o(r)?r.filterItems:r.filterItems.filter(o);e.length>0&&(n=!0,t.push(...e));continue}o(r)&&(n=!0,t.push(r))}}i()}else for(let e of this._allMenuItems){if(e.kind===`header`){a.push(e);continue}if(e.kind===`separator`){if(e.section&&this._collapsedSections.has(e.section))continue;a.push(e);continue}if(e.isSectionToggle&&e.section){let t=this._collapsedSections.has(e.section);a.push({...e,group:{...e.group,icon:t?N.chevronRight:N.chevronDown}});continue}e.section&&this._collapsedSections.has(e.section)||a.push(e)}let c=[],l=!1;for(let e=0;e<a.length;e++)c[e]=l,a[e].kind===`action`&&(l=!0);let u=[],d=!1;for(let e=a.length-1;e>=0;e--){if(a[e].kind===`action`){d=!0;continue}a[e].kind===`separator`&&(u[e]=d,d=!1)}for(let e=a.length-1;e>=0;e--){let t=a[e];if(t.kind!==`separator`)continue;let n=u[e],r=!t.label&&!c[e];(!n||r)&&a.splice(e,1)}this._options?.showGroupTitleOnFirstItem&&this._recomputeGroupTitles(a);let f=this._filterInput&&fl(this._filterInput),p=ca(this._list.getHTMLElement());if(this._visibleMenuItems=a,this._list.splice(0,this._list.length,a),t&&this._onDidRequestLayout.fire(),f)this._filterInput?.focus(),this._focusCheckedOrFirst();else if(this._hasLaidOut&&(s||n)){let e=n??s?.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);break}p&&(this._focusCheckedOrFirst(),this._list.domFocus())}}}get filterContainer(){return this._filterContainer}get footerContainer(){return this._footerContainer}get headerContainer(){return this._headerContainer}get filterInput(){return this._filterInput}get closeAnimation(){return this._options?.closeAnimation}focusCondition(e){return!e.disabled&&e.kind===`action`}_setKeyboardNavigation(e){if(this._keyboardNavigation===e)return;this._keyboardNavigation=e;let t=this._list.getHTMLElement();t.classList.toggle(`keyboard-navigation`,e===!0),t.classList.toggle(`mouse-navigation`,e===!1)}_updateFilterActiveDescendant(){if(!this._filterInput)return;let[e]=this._list.getFocus();fl(this._filterInput)&&e!==void 0?this._filterInput.setAttribute(`aria-activedescendant`,this._list.getElementID(e)):this._filterInput.removeAttribute(`aria-activedescendant`)}focus(){if(this._setKeyboardNavigation(void 0),this._filterInput&&this._options?.focusFilterOnOpen){this._filterInput.focus(),this._focusCheckedOrFirst();return}this._list.domFocus(),this._focusCheckedOrFirst(),this._showTabThroughPanelForFocusedItem()}clearFocus(){this._list.setFocus([])}getFocusedElement(){let e=this._list.getFocus();if(e.length>0)return this._list.element(e[0])}_updateToolbarFocusability(){if(!this._options?.tabThroughItemActions)return;let[e]=this._list.getFocus(),t=e!==void 0&&e<this._list.length?this._list.element(e):void 0;for(let[e,n]of this._itemToolbars)n.setFocusable(e===t)}_focusCheckedOrFirst(){let e=this._suppressHover;this._suppressHover=!0;try{let e=this._initialFocusItemId;if(this._initialFocusItemId=void 0,e)for(let t=0;t<this._list.length;t++){let n=this._list.element(t);if(this.focusCondition(n)&&n.item?.id===e){this._list.setFocus([t]),this._list.reveal(t);return}}let[t]=this._list.getFocus();if(t!==void 0){let e=this._list.element(t);if(e&&this.focusCondition(e)){this._list.reveal(t);return}}for(let e=0;e<this._list.length;e++){let t=this._list.element(e);if(this.focusCondition(t)&&t.item?.checked){this._list.setFocus([e]),this._list.reveal(e);return}}this._list.focusFirst(void 0,this.focusCondition);let n=this._list.getFocus();n.length>0&&this._list.reveal(n[0])}finally{this._suppressHover=e,this._options?.filterAsCombobox&&this._updateFilterActiveDescendant()}}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){return this._itemHeightWith(e,this._options)}_itemHeightWith(e,t){switch(e.kind){case`header`:return this._headerLineHeight;case`separator`:return e.label?this._actionLineHeight:this._separatorLineHeight;default:return e.inlineToggle?t?.inlineToggleItemHeight??70:e.detail?t?.detailItemHeight??48:this._actionLineHeight}}computeFullHeight(){return this.computeHeightForItems(this._allMenuItems,void 0,this._options)}computeHeightForItems(e,t,n){let r=0;for(let i of e)t&&i.section&&!i.isSectionToggle&&t.has(i.section)||(r+=this._itemHeightWith(i,n));return r}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`;let n=this.domNode.parentElement;n&&this._filterContainer?.parentElement===n&&n.insertBefore(this._filterContainer,this.domNode),this._layoutSubmenu?.()}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=this._allMenuItems.length;if(o>=50)return a(380);if(o>t){let e=[];for(let n=0;n<t;n++)e.push(this._list.element(n));let n=this._list.renderHeight,r=this._list.scrollTop,i=this._list.getFocus(),o=this._isMeasuringWidth;this._isMeasuringWidth=!0;try{let e=[...this._allMenuItems];this._list.splice(0,t,e);let n=0;for(let t of e)n+=this._getItemHeight(t);this._list.layout(n);let r=this._measureItemWidths(e);return a(Math.max(...r))}finally{try{this._list.splice(0,this._list.length,e),this._list.layout(n),this._list.scrollTop=r;let t=this._suppressHover;this._suppressHover=!0;try{this._list.setFocus(i)}finally{this._suppressHover=t}}finally{this._isMeasuringWidth=o}}}let s=[];for(let e=0;e<t;e++)s.push(this._list.element(e));let c=this._measureItemWidths(s);return a(Math.max(...c))}focusPrevious(){if(this._setKeyboardNavigation(!0),this._focusFilterResult(`previous`))return;if(this._filterInput&&fl(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._setKeyboardNavigation(!0),this._focusFilterResult(`next`))return;if(this._filterInput&&fl(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])}}_focusFilterResult(e){if(!this._options?.filterAsCombobox||!this._filterInput||!fl(this._filterInput))return!1;e===`previous`?this._list.focusPrevious(1,!0,void 0,this.focusCondition):this._list.focusNext(1,!0,void 0,this.focusCondition);let[t]=this._list.getFocus();return t!==void 0&&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 Xf:new Yf;this._list.setSelection([n],i)}onListSelection(e){if(!e.elements.length)return;let t=e.elements[0];if(t.standaloneToggle){this._list.setSelection([]);let e=this._standaloneToggles.get(t);e&&!e.disabled&&(e.checked=!e.checked,t.standaloneToggle.onChange(e.checked));return}if(t.isSectionToggle&&t.section){this._list.setSelection([]);let e=t.section;queueMicrotask(()=>{this._toggleSection(e)});return}let n=Tr(e.browserEvent)||e.browserEvent?.type===Rr.Tap;if(n){let t=e.browserEvent.target;if(ya(t)&&(t.closest(`.action-list-item-toolbar`)||t.closest(`.action-list-submenu-indicator`)||t.closest(`.action-list-item-inline-toggle`))){this._list.setSelection([]);return}}if(t.openSubmenuOnClick&&t.submenuActions?.length&&(n||e.browserEvent instanceof Yf)){this._list.setSelection([]),this._showSubmenuForItem(t),n||this._currentSubmenuWidget?.focus();return}if(t.item&&this.focusCondition(t)){let n=e.browserEvent instanceof Xf;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._options?.persistentHover&&(this._cancelSubmenuShow(),this._resetSubmenuPointer(),this._list.reveal(t)),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))}}_measureItemWidths(e){let t=[];for(let n=0;n<e.length;n++){let r=this._getRowElement(n);r&&(r.style.width=`auto`,t.push({element:r,item:e[n]}))}try{return t.map(({element:e,item:t})=>e.getBoundingClientRect().width+(t.detail?0:this._computeToolbarWidth(t)))}finally{for(let{element:e}of t)e.style.width=``}}_computeToolbarWidth(e){let t=e.toolbarActions?.length??0;return e.onRemove&&t++,t===0?0:t*22+6+10}_getRowElement(e){return e<0?null:this.domNode.ownerDocument.getElementById(this._list.getElementID(e))}_showTabThroughPanelForFocusedItem(){let e=this._list.getFocus();if(e.length===0)return;let t=e[0],n=this._list.element(t);if(!n.hover?.tabThroughPanel)return;let r=this._getRowElement(t);r&&this._showSubmenuForElement(n,r)}_getTabThroughPanelControls(e,t){return e.hover?.tabThroughPanel&&this._currentSubmenuElement!==e&&this._showSubmenuForElement(e,t),{toolbar:this._itemToolbars.get(e),panelControls:[...e.hover?.getTabbableElements?.()??[],...this._submenuHoverActionElements]}}_focusFirstTabThroughPanelControl(e,t){let n=this._getTabThroughPanelControls(e,t);n.toolbar?.length()?n.toolbar.focus(0):(n.panelControls[0]??this._list.getHTMLElement()).focus()}_handleTabThroughPanelKeyDown(e){if(e.isComposing)return;let t=this._list.getFocus();if(t.length===0)return;let n=t[0],r=this._list.element(n);if(!r.hover?.tabThroughPanel&&!this._options?.tabThroughItemActions)return;let i=this._getRowElement(n),a=pr();if(!i||!ya(a))return;let o=this._getTabThroughPanelControls(r,i),s=o.toolbar?.isFocused()??!1,c=this._submenuContainer.contains(a);if((e.key===`ArrowUp`||e.key===`ArrowDown`)&&(s||c)){Lu.stop(e,!0),this._list.domFocus(),e.key===`ArrowUp`?this.focusPrevious():this.focusNext();return}if(e.key!==`Tab`||e.ctrlKey||e.metaKey||e.altKey)return;let l;if(e.shiftKey){if(c){let t=o.panelControls.indexOf(a);if(t>0)l=o.panelControls[t-1];else if(o.toolbar?.length()){Lu.stop(e,!0),o.toolbar.focus(o.toolbar.length()-1);return}else l=this._list.getHTMLElement()}else if(o.toolbar?.isFocused()){let t=o.toolbar.viewItems.findIndex((e,t)=>o.toolbar?.isFocused(t));if(t>0){Lu.stop(e,!0),o.toolbar.focus(t-1);return}l=this._options?.filterAsCombobox?this._filterInput:this._list.getHTMLElement()}}else if(a===this._list.getHTMLElement()||a===this._filterInput){if(o.toolbar?.length()){Lu.stop(e,!0),o.toolbar.focus(0);return}l=o.panelControls[0]}else if(o.toolbar?.isFocused()){let t=o.toolbar.viewItems.findIndex((e,t)=>o.toolbar?.isFocused(t));if(t+1<o.toolbar.length()){Lu.stop(e,!0),o.toolbar.focus(t+1);return}l=o.panelControls[0]}else{let e=o.panelControls.indexOf(a);e>=0&&(l=o.panelControls[e+1]??this._list.getHTMLElement())}l&&(Lu.stop(e,!0),l.focus())}_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._options?.persistentHover||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._hoverEnabled||this._currentSubmenuElement===e)return;this._currentSubmenuElement=e,this._clearSubmenuContainer(),t.setAttribute(`aria-expanded`,`true`),this._expandedTrigger=t,this._submenuPanelClassName=e.hover?.panelClassName,this._submenuPanelClassName&&this._submenuContainer.classList.add(this._submenuPanelClassName);let n=e.hover?.preserveVerticalPosition,r=!!e.submenuActions?.length,i=n?G(`.action-list-submenu-content`):this._submenuContainer,a=n?G(`.action-list-submenu-viewport`,void 0,i):void 0,o=a&&!r?this._submenuDisposables.add(new rt(a,{horizontal:2,vertical:1,consumeMouseWheelIfScrollbarIsNeeded:!0,useShadows:!1})):void 0;o&&a?(this._submenuContainer.appendChild(o.getDomNode()),this._submenuDisposables.add(w(a,E.SCROLL,()=>o.scanDomNode())),this._submenuDisposables.add(w(this._submenuContainer,E.KEY_DOWN,e=>{let t=new Ul(e);(t.equals(12)||t.equals(11))&&(Lu.stop(e,!0),o.setScrollPosition({scrollTop:o.getScrollPosition().scrollTop+(t.equals(12)?1:-1)*a.clientHeight}))}))):a&&this._submenuContainer.appendChild(a);let s,c=typeof e.hover?.content==`function`?e.hover.content():e.hover?.content;if(c){if(ya(c))s=c,e.hover?.disposable&&this._register(e.hover.disposable);else{let t=typeof c==`string`?new gl(c):c,n=this._options?.linkHandler,r=kt(t,{actionHandler:t=>{let r=Gl.parse(t);n?n(r,e):this._openerService.open(r,{allowCommands:!0})}});this._submenuDisposables.add(r),s=r.element}s.classList.add(`action-list-submenu-hover-header`),s.classList.toggle(`content-owns-padding`,e.hover?.contentOwnsPadding===!0),e.submenuActions?.length&&s.classList.add(`has-submenu`),i.appendChild(s)}if(e.hover?.actions?.length){let t=G(`.hover-row.status-bar`),n=R(t,G(`.actions`));for(let t of e.hover.actions){let e=this._keybindingService.lookupKeybinding(t.commandId),r=this._submenuDisposables.add(gc.render(n,{label:t.label,commandId:t.commandId,run:e=>t.run(e),iconClass:t.iconClass},e?.getLabel()??null));this._submenuHoverActionElements.push(r.actionContainer)}this._submenuContainer.appendChild(t)}this._submenuContainer.style.display=``,this._submenuContainer.style.position=`absolute`,e.hover?.expandable?(this._submenuContainer.setAttribute(`role`,`dialog`),e.label&&this._submenuContainer.setAttribute(`aria-label`,e.label)):this._submenuContainer.removeAttribute(`role`);let l=Bi(this.domNode),u=0,d=s?s.offsetWidth:0,f;if(r){let t=this._createSubmenuItems(e.submenuActions),n=this._submenuDisposables.add(this._instantiationService.createInstance(zf,`submenu`,!1,t,{onHide:()=>{},onSelect:e=>{e.run();let t=this._currentSubmenuElement?.item;this._hideSubmenu(),t&&this._delegate.onSelect(t),this.hide()}},void 0,e.submenuOptions));f=n,n.headerContainer&&i.appendChild(n.headerContainer),n.filterContainer&&i.appendChild(n.filterContainer),i.appendChild(n.domNode),n.footerContainer&&i.appendChild(n.footerContainer),this._currentSubmenuWidget=n,n.clearFocus(),u=n.computeListHeight(),n.layout(u);let r=n.computeMaxWidth(0);d=Math.max(d,r,n.footerContainer?.offsetWidth??0),n.layout(u,d),n.domNode.style.width=`${d}px`,e.submenuOptions&&(this._submenuContainer.style.boxSizing=`border-box`,this._submenuContainer.style.width=`${d+10}px`),this._submenuDisposables.add(n.onDidRequestLayout(()=>{u=n.computeListHeight(),n.layout(u,d),this._layoutSubmenu?.()})),this._submenuDisposables.add(w(i,`keydown`,e=>{e.key===`Escape`?(Lu.stop(e,!0),this._hideSubmenu(),this.hide()):e.key===`ArrowLeft`?(Lu.stop(e,!0),this._hideSubmenu(),this._setKeyboardNavigation(!0),this._list.domFocus()):e.key===`Enter`||e.key===` `?(Lu.stop(e,!0),n.acceptSelected()):e.key===`ArrowDown`?(Lu.stop(e,!0),n.focusNext()):e.key===`ArrowUp`&&(Lu.stop(e,!0),n.focusPrevious())}))}let p,m,h=()=>{let e=this._currentSubmenuElement;if(!e||this._layoutSubmenu!==h)return;let t=this._list.indexOf(e),r=t>=0?this._getRowElement(t):null,s=this._options?.persistentHover;if(!r&&(!s||!this._allMenuItems.includes(e))){this._hideSubmenu();return}this._expandedTrigger!==r&&(this._expandedTrigger?.hasAttribute(`aria-expanded`)&&this._expandedTrigger.setAttribute(`aria-expanded`,`false`),this._expandedTrigger=r??void 0),r?.setAttribute(`aria-expanded`,`true`);let c=this.domNode.getBoundingClientRect(),g=s||e.hover?.alignToParent,_=g?this.domNode.parentElement?.closest(`.action-widget`)?.getBoundingClientRect()??c:c,v=r?.getBoundingClientRect()??_,y=g||n?od(this.domNode):1;s&&(this._submenuContainer.style.width=`${_.width/y}px`);let b=this._submenuContainer.getBoundingClientRect(),ee=g?b.width:d+10,te=l.innerWidth-(g?_.right:v.right),ne=_.left,re=g?0:4;if(!g){let e=l.innerWidth-8;ee>e&&(ee=Math.max(e,0)),this._submenuContainer.style.boxSizing=`border-box`,this._submenuContainer.style.width=`${ee}px`}let ie=te>=ee||te>=ne;s&&this._submenuSide&&(this._submenuSide===`right`?te:ne)>=ee&&(ie=this._submenuSide===`right`),s&&(this._submenuSide=ie?`right`:`left`);let ae=ie?_.right-c.left+re:_.left-c.left-ee-re,oe=c.left+ae;oe<4?ae+=4-oe:oe+ee>l.innerWidth-4&&(ae-=oe+ee-(l.innerWidth-4)),this._submenuContainer.style.left=`${ae/y}px`;let se=b.height;n&&(p??=se/y);let ce=p===void 0?se:p*y,le=m===void 0?r&&e.hover?.alignToAnchorTop?v.top-c.top:r?v.top-c.top+(v.height-ce)/2:b.top-c.top:m*y;if(n&&e.hover?.alignToAnchorTop&&a&&f){let e=b.height-a.getBoundingClientRect().height+((f.headerContainer?.offsetHeight??0)+(f.filterContainer?.offsetHeight??0)+(f.footerContainer?.offsetHeight??0)+u)*y;le=Math.min(le,l.innerHeight-c.top-e-8)}let ue=c.top+le+ce;if(ue>l.innerHeight&&!(n&&e.hover?.alignToAnchorTop)&&(le-=ue-l.innerHeight+8),c.top+le<0&&(le=-c.top),n&&(m??=le/y),a&&o){let e=(b.height-o.getDomNode().getBoundingClientRect().height)/y,t=Math.max(0,(l.innerHeight-c.top-le-8)/y-e);a.style.height=`${Math.min(i.getBoundingClientRect().height/y,t)}px`,o.scanDomNode()}else if(a&&f){let e=(b.height-a.getBoundingClientRect().height)/y,t=Math.max(0,(l.innerHeight-c.top-le-8)/y-e),n=(f.headerContainer?.offsetHeight??0)+(f.filterContainer?.offsetHeight??0)+(f.footerContainer?.offsetHeight??0),r=u===0?0:Math.max(this._actionLineHeight,Math.min(u,t-n));f.layout(r,d),a.style.height=`${n+r}px`}this._submenuContainer.style.top=`${le/y}px`};if(this._layoutSubmenu=h,h(),(this._options?.persistentHover||e.hover?.alignToParent||e.hover?.tabThroughPanel||n)&&this._currentSubmenuElement===e){if(!f){let e=this._submenuDisposables.add(new ai),t=this._submenuDisposables.add(new Qa(`ActionListWidget.hoverPanel`,()=>{e.value||=El(l,()=>{e.clear(),h()})},l));this._submenuDisposables.add(t.observe(n?i:this._submenuContainer,{box:`border-box`}))}(this._options?.persistentHover||n)&&this._submenuDisposables.add(w(l,E.RESIZE,()=>{this._cancelSubmenuShow(),this._resetSubmenuPointer(),h()}))}}_createSubmenuItems(e){let t=[],n=e.filter(e=>e instanceof lc).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 of r.actions){let n=e,r=n.icon??V.fromId(e.checked?N.check.id:N.blank.id),i=n.hoverContent,a=i?new gl().appendText(`${e.label}\n`).appendMarkdown(i):void 0;t.push({item:e,kind:`action`,label:e.label,description:e.tooltip&&e.tooltip!==e.label?e.tooltip:void 0,group:{title:``,icon:r},hideIcon:!1,hover:a?{content:a}:void 0,tooltip:e.tooltip||e.label,onRemove:n.onRemove,submenuActions:e instanceof lc?[new lc(e.id,``,e.actions)]:void 0})}e<n.length-1&&t.push({kind:`separator`,label:``})}for(let n of e)if(!(n instanceof lc)){let e=n,r=e.icon??V.fromId(n.checked?N.check.id:N.blank.id),i=e.hoverContent,a=i?new gl().appendText(`${n.label}\n`).appendMarkdown(i):void 0;t.push({item:n,kind:`action`,label:n.label,description:n.tooltip&&n.tooltip!==n.label?n.tooltip:void 0,group:{title:``,icon:r},hideIcon:!1,hover:a?{content:a}:void 0,tooltip:n.tooltip||n.label,onRemove:e.onRemove})}return t}_hideSubmenu(){this._cancelSubmenuHide(),this._cancelSubmenuShow(),this._currentSubmenuElement=void 0,this._submenuSide=void 0,this._clearSubmenuContainer(),this._submenuContainer.style.display=`none`}_clearSubmenuContainer(){this._layoutSubmenu=void 0,this._resetSubmenuPointer(),this._submenuContainer.contains(pr())&&this._list.domFocus(),this._submenuDisposables.clear(),this._currentSubmenuWidget=void 0,this._submenuHoverActionElements=[],this._submenuPanelClassName&&=(this._submenuContainer.classList.remove(this._submenuPanelClassName),void 0),this._submenuContainer.removeAttribute(`role`),this._submenuContainer.removeAttribute(`aria-label`),this._expandedTrigger?.hasAttribute(`aria-expanded`)&&this._expandedTrigger.setAttribute(`aria-expanded`,`false`),this._expandedTrigger=void 0,jn(this._submenuContainer),this._submenuContainer.style.width=``,this._submenuContainer.style.boxSizing=this._options?.persistentHover?`border-box`:``}_scheduleSubmenuHide(){this._cancelSubmenuHide(),!this._options?.persistentHover&&(this._submenuHideTimeout=setTimeout(()=>{this._hideSubmenu()},300))}_cancelSubmenuHide(){this._submenuHideTimeout!==void 0&&(clearTimeout(this._submenuHideTimeout),this._submenuHideTimeout=void 0)}_scheduleSubmenuShow(e,t){this._cancelSubmenuShow();let n=this._options?.submenuHoverDelay??500;if(this._usesSubmenuPointerIntent()){n=0;let e=this._submenuPointerOrigin;if(e&&t.clientX!==e.x&&this._currentSubmenuElement&&new Eu(e.x,e.y,this._submenuContainer).contains(t.clientX,t.clientY)){let e=Date.now();this._submenuPointerGraceDeadline??=e+200,n=Math.max(0,this._submenuPointerGraceDeadline-e)}}let r=()=>{this._submenuShowTimeout=void 0;let n=this._list.indexOf(e),r=n>=0?this._getRowElement(n):null;r&&(this._showSubmenuForElement(e,r),this._usesSubmenuPointerIntent()&&this._updateSubmenuPointer(t))};n===0?r():this._submenuShowTimeout=setTimeout(r,n)}_updateSubmenuPointer(e){this._submenuPointerOrigin={x:e.clientX,y:e.clientY},this._submenuPointerGraceDeadline=void 0}_resetSubmenuPointer(){this._submenuPointerOrigin=void 0,this._submenuPointerGraceDeadline=void 0}_usesSubmenuPointerIntent(){return this._options?.persistentHover===!0||this._options?.submenuPointerIntent===!0}_cancelSubmenuShow(){this._submenuShowTimeout!==void 0&&(clearTimeout(this._submenuShowTimeout),this._submenuShowTimeout=void 0)}async onListHover(e){this._setKeyboardNavigation(!1);let t=e.element;if(t&&t.item&&this.focusCondition(t)){let n=typeof e.index==`number`?[e.index]:[],r=pr();if(this._options?.tabThroughItemActions&&this._list.getFocus()[0]!==e.index&&ya(r)&&this.domNode.contains(r)&&r.closest(`.action-list-item-toolbar`)&&this._list.domFocus(),ya(e.browserEvent.target)&&e.browserEvent.target.closest(`.action-list-item-toolbar`)!==null){t.submenuActions?.length||this._cancelSubmenuShow(),this._list.setFocus(this._options?.tabThroughItemActions?n:[]);return}let i=!!(t.submenuActions?.length||t.hover?.content),a=this._suppressHover;(i||this._usesSubmenuPointerIntent())&&(this._suppressHover=!0);try{this._list.setFocus(n)}finally{this._suppressHover=a}if(i){this._currentSubmenuElement===t?(this._cancelSubmenuHide(),this._cancelSubmenuShow(),this._usesSubmenuPointerIntent()&&this._updateSubmenuPointer(e.browserEvent)):(this._usesSubmenuPointerIntent()||this._hideSubmenu(),this._scheduleSubmenuShow(t,e.browserEvent));return}if(this._currentSubmenuElement===t?this._cancelSubmenuHide():(this._cancelSubmenuShow(),this._options?.submenuPointerIntent?this._scheduleSubmenuHide():this._options?.persistentHover||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._options?.persistentHover||this._hideSubmenu(),this._scheduleSubmenuShow(t,e.browserEvent)))}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};Qf=zf=Lf([Rf(6,Hr),Rf(7,ue),Rf(8,z)],Qf);var $f=class extends x{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 closeAnimation(){return this._widget.closeAnimation}get widgetClassName(){return this._widgetClassName}get anchorPosition(){if(this._preferredAnchorPosition!==void 0)return this._preferredAnchorPosition;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._preferredAnchorPosition=a?.anchorPosition,this._useFullHeight=a?.useFullHeight??!1,this._widgetClassName=a?.widgetClassName,this._widget=this._register(l.createInstance(Qf,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,t=!0){this._widget.hide(e),t&&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=Bi(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._fixedContentHeight??this._widget.computeListHeight(),t=this._widget.filterContainer?36:0,n=this._widget.footerContainer?32:0,r=this._widget.headerContainer&&!this._widget.headerContainer.hidden?this._widget.headerContainer.offsetHeight||36:0,i=t+n+r,a=Bi(this.domNode),o;if(this.hasDynamicHeight()||this._preferredAnchorPosition!==void 0){let e=a.innerHeight,t=Cn(this._anchor),n=t.top-a.pageYOffset,r=e-n-t.height-30,s=n;if(this._showAbove===void 0){let e=this._fixedContentHeight??this._widget.computeFullHeight();this._showAbove=this._preferredAnchorPosition===void 0?i+e>r&&s>r:this._preferredAnchorPosition===1}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=this._useFullHeight?a.innerHeight:Math.floor(a.innerHeight*.6),c=this._widget.lineHeight;if(this._preferredAnchorPosition!==void 0){let t=Math.min(o,s),n=Math.min(e+i,Math.max(0,t));return Math.max(0,n-i)}let l=Math.min(Math.max(o,c*3+i),s);return Math.min(e+i,l)-i}layout(e,t){this._hasLaidOut=!0,this._lastMinWidth=e,t!==void 0&&(this._fixedContentHeight=t);let n=this.computeHeight();this._widget.layout(n);let r=this._widget.computeMaxWidth(e);return this._cachedMaxWidth=r,this._widget.layout(n,this._cachedMaxWidth),this._cachedMaxWidth}};$f=Lf([Rf(7,Dc),Rf(8,Vt),Rf(9,z)],$f);function ep(e){return e.replace(/\r\n|\r|\n/g,` `)}var tp=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},np=function(e,t){return function(n,r){t(n,r,e)}};j(`actionBar.toggledBackground`,xa,k(1744,`Background color for toggled action items in action bar.`));var rp=`--action-widget-close-start-opacity`,ip=`--action-widget-close-start-transform`,ap={Visible:new H(`codeActionMenuVisible`,!1,k(1745,`Whether the action widget list is visible`)),FilterFocused:new H(`codeActionMenuFilterFocused`,!1,k(1746,`Whether the action widget filter input is focused`))},op=ms(`actionWidgetService`),sp=class extends x{get isVisible(){return ap.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,n){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=n,this._list=this._register(new ai),this._closeAnimation=this._register(new ai)}show(e,t,n,r,i,a,o,s,c){let l=ap.Visible.bindTo(this._contextKeyService),u=this._instantiationService.createInstance($f,e,t,n,r,s,c,i);this._contextViewService.showContextView({getAnchor:()=>i,render:e=>(l.set(!0),this._renderWidget(e,u,o??[],c)),onHide:e=>{l.reset(),this._onWidgetClosed(e)},get anchorPosition(){return u.anchorPosition},focus:()=>u.focus()},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){let t=this._list.value,n=this._widgetElement;if(!t||this._closingList===t)return;let r=t.closeAnimation;if(!n||!r||r.duration<=0||!this._hasRequiredAncestorClasses(n,r.requiredAncestorClasses)){this._closingList=t,t.hide(e);return}this._closingList=t;let i=Bi(n).getComputedStyle(n);n.style.setProperty(rp,i.opacity),n.style.setProperty(ip,i.transform),n.classList.add(r.className),t.hide(e,!1),this._closeAnimation.value=Ho(()=>{this._list.value===t&&this._contextViewService.hideContextView(e)},r.duration)}clear(){this._closeAnimation.clear(),this._closingList=void 0,this._widgetElement?.style.removeProperty(rp),this._widgetElement?.style.removeProperty(ip),this._widgetElement=void 0,this._list.clear()}_renderWidget(e,t,n,r){let i=document.createElement(`div`);i.classList.add(`action-widget`);let a=t.widgetClassName?.split(/\s+/).filter(Boolean);if(a?.length&&i.classList.add(...a),e.appendChild(i),this._widgetElement=i,this._list.value=t,this._list.value)this._list.value.headerContainer&&i.appendChild(this._list.value.headerContainer),this._list.value.filterContainer&&i.appendChild(this._list.value.filterContainer),i.appendChild(this._list.value.domNode),this._list.value.footerContainer&&i.appendChild(this._list.value.footerContainer);else throw Error(`List has no value`);let o=new q;r?.filterAsCombobox&&o.add(m(i,`keydown`,e=>{e.keyCode===9&&!e.browserEvent.isComposing&&(Lu.stop(e,!0),this.hide(!0))}));let s=this._list.value.headerContainer;s&&o.add(Ue(s,e=>e.preventDefault()));let c=0;o.add(Ue(i,()=>{c=Date.now()+1e3}));let l=document.createElement(`div`),u=e.appendChild(l);u.classList.add(`context-view-block`),o.add(Ue(u,e=>e.stopPropagation()));let d=0;if(n.length){let e=this._createActionBar(`.action-widget-action-bar`,n);e&&(i.appendChild(e.getContainer().parentElement),o.add(e),d=e.getContainer().offsetWidth)}let f=this._list.value?.layout(d);i.style.width=`${f}px`;let p=ap.FilterFocused.bindTo(this._contextKeyService);if(o.add({dispose:()=>p.reset()}),this._list.value?.filterInput){let e=this._list.value.filterInput;o.add(w(e,`focus`,()=>p.set(!0))),o.add(w(e,`blur`,()=>p.set(!1)))}let h=o.add(Ll(e)),g=o.add(new ai);return o.add(h.onDidFocus(()=>g.clear())),o.add(h.onDidBlur(()=>{let t=()=>{let n=c-Date.now();if(n>0){g.value=Ho(t,n);return}let r=pr();r&&(e.contains(r)||r.closest(`.action-widget-hover`)||r.closest(`.action-list-submenu-panel`))||this.hide(!0)};g.value=Ho(t,75)})),o}_createActionBar(e,t){if(!t.length)return;let n=G(e),r=new aa(n);return r.push(t,{icon:!1,label:!0}),r}_hasRequiredAncestorClasses(e,t){if(!t?.length)return!0;for(let n=e;n;n=n.parentElement)if(t.every(e=>n.classList.contains(e)))return!0;return!1}_onWidgetClosed(e){if(this._closingList===this._list.value){this.clear();return}this._closeAnimation.clear(),this._closingList=void 0,this._widgetElement=void 0,this._list.value?.hide(e)}};sp=tp([np(0,Dc),np(1,jc),np(2,z)],sp),_c(op,sp,1);var cp=1100;M(class extends Ki{constructor(){super({id:`hideCodeActionWidget`,title:A(1747,`Hide action widget`),precondition:ap.Visible,keybinding:{weight:cp,primary:9,secondary:[1033]}})}run(e){e.get(op).hide(!0)}}),M(class extends Ki{constructor(){super({id:`clearFilterCodeActionWidget`,title:A(1748,`Clear action widget filter`),precondition:W.and(ap.Visible,ap.FilterFocused),keybinding:{weight:1101,primary:9}})}run(e){let t=e.get(op);t instanceof sp&&(t.clearFilter()||t.hide(!0))}}),M(class extends Ki{constructor(){super({id:`selectPrevCodeAction`,title:A(1749,`Select previous action`),precondition:ap.Visible,keybinding:{weight:cp,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(e){let t=e.get(op);t instanceof sp&&t.focusPrevious()}}),M(class extends Ki{constructor(){super({id:`selectNextCodeAction`,title:A(1750,`Select next action`),precondition:ap.Visible,keybinding:{weight:cp,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(e){let t=e.get(op);t instanceof sp&&t.focusNext()}}),M(class extends Ki{constructor(){super({id:`collapseSectionCodeAction`,title:A(1751,`Collapse section`),precondition:W.and(ap.Visible,ap.FilterFocused.negate()),keybinding:{weight:cp,primary:15}})}run(e){let t=e.get(op);t instanceof sp&&t.collapseSection()}}),M(class extends Ki{constructor(){super({id:`expandSectionCodeAction`,title:A(1752,`Expand section`),precondition:W.and(ap.Visible,ap.FilterFocused.negate()),keybinding:{weight:cp,primary:17}})}run(e){let t=e.get(op);t instanceof sp&&t.expandSection()}}),M(class extends Ki{constructor(){super({id:`toggleSectionCodeAction`,title:A(1753,`Toggle section`),precondition:W.and(ap.Visible,ap.FilterFocused.negate()),keybinding:{weight:cp,primary:10}})}run(e){let t=e.get(op);t instanceof sp&&(t.toggleSection()||t.acceptSelected())}}),M(class extends Ki{constructor(){super({id:Bf,title:A(1754,`Accept selected action`),precondition:ap.Visible,keybinding:{weight:cp,primary:3,secondary:[2137]}})}run(e){let t=e.get(op);t instanceof sp&&t.acceptSelected()}}),M(class extends Ki{constructor(){super({id:Vf,title:A(1755,`Preview selected action`),precondition:ap.Visible,keybinding:{weight:cp,primary:2051}})}run(e){let t=e.get(op);t instanceof sp&&t.acceptSelected(!0)}});var lp=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},up=function(e,t){return function(n,r){t(n,r,e)}},dp,fp=class extends x{static{dp=this}static{this.baseId=`editor.widget.postEditWidget`}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(h(()=>this.visibleContext.reset())),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this),this._register(h((()=>this.editor.removeContentWidget(this)))),this._register(this.editor.onDidChangeCursorPosition(e=>{this.dispose()})),this._register(Yu.runAndSubscribe(l.onDidUpdateKeybindings,()=>{this._updateButtonTitle()}))}_updateButtonTitle(){this.button.element.title=this._keybindingService.appendKeybinding(this.showCommand.label,this.showCommand.id)}create(){this.domNode=G(`.post-edit-widget`),this.button=this._register(new jl(this.domNode,{supportIcons:!0})),this.button.label=`$(insert)`,this._register(w(this.domNode,E.CLICK,()=>this.showSelector()))}getId(){return dp.baseId+`.`+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:this.range.getEndPosition(),preference:[2]}}showSelector(){let e=Ir(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:V.fromId(t===this.edits.activeEditIndex?N.check.id:N.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)}};fp=dp=lp([up(8,jc),up(9,Hr),up(10,op)],fp);var pp=class extends x{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 ai),this._register(Yu.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)=>{wo(r)||(this._notificationService.error(i),n&&this.show(e[0],t,s))},l=new ge(this._editor,3,void 0,i),u;try{u=await Ml(r(o,l.token),l.token)}catch(e){return c(e,k(991,`Error resolving edit '{0}':
|
|
3
3
|
{1}`,o.title,Mf(e)))}finally{l.dispose()}if(i.isCancellationRequested)return;let d=Df(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,k(992,`Error applying edit '{0}':
|
|
4
4
|
{1}`,o.title,Mf(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(fp,this._id,this._editor,this._visibleContext,this._showCommand,e,t,n,this._getAdditionalActions()))}clear(){this._currentWidget.clear()}tryShowSelector(){this._currentWidget.value?.showSelector()}};pp=lp([up(5,z),up(6,ds),up(7,Si)],pp);var mp=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},hp=function(e,t){return function(n,r){t(n,r,e)}},gp,_p=`editor.changePasteType`,vp=`editor.pasteAs.preferences`,yp=new H(`pasteWidgetVisible`,!1,k(971,`Whether the paste widget is showing`)),bp=`application/vnd.code.copymetadata`,xp=class extends x{static{gp=this}static{this.ID=`editor.contrib.copyPasteActionController`}static get(e){return e.getContribution(gp.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 Xd(`pasteIntoEditor`,e,t)),this._postPasteWidgetManager=this._register(t.createInstance(pp,`pasteIntoEditor`,e,yp,{id:_p,label:k(972,`Show paste options...`)},()=>gp._configureDefaultAction?[gp._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},o=this._languageFeaturesService.documentPasteEditProvider.ordered(t).filter(e=>!!e.prepareDocumentPaste);if(!o.length){this.setCopyMetadata(e.clipboardData,{defaultPastePayload:i});return}let s=new rr,c=o.flatMap(e=>e.copyMimeTypes??[]),l=Nn();this.setCopyMetadata(e.clipboardData,{id:l,providerCopyMimeTypes:c,defaultPastePayload:i});let u=o.map(n=>({providerMimeTypes:n.copyMimeTypes,operation:a(r=>n.prepareDocumentPaste(t,e.dataToCopy.sourceRanges,s,r).catch(e=>{console.error(e)}))}));gp._currentCopyOperation?.operations.forEach(e=>e.operation.cancel()),gp._currentCopyOperation={handle:l,operations:u}}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(bp),ef.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??[],vo.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=>_(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(`, `):k(973,`empty`):t.providerId;ef.get(this._editor)?.showMessage(k(974,`No paste edits for '{0}' found`,n),e[0].getStartPosition())}doPasteInline(e,t,n,r,i){this._logService.trace(`CopyPasteController#doPasteInline`);let o=this._editor;if(!o.hasModel())return;let s=new ge(o,3,void 0),c=a(async a=>{let o=this._editor;if(!o.hasModel())return;let l=o.getModel(),u=new q,d=u.add(new uo(a));u.add(s.token.onCancellationRequested(()=>d.cancel()));let f=d.token;try{if(await this.mergeInDataFromCopy(e,n,r,f),f.isCancellationRequested)return;let a=e.filter(e=>this.isSupportedPasteProvider(e,n));if(!a.length||a.length===1&&a[0]instanceof sf)return this.applyDefaultPasteHandler(n,r,f,i);let s={triggerKind:ut.Automatic},c=await this.getPasteEdits(a,n,l,t,s,f);if(u.add(c),f.isCancellationRequested)return;if(c.edits.length===1&&c.edits[0].provider instanceof sf)return this.applyDefaultPasteHandler(n,r,f,i);if(c.edits.length){let e=o.getOption(97).showPasteSelector===`afterPaste`;return this._postPasteWidgetManager.applyEditAndShowIfNeeded(t,{activeEditIndex:this.getInitialActiveEditIndex(l,c.edits),allEdits:c.edits},e,async(e,n)=>{if(!e.provider.resolveDocumentPasteEdit)return e;let r=e.provider.resolveDocumentPasteEdit(e,n),i=new Qt,a=await this._pasteProgressManager.showWhile(t[0].getEndPosition(),k(975,`Resolving paste edit for '{0}'. Click to cancel`,e.title),Vc(Promise.race([i.p,r]),n),{cancel:()=>i.cancel()},0);return a&&(e.insertText=a.insertText,e.additionalEdit=a.additionalEdit),e},f)}await this.applyDefaultPasteHandler(n,r,f,i)}finally{u.dispose(),this._currentPasteOperation===c&&(this._currentPasteOperation=void 0)}});this._pasteProgressManager.showWhile(t[0].getEndPosition(),k(976,`Running paste handlers. Click to cancel and do basic paste`),c,{cancel:async()=>{c.cancel(),!s.token.isCancellationRequested&&await this.applyDefaultPasteHandler(n,r,s.token,i)}}).finally(()=>{s.dispose()}),this._currentPasteOperation=c}showPasteAsPick(e,t,n,r,i){this._logService.trace(`CopyPasteController#showPasteAsPick`);let o=a(async a=>{let s=this._editor;if(!s.hasModel())return;let c=s.getModel(),l=new q,u=l.add(new ge(s,3,void 0,a));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:ut.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:k(977,`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})),...gp._configureDefaultAction?[wl({type:`separator`}),{label:gp._configureDefaultAction.label,edit:void 0}]:[]],{placeHolder:k(978,`Select Paste Action`)});if(t===e){gp._configureDefaultAction?.run();return}d=t?.edit}if(!d)return;let f=Df(c.uri,n,d);await this._bulkEditService.apply(f,{editor:this._editor})}finally{l.dispose(),this._currentPasteOperation===o&&(this._currentPasteOperation=void 0)}});this._progressService.withProgress({location:10,title:k(979,`Running paste handlers`)},()=>o)}setCopyMetadata(e,t){this._logService.trace(`CopyPasteController#setCopyMetadata new id : `,t.id),e.setData(bp,JSON.stringify(t))}fetchCopyMetadata(e){this._logService.trace(`CopyPasteController#fetchCopyMetadata`);let t=e.clipboardData.getData(bp);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&&gp._currentCopyOperation?.handle===n.id){let n=gp._currentCopyOperation.operations.filter(t=>e.some(e=>e.pasteMimeTypes.some(e=>_(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(vo.uriList)){let e=await this._clipboardService.readResources();if(r.isCancellationRequested)return;e.length&&t.append(vo.uriList,ec(Ne.create(e)))}}async getPasteEdits(e,t,n,r,i,a){let o=new q,s=await Vc(Promise.all(e.map(async e=>{try{let s=await e.provideDocumentPasteEdits?.(n,r,t,i,a);return s&&o.add(s),s?.edits?.map(t=>({...t,provider:e}))}catch(e){wo(e)||console.error(e);return}})),a);return{edits:Of(Xu(s??[]).flat().filter(e=>!i.only||i.only.contains(e.kind))),dispose:()=>o.dispose()}}async applyDefaultPasteHandler(e,t,n,r){let i=await(e.get(vo.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(vp,{resource:e.uri});for(let e of Array.isArray(n)?n:[]){let n=new Gd(e),r=t.findIndex(e=>n.contains(e.kind));if(r>=0)return r}return 0}};xp=gp=mp([hp(1,z),hp(2,Xe),hp(3,ds),hp(4,vu),hp(5,Ba),hp(6,ko),hp(7,O),hp(8,Us),hp(9,Ze)],xp);var Sp=`9_cutcopypaste`,Cp=Lr||document.queryCommandSupported&&document.queryCommandSupported(`cut`),wp=Lr||document.queryCommandSupported&&document.queryCommandSupported(`copy`),Tp=navigator.clipboard===void 0||bo?document.queryCommandSupported&&document.queryCommandSupported(`paste`):!0;function Ep(e){return e.register(),e}var Dp=Cp?Ep(new Ia({id:`editor.action.clipboardCutAction`,precondition:void 0,kbOpts:Lr?{primary:2102,win:{primary:2102,secondary:[1044]},weight:100}:void 0,menuOpts:[{menuId:C.MenubarEditMenu,group:`2_ccp`,title:k(864,`Cu&&t`),order:1},{menuId:C.EditorContext,group:Sp,title:k(865,`Cut`),when:P.writable,order:1},{menuId:C.CommandPalette,group:``,title:k(866,`Cut`),order:1},{menuId:C.SimpleEditorContext,group:Sp,title:k(867,`Cut`),when:P.writable,order:1}]})):void 0,Op=wp?Ep(new Ia({id:`editor.action.clipboardCopyAction`,precondition:void 0,kbOpts:Lr?{primary:2081,win:{primary:2081,secondary:[2067]},weight:100}:void 0,menuOpts:[{menuId:C.MenubarEditMenu,group:`2_ccp`,title:k(868,`&&Copy`),order:2},{menuId:C.EditorContext,group:Sp,title:k(869,`Copy`),order:2},{menuId:C.CommandPalette,group:``,title:k(870,`Copy`),order:1},{menuId:C.SimpleEditorContext,group:Sp,title:k(871,`Copy`),order:2}]})):void 0;nn.appendMenuItem(C.MenubarEditMenu,{submenu:C.MenubarCopy,title:A(876,`Copy As`),group:`2_ccp`,order:3}),nn.appendMenuItem(C.EditorContext,{submenu:C.EditorContextCopy,title:A(877,`Copy As`),group:Sp,order:3}),nn.appendMenuItem(C.EditorContext,{submenu:C.EditorContextShare,title:A(878,`Share`),group:`11_share`,order:-1,when:W.and(W.notEquals(`resourceScheme`,`output`),P.editorTextFocus)}),nn.appendMenuItem(C.ExplorerContext,{submenu:C.ExplorerContextShare,title:A(879,`Share`),group:`11_share`,order:-1});var kp=Tp?Ep(new Ia({id:`editor.action.clipboardPasteAction`,precondition:void 0,kbOpts:Lr?{primary:2100,win:{primary:2100,secondary:[1043]},linux:{primary:2100,secondary:[1043]},weight:100}:void 0,menuOpts:[{menuId:C.MenubarEditMenu,group:`2_ccp`,title:k(872,`&&Paste`),order:4},{menuId:C.EditorContext,group:Sp,title:k(873,`Paste`),when:P.writable,order:4},{menuId:C.CommandPalette,group:``,title:k(874,`Paste`),order:1},{menuId:C.SimpleEditorContext,group:Sp,title:k(875,`Paste`),when:P.writable,order:4}]})):void 0,Ap=class extends B{constructor(){super({id:`editor.action.clipboardCopyWithSyntaxHighlightingAction`,label:A(880,`Copy with Syntax Highlighting`),precondition:void 0,kbOpts:{kbExpr:P.textInputFocus,primary:0,weight:100}})}run(e,t){let n=e.get(Xe),r=e.get(vu);n.trace(`ExecCommandCopyWithSyntaxHighlightingAction#run`),t.hasModel()&&(t.getOption(45)||!t.getSelection().isEmpty())&&(Xr.forceCopyWithSyntaxHighlighting=!0,t.focus(),n.trace(`ExecCommandCopyWithSyntaxHighlightingAction (before execCommand copy)`),jp(t,r),n.trace(`ExecCommandCopyWithSyntaxHighlightingAction (after execCommand copy)`),Xr.forceCopyWithSyntaxHighlighting=!1)}};function jp(e,t){if(Xr.electronBugWorkaroundCopyEventHasFired=!1,e.getContainerDomNode().ownerDocument.execCommand(`copy`),Lr&&Xr.electronBugWorkaroundCopyEventHasFired===!1){let{dataToCopy:n}=Ou(e._getViewModel(),void 0,bo);t.writeText(n.text)}}function Mp(e,t){e&&(e.addImplementation(1e4,`code-editor`,(e,n)=>{let r=e.get(Xe),i=e.get(vu);r.trace(`registerExecCommandImpl (addImplementation code-editor for : `,t,`)`);let a=e.get(el).getFocusedCodeEditor();if(a&&a.hasTextFocus()&&a.hasModel()){let e=a.getOption(45),n=a.getSelection();return n&&n.isEmpty()&&!e||(a.getOption(171)&&t===`cut`?(Np(a),r.trace(`registerExecCommandImpl (before execCommand copy)`),jp(a,i),a.trigger(void 0,`cut`,void 0),r.trace(`registerExecCommandImpl (after execCommand copy)`)):(Np(a),r.trace(`registerExecCommandImpl (before execCommand `+t+`)`),t===`copy`?jp(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(Xe);return r.trace(`registerExecCommandImpl (addImplementation generic-dom for : `,t,`)`),r.trace(`registerExecCommandImpl (before execCommand `+t+`)`),Un().execCommand(t),r.trace(`registerExecCommandImpl (after execCommand `+t+`)`),!0}))}function Np(e){if(e.getOption(171)){let t=Tn.get(e.getId());t&&t.handleWillCopy()}}Mp(Dp,`cut`),Mp(Op,`copy`),kp&&(kp.addImplementation(1e4,`code-editor`,(e,t)=>{let n=e.get(Xe);n.trace(`registerExecCommandImpl (addImplementation code-editor for : paste)`);let r=e.get(el),i=e.get(vu),a=r.getFocusedCodeEditor();if(a&&a.hasModel()&&a.hasTextFocus()){if(a.getOption(171)){let e=Tn.get(a.getId());e&&e.handleWillPaste()}n.trace(`registerExecCommandImpl (before triggerPaste)`);let e=i.triggerPaste(tt().vscodeWindowId);return e?(n.trace(`registerExecCommandImpl (triggerPaste defined)`),e.then(async()=>(n.trace(`registerExecCommandImpl (after triggerPaste)`),xp.get(a)?.finishedPaste()??Promise.resolve()))):(n.trace(`registerExecCommandImpl (triggerPaste undefined)`),!sd||(n.trace(`registerExecCommandImpl (Paste handling on web)`),(async()=>{let e=await i.readText();if(e!==``){let t=be.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}),kp.addImplementation(0,`generic-dom`,(e,t)=>(e.get(Xe).trace(`registerExecCommandImpl (addImplementation generic-dom for : paste)`),e.get(vu).triggerPaste(tt().vscodeWindowId)??!1))),wp&&Z(Ap);var Pp=new class{constructor(){this.QuickFix=new Gd(`quickfix`),this.Refactor=new Gd(`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 Gd(`notebook`),this.Source=new Gd(`source`),this.SourceOrganizeImports=this.Source.append(`organizeImports`),this.SourceFixAll=this.Source.append(`fixAll`),this.SurroundWith=this.Refactor.append(`surround`)}},Fp;(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`})(Fp||={});function Ip(e,t){return!(e.include&&!e.include.intersects(t)||e.excludes&&e.excludes.some(n=>Rp(t,n,e.include))||!e.includeSourceActions&&Pp.Source.contains(t))}function Lp(e,t){let n=t.kind?new Gd(t.kind):void 0;return!(e.include&&(!n||!e.include.contains(n))||e.excludes&&n&&e.excludes.some(t=>Rp(n,t,e.include))||!e.includeSourceActions&&n&&Pp.Source.contains(n)||e.onlyIncludePreferredActions&&!t.isPreferred)}function Rp(e,t,n){return!(!t.contains(e)||n&&t.contains(n))}var zp=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 Gd(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}},Bp=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){tl(e)}t&&(this.action.edit=t.edit)}return this}},Vp=`editor.action.codeAction`,Hp=`editor.action.quickFix`,Up=`editor.action.autoFix`,Wp=`editor.action.refactor`,Gp=`editor.action.sourceAction`,Kp=`editor.action.organizeImports`,qp=`editor.action.fixAll`,Jp=1e3,Yp=class e extends x{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:Ge(t.diagnostics)?Ge(n.diagnostics)?e.codeActionsPreferredComparator(t,n):-1:Ge(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&&Pp.QuickFix.contains(new Gd(e.kind))&&!!e.isPreferred)}get hasAIFix(){return this.validActions.some(({action:e})=>!!e.isAI)}get allAIFixes(){return this.validActions.every(({action:e})=>!!e.isAI)}},Xp={actions:[],documentation:void 0};async function Zp(e,t,n,r,i,a){let o=r.filter||{},s={...o,excludes:[...o.excludes||[],Pp.Notebook]},c={only:o.include?.value,trigger:r.type},l=new wu(t,a),u=Qp(e,t,r.type===2?s:o),d=new q,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(),Xp;r&&d.add(r);let i=(r?.actions||[]).filter(e=>e&&Lp(o,e)),a=em(e,i,o.include);return{actions:i.map(t=>new Bp(t,e)),documentation:a}}catch(e){if(wo(e))throw e;return tl(e),Xp}finally{clearTimeout(r)}}),p=e.onDidChange(()=>{let n=e.all(t);ye(n,u)||l.cancel()});try{let n=await Promise.all(f),i=n.map(e=>e.actions).flat(),a=new Yp(i,[...Xu(n.map(e=>e.documentation)),...$p(e,t,r,i)],d);return d.add(a),a}catch(e){throw d.dispose(),e}finally{p.dispose(),l.dispose()}}function Qp(e,t,n){return e.all(t).filter(e=>!e.providedCodeActionKinds||e.providedCodeActionKinds.some(e=>Ip(n,new Gd(e))))}function*$p(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 em(e,t,n){if(!e.documentation)return;let r=e.documentation.map(e=>({kind:new Gd(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 Gd(e.kind)))return t.command}}var tm;(function(e){e.OnSave=`onSave`,e.FromProblemsView=`fromProblemsView`,e.FromCodeActions=`fromCodeActions`,e.FromAILightbulb=`fromAILightbulb`,e.FromProblemsHover=`fromProblemsHover`})(tm||={});async function nm(e,t,n,r,i=U.None){let a=e.get(ds),o=e.get(Ba),s=e.get(Ci),c=e.get(Si),l=e.get(ro);if(s.publicLog2(`codeAction.applyCodeAction`,{codeActionTitle:t.action.title,codeActionKind:t.action.kind,codeActionIsPreferred:!!t.action.isPreferred,reason:n}),l.playSignal($u.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!==tm.OnSave,showPreview:r?.preview,reason:Yn.codeAction({kind:t.action.kind,providerId:Ji.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=rm(e);c.error(typeof t==`string`?t:k(881,`An unknown error occurred while applying the code action`))}setTimeout(()=>l.playSignal($u.codeActionApplied),Jp)}}function rm(e){if(typeof e==`string`)return e;if(e instanceof Error&&typeof e.message==`string`)return e.message}Es.registerCommand(`_executeCodeActionProvider`,async function(e,t,n,r,i){if(!(t instanceof Gl))throw iu();let{codeActionProvider:a}=e.get(O),o=e.get(Wo).getModel(t);if(!o)throw iu();let s=T.isISelection(n)?T.liftSelection(n):d.isIRange(n)?o.validateRange(n):void 0;if(!s)throw iu();let c=typeof r==`string`?new Gd(r):void 0,l=await Zp(a,o,s,{type:1,triggerAction:Fp.Default,filter:{includeSourceActions:!0,include:c}},ze.None,U.None),u=[],f=Math.min(l.validActions.length,typeof i==`number`?i:0);for(let e=0;e<f;e++)u.push(l.validActions[e].resolve(U.None));try{return await Promise.all(u),l.validActions.map(e=>e.action)}finally{setTimeout(()=>l.dispose(),100)}});var im=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},am=function(e,t){return function(n,r){t(n,r,e)}},om,sm=class{static{om=this}static{this.codeActionCommands=[Wp,Vp,Gp,Kp,qp]}constructor(e){this.keybindingService=e}getResolver(){let e=new sc(()=>this.keybindingService.getKeybindings().filter(e=>om.codeActionCommands.indexOf(e.command)>=0).filter(e=>e.resolvedKeybinding).map(e=>{let t=e.commandArgs;return e.command===`editor.action.organizeImports`?t={kind:Pp.SourceOrganizeImports.value}:e.command===`editor.action.fixAll`&&(t={kind:Pp.SourceFixAll.value}),{resolvedKeybinding:e.resolvedKeybinding,...zp.fromUser(t,{kind:Gd.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 Gd(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)}};sm=om=im([am(0,Hr)],sm),j(`symbolIcon.arrayForeground`,sn,k(1569,`The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.booleanForeground`,sn,k(1570,`The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.classForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},k(1571,`The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.colorForeground`,sn,k(1572,`The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.constantForeground`,sn,k(1573,`The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.constructorForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},k(1574,`The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.enumeratorForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},k(1575,`The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.enumeratorMemberForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},k(1576,`The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.eventForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},k(1577,`The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.fieldForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},k(1578,`The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.fileForeground`,sn,k(1579,`The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.folderForeground`,sn,k(1580,`The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.functionForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},k(1581,`The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.interfaceForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},k(1582,`The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.keyForeground`,sn,k(1583,`The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.keywordForeground`,sn,k(1584,`The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.methodForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},k(1585,`The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.moduleForeground`,sn,k(1586,`The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.namespaceForeground`,sn,k(1587,`The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.nullForeground`,sn,k(1588,`The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.numberForeground`,sn,k(1589,`The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.objectForeground`,sn,k(1590,`The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.operatorForeground`,sn,k(1591,`The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.packageForeground`,sn,k(1592,`The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.propertyForeground`,sn,k(1593,`The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.referenceForeground`,sn,k(1594,`The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.snippetForeground`,sn,k(1595,`The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.stringForeground`,sn,k(1596,`The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.structForeground`,sn,k(1597,`The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.textForeground`,sn,k(1598,`The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.typeParameterForeground`,sn,k(1599,`The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.unitForeground`,sn,k(1600,`The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),j(`symbolIcon.variableForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},k(1601,`The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`));var cm=Object.freeze({kind:Gd.Empty,title:k(917,`More Actions...`)}),lm=Object.freeze([{kind:Pp.QuickFix,title:k(918,`Quick Fix`)},{kind:Pp.RefactorExtract,title:k(919,`Extract`),icon:N.wrench},{kind:Pp.RefactorInline,title:k(920,`Inline`),icon:N.wrench},{kind:Pp.RefactorRewrite,title:k(921,`Rewrite`),icon:N.wrench},{kind:Pp.RefactorMove,title:k(922,`Move`),icon:N.wrench},{kind:Pp.SurroundWith,title:k(923,`Surround With`),icon:N.surroundWith},{kind:Pp.Source,title:k(924,`Source Action`),icon:N.symbolFile},cm]);function um(e,t,n){if(!t)return e.map(e=>({kind:`action`,item:e,group:cm,disabled:!!e.action.disabled,label:e.action.disabled||e.action.title,canPreview:!!e.action.edit?.edits.length}));let r=lm.map(e=>({group:e,actions:[]}));for(let t of e){let e=t.action.kind?new Gd(t.action.kind):Gd.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:N.sparkle}:r,label:t.action.title,disabled:!!t.action.disabled,keybinding:n(t.action)})}}return i}var dm=new H(`supportedCodeAction`,``),fm=class extends x{constructor(e,t,n,r=250){super(),this._editor=e,this._markerService=t,this._signalChange=n,this._delay=r,this._autoTriggerTimer=this._register(new Sa),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=>Wt(e,t.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:Fp.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!==Go.Off||this.ignoreLightbulbOff){if(n===Go.Off||n===Go.On)return t;if(n===Go.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}}},pm;(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(wo(e))return mm;throw e})}cancel(){this._cancellablePromise.cancel()}}e.Triggered=t})(pm||={});var mm=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1,hasAIFix:!1,allAIFixes:!1}),hm=class extends x{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 ai),this._state=pm.Empty,this._onDidChangeState=this._register(new K),this.onDidChangeState=this._onDidChangeState.event,this.codeActionsDisposable=this._register(new ai),this._disposed=!1,this._ignoreLightbulbOff=!1,this._supportedCodeActions=dm.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(pm.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(pm.Empty),this.codeActionsDisposable.clear();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 fm(this._editor,this._markerService,t=>{if(!t){this.setState(pm.Empty);return}let n=t.selection.getStartPosition(),r=a(async n=>{if(this._settingEnabledNearbyQuickfixes()&&t.trigger.type===1&&(t.trigger.triggerAction===Fp.QuickFix||t.trigger.filter?.include?.contains(Pp.QuickFix))){let r=new q,i=!1;try{let a=r.add(await Zp(this._registry,e,t.selection,t.trigger,ze.None,n)),o=[...a.allActions];if(n.isCancellationRequested)return mm;let s=a.validActions?.some(e=>e.action.kind&&Pp.QuickFix.contains(new Gd(e.action.kind))&&!e.action.isAI),c=this._markerService.read({resource:e.uri});if(s){for(let e of a.validActions)e.action.command?.arguments?.some(e=>typeof e==`string`&&e.includes(`_typescript.applyFixAllCodeAction`))&&(e.action.diagnostics=[...c.filter(e=>e.relatedInformation)]);let e=this._setCodeActions({validActions:a.validActions,allActions:o,documentation:a.documentation,hasAutoFix:a.hasAutoFix,hasAIFix:a.hasAIFix,allAIFixes:a.allAIFixes,dispose:()=>r.dispose()});return i=!0,e}if(!s&&c.length>0){let s=t.selection.getPosition(),l=s,u=Number.MAX_VALUE,d=[...a.validActions];for(let i of c){let f=i.endColumn,p=i.endLineNumber,m=i.startLineNumber;if(p===s.lineNumber||m===s.lineNumber){l=new L(p,f);let i={type:t.trigger.type,triggerAction:t.trigger.triggerAction,filter:{include:t.trigger.filter?.include?t.trigger.filter?.include:Pp.QuickFix},autoApply:t.trigger.autoApply,context:{notAvailableMessage:t.trigger.context?.notAvailableMessage||``,position:l}},m=new T(l.lineNumber,l.column,l.lineNumber,l.column),h=r.add(await Zp(this._registry,e,m,i,ze.None,n));if(n.isCancellationRequested)return mm;if(h.validActions.length!==0){for(let e of h.validActions)e.action.command?.arguments?.some(e=>typeof e==`string`&&e.includes(`_typescript.applyFixAllCodeAction`))&&(e.action.diagnostics=[...c.filter(e=>e.relatedInformation)]);a.allActions.length===0&&o.push(...h.allActions),Math.abs(s.column-f)<u?d.unshift(...h.validActions):d.push(...h.validActions)}u=Math.abs(s.column-f)}}let f=d.filter((e,t,n)=>n.findIndex(t=>t.action.title===e.action.title)===t);f.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);let p=this._setCodeActions({validActions:f,allActions:o,documentation:a.documentation,hasAutoFix:a.hasAutoFix,hasAIFix:a.hasAIFix,allAIFixes:a.allAIFixes,dispose:()=>r.dispose()});return i=!0,p}}finally{i||r.dispose()}}if(t.trigger.type===1){let r=await Zp(this._registry,e,t.selection,t.trigger,ze.None,n);return n.isCancellationRequested?(r.dispose(),mm):this._setCodeActions(r)}let r=await Zp(this._registry,e,t.selection,t.trigger,ze.None,n);return n.isCancellationRequested?(r.dispose(),mm):this._setCodeActions(r)});t.trigger.type===1&&this._progressService?.showWhile(r,250);let i=new pm.Triggered(t.trigger,n,r),o=!1;this._state.type===1&&(o=this._state.trigger.type===1&&i.type===1&&i.trigger.type===2&&this._state.position!==i.position),o?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:Fp.Default})}else this._supportedCodeActions.reset()}_setCodeActions(e){return this.codeActionsDisposable.value=e,e}takeCodeActions(e){if(this.codeActionsDisposable.value===e)return this.codeActionsDisposable.clearAndLeak(),e}trigger(e){this._codeActionOracle.value?.trigger(e),this.codeActionsDisposable.clear()}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!this._disposed&&this._onDidChangeState.fire(e))}},gm=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},_m=function(e,t){return function(n,r){t(n,r,e)}},vm,ym=Yi(`gutter-lightbulb`,N.lightBulb,k(925,`Icon which spawns code actions menu from the gutter when there is no space in the editor.`)),bm=Yi(`gutter-lightbulb-auto-fix`,N.lightbulbAutofix,k(926,`Icon which spawns code actions menu from the gutter when there is no space in the editor and a quick fix is available.`)),xm=Yi(`gutter-lightbulb-sparkle`,N.lightbulbSparkle,k(927,`Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix is available.`)),Sm=Yi(`gutter-lightbulb-aifix-auto-fix`,N.lightbulbSparkleAutofix,k(928,`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.`)),Cm=Yi(`gutter-lightbulb-sparkle-filled`,N.sparkleFilled,k(929,`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.`)),wm;(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})(wm||={});function Tm(e,t,n,r,i=!1){if(e.validActions.length<=0)return;let a,o=!1;e.allAIFixes?(a=i?Cm:N.sparkleFilled,e.validActions.length===1&&(o=!0)):a=e.hasAutoFix?e.hasAIFix?i?Sm:N.lightbulbSparkleAutofix:i?bm:N.lightbulbAutofix:e.hasAIFix?i?xm:N.lightbulbSparkle:i?ym:N.lightBulb;let s;return s=o?k(930,`Run: {0}`,e.validActions[0].action.title):e.hasAutoFix&&n?k(931,`Show Code Actions. Preferred Quick Fix Available ({0})`,n):!e.hasAutoFix&&r?k(932,`Show Code Actions ({0})`,r):k(933,`Show Code Actions`),{actions:e,trigger:t,icon:a,autoRun:o,title:s,isGutter:i}}var Em=class extends x{static{vm=this}static{this.GUTTER_DECORATION=Y.register({description:`codicon-gutter-lightbulb-decoration`,glyphMarginClassName:V.asClassName(N.lightBulb),glyphMargin:{position:pa.Left},stickiness:1})}static{this.ID=`editor.contrib.lightbulbWidget`}static{this._posPref=[0]}static _computeLightBulbInfo(e,t,n,r){if(e.type===1)return Tm(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 K),this.onClick=this._onClick.event,this._state=_u(this,wm.Hidden),this._gutterState=_u(this,wm.Hidden),this._combinedInfo=S(this,e=>{let t=this._gutterState.read(e);if(t.type===1)return vm._computeLightBulbInfo(t,!0,this._preferredKbLabel.read(e),this._quickFixKbLabel.read(e));let n=this._state.read(e);if(n.type===1)return vm._computeLightBulbInfo(n,!1,this._preferredKbLabel.read(e),this._quickFixKbLabel.read(e))}),this._iconClasses=[],this.lightbulbClasses=[`codicon-`+ym.id,`codicon-`+Sm.id,`codicon-`+bm.id,`codicon-`+xm.id,`codicon-`+Cm.id],this._preferredKbLabel=_u(this,void 0),this._quickFixKbLabel=_u(this,void 0),this.gutterDecoration=vm.GUTTER_DECORATION,this._domNode=G(`div.lightBulbWidget`),this._domNode.role=`listbox`,this._register(cd.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(Zs(this._domNode,e=>{let t=this._state.get();if(t.type!==1)return;this._editor.focus(),e.preventDefault();let{top:n,height:r}=Ir(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(w(this._domNode,`mouseenter`,e=>{(e.buttons&1)==1&&this.hide()})),this._register(Yu.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(D(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}=Ir(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===Go.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=Ta(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 wm.Showing(e,t,n,{position:{lineNumber:m,column:h},preference:vm._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 wm.Showing(e,t,n,{position:{lineNumber:m,column:h},preference:vm._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 wm.Showing(e,t,n,{position:{lineNumber:m,column:h},preference:vm._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()!==wm.Hidden&&(this._state.set(wm.Hidden,void 0),this._editor.layoutContentWidget(this))}gutterHide(){this._gutterState.get()!==wm.Hidden&&(this._gutterDecorationID&&this._removeGutterDecoration(this._gutterDecorationID),this._gutterState.set(wm.Hidden,void 0))}_updateLightBulbTitleAndIcon(e){this._domNode.classList.remove(...this._iconClasses),this._iconClasses=[],e&&!e.isGutter&&(this._domNode.title=e.title,this._iconClasses=V.asClassNameArray(e.icon),this._domNode.classList.add(...this._iconClasses))}_updateGutterDecorationOptions(e){e&&e.isGutter&&(this.gutterDecoration=Y.register({description:`codicon-gutter-lightbulb-decoration`,glyphMarginClassName:V.asClassName(e.icon),glyphMargin:{position:pa.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 d(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 d(t,0,t,0)),n.changeDecorationOptions(e,this.gutterDecoration)})}};Em=vm=gm([_m(1,Hr)],Em);var Dm=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)}},km,Am=`quickfix-edit-highlight`,jm=class extends x{static{km=this}static{this.ID=`editor.contrib.codeActionController`}static get(e){return e.getContribution(km.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 ai),this._showDisabled=!1,this._disposed=!1,this._onlyLightBulbWithEmptySelection=!1,this._lightBulbInfoObs=_u(this,void 0),this._preferredKbLabel=_u(this,void 0),this._quickFixKbLabel=_u(this,void 0),this._editor=e,this._model=this._register(new hm(this._editor,i.codeActionProvider,t,n,a,s)),this._register(this._model.onDidChangeState(e=>this.update(e))),this._register(Yu.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 sc(()=>{let e=this._editor.getContribution(Em.ID);return e&&(this._register(e.onClick(e=>this.showCodeActionsFromLightbulb(e.actions,e))),e.onlyWithEmptySelection=this._onlyLightBulbWithEmptySelection),e}),this._resolver=r.createInstance(sm),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,tm.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;ef.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(nm,e,r,{preview:n,editor:this._editor})}finally{t&&this._trigger({type:2,triggerAction:Fp.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=this._model.takeCodeActions(await e.actions)}catch(e){Ko(e);return}if(t){if(this._disposed){t.dispose();return}if(this._editor.getSelection()?.startLineNumber!==e.position.lineNumber){t.dispose();return}if(this._lightBulbWidget.value?.update(t,e.trigger,e.position),this._lightBulbInfoObs.set(Tm(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,tm.FromCodeActions)}finally{t.dispose()}return}if(e.trigger.context){let n=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,t);if(n&&n.action.disabled){ef.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)){ef.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]}static{this.DECORATION=Y.register({description:`quickfix-highlight`,className:Am})}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=L.isIPosition(t)?this.toCoords(t):t;this._actionWidgetService.show(`codeActionWidget`,!0,um(a,this._shouldShowHeaders(),this._resolver.getResolver()),{onSelect:async(e,t)=>{this.applyCodeAction(e,!0,!!t,n.fromLightbulb?tm.FromAILightbulb:tm.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 Gd(r);n=[Pp.RefactorExtract,Pp.RefactorInline,Pp.RefactorRewrite,Pp.RefactorMove,Pp.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:km.DECORATION})):t.map(e=>({range:e,options:km.DECORATION}));r.set(e)}else if(n&&n.length>0){let e=n.map(e=>({range:e,options:km.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;hc(k(914,`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=Ir(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:k(915,`Hide Disabled`),enabled:!0,tooltip:``,class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,t,n))}:{id:`showMoreActions`,label:k(916,`Show Disabled`),enabled:!0,tooltip:``,class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,t,n))}),r}};jm=km=Dm([Om(1,oc),Om(2,jc),Om(3,z),Om(4,O),Om(5,pi),Om(6,Ba),Om(7,ko),Om(8,op),Om(9,z),Om(10,pi),Om(11,Hr)],jm),Pc((e,t)=>{((e,n)=>{n&&t.addRule(`.monaco-editor ${e} { background-color: ${n}; }`)})(`.quickfix-edit-highlight`,e.getColor(ts));let n=e.getColor(Da);n&&t.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${vi(e.type)?`dotted`:`solid`} ${n}; box-sizing: border-box; }`)});function Mm(e){return W.regex(dm.keys()[0],RegExp(`(\\s|^)`+fs(e.value)+`\\b`))}var Nm={type:`object`,defaultSnippets:[{body:{kind:``}}],properties:{kind:{type:`string`,description:k(882,`Kind of the code action to run.`)},apply:{type:`string`,description:k(883,`Controls when the returned actions are applied.`),default:`ifSingle`,enum:[`first`,`ifSingle`,`never`],enumDescriptions:[k(884,`Always apply the first returned code action.`),k(885,`Apply the first returned code action if it is the only one.`),k(886,`Do not apply the returned code actions.`)]},preferred:{type:`boolean`,default:!1,description:k(887,`Controls if only preferred code actions should be returned.`)}}};function Pm(e,t,n,r,i=Fp.Default){e.hasModel()&&jm.get(e)?.manualTriggerAtCurrentPosition(t,i,n,r)}var Fm=class extends Ss{constructor(){super({id:Hp,title:A(904,`Quick Fix...`),precondition:W.and(P.writable,P.hasCodeActionsProvider),icon:N.lightBulb,f1:!0,keybinding:{when:P.textInputFocus,primary:2137,weight:100},menu:{id:C.InlineChatEditorAffordance,group:`1_quickfix`,order:0,when:W.and(P.writable,P.hasCodeActionsProvider)}})}runEditorCommand(e,t){return Pm(t,k(888,`No code actions available`),void 0,void 0,Fp.QuickFix)}},Im=class extends us{constructor(){super({id:Vp,precondition:W.and(P.writable,P.hasCodeActionsProvider),metadata:{description:`Trigger a code action`,args:[{name:`args`,schema:Nm}]}})}runEditorCommand(e,t,n){let r=zp.fromUser(n,{kind:Gd.Empty,apply:`ifSingle`});return Pm(t,typeof n?.kind==`string`?r.preferred?k(889,`No preferred code actions for '{0}' available`,n.kind):k(890,`No code actions for '{0}' available`,n.kind):r.preferred?k(891,`No preferred code actions available`):k(892,`No code actions available`),{include:r.kind,includeSourceActions:!0,onlyIncludePreferredActions:r.preferred},r.apply)}},Lm=class extends B{constructor(){super({id:Wp,label:A(905,`Refactor...`),precondition:W.and(P.writable,P.hasCodeActionsProvider),kbOpts:{kbExpr:P.textInputFocus,primary:3120,mac:{primary:1328},weight:100},contextMenuOpts:{group:`1_modification`,order:2,when:W.and(P.writable,Mm(Pp.Refactor))},metadata:{description:`Refactor...`,args:[{name:`args`,schema:Nm}]}})}run(e,t,n){let r=zp.fromUser(n,{kind:Pp.Refactor,apply:`never`});return Pm(t,typeof n?.kind==`string`?r.preferred?k(893,`No preferred refactorings for '{0}' available`,n.kind):k(894,`No refactorings for '{0}' available`,n.kind):r.preferred?k(895,`No preferred refactorings available`):k(896,`No refactorings available`),{include:Pp.Refactor.contains(r.kind)?r.kind:Gd.None,onlyIncludePreferredActions:r.preferred},r.apply,Fp.Refactor)}},Rm=class extends B{constructor(){super({id:Gp,label:A(906,`Source Action...`),precondition:W.and(P.writable,P.hasCodeActionsProvider),contextMenuOpts:{group:`1_modification`,order:2.1,when:W.and(P.writable,Mm(Pp.Source))},metadata:{description:`Source Action...`,args:[{name:`args`,schema:Nm}]}})}run(e,t,n){let r=zp.fromUser(n,{kind:Pp.Source,apply:`never`});return Pm(t,typeof n?.kind==`string`?r.preferred?k(897,`No preferred source actions for '{0}' available`,n.kind):k(898,`No source actions for '{0}' available`,n.kind):r.preferred?k(899,`No preferred source actions available`):k(900,`No source actions available`),{include:Pp.Source.contains(r.kind)?r.kind:Gd.None,includeSourceActions:!0,onlyIncludePreferredActions:r.preferred},r.apply,Fp.SourceAction)}},zm=class extends B{constructor(){super({id:Kp,label:A(907,`Organize Imports`),precondition:W.and(P.writable,Mm(Pp.SourceOrganizeImports)),kbOpts:{kbExpr:P.textInputFocus,primary:1581,weight:100},metadata:{description:A(908,`Organize imports in the current file. Also called 'Optimize Imports' by some tools`)}})}run(e,t){return Pm(t,k(901,`No organize imports action available`),{include:Pp.SourceOrganizeImports,includeSourceActions:!0},`ifSingle`,Fp.OrganizeImports)}},Bm=class extends B{constructor(){super({id:qp,label:A(909,`Fix All`),precondition:W.and(P.writable,Mm(Pp.SourceFixAll))})}run(e,t){return Pm(t,k(902,`No fix all action available`),{include:Pp.SourceFixAll,includeSourceActions:!0},`ifSingle`,Fp.FixAll)}},Vm=class extends B{constructor(){super({id:Up,label:A(910,`Auto Fix...`),precondition:W.and(P.writable,Mm(Pp.QuickFix)),kbOpts:{kbExpr:P.textInputFocus,primary:1625,mac:{primary:2649},weight:100}})}run(e,t){return Pm(t,k(903,`No auto fixes available`),{include:Pp.QuickFix,onlyIncludePreferredActions:!0},`ifSingle`,Fp.AutoFix)}};X(jm.ID,jm,3),X(Em.ID,Em,4),M(Fm),Z(Lm),Z(Rm),Z(zm),Z(Vm),Z(Bm),F(new Im),l.as(Xc.Configuration).registerConfiguration({...Oc,properties:{"editor.codeActionWidget.showHeaders":{type:`boolean`,scope:6,description:k(911,`Enable/disable showing group headers in the Code Action menu.`),default:!0}}}),l.as(Xc.Configuration).registerConfiguration({...Oc,properties:{"editor.codeActionWidget.includeNearbyQuickFixes":{type:`boolean`,scope:6,description:k(912,`Enable/disable showing nearest Quick Fix within a line when not currently on a diagnostic.`),default:!0}}}),l.as(Xc.Configuration).registerConfiguration({...Oc,properties:{"editor.codeActions.triggerOnFocusChange":{type:`boolean`,scope:6,markdownDescription:k(913,`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 Hm=class e{constructor(){this.lenses=[]}static{this.Empty=new e}dispose(){this._store?.dispose()}get isDisposed(){return this._store?.isDisposed??!1}add(e,t){Qs(e)&&(this._store??=new q,this._store.add(e));for(let n of e.lenses)this.lenses.push({symbol:n,provider:t})}};async function Um(e,t,n){let r=e.ordered(t),i=new Map,a=new Hm,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){tl(e)}});return await Promise.all(o),n.isCancellationRequested?(a.dispose(),Hm.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)}Es.registerCommand(`_executeCodeLensProvider`,function(e,...t){let[n,r]=t;la(Gl.isUri(n)),la(typeof r==`number`||!r);let{codeLensProvider:i}=e.get(O),a=e.get(Wo).getModel(n);if(!a)throw iu();let o=[],s=new q;return Um(i,a,U.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,U.None)).then(e=>o.push(e||n.symbol)));return Promise.all(t)}).then(()=>o).finally(()=>{setTimeout(()=>s.dispose(),100)})});var Wm=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},Gm=function(e,t){return function(n,r){t(n,r,e)}},Km=ms(`ICodeLensCache`),qm=class{constructor(e,t){this.lineCount=e,this.data=t}},Jm=class{constructor(e){this._fakeProvider=new class{provideCodeLenses(){throw Error(`not supported`)}},this._cache=new Fi(20,.75),Fc(Js,()=>e.remove(`codelens/cache`,1));let t=`codelens/cache2`,n=e.get(t,1,`{}`);this._deserialize(n);let r=Yu.filter(e.onWillSaveState,e=>e.reason===y.SHUTDOWN);Yu.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 Hm;r.add({lenses:n},this._fakeProvider);let i=new qm(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 d(e,1,e,11)});let i=new Hm;i.add({lenses:r},this._fakeProvider),this._cache.set(e,new qm(n.lineCount,i))}}catch{}}};Jm=Wm([Gm(0,nc)],Jm),_c(Km,Jm,1);var Ym=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`)}},Xm=class e{static{this._idPool=0}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=Ui(a.command.title.trim());if(a.command.id){let t=`c${e._idPool++}`;r.push(G(`a`,{id:t,title:a.command.tooltip,role:`button`},...i)),this._commands.set(t,a.command)}else r.push(G(`span`,{title:a.command.tooltip},...i));n+1<t.length&&r.push(G(`span`,void 0,`\xA0|\xA0`))}}i?(Io(this._domNode,...r),this._isEmpty&&n&&this._domNode.classList.add(`fadein`),this._isEmpty=!1):Io(this._domNode,G(`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}},Zm=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])}},Qm=Y.register({collapseOnReplaceEdit:!0,description:`codelens`}),$m=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:Qm},e=>this._decorationIds[t]=e),o=o?d.plusRange(o,e.symbol.range):d.lift(e.symbol.range)}),this._viewZone=new Ym(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 Xm(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&&d.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:Qm},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)))}}},eh=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},th=function(e,t){return function(n,r){t(n,r,e)}},nh=class{static{this.ID=`css.editor.codeLens`}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 q,this._localToDispose=new q,this._lenses=[],this._oldCodeLensModels=new q,this._provideCodeLensDebounce=n.for(t.codeLensProvider,`CodeLensProvide`,{min:250}),this._resolveCodeLensesDebounce=n.for(t.codeLensProvider,`CodeLensResolve`,{min:250,salt:`resolve`}),this._resolveCodeLensesScheduler=new ea(()=>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`,rs.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&&Ho(()=>{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 ea(()=>{let t=Date.now();this._getCodeLensModelPromise?.cancel(),this._getCodeLensModelPromise=a(t=>Um(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()},Ko)},this._provideCodeLensDebounce.get(e));this._localToDispose.add(n),this._localToDispose.add(h(()=>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 Zm;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(h(()=>{if(this._editor.getModel()){let e=hi.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 Zm;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=hi.capture(this._editor),a=this._getLayoutInfo();this._editor.changeDecorations(e=>{this._editor.changeViewZones(t=>{let r=new Zm,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 $m(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 $m(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=a(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},tl):(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=>{Ko(e),i===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)})}async getModel(){return await this._getCodeLensModelPromise,await this._resolveCodeLensesPromise,this._currentCodeLensModel?.isDisposed?void 0:this._currentCodeLensModel}};nh=eh([th(1,O),th(2,Au),th(3,Ba),th(4,Si),th(5,Km)],nh),X(nh.ID,nh,1),Z(class extends B{constructor(){super({id:`codelens.showLensesInCurrentLine`,precondition:P.hasCodeLensProvider,label:A(935,`Show CodeLens Commands for Current Line`)})}async run(e,t){if(!t.hasModel())return;let n=e.get(Us),r=e.get(Ba),i=e.get(Si),a=t.getSelection().positionLineNumber,o=t.getContribution(nh.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:k(934,`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 rh=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}},ih=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}},ah=class{constructor(e,t){this.renderedHoverParts=e,this.disposables=t}dispose(){for(let e of this.renderedHoverParts)e.dispose();this.disposables?.dispose()}},oh=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}},sh=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},ch=function(e,t){return function(n,r){t(n,r,e)}},lh=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 J(new Je(Math.round(255*i.red),Math.round(255*i.green),Math.round(255*i.blue),i.alpha)),o=J.Format.CSS.formatRGB(a),s=J.Format.CSS.formatHSL(a),c=J.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}};lh=sh([ch(0,zl)],lh);var uh=class extends x{constructor(e,t){super(),this._register(e.colorProvider.register(`*`,new lh(t)))}};uh=sh([ch(0,O),ch(1,zl)],uh);async function dh(e,t,n,r=`auto`){return gh(new ph,e,t,n,r)}function fh(e,t,n,r){return Promise.resolve(n.provideColorPresentations(e,t,r))}var ph=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)}},mh=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)}},hh=class{constructor(e){this.colorInfo=e}async compute(e,t,n,r){let i=await e.provideColorPresentations(t,this.colorInfo,U.None);return Array.isArray(i)&&r.push(...i),Array.isArray(i)}};async function gh(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 lh)o=l;else try{await e.compute(l,n,r,s)&&(a=!0)}catch(e){tl(e)}}return a?s:o&&i!==`never`?(await e.compute(o,n,r,s),s):[]}function _h(e,t){let{colorProvider:n}=e.get(O),r=e.get(Wo).getModel(t);if(!r)throw iu();return{model:r,colorProviderRegistry:n,defaultColorDecoratorsEnablement:e.get(ko).getValue(`editor.defaultColorDecorators`,{resource:t})}}var vh=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},yh=function(e,t){return function(n,r){t(n,r,e)}},bh,xh=Object.create({}),Sh=class extends x{static{bh=this}static{this.ID=`editor.contrib.colorDetector`}static{this.RECOMPUTE_TIME=1e3}static{this.colorDecoratorInnerWidthInEm=.8}static{this.colorDecoratorMarginInEm=.2}constructor(e,t,n,r){super(),this._editor=e,this._configurationService=t,this._languageFeaturesService=n,this._localToDispose=this._register(new q),this._decorationsIds=[],this._colorDatas=new Map,this._decoratorLimitReporter=this._register(new Ch),this._colorDecorationClassRefs=this._register(new q),this._colorDecoratorIds=this._editor.createDecorationsCollection(),this._ruleFactory=this._register(new Vi(this._editor));let i=this._editor.getContainerDomNode();i.style.setProperty(`--vscode-colorPicker-colorDecoratorWidth`,`${bh.colorDecoratorInnerWidthInEm}em`),i.style.setProperty(`--vscode-colorPicker-colorDecoratorMargin`,`${bh.colorDecoratorMarginInEm}em`),this._register(h(()=>{i.style.removeProperty(`--vscode-colorPicker-colorDecoratorWidth`),i.style.removeProperty(`--vscode-colorPicker-colorDecoratorMargin`)})),this._debounceInformation=r.for(n.colorProvider,`Document Colors`,{min:bh.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(168);let n=t!==this._isColorDecoratorsEnabled||e.hasChanged(27),r=e.hasChanged(168);(n||r)&&(this._isColorDecoratorsEnabled?this.updateColors():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isColorDecoratorsEnabled=this.isEnabled(),this._defaultColorDecoratorsEnablement=this._editor.getOption(168),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){this.removeAllDecorations();return}let e=this._editor.getModel();e&&this._languageFeaturesService.colorProvider.has(e)&&(this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new Sa,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},this._debounceInformation.get(e)))})),this.beginCompute())}async beginCompute(){this._computePromise=a(async e=>{let t=this._editor.getModel();if(!t)return[];let n=new Ru(!1),r=await dh(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){Ko(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:Y.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=bh.colorDecoratorInnerWidthInEm+2*bh.colorDecoratorMarginInEm,r=this._editor.getOption(27);for(let i=0;i<e.length&&t.length<r;i++){let{red:r,green:a,blue:o,alpha:s}=e[i].colorInfo.color,c=new Je(Math.round(r*255),Math.round(a*255),Math.round(o*255),s),l=`rgba(${c.r}, ${c.g}, ${c.b}, ${c.a})`,u=this._colorDecorationClassRefs.add(this._ruleFactory.createClassNameRef({backgroundColor:l}));t.push({range:{startLineNumber:e[i].colorInfo.range.startLineNumber,startColumn:e[i].colorInfo.range.startColumn,endLineNumber:e[i].colorInfo.range.endLineNumber,endColumn:e[i].colorInfo.range.endColumn},options:{description:`colorDetector`,before:{content:`\xA0`,inlineClassName:`${u.className} colorpicker-color-decoration`,inlineClassNameAffectsLetterSpacing:!0,attachedData:xh,widthInEm:n}}})}let i=r<e.length&&r;this._decoratorLimitReporter.update(e.length,i),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(d.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)}};Sh=bh=vh([yh(1,ko),yh(2,O),yh(3,Au)],Sh);var Ch=class extends x{constructor(){super(...arguments),this._onDidChange=this._register(new K),this._computed=0,this._limited=!1}update(e,t){(e!==this._computed||t!==this._limited)&&(this._computed=e,this._limited=t,this._onDidChange.fire())}},wh=`editor.action.showHover`,Th=`editor.action.showDefinitionPreviewHover`,Eh=`editor.action.hideHover`,Dh=`editor.action.scrollUpHover`,Oh=`editor.action.scrollDownHover`,kh=`editor.action.scrollLeftHover`,Ah=`editor.action.scrollRightHover`,jh=`editor.action.pageUpHover`,Mh=`editor.action.pageDownHover`,Nh=`editor.action.goToTopHover`,Ph=`editor.action.goToBottomHover`,Fh=`editor.action.increaseHoverVerbosityLevel`,Ih=k(1160,`Increase Hover Verbosity Level`),Lh=`editor.action.decreaseHoverVerbosityLevel`,Rh=k(1161,`Decrease Hover Verbosity Level`),zh=`editor.action.hideLongLineWarningHover`,Bh=`editor.action.inlineSuggest.commit`,Vh=`editor.action.inlineSuggest.commitAlternativeAction`,Hh=`editor.action.inlineSuggest.showPrevious`,Uh=`editor.action.inlineSuggest.showNext`,Wh=`editor.action.inlineSuggest.jump`,Gh=`editor.action.inlineSuggest.hide`,Kh=`editor.action.inlineSuggest.toggleShowCollapsed`,qh=`editor.action.inlineSuggest.renameSymbol`,Jh=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},Yh=function(e,t){return function(n,r){t(n,r,e)}},Xh,Zh=class extends x{constructor(e,t,n){super(),this.editor=e,this.model=t,this.instantiationService=n,this.alwaysShowToolbar=vs(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(71).showToolbar===`always`),this.sessionPosition=void 0,this.position=S(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 L(t.lineNumber,Math.min(n,this.sessionPosition?.column??2**53-1));return this.sessionPosition=r,r}),this._register(ku((t,n)=>{let r=this.model.read(t);if(!r||!this.alwaysShowToolbar.read(t))return;let i=S(t=>{let n=t.store.add(this.instantiationService.createInstance(eg.hot.read(t),this.editor,!0,this.position,r.selectedInlineCompletionIndex,r.inlineCompletionsCount,r.activeCommands,r.warning,()=>{}));return e.addContentWidget(n),t.store.add(h(()=>e.removeContentWidget(n))),t.store.add(D(e=>{this.position.read(e)&&r.lastTriggerKind.read(e)!==Li.Explicit&&r.triggerExplicitly()})),n}),a=ou(this,(e,t)=>!!this.position.read(e)||!!t);n.add(D(e=>{a.read(e)&&i.read(e)}))}))}};Zh=Jh([Yh(2,z)],Zh);var Qh=Yi(`inline-suggestion-hints-next`,N.chevronRight,k(1270,`Icon for show next parameter hint.`)),$h=Yi(`inline-suggestion-hints-previous`,N.chevronLeft,k(1271,`Icon for show previous parameter hint.`)),eg=class extends x{static{Xh=this}static{this.hot=on(this)}static{this._dropDownVisible=!1}static get dropDownVisible(){return this._dropDownVisible}static{this.id=0}createCommandAction(e,t,n){let r=new Pl(e,t,n,!0,()=>this._commandService.executeCommand(e));return r.tooltip=this.keybindingService.appendKeybinding(t,e,this._contextKeyService),r}constructor(e,t,r,i,a,o,s,c,l,u,d,f,p){super(),this.editor=e,this.withBorder=t,this._position=r,this._currentSuggestionIdx=i,this._suggestionCount=a,this._extraCommands=o,this._warning=s,this._relayout=c,this._commandService=l,this.keybindingService=d,this._contextKeyService=f,this._menuService=p,this.id=`InlineSuggestionHintsContentWidget${Xh.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._warningMessageContentNode=S(e=>{let t=this._warning.read(e);if(t)return typeof t.message==`string`?t.message:e.store.add(kt(t.message)).element}),this._warningMessageNode=n.div({class:`warningMessage`,style:{maxWidth:400,margin:4,marginBottom:4,display:S(e=>this._warning.read(e)?`block`:`none`)}},[this._warningMessageContentNode]).keepUpdated(this._store),this.nodes=pt(`div.inlineSuggestionsHints`,{className:this.withBorder?`monaco-hover monaco-hover-content`:``},[this._warningMessageNode.element,pt(`div@toolBar`)]),this.previousAction=this._register(this.createCommandAction(Hh,k(1272,`Previous`),V.asClassName($h))),this.availableSuggestionCountAction=this._register(new Pl(`inlineSuggestionHints.availableSuggestionCount`,``,void 0,!1)),this.nextAction=this._register(this.createCommandAction(Uh,k(1273,`Next`),V.asClassName(Qh))),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu(C.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new ea(()=>{this.availableSuggestionCountAction.label=``},100)),this.disableButtonsDebounced=this._register(new ea(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this._register(D(e=>{this._warningMessageContentNode.read(e),this._warningMessageNode.readEffect(e),this._relayout()})),this.toolBar=this._register(u.createInstance(rg,this.nodes.toolBar,C.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:e=>e.startsWith(`primary`)},actionViewItemProvider:(e,t)=>{if(e instanceof yl)return u.createInstance(ng,e,void 0);if(e===this.availableSuggestionCountAction){let t=new tg(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=>{Xh._dropDownVisible=e})),this._register(D(e=>{this._position.read(e),this.editor.layoutContentWidget(this)})),this._register(D(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(D(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 yl&&t.push(e);t.length>0&&t.unshift(new lo),this.toolBar.setAdditionalSecondaryActions(t)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}};eg=Xh=Jh([Yh(8,Ba),Yh(9,z),Yh(10,Hr),Yh(11,jc),Yh(12,bt)],eg);var tg=class extends mc{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(){}},ng=class extends Ea{updateLabel(){let t=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService,!0);if(!t)return super.updateLabel();if(this.label){let n=pt(`div.keybinding`).root;this._register(new Cr(n,Wn,{disableTitle:!0,...e})).set(t),this.label.textContent=this._action.label,this.label.appendChild(n),this.label.classList.add(`inlineSuggestionStatusBarItemLabel`)}}updateTooltip(){}},rg=class extends kn{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}=Lo(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){ye(this.prependedPrimaryActions,e,(e,t)=>e===t)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){ye(this.additionalActions,e,(e,t)=>e===t)||(this.additionalActions=e,this.updateToolbar())}};rg=Jh([Yh(3,bt),Yh(4,jc),Yh(5,ol),Yh(6,Hr),Yh(7,Ba),Yh(8,Ci)],rg);function ig(e,t,n){let r=Ir(e);return!(t<r.left+3||t>r.left+r.width-3||n<r.top+3||n>r.top+r.height-3)}function ag(e,t,n){return e===`on`||e!==`off`&&og(t,n.event)}function og(e,t){return e===`altKey`?t.ctrlKey||t.metaKey:t.altKey}var sg=class{constructor(e,t,n,r){this.value=e,this.isComplete=t,this.hasLoadingMessage=n,this.options=r}},cg=class extends x{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new K),this.onResult=this._onResult.event,this._asyncComputationScheduler=this._register(new lg(e=>this._triggerAsyncComputation(e),0)),this._syncComputationScheduler=this._register(new lg(e=>this._triggerSyncComputation(e),0)),this._loadingMessageScheduler=this._register(new lg(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=Or(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){Ko(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 sg(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}},lg=class extends x{constructor(e,t){super(),this._scheduler=this._register(new ea(()=>e(this._options),t))}schedule(e,t){this._options=e,this._scheduler.schedule(t)}cancel(){this._scheduler.cancel()}},ug=class{get onDidWillResize(){return this._onDidWillResize.event}get onDidResize(){return this._onDidResize.event}constructor(){this._onDidWillResize=new K,this._onDidResize=new K,this._sashListener=new q,this._size=new Ju(0,0),this._minSize=new Ju(0,0),this._maxSize=new Ju(2**53-1,2**53-1),this.domNode=document.createElement(`div`),this._eastSash=new hn(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new hn(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new hn(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:xt.North}),this._southSash=new hn(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:xt.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(Yu.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(Yu.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(Yu.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(Yu.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 Ju(t,e);Ju.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}},dg=30,fg=24,pg=class extends x{constructor(e,t=new Ju(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new ug),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position=`absolute`,this._resizableNode.minSize=Ju.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 Ju(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?L.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){let t=this._editor.getDomNode(),n=this._editor.getScrolledVisiblePosition(e);if(t&&n)return Ir(t).top+n.top-dg}_availableVerticalSpaceBelow(e){let t=this._editor.getDomNode(),n=this._editor.getScrolledVisiblePosition(e);if(!t||!n)return;let r=Ir(t),i=Lt(t.ownerDocument.body),a=r.top+n.top+n.height;return i.height-a-fg}_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)}},mg=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},hg=function(e,t){return function(n,r){t(n,r,e)}},gg,_g=30,vg=class extends pg{static{gg=this}static{this.ID=`editor.contrib.resizableContentHoverWidget`}static{this._lastDimensions=new Ju(0,0)}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 Ju(150,a);super(e,o),this._configurationService=n,this._accessibilityService=r,this._keybindingService=i,this._hover=this._register(new lu(!0)),this._onDidResize=this._register(new K),this.onDidResize=this._onDidResize.event,this._onDidScroll=this._register(new K),this.onDidScroll=this._onDidScroll.event,this._onContentsChanged=this._register(new K),this.onContentsChanged=this._onContentsChanged.event,this._minimumSize=o,this._hoverVisibleKey=P.hoverVisible.bindTo(t),this._hoverFocusedKey=P.hoverFocused.bindTo(t),R(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(Ll(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 gg.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 gg._applyDimensions(n,e,t)}_setContainerDomNodeDimensions(e,t){let n=this._hover.containerDomNode;return gg._applyDimensions(n,e,t)}_setScrollableElementDimensions(e,t){let n=this._hover.scrollbar.getDomNode();return gg._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){gg._applyMaxDimensions(this._hover.contentsDomNode,e,t),gg._applyMaxDimensions(this._hover.scrollbar.getDomNode(),e,t),gg._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 Ju(e,t),this._setHoverWidgetMaxDimensions(e,t)}_resize(e){gg._lastDimensions=new Ju(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?Lt(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=Ir(this.getDomNode());this._renderedHover.closestMouseDistance===void 0&&(this._renderedHover.closestMouseDistance=yg(this._renderedHover.initialMousePosX,this._renderedHover.initialMousePosY,n.left,n.top,n.width,n.height));let r=yg(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,gg._lastDimensions.height),t=Math.max(this._editor.getLayoutInfo().width*.66,750,gg._lastDimensions.width);this._resizableNode.maxSize=new Ju(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=Tt(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&&Zo(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 Ju(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 Ju(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 Ju(e,this._minimumSize.height)}handleContentsChanged(){this._removeConstraintsRenderNormally();let e=this._hover.contentsDomNode,t=Tt(e),n=_i(e)+2;if(this._resizableNode.layout(t,n),this._setHoverWidgetDimensions(n,t),t=Tt(e),n=_i(e),this._contentWidth=n,this._updateMinimumWidth(),this._resizableNode.layout(t,n),this._renderedHover?.showAtPosition){let e=Tt(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-_g})}scrollRight(){let e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+_g})}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})}};vg=gg=mg([hg(1,jc),hg(2,ko),hg(3,Ms),hg(4,Hr)],vg);function yg(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 bg=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 hl.EMPTY;let i=e._getLineDecorations(this._editor,r);return hl.merge(this._participants.map(e=>e.computeAsync?e.computeAsync(r,i,t.source,n):hl.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 Xu(i)}},xg=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 Sg(this,t,this.isComplete,this.options)}},Sg=class extends xg{constructor(e,t,n,r){super(t,n,r),this.original=e}filter(e){return this.original.filter(e)}},Cg=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},wg=function(e,t){return function(n,r){t(n,r,e)}},Tg=G,Eg=class extends x{get hasContent(){return this._hasContent}constructor(e,t){super(),this._keybindingService=e,this._hoverService=t,this.actions=[],this._hasContent=!1,this.hoverElement=Tg(`div.hover-row.status-bar`),this.hoverElement.tabIndex=0,this.actionsElement=R(this.hoverElement,Tg(`div.actions`))}addAction(e){let t=this._keybindingService.lookupKeybinding(e.commandId),n=t?t.getLabel():null;this._hasContent=!0;let r=this._register(gc.render(this.actionsElement,e,n));return this._register(this._hoverService.setupManagedHover(il(`element`),r.actionContainer,r.actionRenderedLabel)),this.actions.push(r),r}append(e){let t=R(this.actionsElement,e);return this._hasContent=!0,t}};Eg=Cg([wg(0,Hr),wg(1,xs)],Eg);var 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 d(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 d(s,1,c,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION}),s=r.startLineNumber,c=r.endLineNumber)}a.push({range:new d(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}static{this._CURRENT_FIND_MATCH_DECORATION=Y.register({description:`current-find-match`,stickiness:1,zIndex:13,className:`currentFindMatch`,inlineClassName:`currentFindMatchInline`,showIfCollapsed:!0,overviewRuler:{color:Tl(Fr),position:wa.Center},minimap:{color:Tl(Hc),position:1}})}static{this._FIND_MATCH_DECORATION=Y.register({description:`find-match`,stickiness:1,zIndex:10,className:`findMatch`,inlineClassName:`findMatchInline`,showIfCollapsed:!0,overviewRuler:{color:Tl(Fr),position:wa.Center},minimap:{color:Tl(Hc),position:1}})}static{this._FIND_MATCH_NO_OVERVIEW_DECORATION=Y.register({description:`find-match-no-overview`,stickiness:1,className:`findMatch`,showIfCollapsed:!0})}static{this._FIND_MATCH_ONLY_OVERVIEW_DECORATION=Y.register({description:`find-match-only-overview`,stickiness:1,overviewRuler:{color:Tl(Fr),position:wa.Center}})}static{this._RANGE_HIGHLIGHT_DECORATION=Y.register({description:`find-range-highlight`,stickiness:1,className:`rangeHighlight`,isWholeLine:!0})}static{this._FIND_SCOPE_DECORATION=Y.register({description:`find-scope`,className:`findScope`,isWholeLine:!0})}},Og=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)=>d.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 kg(e,t){if(e&&e[0]!==``){let n=Ag(e,t,`-`),r=Ag(e,t,`_`);return n&&!r?jg(e,t,`-`):!n&&r?jg(e,t,`_`):e[0].toUpperCase()===e[0]?t.toUpperCase():e[0].toLowerCase()===e[0]?t.toLowerCase():ws(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 Ag(e,t,n){return e[0].indexOf(n)!==-1&&t.indexOf(n)!==-1&&e[0].split(n).length===t.split(n).length}function jg(e,t,n){let r=t.split(n),i=e[0].split(n),a=``;return r.forEach((e,t)=>{a+=kg([i[t]],e)+n}),a.slice(0,-1)}var Mg=class{constructor(e){this.staticValue=e,this.kind=0}},Ng=class{constructor(e){this.pieces=e,this.kind=1}},Pg=class e{static fromStaticValue(t){return new e([Fg.staticValue(t)])}get hasReplacementPatterns(){return this._state.kind===1}constructor(e){this._state=!e||e.length===0?new Mg(``):e.length===1&&e[0].staticValue!==null?new Mg(e[0].staticValue):new Ng(e)}buildReplaceString(t,n){if(this._state.kind===0)return n?kg(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}},Fg=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)}},Ig=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++]=Fg.staticValue(this._currentStaticPiece),this._currentStaticPiece=``),this._result[this._resultLen++]=Fg.caseOps(e,n),this._lastCharIndex=t}finalize(){return this.emitUnchanged(this._source.length),this._currentStaticPiece.length!==0&&(this._result[this._resultLen++]=Fg.staticValue(this._currentStaticPiece),this._currentStaticPiece=``),new Pg(this._result)}};function Lg(e){if(!e||e.length===0)return new Pg(null);let t=[],n=new Ig(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(`
|