editor.worker.bundle.js 372 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085
  1. (() => {
  2. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/errors.js
  3. var ErrorHandler = class {
  4. constructor() {
  5. this.listeners = [];
  6. this.unexpectedErrorHandler = function(e) {
  7. setTimeout(() => {
  8. if (e.stack) {
  9. throw new Error(e.message + "\n\n" + e.stack);
  10. }
  11. throw e;
  12. }, 0);
  13. };
  14. }
  15. emit(e) {
  16. this.listeners.forEach((listener) => {
  17. listener(e);
  18. });
  19. }
  20. onUnexpectedError(e) {
  21. this.unexpectedErrorHandler(e);
  22. this.emit(e);
  23. }
  24. onUnexpectedExternalError(e) {
  25. this.unexpectedErrorHandler(e);
  26. }
  27. };
  28. var errorHandler = new ErrorHandler();
  29. function onUnexpectedError(e) {
  30. if (!isCancellationError(e)) {
  31. errorHandler.onUnexpectedError(e);
  32. }
  33. return void 0;
  34. }
  35. function transformErrorForSerialization(error) {
  36. if (error instanceof Error) {
  37. let {name, message} = error;
  38. const stack = error.stacktrace || error.stack;
  39. return {
  40. $isError: true,
  41. name,
  42. message,
  43. stack
  44. };
  45. }
  46. return error;
  47. }
  48. var canceledName = "Canceled";
  49. function isCancellationError(error) {
  50. if (error instanceof CancellationError) {
  51. return true;
  52. }
  53. return error instanceof Error && error.name === canceledName && error.message === canceledName;
  54. }
  55. var CancellationError = class extends Error {
  56. constructor() {
  57. super(canceledName);
  58. this.name = this.message;
  59. }
  60. };
  61. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/functional.js
  62. function once(fn) {
  63. const _this = this;
  64. let didCall = false;
  65. let result;
  66. return function() {
  67. if (didCall) {
  68. return result;
  69. }
  70. didCall = true;
  71. result = fn.apply(_this, arguments);
  72. return result;
  73. };
  74. }
  75. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/iterator.js
  76. var Iterable;
  77. (function(Iterable2) {
  78. function is(thing) {
  79. return thing && typeof thing === "object" && typeof thing[Symbol.iterator] === "function";
  80. }
  81. Iterable2.is = is;
  82. const _empty2 = Object.freeze([]);
  83. function empty() {
  84. return _empty2;
  85. }
  86. Iterable2.empty = empty;
  87. function* single(element) {
  88. yield element;
  89. }
  90. Iterable2.single = single;
  91. function from(iterable) {
  92. return iterable || _empty2;
  93. }
  94. Iterable2.from = from;
  95. function isEmpty(iterable) {
  96. return !iterable || iterable[Symbol.iterator]().next().done === true;
  97. }
  98. Iterable2.isEmpty = isEmpty;
  99. function first(iterable) {
  100. return iterable[Symbol.iterator]().next().value;
  101. }
  102. Iterable2.first = first;
  103. function some(iterable, predicate) {
  104. for (const element of iterable) {
  105. if (predicate(element)) {
  106. return true;
  107. }
  108. }
  109. return false;
  110. }
  111. Iterable2.some = some;
  112. function find(iterable, predicate) {
  113. for (const element of iterable) {
  114. if (predicate(element)) {
  115. return element;
  116. }
  117. }
  118. return void 0;
  119. }
  120. Iterable2.find = find;
  121. function* filter(iterable, predicate) {
  122. for (const element of iterable) {
  123. if (predicate(element)) {
  124. yield element;
  125. }
  126. }
  127. }
  128. Iterable2.filter = filter;
  129. function* map(iterable, fn) {
  130. let index = 0;
  131. for (const element of iterable) {
  132. yield fn(element, index++);
  133. }
  134. }
  135. Iterable2.map = map;
  136. function* concat(...iterables) {
  137. for (const iterable of iterables) {
  138. for (const element of iterable) {
  139. yield element;
  140. }
  141. }
  142. }
  143. Iterable2.concat = concat;
  144. function* concatNested(iterables) {
  145. for (const iterable of iterables) {
  146. for (const element of iterable) {
  147. yield element;
  148. }
  149. }
  150. }
  151. Iterable2.concatNested = concatNested;
  152. function reduce(iterable, reducer, initialValue) {
  153. let value = initialValue;
  154. for (const element of iterable) {
  155. value = reducer(value, element);
  156. }
  157. return value;
  158. }
  159. Iterable2.reduce = reduce;
  160. function* slice(arr, from2, to = arr.length) {
  161. if (from2 < 0) {
  162. from2 += arr.length;
  163. }
  164. if (to < 0) {
  165. to += arr.length;
  166. } else if (to > arr.length) {
  167. to = arr.length;
  168. }
  169. for (; from2 < to; from2++) {
  170. yield arr[from2];
  171. }
  172. }
  173. Iterable2.slice = slice;
  174. function consume(iterable, atMost = Number.POSITIVE_INFINITY) {
  175. const consumed = [];
  176. if (atMost === 0) {
  177. return [consumed, iterable];
  178. }
  179. const iterator = iterable[Symbol.iterator]();
  180. for (let i = 0; i < atMost; i++) {
  181. const next = iterator.next();
  182. if (next.done) {
  183. return [consumed, Iterable2.empty()];
  184. }
  185. consumed.push(next.value);
  186. }
  187. return [consumed, {[Symbol.iterator]() {
  188. return iterator;
  189. }}];
  190. }
  191. Iterable2.consume = consume;
  192. function equals2(a, b, comparator = (at, bt) => at === bt) {
  193. const ai = a[Symbol.iterator]();
  194. const bi = b[Symbol.iterator]();
  195. while (true) {
  196. const an = ai.next();
  197. const bn = bi.next();
  198. if (an.done !== bn.done) {
  199. return false;
  200. } else if (an.done) {
  201. return true;
  202. } else if (!comparator(an.value, bn.value)) {
  203. return false;
  204. }
  205. }
  206. }
  207. Iterable2.equals = equals2;
  208. })(Iterable || (Iterable = {}));
  209. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/lifecycle.js
  210. var TRACK_DISPOSABLES = false;
  211. var disposableTracker = null;
  212. function setDisposableTracker(tracker) {
  213. disposableTracker = tracker;
  214. }
  215. if (TRACK_DISPOSABLES) {
  216. const __is_disposable_tracked__ = "__is_disposable_tracked__";
  217. setDisposableTracker(new class {
  218. trackDisposable(x) {
  219. const stack = new Error("Potentially leaked disposable").stack;
  220. setTimeout(() => {
  221. if (!x[__is_disposable_tracked__]) {
  222. console.log(stack);
  223. }
  224. }, 3e3);
  225. }
  226. setParent(child, parent) {
  227. if (child && child !== Disposable.None) {
  228. try {
  229. child[__is_disposable_tracked__] = true;
  230. } catch (_a3) {
  231. }
  232. }
  233. }
  234. markAsDisposed(disposable) {
  235. if (disposable && disposable !== Disposable.None) {
  236. try {
  237. disposable[__is_disposable_tracked__] = true;
  238. } catch (_a3) {
  239. }
  240. }
  241. }
  242. markAsSingleton(disposable) {
  243. }
  244. }());
  245. }
  246. function trackDisposable(x) {
  247. disposableTracker === null || disposableTracker === void 0 ? void 0 : disposableTracker.trackDisposable(x);
  248. return x;
  249. }
  250. function markAsDisposed(disposable) {
  251. disposableTracker === null || disposableTracker === void 0 ? void 0 : disposableTracker.markAsDisposed(disposable);
  252. }
  253. function setParentOfDisposable(child, parent) {
  254. disposableTracker === null || disposableTracker === void 0 ? void 0 : disposableTracker.setParent(child, parent);
  255. }
  256. function setParentOfDisposables(children, parent) {
  257. if (!disposableTracker) {
  258. return;
  259. }
  260. for (const child of children) {
  261. disposableTracker.setParent(child, parent);
  262. }
  263. }
  264. var MultiDisposeError = class extends Error {
  265. constructor(errors) {
  266. super(`Encountered errors while disposing of store. Errors: [${errors.join(", ")}]`);
  267. this.errors = errors;
  268. }
  269. };
  270. function dispose(arg) {
  271. if (Iterable.is(arg)) {
  272. let errors = [];
  273. for (const d of arg) {
  274. if (d) {
  275. try {
  276. d.dispose();
  277. } catch (e) {
  278. errors.push(e);
  279. }
  280. }
  281. }
  282. if (errors.length === 1) {
  283. throw errors[0];
  284. } else if (errors.length > 1) {
  285. throw new MultiDisposeError(errors);
  286. }
  287. return Array.isArray(arg) ? [] : arg;
  288. } else if (arg) {
  289. arg.dispose();
  290. return arg;
  291. }
  292. }
  293. function combinedDisposable(...disposables) {
  294. const parent = toDisposable(() => dispose(disposables));
  295. setParentOfDisposables(disposables, parent);
  296. return parent;
  297. }
  298. function toDisposable(fn) {
  299. const self2 = trackDisposable({
  300. dispose: once(() => {
  301. markAsDisposed(self2);
  302. fn();
  303. })
  304. });
  305. return self2;
  306. }
  307. var DisposableStore = class {
  308. constructor() {
  309. this._toDispose = new Set();
  310. this._isDisposed = false;
  311. trackDisposable(this);
  312. }
  313. dispose() {
  314. if (this._isDisposed) {
  315. return;
  316. }
  317. markAsDisposed(this);
  318. this._isDisposed = true;
  319. this.clear();
  320. }
  321. get isDisposed() {
  322. return this._isDisposed;
  323. }
  324. clear() {
  325. try {
  326. dispose(this._toDispose.values());
  327. } finally {
  328. this._toDispose.clear();
  329. }
  330. }
  331. add(o) {
  332. if (!o) {
  333. return o;
  334. }
  335. if (o === this) {
  336. throw new Error("Cannot register a disposable on itself!");
  337. }
  338. setParentOfDisposable(o, this);
  339. if (this._isDisposed) {
  340. if (!DisposableStore.DISABLE_DISPOSED_WARNING) {
  341. console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack);
  342. }
  343. } else {
  344. this._toDispose.add(o);
  345. }
  346. return o;
  347. }
  348. };
  349. DisposableStore.DISABLE_DISPOSED_WARNING = false;
  350. var Disposable = class {
  351. constructor() {
  352. this._store = new DisposableStore();
  353. trackDisposable(this);
  354. setParentOfDisposable(this._store, this);
  355. }
  356. dispose() {
  357. markAsDisposed(this);
  358. this._store.dispose();
  359. }
  360. _register(o) {
  361. if (o === this) {
  362. throw new Error("Cannot register a disposable on itself!");
  363. }
  364. return this._store.add(o);
  365. }
  366. };
  367. Disposable.None = Object.freeze({dispose() {
  368. }});
  369. var SafeDisposable = class {
  370. constructor() {
  371. this.dispose = () => {
  372. };
  373. this.unset = () => {
  374. };
  375. this.isset = () => false;
  376. trackDisposable(this);
  377. }
  378. set(fn) {
  379. let callback = fn;
  380. this.unset = () => callback = void 0;
  381. this.isset = () => callback !== void 0;
  382. this.dispose = () => {
  383. if (callback) {
  384. callback();
  385. callback = void 0;
  386. markAsDisposed(this);
  387. }
  388. };
  389. return this;
  390. }
  391. };
  392. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/linkedList.js
  393. var Node = class {
  394. constructor(element) {
  395. this.element = element;
  396. this.next = Node.Undefined;
  397. this.prev = Node.Undefined;
  398. }
  399. };
  400. Node.Undefined = new Node(void 0);
  401. var LinkedList = class {
  402. constructor() {
  403. this._first = Node.Undefined;
  404. this._last = Node.Undefined;
  405. this._size = 0;
  406. }
  407. get size() {
  408. return this._size;
  409. }
  410. isEmpty() {
  411. return this._first === Node.Undefined;
  412. }
  413. clear() {
  414. let node = this._first;
  415. while (node !== Node.Undefined) {
  416. const next = node.next;
  417. node.prev = Node.Undefined;
  418. node.next = Node.Undefined;
  419. node = next;
  420. }
  421. this._first = Node.Undefined;
  422. this._last = Node.Undefined;
  423. this._size = 0;
  424. }
  425. unshift(element) {
  426. return this._insert(element, false);
  427. }
  428. push(element) {
  429. return this._insert(element, true);
  430. }
  431. _insert(element, atTheEnd) {
  432. const newNode = new Node(element);
  433. if (this._first === Node.Undefined) {
  434. this._first = newNode;
  435. this._last = newNode;
  436. } else if (atTheEnd) {
  437. const oldLast = this._last;
  438. this._last = newNode;
  439. newNode.prev = oldLast;
  440. oldLast.next = newNode;
  441. } else {
  442. const oldFirst = this._first;
  443. this._first = newNode;
  444. newNode.next = oldFirst;
  445. oldFirst.prev = newNode;
  446. }
  447. this._size += 1;
  448. let didRemove = false;
  449. return () => {
  450. if (!didRemove) {
  451. didRemove = true;
  452. this._remove(newNode);
  453. }
  454. };
  455. }
  456. shift() {
  457. if (this._first === Node.Undefined) {
  458. return void 0;
  459. } else {
  460. const res = this._first.element;
  461. this._remove(this._first);
  462. return res;
  463. }
  464. }
  465. pop() {
  466. if (this._last === Node.Undefined) {
  467. return void 0;
  468. } else {
  469. const res = this._last.element;
  470. this._remove(this._last);
  471. return res;
  472. }
  473. }
  474. _remove(node) {
  475. if (node.prev !== Node.Undefined && node.next !== Node.Undefined) {
  476. const anchor = node.prev;
  477. anchor.next = node.next;
  478. node.next.prev = anchor;
  479. } else if (node.prev === Node.Undefined && node.next === Node.Undefined) {
  480. this._first = Node.Undefined;
  481. this._last = Node.Undefined;
  482. } else if (node.next === Node.Undefined) {
  483. this._last = this._last.prev;
  484. this._last.next = Node.Undefined;
  485. } else if (node.prev === Node.Undefined) {
  486. this._first = this._first.next;
  487. this._first.prev = Node.Undefined;
  488. }
  489. this._size -= 1;
  490. }
  491. *[Symbol.iterator]() {
  492. let node = this._first;
  493. while (node !== Node.Undefined) {
  494. yield node.element;
  495. node = node.next;
  496. }
  497. }
  498. };
  499. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/platform.js
  500. var _a;
  501. var LANGUAGE_DEFAULT = "en";
  502. var _isWindows = false;
  503. var _isMacintosh = false;
  504. var _isLinux = false;
  505. var _isLinuxSnap = false;
  506. var _isNative = false;
  507. var _isWeb = false;
  508. var _isElectron = false;
  509. var _isIOS = false;
  510. var _isCI = false;
  511. var _locale = void 0;
  512. var _language = LANGUAGE_DEFAULT;
  513. var _translationsConfigFile = void 0;
  514. var _userAgent = void 0;
  515. var globals = typeof self === "object" ? self : typeof global === "object" ? global : {};
  516. var nodeProcess = void 0;
  517. if (typeof globals.vscode !== "undefined" && typeof globals.vscode.process !== "undefined") {
  518. nodeProcess = globals.vscode.process;
  519. } else if (typeof process !== "undefined") {
  520. nodeProcess = process;
  521. }
  522. var isElectronProcess = typeof ((_a = nodeProcess === null || nodeProcess === void 0 ? void 0 : nodeProcess.versions) === null || _a === void 0 ? void 0 : _a.electron) === "string";
  523. var isElectronRenderer = isElectronProcess && (nodeProcess === null || nodeProcess === void 0 ? void 0 : nodeProcess.type) === "renderer";
  524. if (typeof navigator === "object" && !isElectronRenderer) {
  525. _userAgent = navigator.userAgent;
  526. _isWindows = _userAgent.indexOf("Windows") >= 0;
  527. _isMacintosh = _userAgent.indexOf("Macintosh") >= 0;
  528. _isIOS = (_userAgent.indexOf("Macintosh") >= 0 || _userAgent.indexOf("iPad") >= 0 || _userAgent.indexOf("iPhone") >= 0) && !!navigator.maxTouchPoints && navigator.maxTouchPoints > 0;
  529. _isLinux = _userAgent.indexOf("Linux") >= 0;
  530. _isWeb = true;
  531. _locale = navigator.language;
  532. _language = _locale;
  533. } else if (typeof nodeProcess === "object") {
  534. _isWindows = nodeProcess.platform === "win32";
  535. _isMacintosh = nodeProcess.platform === "darwin";
  536. _isLinux = nodeProcess.platform === "linux";
  537. _isLinuxSnap = _isLinux && !!nodeProcess.env["SNAP"] && !!nodeProcess.env["SNAP_REVISION"];
  538. _isElectron = isElectronProcess;
  539. _isCI = !!nodeProcess.env["CI"] || !!nodeProcess.env["BUILD_ARTIFACTSTAGINGDIRECTORY"];
  540. _locale = LANGUAGE_DEFAULT;
  541. _language = LANGUAGE_DEFAULT;
  542. const rawNlsConfig = nodeProcess.env["VSCODE_NLS_CONFIG"];
  543. if (rawNlsConfig) {
  544. try {
  545. const nlsConfig = JSON.parse(rawNlsConfig);
  546. const resolved = nlsConfig.availableLanguages["*"];
  547. _locale = nlsConfig.locale;
  548. _language = resolved ? resolved : LANGUAGE_DEFAULT;
  549. _translationsConfigFile = nlsConfig._translationsConfigFile;
  550. } catch (e) {
  551. }
  552. }
  553. _isNative = true;
  554. } else {
  555. console.error("Unable to resolve platform.");
  556. }
  557. var _platform = 0;
  558. if (_isMacintosh) {
  559. _platform = 1;
  560. } else if (_isWindows) {
  561. _platform = 3;
  562. } else if (_isLinux) {
  563. _platform = 2;
  564. }
  565. var isWindows = _isWindows;
  566. var isMacintosh = _isMacintosh;
  567. var isWebWorker = _isWeb && typeof globals.importScripts === "function";
  568. var userAgent = _userAgent;
  569. var setTimeout0 = (() => {
  570. if (typeof globals.postMessage === "function" && !globals.importScripts) {
  571. let pending = [];
  572. globals.addEventListener("message", (e) => {
  573. if (e.data && e.data.vscodeScheduleAsyncWork) {
  574. for (let i = 0, len = pending.length; i < len; i++) {
  575. const candidate = pending[i];
  576. if (candidate.id === e.data.vscodeScheduleAsyncWork) {
  577. pending.splice(i, 1);
  578. candidate.callback();
  579. return;
  580. }
  581. }
  582. }
  583. });
  584. let lastId = 0;
  585. return (callback) => {
  586. const myId = ++lastId;
  587. pending.push({
  588. id: myId,
  589. callback
  590. });
  591. globals.postMessage({vscodeScheduleAsyncWork: myId}, "*");
  592. };
  593. }
  594. return (callback) => setTimeout(callback);
  595. })();
  596. var isChrome = !!(userAgent && userAgent.indexOf("Chrome") >= 0);
  597. var isFirefox = !!(userAgent && userAgent.indexOf("Firefox") >= 0);
  598. var isSafari = !!(!isChrome && (userAgent && userAgent.indexOf("Safari") >= 0));
  599. var isEdge = !!(userAgent && userAgent.indexOf("Edg/") >= 0);
  600. var isAndroid = !!(userAgent && userAgent.indexOf("Android") >= 0);
  601. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/stopwatch.js
  602. var hasPerformanceNow = globals.performance && typeof globals.performance.now === "function";
  603. var StopWatch = class {
  604. constructor(highResolution) {
  605. this._highResolution = hasPerformanceNow && highResolution;
  606. this._startTime = this._now();
  607. this._stopTime = -1;
  608. }
  609. static create(highResolution = true) {
  610. return new StopWatch(highResolution);
  611. }
  612. stop() {
  613. this._stopTime = this._now();
  614. }
  615. elapsed() {
  616. if (this._stopTime !== -1) {
  617. return this._stopTime - this._startTime;
  618. }
  619. return this._now() - this._startTime;
  620. }
  621. _now() {
  622. return this._highResolution ? globals.performance.now() : Date.now();
  623. }
  624. };
  625. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/event.js
  626. var _enableDisposeWithListenerWarning = false;
  627. var _enableSnapshotPotentialLeakWarning = false;
  628. var Event;
  629. (function(Event2) {
  630. Event2.None = () => Disposable.None;
  631. function _addLeakageTraceLogic(options) {
  632. if (_enableSnapshotPotentialLeakWarning) {
  633. const {onListenerDidAdd: origListenerDidAdd} = options;
  634. const stack = Stacktrace.create();
  635. let count = 0;
  636. options.onListenerDidAdd = () => {
  637. if (++count === 2) {
  638. console.warn("snapshotted emitter LIKELY used public and SHOULD HAVE BEEN created with DisposableStore. snapshotted here");
  639. stack.print();
  640. }
  641. origListenerDidAdd === null || origListenerDidAdd === void 0 ? void 0 : origListenerDidAdd();
  642. };
  643. }
  644. }
  645. function once3(event) {
  646. return (listener, thisArgs = null, disposables) => {
  647. let didFire = false;
  648. let result;
  649. result = event((e) => {
  650. if (didFire) {
  651. return;
  652. } else if (result) {
  653. result.dispose();
  654. } else {
  655. didFire = true;
  656. }
  657. return listener.call(thisArgs, e);
  658. }, null, disposables);
  659. if (didFire) {
  660. result.dispose();
  661. }
  662. return result;
  663. };
  664. }
  665. Event2.once = once3;
  666. function map(event, map2, disposable) {
  667. return snapshot((listener, thisArgs = null, disposables) => event((i) => listener.call(thisArgs, map2(i)), null, disposables), disposable);
  668. }
  669. Event2.map = map;
  670. function forEach(event, each, disposable) {
  671. return snapshot((listener, thisArgs = null, disposables) => event((i) => {
  672. each(i);
  673. listener.call(thisArgs, i);
  674. }, null, disposables), disposable);
  675. }
  676. Event2.forEach = forEach;
  677. function filter(event, filter2, disposable) {
  678. return snapshot((listener, thisArgs = null, disposables) => event((e) => filter2(e) && listener.call(thisArgs, e), null, disposables), disposable);
  679. }
  680. Event2.filter = filter;
  681. function signal(event) {
  682. return event;
  683. }
  684. Event2.signal = signal;
  685. function any(...events) {
  686. return (listener, thisArgs = null, disposables) => combinedDisposable(...events.map((event) => event((e) => listener.call(thisArgs, e), null, disposables)));
  687. }
  688. Event2.any = any;
  689. function reduce(event, merge, initial, disposable) {
  690. let output = initial;
  691. return map(event, (e) => {
  692. output = merge(output, e);
  693. return output;
  694. }, disposable);
  695. }
  696. Event2.reduce = reduce;
  697. function snapshot(event, disposable) {
  698. let listener;
  699. const options = {
  700. onFirstListenerAdd() {
  701. listener = event(emitter.fire, emitter);
  702. },
  703. onLastListenerRemove() {
  704. listener.dispose();
  705. }
  706. };
  707. if (!disposable) {
  708. _addLeakageTraceLogic(options);
  709. }
  710. const emitter = new Emitter(options);
  711. if (disposable) {
  712. disposable.add(emitter);
  713. }
  714. return emitter.event;
  715. }
  716. function debounce(event, merge, delay = 100, leading = false, leakWarningThreshold, disposable) {
  717. let subscription;
  718. let output = void 0;
  719. let handle = void 0;
  720. let numDebouncedCalls = 0;
  721. const options = {
  722. leakWarningThreshold,
  723. onFirstListenerAdd() {
  724. subscription = event((cur) => {
  725. numDebouncedCalls++;
  726. output = merge(output, cur);
  727. if (leading && !handle) {
  728. emitter.fire(output);
  729. output = void 0;
  730. }
  731. clearTimeout(handle);
  732. handle = setTimeout(() => {
  733. const _output = output;
  734. output = void 0;
  735. handle = void 0;
  736. if (!leading || numDebouncedCalls > 1) {
  737. emitter.fire(_output);
  738. }
  739. numDebouncedCalls = 0;
  740. }, delay);
  741. });
  742. },
  743. onLastListenerRemove() {
  744. subscription.dispose();
  745. }
  746. };
  747. if (!disposable) {
  748. _addLeakageTraceLogic(options);
  749. }
  750. const emitter = new Emitter(options);
  751. if (disposable) {
  752. disposable.add(emitter);
  753. }
  754. return emitter.event;
  755. }
  756. Event2.debounce = debounce;
  757. function latch(event, equals2 = (a, b) => a === b, disposable) {
  758. let firstCall = true;
  759. let cache;
  760. return filter(event, (value) => {
  761. const shouldEmit = firstCall || !equals2(value, cache);
  762. firstCall = false;
  763. cache = value;
  764. return shouldEmit;
  765. }, disposable);
  766. }
  767. Event2.latch = latch;
  768. function split(event, isT, disposable) {
  769. return [
  770. Event2.filter(event, isT, disposable),
  771. Event2.filter(event, (e) => !isT(e), disposable)
  772. ];
  773. }
  774. Event2.split = split;
  775. function buffer(event, flushAfterTimeout = false, _buffer = []) {
  776. let buffer2 = _buffer.slice();
  777. let listener = event((e) => {
  778. if (buffer2) {
  779. buffer2.push(e);
  780. } else {
  781. emitter.fire(e);
  782. }
  783. });
  784. const flush = () => {
  785. if (buffer2) {
  786. buffer2.forEach((e) => emitter.fire(e));
  787. }
  788. buffer2 = null;
  789. };
  790. const emitter = new Emitter({
  791. onFirstListenerAdd() {
  792. if (!listener) {
  793. listener = event((e) => emitter.fire(e));
  794. }
  795. },
  796. onFirstListenerDidAdd() {
  797. if (buffer2) {
  798. if (flushAfterTimeout) {
  799. setTimeout(flush);
  800. } else {
  801. flush();
  802. }
  803. }
  804. },
  805. onLastListenerRemove() {
  806. if (listener) {
  807. listener.dispose();
  808. }
  809. listener = null;
  810. }
  811. });
  812. return emitter.event;
  813. }
  814. Event2.buffer = buffer;
  815. class ChainableEvent {
  816. constructor(event) {
  817. this.event = event;
  818. }
  819. map(fn) {
  820. return new ChainableEvent(map(this.event, fn));
  821. }
  822. forEach(fn) {
  823. return new ChainableEvent(forEach(this.event, fn));
  824. }
  825. filter(fn) {
  826. return new ChainableEvent(filter(this.event, fn));
  827. }
  828. reduce(merge, initial) {
  829. return new ChainableEvent(reduce(this.event, merge, initial));
  830. }
  831. latch() {
  832. return new ChainableEvent(latch(this.event));
  833. }
  834. debounce(merge, delay = 100, leading = false, leakWarningThreshold) {
  835. return new ChainableEvent(debounce(this.event, merge, delay, leading, leakWarningThreshold));
  836. }
  837. on(listener, thisArgs, disposables) {
  838. return this.event(listener, thisArgs, disposables);
  839. }
  840. once(listener, thisArgs, disposables) {
  841. return once3(this.event)(listener, thisArgs, disposables);
  842. }
  843. }
  844. function chain(event) {
  845. return new ChainableEvent(event);
  846. }
  847. Event2.chain = chain;
  848. function fromNodeEventEmitter(emitter, eventName, map2 = (id) => id) {
  849. const fn = (...args) => result.fire(map2(...args));
  850. const onFirstListenerAdd = () => emitter.on(eventName, fn);
  851. const onLastListenerRemove = () => emitter.removeListener(eventName, fn);
  852. const result = new Emitter({onFirstListenerAdd, onLastListenerRemove});
  853. return result.event;
  854. }
  855. Event2.fromNodeEventEmitter = fromNodeEventEmitter;
  856. function fromDOMEventEmitter(emitter, eventName, map2 = (id) => id) {
  857. const fn = (...args) => result.fire(map2(...args));
  858. const onFirstListenerAdd = () => emitter.addEventListener(eventName, fn);
  859. const onLastListenerRemove = () => emitter.removeEventListener(eventName, fn);
  860. const result = new Emitter({onFirstListenerAdd, onLastListenerRemove});
  861. return result.event;
  862. }
  863. Event2.fromDOMEventEmitter = fromDOMEventEmitter;
  864. function toPromise(event) {
  865. return new Promise((resolve2) => once3(event)(resolve2));
  866. }
  867. Event2.toPromise = toPromise;
  868. function runAndSubscribe(event, handler) {
  869. handler(void 0);
  870. return event((e) => handler(e));
  871. }
  872. Event2.runAndSubscribe = runAndSubscribe;
  873. function runAndSubscribeWithStore(event, handler) {
  874. let store = null;
  875. function run(e) {
  876. store === null || store === void 0 ? void 0 : store.dispose();
  877. store = new DisposableStore();
  878. handler(e, store);
  879. }
  880. run(void 0);
  881. const disposable = event((e) => run(e));
  882. return toDisposable(() => {
  883. disposable.dispose();
  884. store === null || store === void 0 ? void 0 : store.dispose();
  885. });
  886. }
  887. Event2.runAndSubscribeWithStore = runAndSubscribeWithStore;
  888. })(Event || (Event = {}));
  889. var EventProfiling = class {
  890. constructor(name) {
  891. this._listenerCount = 0;
  892. this._invocationCount = 0;
  893. this._elapsedOverall = 0;
  894. this._name = `${name}_${EventProfiling._idPool++}`;
  895. }
  896. start(listenerCount) {
  897. this._stopWatch = new StopWatch(true);
  898. this._listenerCount = listenerCount;
  899. }
  900. stop() {
  901. if (this._stopWatch) {
  902. const elapsed = this._stopWatch.elapsed();
  903. this._elapsedOverall += elapsed;
  904. this._invocationCount += 1;
  905. console.info(`did FIRE ${this._name}: elapsed_ms: ${elapsed.toFixed(5)}, listener: ${this._listenerCount} (elapsed_overall: ${this._elapsedOverall.toFixed(2)}, invocations: ${this._invocationCount})`);
  906. this._stopWatch = void 0;
  907. }
  908. }
  909. };
  910. EventProfiling._idPool = 0;
  911. var _globalLeakWarningThreshold = -1;
  912. var LeakageMonitor = class {
  913. constructor(customThreshold, name = Math.random().toString(18).slice(2, 5)) {
  914. this.customThreshold = customThreshold;
  915. this.name = name;
  916. this._warnCountdown = 0;
  917. }
  918. dispose() {
  919. if (this._stacks) {
  920. this._stacks.clear();
  921. }
  922. }
  923. check(stack, listenerCount) {
  924. let threshold = _globalLeakWarningThreshold;
  925. if (typeof this.customThreshold === "number") {
  926. threshold = this.customThreshold;
  927. }
  928. if (threshold <= 0 || listenerCount < threshold) {
  929. return void 0;
  930. }
  931. if (!this._stacks) {
  932. this._stacks = new Map();
  933. }
  934. const count = this._stacks.get(stack.value) || 0;
  935. this._stacks.set(stack.value, count + 1);
  936. this._warnCountdown -= 1;
  937. if (this._warnCountdown <= 0) {
  938. this._warnCountdown = threshold * 0.5;
  939. let topStack;
  940. let topCount = 0;
  941. for (const [stack2, count2] of this._stacks) {
  942. if (!topStack || topCount < count2) {
  943. topStack = stack2;
  944. topCount = count2;
  945. }
  946. }
  947. console.warn(`[${this.name}] potential listener LEAK detected, having ${listenerCount} listeners already. MOST frequent listener (${topCount}):`);
  948. console.warn(topStack);
  949. }
  950. return () => {
  951. const count2 = this._stacks.get(stack.value) || 0;
  952. this._stacks.set(stack.value, count2 - 1);
  953. };
  954. }
  955. };
  956. var Stacktrace = class {
  957. constructor(value) {
  958. this.value = value;
  959. }
  960. static create() {
  961. var _a3;
  962. return new Stacktrace((_a3 = new Error().stack) !== null && _a3 !== void 0 ? _a3 : "");
  963. }
  964. print() {
  965. console.warn(this.value.split("\n").slice(2).join("\n"));
  966. }
  967. };
  968. var Listener = class {
  969. constructor(callback, callbackThis, stack) {
  970. this.callback = callback;
  971. this.callbackThis = callbackThis;
  972. this.stack = stack;
  973. this.subscription = new SafeDisposable();
  974. }
  975. invoke(e) {
  976. this.callback.call(this.callbackThis, e);
  977. }
  978. };
  979. var Emitter = class {
  980. constructor(options) {
  981. var _a3;
  982. this._disposed = false;
  983. this._options = options;
  984. this._leakageMon = _globalLeakWarningThreshold > 0 ? new LeakageMonitor(this._options && this._options.leakWarningThreshold) : void 0;
  985. this._perfMon = ((_a3 = this._options) === null || _a3 === void 0 ? void 0 : _a3._profName) ? new EventProfiling(this._options._profName) : void 0;
  986. }
  987. dispose() {
  988. var _a3, _b, _c, _d;
  989. if (!this._disposed) {
  990. this._disposed = true;
  991. if (this._listeners) {
  992. if (_enableDisposeWithListenerWarning) {
  993. const listeners = Array.from(this._listeners);
  994. queueMicrotask(() => {
  995. var _a4;
  996. for (const listener of listeners) {
  997. if (listener.subscription.isset()) {
  998. listener.subscription.unset();
  999. (_a4 = listener.stack) === null || _a4 === void 0 ? void 0 : _a4.print();
  1000. }
  1001. }
  1002. });
  1003. }
  1004. this._listeners.clear();
  1005. }
  1006. (_a3 = this._deliveryQueue) === null || _a3 === void 0 ? void 0 : _a3.clear();
  1007. (_c = (_b = this._options) === null || _b === void 0 ? void 0 : _b.onLastListenerRemove) === null || _c === void 0 ? void 0 : _c.call(_b);
  1008. (_d = this._leakageMon) === null || _d === void 0 ? void 0 : _d.dispose();
  1009. }
  1010. }
  1011. get event() {
  1012. if (!this._event) {
  1013. this._event = (callback, thisArgs, disposables) => {
  1014. var _a3, _b, _c;
  1015. if (!this._listeners) {
  1016. this._listeners = new LinkedList();
  1017. }
  1018. const firstListener = this._listeners.isEmpty();
  1019. if (firstListener && ((_a3 = this._options) === null || _a3 === void 0 ? void 0 : _a3.onFirstListenerAdd)) {
  1020. this._options.onFirstListenerAdd(this);
  1021. }
  1022. let removeMonitor;
  1023. let stack;
  1024. if (this._leakageMon && this._listeners.size >= 30) {
  1025. stack = Stacktrace.create();
  1026. removeMonitor = this._leakageMon.check(stack, this._listeners.size + 1);
  1027. }
  1028. if (_enableDisposeWithListenerWarning) {
  1029. stack = stack !== null && stack !== void 0 ? stack : Stacktrace.create();
  1030. }
  1031. const listener = new Listener(callback, thisArgs, stack);
  1032. const removeListener = this._listeners.push(listener);
  1033. if (firstListener && ((_b = this._options) === null || _b === void 0 ? void 0 : _b.onFirstListenerDidAdd)) {
  1034. this._options.onFirstListenerDidAdd(this);
  1035. }
  1036. if ((_c = this._options) === null || _c === void 0 ? void 0 : _c.onListenerDidAdd) {
  1037. this._options.onListenerDidAdd(this, callback, thisArgs);
  1038. }
  1039. const result = listener.subscription.set(() => {
  1040. if (removeMonitor) {
  1041. removeMonitor();
  1042. }
  1043. if (!this._disposed) {
  1044. removeListener();
  1045. if (this._options && this._options.onLastListenerRemove) {
  1046. const hasListeners = this._listeners && !this._listeners.isEmpty();
  1047. if (!hasListeners) {
  1048. this._options.onLastListenerRemove(this);
  1049. }
  1050. }
  1051. }
  1052. });
  1053. if (disposables instanceof DisposableStore) {
  1054. disposables.add(result);
  1055. } else if (Array.isArray(disposables)) {
  1056. disposables.push(result);
  1057. }
  1058. return result;
  1059. };
  1060. }
  1061. return this._event;
  1062. }
  1063. fire(event) {
  1064. var _a3, _b;
  1065. if (this._listeners) {
  1066. if (!this._deliveryQueue) {
  1067. this._deliveryQueue = new LinkedList();
  1068. }
  1069. for (let listener of this._listeners) {
  1070. this._deliveryQueue.push([listener, event]);
  1071. }
  1072. (_a3 = this._perfMon) === null || _a3 === void 0 ? void 0 : _a3.start(this._deliveryQueue.size);
  1073. while (this._deliveryQueue.size > 0) {
  1074. const [listener, event2] = this._deliveryQueue.shift();
  1075. try {
  1076. listener.invoke(event2);
  1077. } catch (e) {
  1078. onUnexpectedError(e);
  1079. }
  1080. }
  1081. (_b = this._perfMon) === null || _b === void 0 ? void 0 : _b.stop();
  1082. }
  1083. }
  1084. };
  1085. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/types.js
  1086. function getAllPropertyNames(obj) {
  1087. let res = [];
  1088. let proto = Object.getPrototypeOf(obj);
  1089. while (Object.prototype !== proto) {
  1090. res = res.concat(Object.getOwnPropertyNames(proto));
  1091. proto = Object.getPrototypeOf(proto);
  1092. }
  1093. return res;
  1094. }
  1095. function getAllMethodNames(obj) {
  1096. const methods = [];
  1097. for (const prop of getAllPropertyNames(obj)) {
  1098. if (typeof obj[prop] === "function") {
  1099. methods.push(prop);
  1100. }
  1101. }
  1102. return methods;
  1103. }
  1104. function createProxyObject(methodNames, invoke) {
  1105. const createProxyMethod = (method) => {
  1106. return function() {
  1107. const args = Array.prototype.slice.call(arguments, 0);
  1108. return invoke(method, args);
  1109. };
  1110. };
  1111. let result = {};
  1112. for (const methodName of methodNames) {
  1113. result[methodName] = createProxyMethod(methodName);
  1114. }
  1115. return result;
  1116. }
  1117. function assertNever(value, message = "Unreachable") {
  1118. throw new Error(message);
  1119. }
  1120. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/cache.js
  1121. var LRUCachedComputed = class {
  1122. constructor(computeFn) {
  1123. this.computeFn = computeFn;
  1124. this.lastCache = void 0;
  1125. this.lastArgKey = void 0;
  1126. }
  1127. get(arg) {
  1128. const key = JSON.stringify(arg);
  1129. if (this.lastArgKey !== key) {
  1130. this.lastArgKey = key;
  1131. this.lastCache = this.computeFn(arg);
  1132. }
  1133. return this.lastCache;
  1134. }
  1135. };
  1136. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/lazy.js
  1137. var Lazy = class {
  1138. constructor(executor) {
  1139. this.executor = executor;
  1140. this._didRun = false;
  1141. }
  1142. getValue() {
  1143. if (!this._didRun) {
  1144. try {
  1145. this._value = this.executor();
  1146. } catch (err) {
  1147. this._error = err;
  1148. } finally {
  1149. this._didRun = true;
  1150. }
  1151. }
  1152. if (this._error) {
  1153. throw this._error;
  1154. }
  1155. return this._value;
  1156. }
  1157. get rawValue() {
  1158. return this._value;
  1159. }
  1160. };
  1161. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/strings.js
  1162. var _a2;
  1163. function escapeRegExpCharacters(value) {
  1164. return value.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g, "\\$&");
  1165. }
  1166. function splitLines(str) {
  1167. return str.split(/\r\n|\r|\n/);
  1168. }
  1169. function firstNonWhitespaceIndex(str) {
  1170. for (let i = 0, len = str.length; i < len; i++) {
  1171. const chCode = str.charCodeAt(i);
  1172. if (chCode !== 32 && chCode !== 9) {
  1173. return i;
  1174. }
  1175. }
  1176. return -1;
  1177. }
  1178. function lastNonWhitespaceIndex(str, startIndex = str.length - 1) {
  1179. for (let i = startIndex; i >= 0; i--) {
  1180. const chCode = str.charCodeAt(i);
  1181. if (chCode !== 32 && chCode !== 9) {
  1182. return i;
  1183. }
  1184. }
  1185. return -1;
  1186. }
  1187. function isUpperAsciiLetter(code) {
  1188. return code >= 65 && code <= 90;
  1189. }
  1190. function isHighSurrogate(charCode) {
  1191. return 55296 <= charCode && charCode <= 56319;
  1192. }
  1193. function isLowSurrogate(charCode) {
  1194. return 56320 <= charCode && charCode <= 57343;
  1195. }
  1196. function computeCodePoint(highSurrogate, lowSurrogate) {
  1197. return (highSurrogate - 55296 << 10) + (lowSurrogate - 56320) + 65536;
  1198. }
  1199. function getNextCodePoint(str, len, offset) {
  1200. const charCode = str.charCodeAt(offset);
  1201. if (isHighSurrogate(charCode) && offset + 1 < len) {
  1202. const nextCharCode = str.charCodeAt(offset + 1);
  1203. if (isLowSurrogate(nextCharCode)) {
  1204. return computeCodePoint(charCode, nextCharCode);
  1205. }
  1206. }
  1207. return charCode;
  1208. }
  1209. var IS_BASIC_ASCII = /^[\t\n\r\x20-\x7E]*$/;
  1210. function isBasicASCII(str) {
  1211. return IS_BASIC_ASCII.test(str);
  1212. }
  1213. var UTF8_BOM_CHARACTER = String.fromCharCode(65279);
  1214. var GraphemeBreakTree = class {
  1215. constructor() {
  1216. this._data = getGraphemeBreakRawData();
  1217. }
  1218. static getInstance() {
  1219. if (!GraphemeBreakTree._INSTANCE) {
  1220. GraphemeBreakTree._INSTANCE = new GraphemeBreakTree();
  1221. }
  1222. return GraphemeBreakTree._INSTANCE;
  1223. }
  1224. getGraphemeBreakType(codePoint) {
  1225. if (codePoint < 32) {
  1226. if (codePoint === 10) {
  1227. return 3;
  1228. }
  1229. if (codePoint === 13) {
  1230. return 2;
  1231. }
  1232. return 4;
  1233. }
  1234. if (codePoint < 127) {
  1235. return 0;
  1236. }
  1237. const data = this._data;
  1238. const nodeCount = data.length / 3;
  1239. let nodeIndex = 1;
  1240. while (nodeIndex <= nodeCount) {
  1241. if (codePoint < data[3 * nodeIndex]) {
  1242. nodeIndex = 2 * nodeIndex;
  1243. } else if (codePoint > data[3 * nodeIndex + 1]) {
  1244. nodeIndex = 2 * nodeIndex + 1;
  1245. } else {
  1246. return data[3 * nodeIndex + 2];
  1247. }
  1248. }
  1249. return 0;
  1250. }
  1251. };
  1252. GraphemeBreakTree._INSTANCE = null;
  1253. function getGraphemeBreakRawData() {
  1254. return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]");
  1255. }
  1256. var AmbiguousCharacters = class {
  1257. constructor(confusableDictionary) {
  1258. this.confusableDictionary = confusableDictionary;
  1259. }
  1260. static getInstance(locales) {
  1261. return AmbiguousCharacters.cache.get(Array.from(locales));
  1262. }
  1263. static getLocales() {
  1264. return AmbiguousCharacters._locales.getValue();
  1265. }
  1266. isAmbiguous(codePoint) {
  1267. return this.confusableDictionary.has(codePoint);
  1268. }
  1269. getPrimaryConfusable(codePoint) {
  1270. return this.confusableDictionary.get(codePoint);
  1271. }
  1272. getConfusableCodePoints() {
  1273. return new Set(this.confusableDictionary.keys());
  1274. }
  1275. };
  1276. _a2 = AmbiguousCharacters;
  1277. AmbiguousCharacters.ambiguousCharacterData = new Lazy(() => {
  1278. return JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}');
  1279. });
  1280. AmbiguousCharacters.cache = new LRUCachedComputed((locales) => {
  1281. function arrayToMap(arr) {
  1282. const result = new Map();
  1283. for (let i = 0; i < arr.length; i += 2) {
  1284. result.set(arr[i], arr[i + 1]);
  1285. }
  1286. return result;
  1287. }
  1288. function mergeMaps(map1, map2) {
  1289. const result = new Map(map1);
  1290. for (const [key, value] of map2) {
  1291. result.set(key, value);
  1292. }
  1293. return result;
  1294. }
  1295. function intersectMaps(map1, map2) {
  1296. if (!map1) {
  1297. return map2;
  1298. }
  1299. const result = new Map();
  1300. for (const [key, value] of map1) {
  1301. if (map2.has(key)) {
  1302. result.set(key, value);
  1303. }
  1304. }
  1305. return result;
  1306. }
  1307. const data = _a2.ambiguousCharacterData.getValue();
  1308. let filteredLocales = locales.filter((l) => !l.startsWith("_") && l in data);
  1309. if (filteredLocales.length === 0) {
  1310. filteredLocales = ["_default"];
  1311. }
  1312. let languageSpecificMap = void 0;
  1313. for (const locale of filteredLocales) {
  1314. const map2 = arrayToMap(data[locale]);
  1315. languageSpecificMap = intersectMaps(languageSpecificMap, map2);
  1316. }
  1317. const commonMap = arrayToMap(data["_common"]);
  1318. const map = mergeMaps(commonMap, languageSpecificMap);
  1319. return new AmbiguousCharacters(map);
  1320. });
  1321. AmbiguousCharacters._locales = new Lazy(() => Object.keys(AmbiguousCharacters.ambiguousCharacterData.getValue()).filter((k) => !k.startsWith("_")));
  1322. var InvisibleCharacters = class {
  1323. static getRawData() {
  1324. return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]");
  1325. }
  1326. static getData() {
  1327. if (!this._data) {
  1328. this._data = new Set(InvisibleCharacters.getRawData());
  1329. }
  1330. return this._data;
  1331. }
  1332. static isInvisibleCharacter(codePoint) {
  1333. return InvisibleCharacters.getData().has(codePoint);
  1334. }
  1335. static get codePoints() {
  1336. return InvisibleCharacters.getData();
  1337. }
  1338. };
  1339. InvisibleCharacters._data = void 0;
  1340. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/worker/simpleWorker.js
  1341. var INITIALIZE = "$initialize";
  1342. var RequestMessage = class {
  1343. constructor(vsWorker, req, method, args) {
  1344. this.vsWorker = vsWorker;
  1345. this.req = req;
  1346. this.method = method;
  1347. this.args = args;
  1348. this.type = 0;
  1349. }
  1350. };
  1351. var ReplyMessage = class {
  1352. constructor(vsWorker, seq, res, err) {
  1353. this.vsWorker = vsWorker;
  1354. this.seq = seq;
  1355. this.res = res;
  1356. this.err = err;
  1357. this.type = 1;
  1358. }
  1359. };
  1360. var SubscribeEventMessage = class {
  1361. constructor(vsWorker, req, eventName, arg) {
  1362. this.vsWorker = vsWorker;
  1363. this.req = req;
  1364. this.eventName = eventName;
  1365. this.arg = arg;
  1366. this.type = 2;
  1367. }
  1368. };
  1369. var EventMessage = class {
  1370. constructor(vsWorker, req, event) {
  1371. this.vsWorker = vsWorker;
  1372. this.req = req;
  1373. this.event = event;
  1374. this.type = 3;
  1375. }
  1376. };
  1377. var UnsubscribeEventMessage = class {
  1378. constructor(vsWorker, req) {
  1379. this.vsWorker = vsWorker;
  1380. this.req = req;
  1381. this.type = 4;
  1382. }
  1383. };
  1384. var SimpleWorkerProtocol = class {
  1385. constructor(handler) {
  1386. this._workerId = -1;
  1387. this._handler = handler;
  1388. this._lastSentReq = 0;
  1389. this._pendingReplies = Object.create(null);
  1390. this._pendingEmitters = new Map();
  1391. this._pendingEvents = new Map();
  1392. }
  1393. setWorkerId(workerId) {
  1394. this._workerId = workerId;
  1395. }
  1396. sendMessage(method, args) {
  1397. const req = String(++this._lastSentReq);
  1398. return new Promise((resolve2, reject) => {
  1399. this._pendingReplies[req] = {
  1400. resolve: resolve2,
  1401. reject
  1402. };
  1403. this._send(new RequestMessage(this._workerId, req, method, args));
  1404. });
  1405. }
  1406. listen(eventName, arg) {
  1407. let req = null;
  1408. const emitter = new Emitter({
  1409. onFirstListenerAdd: () => {
  1410. req = String(++this._lastSentReq);
  1411. this._pendingEmitters.set(req, emitter);
  1412. this._send(new SubscribeEventMessage(this._workerId, req, eventName, arg));
  1413. },
  1414. onLastListenerRemove: () => {
  1415. this._pendingEmitters.delete(req);
  1416. this._send(new UnsubscribeEventMessage(this._workerId, req));
  1417. req = null;
  1418. }
  1419. });
  1420. return emitter.event;
  1421. }
  1422. handleMessage(message) {
  1423. if (!message || !message.vsWorker) {
  1424. return;
  1425. }
  1426. if (this._workerId !== -1 && message.vsWorker !== this._workerId) {
  1427. return;
  1428. }
  1429. this._handleMessage(message);
  1430. }
  1431. _handleMessage(msg) {
  1432. switch (msg.type) {
  1433. case 1:
  1434. return this._handleReplyMessage(msg);
  1435. case 0:
  1436. return this._handleRequestMessage(msg);
  1437. case 2:
  1438. return this._handleSubscribeEventMessage(msg);
  1439. case 3:
  1440. return this._handleEventMessage(msg);
  1441. case 4:
  1442. return this._handleUnsubscribeEventMessage(msg);
  1443. }
  1444. }
  1445. _handleReplyMessage(replyMessage) {
  1446. if (!this._pendingReplies[replyMessage.seq]) {
  1447. console.warn("Got reply to unknown seq");
  1448. return;
  1449. }
  1450. let reply = this._pendingReplies[replyMessage.seq];
  1451. delete this._pendingReplies[replyMessage.seq];
  1452. if (replyMessage.err) {
  1453. let err = replyMessage.err;
  1454. if (replyMessage.err.$isError) {
  1455. err = new Error();
  1456. err.name = replyMessage.err.name;
  1457. err.message = replyMessage.err.message;
  1458. err.stack = replyMessage.err.stack;
  1459. }
  1460. reply.reject(err);
  1461. return;
  1462. }
  1463. reply.resolve(replyMessage.res);
  1464. }
  1465. _handleRequestMessage(requestMessage) {
  1466. let req = requestMessage.req;
  1467. let result = this._handler.handleMessage(requestMessage.method, requestMessage.args);
  1468. result.then((r) => {
  1469. this._send(new ReplyMessage(this._workerId, req, r, void 0));
  1470. }, (e) => {
  1471. if (e.detail instanceof Error) {
  1472. e.detail = transformErrorForSerialization(e.detail);
  1473. }
  1474. this._send(new ReplyMessage(this._workerId, req, void 0, transformErrorForSerialization(e)));
  1475. });
  1476. }
  1477. _handleSubscribeEventMessage(msg) {
  1478. const req = msg.req;
  1479. const disposable = this._handler.handleEvent(msg.eventName, msg.arg)((event) => {
  1480. this._send(new EventMessage(this._workerId, req, event));
  1481. });
  1482. this._pendingEvents.set(req, disposable);
  1483. }
  1484. _handleEventMessage(msg) {
  1485. if (!this._pendingEmitters.has(msg.req)) {
  1486. console.warn("Got event for unknown req");
  1487. return;
  1488. }
  1489. this._pendingEmitters.get(msg.req).fire(msg.event);
  1490. }
  1491. _handleUnsubscribeEventMessage(msg) {
  1492. if (!this._pendingEvents.has(msg.req)) {
  1493. console.warn("Got unsubscribe for unknown req");
  1494. return;
  1495. }
  1496. this._pendingEvents.get(msg.req).dispose();
  1497. this._pendingEvents.delete(msg.req);
  1498. }
  1499. _send(msg) {
  1500. let transfer = [];
  1501. if (msg.type === 0) {
  1502. for (let i = 0; i < msg.args.length; i++) {
  1503. if (msg.args[i] instanceof ArrayBuffer) {
  1504. transfer.push(msg.args[i]);
  1505. }
  1506. }
  1507. } else if (msg.type === 1) {
  1508. if (msg.res instanceof ArrayBuffer) {
  1509. transfer.push(msg.res);
  1510. }
  1511. }
  1512. this._handler.sendMessage(msg, transfer);
  1513. }
  1514. };
  1515. function propertyIsEvent(name) {
  1516. return name[0] === "o" && name[1] === "n" && isUpperAsciiLetter(name.charCodeAt(2));
  1517. }
  1518. function propertyIsDynamicEvent(name) {
  1519. return /^onDynamic/.test(name) && isUpperAsciiLetter(name.charCodeAt(9));
  1520. }
  1521. function createProxyObject2(methodNames, invoke, proxyListen) {
  1522. const createProxyMethod = (method) => {
  1523. return function() {
  1524. const args = Array.prototype.slice.call(arguments, 0);
  1525. return invoke(method, args);
  1526. };
  1527. };
  1528. const createProxyDynamicEvent = (eventName) => {
  1529. return function(arg) {
  1530. return proxyListen(eventName, arg);
  1531. };
  1532. };
  1533. let result = {};
  1534. for (const methodName of methodNames) {
  1535. if (propertyIsDynamicEvent(methodName)) {
  1536. result[methodName] = createProxyDynamicEvent(methodName);
  1537. continue;
  1538. }
  1539. if (propertyIsEvent(methodName)) {
  1540. result[methodName] = proxyListen(methodName, void 0);
  1541. continue;
  1542. }
  1543. result[methodName] = createProxyMethod(methodName);
  1544. }
  1545. return result;
  1546. }
  1547. var SimpleWorkerServer = class {
  1548. constructor(postMessage, requestHandlerFactory) {
  1549. this._requestHandlerFactory = requestHandlerFactory;
  1550. this._requestHandler = null;
  1551. this._protocol = new SimpleWorkerProtocol({
  1552. sendMessage: (msg, transfer) => {
  1553. postMessage(msg, transfer);
  1554. },
  1555. handleMessage: (method, args) => this._handleMessage(method, args),
  1556. handleEvent: (eventName, arg) => this._handleEvent(eventName, arg)
  1557. });
  1558. }
  1559. onmessage(msg) {
  1560. this._protocol.handleMessage(msg);
  1561. }
  1562. _handleMessage(method, args) {
  1563. if (method === INITIALIZE) {
  1564. return this.initialize(args[0], args[1], args[2], args[3]);
  1565. }
  1566. if (!this._requestHandler || typeof this._requestHandler[method] !== "function") {
  1567. return Promise.reject(new Error("Missing requestHandler or method: " + method));
  1568. }
  1569. try {
  1570. return Promise.resolve(this._requestHandler[method].apply(this._requestHandler, args));
  1571. } catch (e) {
  1572. return Promise.reject(e);
  1573. }
  1574. }
  1575. _handleEvent(eventName, arg) {
  1576. if (!this._requestHandler) {
  1577. throw new Error(`Missing requestHandler`);
  1578. }
  1579. if (propertyIsDynamicEvent(eventName)) {
  1580. const event = this._requestHandler[eventName].call(this._requestHandler, arg);
  1581. if (typeof event !== "function") {
  1582. throw new Error(`Missing dynamic event ${eventName} on request handler.`);
  1583. }
  1584. return event;
  1585. }
  1586. if (propertyIsEvent(eventName)) {
  1587. const event = this._requestHandler[eventName];
  1588. if (typeof event !== "function") {
  1589. throw new Error(`Missing event ${eventName} on request handler.`);
  1590. }
  1591. return event;
  1592. }
  1593. throw new Error(`Malformed event name ${eventName}`);
  1594. }
  1595. initialize(workerId, loaderConfig, moduleId, hostMethods) {
  1596. this._protocol.setWorkerId(workerId);
  1597. const proxyMethodRequest = (method, args) => {
  1598. return this._protocol.sendMessage(method, args);
  1599. };
  1600. const proxyListen = (eventName, arg) => {
  1601. return this._protocol.listen(eventName, arg);
  1602. };
  1603. const hostProxy = createProxyObject2(hostMethods, proxyMethodRequest, proxyListen);
  1604. if (this._requestHandlerFactory) {
  1605. this._requestHandler = this._requestHandlerFactory(hostProxy);
  1606. return Promise.resolve(getAllMethodNames(this._requestHandler));
  1607. }
  1608. if (loaderConfig) {
  1609. if (typeof loaderConfig.baseUrl !== "undefined") {
  1610. delete loaderConfig["baseUrl"];
  1611. }
  1612. if (typeof loaderConfig.paths !== "undefined") {
  1613. if (typeof loaderConfig.paths.vs !== "undefined") {
  1614. delete loaderConfig.paths["vs"];
  1615. }
  1616. }
  1617. if (typeof loaderConfig.trustedTypesPolicy !== void 0) {
  1618. delete loaderConfig["trustedTypesPolicy"];
  1619. }
  1620. loaderConfig.catchError = true;
  1621. globals.require.config(loaderConfig);
  1622. }
  1623. return new Promise((resolve2, reject) => {
  1624. const req = globals.require;
  1625. req([moduleId], (module) => {
  1626. this._requestHandler = module.create(hostProxy);
  1627. if (!this._requestHandler) {
  1628. reject(new Error(`No RequestHandler!`));
  1629. return;
  1630. }
  1631. resolve2(getAllMethodNames(this._requestHandler));
  1632. }, reject);
  1633. });
  1634. }
  1635. };
  1636. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/diff/diffChange.js
  1637. var DiffChange = class {
  1638. constructor(originalStart, originalLength, modifiedStart, modifiedLength) {
  1639. this.originalStart = originalStart;
  1640. this.originalLength = originalLength;
  1641. this.modifiedStart = modifiedStart;
  1642. this.modifiedLength = modifiedLength;
  1643. }
  1644. getOriginalEnd() {
  1645. return this.originalStart + this.originalLength;
  1646. }
  1647. getModifiedEnd() {
  1648. return this.modifiedStart + this.modifiedLength;
  1649. }
  1650. };
  1651. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/hash.js
  1652. function numberHash(val, initialHashVal) {
  1653. return (initialHashVal << 5) - initialHashVal + val | 0;
  1654. }
  1655. function stringHash(s, hashVal) {
  1656. hashVal = numberHash(149417, hashVal);
  1657. for (let i = 0, length = s.length; i < length; i++) {
  1658. hashVal = numberHash(s.charCodeAt(i), hashVal);
  1659. }
  1660. return hashVal;
  1661. }
  1662. function leftRotate(value, bits, totalBits = 32) {
  1663. const delta = totalBits - bits;
  1664. const mask = ~((1 << delta) - 1);
  1665. return (value << bits | (mask & value) >>> delta) >>> 0;
  1666. }
  1667. function fill(dest, index = 0, count = dest.byteLength, value = 0) {
  1668. for (let i = 0; i < count; i++) {
  1669. dest[index + i] = value;
  1670. }
  1671. }
  1672. function leftPad(value, length, char = "0") {
  1673. while (value.length < length) {
  1674. value = char + value;
  1675. }
  1676. return value;
  1677. }
  1678. function toHexString(bufferOrValue, bitsize = 32) {
  1679. if (bufferOrValue instanceof ArrayBuffer) {
  1680. return Array.from(new Uint8Array(bufferOrValue)).map((b) => b.toString(16).padStart(2, "0")).join("");
  1681. }
  1682. return leftPad((bufferOrValue >>> 0).toString(16), bitsize / 4);
  1683. }
  1684. var StringSHA1 = class {
  1685. constructor() {
  1686. this._h0 = 1732584193;
  1687. this._h1 = 4023233417;
  1688. this._h2 = 2562383102;
  1689. this._h3 = 271733878;
  1690. this._h4 = 3285377520;
  1691. this._buff = new Uint8Array(64 + 3);
  1692. this._buffDV = new DataView(this._buff.buffer);
  1693. this._buffLen = 0;
  1694. this._totalLen = 0;
  1695. this._leftoverHighSurrogate = 0;
  1696. this._finished = false;
  1697. }
  1698. update(str) {
  1699. const strLen = str.length;
  1700. if (strLen === 0) {
  1701. return;
  1702. }
  1703. const buff = this._buff;
  1704. let buffLen = this._buffLen;
  1705. let leftoverHighSurrogate = this._leftoverHighSurrogate;
  1706. let charCode;
  1707. let offset;
  1708. if (leftoverHighSurrogate !== 0) {
  1709. charCode = leftoverHighSurrogate;
  1710. offset = -1;
  1711. leftoverHighSurrogate = 0;
  1712. } else {
  1713. charCode = str.charCodeAt(0);
  1714. offset = 0;
  1715. }
  1716. while (true) {
  1717. let codePoint = charCode;
  1718. if (isHighSurrogate(charCode)) {
  1719. if (offset + 1 < strLen) {
  1720. const nextCharCode = str.charCodeAt(offset + 1);
  1721. if (isLowSurrogate(nextCharCode)) {
  1722. offset++;
  1723. codePoint = computeCodePoint(charCode, nextCharCode);
  1724. } else {
  1725. codePoint = 65533;
  1726. }
  1727. } else {
  1728. leftoverHighSurrogate = charCode;
  1729. break;
  1730. }
  1731. } else if (isLowSurrogate(charCode)) {
  1732. codePoint = 65533;
  1733. }
  1734. buffLen = this._push(buff, buffLen, codePoint);
  1735. offset++;
  1736. if (offset < strLen) {
  1737. charCode = str.charCodeAt(offset);
  1738. } else {
  1739. break;
  1740. }
  1741. }
  1742. this._buffLen = buffLen;
  1743. this._leftoverHighSurrogate = leftoverHighSurrogate;
  1744. }
  1745. _push(buff, buffLen, codePoint) {
  1746. if (codePoint < 128) {
  1747. buff[buffLen++] = codePoint;
  1748. } else if (codePoint < 2048) {
  1749. buff[buffLen++] = 192 | (codePoint & 1984) >>> 6;
  1750. buff[buffLen++] = 128 | (codePoint & 63) >>> 0;
  1751. } else if (codePoint < 65536) {
  1752. buff[buffLen++] = 224 | (codePoint & 61440) >>> 12;
  1753. buff[buffLen++] = 128 | (codePoint & 4032) >>> 6;
  1754. buff[buffLen++] = 128 | (codePoint & 63) >>> 0;
  1755. } else {
  1756. buff[buffLen++] = 240 | (codePoint & 1835008) >>> 18;
  1757. buff[buffLen++] = 128 | (codePoint & 258048) >>> 12;
  1758. buff[buffLen++] = 128 | (codePoint & 4032) >>> 6;
  1759. buff[buffLen++] = 128 | (codePoint & 63) >>> 0;
  1760. }
  1761. if (buffLen >= 64) {
  1762. this._step();
  1763. buffLen -= 64;
  1764. this._totalLen += 64;
  1765. buff[0] = buff[64 + 0];
  1766. buff[1] = buff[64 + 1];
  1767. buff[2] = buff[64 + 2];
  1768. }
  1769. return buffLen;
  1770. }
  1771. digest() {
  1772. if (!this._finished) {
  1773. this._finished = true;
  1774. if (this._leftoverHighSurrogate) {
  1775. this._leftoverHighSurrogate = 0;
  1776. this._buffLen = this._push(this._buff, this._buffLen, 65533);
  1777. }
  1778. this._totalLen += this._buffLen;
  1779. this._wrapUp();
  1780. }
  1781. return toHexString(this._h0) + toHexString(this._h1) + toHexString(this._h2) + toHexString(this._h3) + toHexString(this._h4);
  1782. }
  1783. _wrapUp() {
  1784. this._buff[this._buffLen++] = 128;
  1785. fill(this._buff, this._buffLen);
  1786. if (this._buffLen > 56) {
  1787. this._step();
  1788. fill(this._buff);
  1789. }
  1790. const ml = 8 * this._totalLen;
  1791. this._buffDV.setUint32(56, Math.floor(ml / 4294967296), false);
  1792. this._buffDV.setUint32(60, ml % 4294967296, false);
  1793. this._step();
  1794. }
  1795. _step() {
  1796. const bigBlock32 = StringSHA1._bigBlock32;
  1797. const data = this._buffDV;
  1798. for (let j = 0; j < 64; j += 4) {
  1799. bigBlock32.setUint32(j, data.getUint32(j, false), false);
  1800. }
  1801. for (let j = 64; j < 320; j += 4) {
  1802. bigBlock32.setUint32(j, leftRotate(bigBlock32.getUint32(j - 12, false) ^ bigBlock32.getUint32(j - 32, false) ^ bigBlock32.getUint32(j - 56, false) ^ bigBlock32.getUint32(j - 64, false), 1), false);
  1803. }
  1804. let a = this._h0;
  1805. let b = this._h1;
  1806. let c = this._h2;
  1807. let d = this._h3;
  1808. let e = this._h4;
  1809. let f, k;
  1810. let temp;
  1811. for (let j = 0; j < 80; j++) {
  1812. if (j < 20) {
  1813. f = b & c | ~b & d;
  1814. k = 1518500249;
  1815. } else if (j < 40) {
  1816. f = b ^ c ^ d;
  1817. k = 1859775393;
  1818. } else if (j < 60) {
  1819. f = b & c | b & d | c & d;
  1820. k = 2400959708;
  1821. } else {
  1822. f = b ^ c ^ d;
  1823. k = 3395469782;
  1824. }
  1825. temp = leftRotate(a, 5) + f + e + k + bigBlock32.getUint32(j * 4, false) & 4294967295;
  1826. e = d;
  1827. d = c;
  1828. c = leftRotate(b, 30);
  1829. b = a;
  1830. a = temp;
  1831. }
  1832. this._h0 = this._h0 + a & 4294967295;
  1833. this._h1 = this._h1 + b & 4294967295;
  1834. this._h2 = this._h2 + c & 4294967295;
  1835. this._h3 = this._h3 + d & 4294967295;
  1836. this._h4 = this._h4 + e & 4294967295;
  1837. }
  1838. };
  1839. StringSHA1._bigBlock32 = new DataView(new ArrayBuffer(320));
  1840. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/diff/diff.js
  1841. var StringDiffSequence = class {
  1842. constructor(source) {
  1843. this.source = source;
  1844. }
  1845. getElements() {
  1846. const source = this.source;
  1847. const characters = new Int32Array(source.length);
  1848. for (let i = 0, len = source.length; i < len; i++) {
  1849. characters[i] = source.charCodeAt(i);
  1850. }
  1851. return characters;
  1852. }
  1853. };
  1854. function stringDiff(original, modified, pretty) {
  1855. return new LcsDiff(new StringDiffSequence(original), new StringDiffSequence(modified)).ComputeDiff(pretty).changes;
  1856. }
  1857. var Debug = class {
  1858. static Assert(condition, message) {
  1859. if (!condition) {
  1860. throw new Error(message);
  1861. }
  1862. }
  1863. };
  1864. var MyArray = class {
  1865. static Copy(sourceArray, sourceIndex, destinationArray, destinationIndex, length) {
  1866. for (let i = 0; i < length; i++) {
  1867. destinationArray[destinationIndex + i] = sourceArray[sourceIndex + i];
  1868. }
  1869. }
  1870. static Copy2(sourceArray, sourceIndex, destinationArray, destinationIndex, length) {
  1871. for (let i = 0; i < length; i++) {
  1872. destinationArray[destinationIndex + i] = sourceArray[sourceIndex + i];
  1873. }
  1874. }
  1875. };
  1876. var DiffChangeHelper = class {
  1877. constructor() {
  1878. this.m_changes = [];
  1879. this.m_originalStart = 1073741824;
  1880. this.m_modifiedStart = 1073741824;
  1881. this.m_originalCount = 0;
  1882. this.m_modifiedCount = 0;
  1883. }
  1884. MarkNextChange() {
  1885. if (this.m_originalCount > 0 || this.m_modifiedCount > 0) {
  1886. this.m_changes.push(new DiffChange(this.m_originalStart, this.m_originalCount, this.m_modifiedStart, this.m_modifiedCount));
  1887. }
  1888. this.m_originalCount = 0;
  1889. this.m_modifiedCount = 0;
  1890. this.m_originalStart = 1073741824;
  1891. this.m_modifiedStart = 1073741824;
  1892. }
  1893. AddOriginalElement(originalIndex, modifiedIndex) {
  1894. this.m_originalStart = Math.min(this.m_originalStart, originalIndex);
  1895. this.m_modifiedStart = Math.min(this.m_modifiedStart, modifiedIndex);
  1896. this.m_originalCount++;
  1897. }
  1898. AddModifiedElement(originalIndex, modifiedIndex) {
  1899. this.m_originalStart = Math.min(this.m_originalStart, originalIndex);
  1900. this.m_modifiedStart = Math.min(this.m_modifiedStart, modifiedIndex);
  1901. this.m_modifiedCount++;
  1902. }
  1903. getChanges() {
  1904. if (this.m_originalCount > 0 || this.m_modifiedCount > 0) {
  1905. this.MarkNextChange();
  1906. }
  1907. return this.m_changes;
  1908. }
  1909. getReverseChanges() {
  1910. if (this.m_originalCount > 0 || this.m_modifiedCount > 0) {
  1911. this.MarkNextChange();
  1912. }
  1913. this.m_changes.reverse();
  1914. return this.m_changes;
  1915. }
  1916. };
  1917. var LcsDiff = class {
  1918. constructor(originalSequence, modifiedSequence, continueProcessingPredicate = null) {
  1919. this.ContinueProcessingPredicate = continueProcessingPredicate;
  1920. this._originalSequence = originalSequence;
  1921. this._modifiedSequence = modifiedSequence;
  1922. const [originalStringElements, originalElementsOrHash, originalHasStrings] = LcsDiff._getElements(originalSequence);
  1923. const [modifiedStringElements, modifiedElementsOrHash, modifiedHasStrings] = LcsDiff._getElements(modifiedSequence);
  1924. this._hasStrings = originalHasStrings && modifiedHasStrings;
  1925. this._originalStringElements = originalStringElements;
  1926. this._originalElementsOrHash = originalElementsOrHash;
  1927. this._modifiedStringElements = modifiedStringElements;
  1928. this._modifiedElementsOrHash = modifiedElementsOrHash;
  1929. this.m_forwardHistory = [];
  1930. this.m_reverseHistory = [];
  1931. }
  1932. static _isStringArray(arr) {
  1933. return arr.length > 0 && typeof arr[0] === "string";
  1934. }
  1935. static _getElements(sequence) {
  1936. const elements = sequence.getElements();
  1937. if (LcsDiff._isStringArray(elements)) {
  1938. const hashes = new Int32Array(elements.length);
  1939. for (let i = 0, len = elements.length; i < len; i++) {
  1940. hashes[i] = stringHash(elements[i], 0);
  1941. }
  1942. return [elements, hashes, true];
  1943. }
  1944. if (elements instanceof Int32Array) {
  1945. return [[], elements, false];
  1946. }
  1947. return [[], new Int32Array(elements), false];
  1948. }
  1949. ElementsAreEqual(originalIndex, newIndex) {
  1950. if (this._originalElementsOrHash[originalIndex] !== this._modifiedElementsOrHash[newIndex]) {
  1951. return false;
  1952. }
  1953. return this._hasStrings ? this._originalStringElements[originalIndex] === this._modifiedStringElements[newIndex] : true;
  1954. }
  1955. ElementsAreStrictEqual(originalIndex, newIndex) {
  1956. if (!this.ElementsAreEqual(originalIndex, newIndex)) {
  1957. return false;
  1958. }
  1959. const originalElement = LcsDiff._getStrictElement(this._originalSequence, originalIndex);
  1960. const modifiedElement = LcsDiff._getStrictElement(this._modifiedSequence, newIndex);
  1961. return originalElement === modifiedElement;
  1962. }
  1963. static _getStrictElement(sequence, index) {
  1964. if (typeof sequence.getStrictElement === "function") {
  1965. return sequence.getStrictElement(index);
  1966. }
  1967. return null;
  1968. }
  1969. OriginalElementsAreEqual(index1, index2) {
  1970. if (this._originalElementsOrHash[index1] !== this._originalElementsOrHash[index2]) {
  1971. return false;
  1972. }
  1973. return this._hasStrings ? this._originalStringElements[index1] === this._originalStringElements[index2] : true;
  1974. }
  1975. ModifiedElementsAreEqual(index1, index2) {
  1976. if (this._modifiedElementsOrHash[index1] !== this._modifiedElementsOrHash[index2]) {
  1977. return false;
  1978. }
  1979. return this._hasStrings ? this._modifiedStringElements[index1] === this._modifiedStringElements[index2] : true;
  1980. }
  1981. ComputeDiff(pretty) {
  1982. return this._ComputeDiff(0, this._originalElementsOrHash.length - 1, 0, this._modifiedElementsOrHash.length - 1, pretty);
  1983. }
  1984. _ComputeDiff(originalStart, originalEnd, modifiedStart, modifiedEnd, pretty) {
  1985. const quitEarlyArr = [false];
  1986. let changes = this.ComputeDiffRecursive(originalStart, originalEnd, modifiedStart, modifiedEnd, quitEarlyArr);
  1987. if (pretty) {
  1988. changes = this.PrettifyChanges(changes);
  1989. }
  1990. return {
  1991. quitEarly: quitEarlyArr[0],
  1992. changes
  1993. };
  1994. }
  1995. ComputeDiffRecursive(originalStart, originalEnd, modifiedStart, modifiedEnd, quitEarlyArr) {
  1996. quitEarlyArr[0] = false;
  1997. while (originalStart <= originalEnd && modifiedStart <= modifiedEnd && this.ElementsAreEqual(originalStart, modifiedStart)) {
  1998. originalStart++;
  1999. modifiedStart++;
  2000. }
  2001. while (originalEnd >= originalStart && modifiedEnd >= modifiedStart && this.ElementsAreEqual(originalEnd, modifiedEnd)) {
  2002. originalEnd--;
  2003. modifiedEnd--;
  2004. }
  2005. if (originalStart > originalEnd || modifiedStart > modifiedEnd) {
  2006. let changes;
  2007. if (modifiedStart <= modifiedEnd) {
  2008. Debug.Assert(originalStart === originalEnd + 1, "originalStart should only be one more than originalEnd");
  2009. changes = [
  2010. new DiffChange(originalStart, 0, modifiedStart, modifiedEnd - modifiedStart + 1)
  2011. ];
  2012. } else if (originalStart <= originalEnd) {
  2013. Debug.Assert(modifiedStart === modifiedEnd + 1, "modifiedStart should only be one more than modifiedEnd");
  2014. changes = [
  2015. new DiffChange(originalStart, originalEnd - originalStart + 1, modifiedStart, 0)
  2016. ];
  2017. } else {
  2018. Debug.Assert(originalStart === originalEnd + 1, "originalStart should only be one more than originalEnd");
  2019. Debug.Assert(modifiedStart === modifiedEnd + 1, "modifiedStart should only be one more than modifiedEnd");
  2020. changes = [];
  2021. }
  2022. return changes;
  2023. }
  2024. const midOriginalArr = [0];
  2025. const midModifiedArr = [0];
  2026. const result = this.ComputeRecursionPoint(originalStart, originalEnd, modifiedStart, modifiedEnd, midOriginalArr, midModifiedArr, quitEarlyArr);
  2027. const midOriginal = midOriginalArr[0];
  2028. const midModified = midModifiedArr[0];
  2029. if (result !== null) {
  2030. return result;
  2031. } else if (!quitEarlyArr[0]) {
  2032. const leftChanges = this.ComputeDiffRecursive(originalStart, midOriginal, modifiedStart, midModified, quitEarlyArr);
  2033. let rightChanges = [];
  2034. if (!quitEarlyArr[0]) {
  2035. rightChanges = this.ComputeDiffRecursive(midOriginal + 1, originalEnd, midModified + 1, modifiedEnd, quitEarlyArr);
  2036. } else {
  2037. rightChanges = [
  2038. new DiffChange(midOriginal + 1, originalEnd - (midOriginal + 1) + 1, midModified + 1, modifiedEnd - (midModified + 1) + 1)
  2039. ];
  2040. }
  2041. return this.ConcatenateChanges(leftChanges, rightChanges);
  2042. }
  2043. return [
  2044. new DiffChange(originalStart, originalEnd - originalStart + 1, modifiedStart, modifiedEnd - modifiedStart + 1)
  2045. ];
  2046. }
  2047. WALKTRACE(diagonalForwardBase, diagonalForwardStart, diagonalForwardEnd, diagonalForwardOffset, diagonalReverseBase, diagonalReverseStart, diagonalReverseEnd, diagonalReverseOffset, forwardPoints, reversePoints, originalIndex, originalEnd, midOriginalArr, modifiedIndex, modifiedEnd, midModifiedArr, deltaIsEven, quitEarlyArr) {
  2048. let forwardChanges = null;
  2049. let reverseChanges = null;
  2050. let changeHelper = new DiffChangeHelper();
  2051. let diagonalMin = diagonalForwardStart;
  2052. let diagonalMax = diagonalForwardEnd;
  2053. let diagonalRelative = midOriginalArr[0] - midModifiedArr[0] - diagonalForwardOffset;
  2054. let lastOriginalIndex = -1073741824;
  2055. let historyIndex = this.m_forwardHistory.length - 1;
  2056. do {
  2057. const diagonal = diagonalRelative + diagonalForwardBase;
  2058. if (diagonal === diagonalMin || diagonal < diagonalMax && forwardPoints[diagonal - 1] < forwardPoints[diagonal + 1]) {
  2059. originalIndex = forwardPoints[diagonal + 1];
  2060. modifiedIndex = originalIndex - diagonalRelative - diagonalForwardOffset;
  2061. if (originalIndex < lastOriginalIndex) {
  2062. changeHelper.MarkNextChange();
  2063. }
  2064. lastOriginalIndex = originalIndex;
  2065. changeHelper.AddModifiedElement(originalIndex + 1, modifiedIndex);
  2066. diagonalRelative = diagonal + 1 - diagonalForwardBase;
  2067. } else {
  2068. originalIndex = forwardPoints[diagonal - 1] + 1;
  2069. modifiedIndex = originalIndex - diagonalRelative - diagonalForwardOffset;
  2070. if (originalIndex < lastOriginalIndex) {
  2071. changeHelper.MarkNextChange();
  2072. }
  2073. lastOriginalIndex = originalIndex - 1;
  2074. changeHelper.AddOriginalElement(originalIndex, modifiedIndex + 1);
  2075. diagonalRelative = diagonal - 1 - diagonalForwardBase;
  2076. }
  2077. if (historyIndex >= 0) {
  2078. forwardPoints = this.m_forwardHistory[historyIndex];
  2079. diagonalForwardBase = forwardPoints[0];
  2080. diagonalMin = 1;
  2081. diagonalMax = forwardPoints.length - 1;
  2082. }
  2083. } while (--historyIndex >= -1);
  2084. forwardChanges = changeHelper.getReverseChanges();
  2085. if (quitEarlyArr[0]) {
  2086. let originalStartPoint = midOriginalArr[0] + 1;
  2087. let modifiedStartPoint = midModifiedArr[0] + 1;
  2088. if (forwardChanges !== null && forwardChanges.length > 0) {
  2089. const lastForwardChange = forwardChanges[forwardChanges.length - 1];
  2090. originalStartPoint = Math.max(originalStartPoint, lastForwardChange.getOriginalEnd());
  2091. modifiedStartPoint = Math.max(modifiedStartPoint, lastForwardChange.getModifiedEnd());
  2092. }
  2093. reverseChanges = [
  2094. new DiffChange(originalStartPoint, originalEnd - originalStartPoint + 1, modifiedStartPoint, modifiedEnd - modifiedStartPoint + 1)
  2095. ];
  2096. } else {
  2097. changeHelper = new DiffChangeHelper();
  2098. diagonalMin = diagonalReverseStart;
  2099. diagonalMax = diagonalReverseEnd;
  2100. diagonalRelative = midOriginalArr[0] - midModifiedArr[0] - diagonalReverseOffset;
  2101. lastOriginalIndex = 1073741824;
  2102. historyIndex = deltaIsEven ? this.m_reverseHistory.length - 1 : this.m_reverseHistory.length - 2;
  2103. do {
  2104. const diagonal = diagonalRelative + diagonalReverseBase;
  2105. if (diagonal === diagonalMin || diagonal < diagonalMax && reversePoints[diagonal - 1] >= reversePoints[diagonal + 1]) {
  2106. originalIndex = reversePoints[diagonal + 1] - 1;
  2107. modifiedIndex = originalIndex - diagonalRelative - diagonalReverseOffset;
  2108. if (originalIndex > lastOriginalIndex) {
  2109. changeHelper.MarkNextChange();
  2110. }
  2111. lastOriginalIndex = originalIndex + 1;
  2112. changeHelper.AddOriginalElement(originalIndex + 1, modifiedIndex + 1);
  2113. diagonalRelative = diagonal + 1 - diagonalReverseBase;
  2114. } else {
  2115. originalIndex = reversePoints[diagonal - 1];
  2116. modifiedIndex = originalIndex - diagonalRelative - diagonalReverseOffset;
  2117. if (originalIndex > lastOriginalIndex) {
  2118. changeHelper.MarkNextChange();
  2119. }
  2120. lastOriginalIndex = originalIndex;
  2121. changeHelper.AddModifiedElement(originalIndex + 1, modifiedIndex + 1);
  2122. diagonalRelative = diagonal - 1 - diagonalReverseBase;
  2123. }
  2124. if (historyIndex >= 0) {
  2125. reversePoints = this.m_reverseHistory[historyIndex];
  2126. diagonalReverseBase = reversePoints[0];
  2127. diagonalMin = 1;
  2128. diagonalMax = reversePoints.length - 1;
  2129. }
  2130. } while (--historyIndex >= -1);
  2131. reverseChanges = changeHelper.getChanges();
  2132. }
  2133. return this.ConcatenateChanges(forwardChanges, reverseChanges);
  2134. }
  2135. ComputeRecursionPoint(originalStart, originalEnd, modifiedStart, modifiedEnd, midOriginalArr, midModifiedArr, quitEarlyArr) {
  2136. let originalIndex = 0, modifiedIndex = 0;
  2137. let diagonalForwardStart = 0, diagonalForwardEnd = 0;
  2138. let diagonalReverseStart = 0, diagonalReverseEnd = 0;
  2139. originalStart--;
  2140. modifiedStart--;
  2141. midOriginalArr[0] = 0;
  2142. midModifiedArr[0] = 0;
  2143. this.m_forwardHistory = [];
  2144. this.m_reverseHistory = [];
  2145. const maxDifferences = originalEnd - originalStart + (modifiedEnd - modifiedStart);
  2146. const numDiagonals = maxDifferences + 1;
  2147. const forwardPoints = new Int32Array(numDiagonals);
  2148. const reversePoints = new Int32Array(numDiagonals);
  2149. const diagonalForwardBase = modifiedEnd - modifiedStart;
  2150. const diagonalReverseBase = originalEnd - originalStart;
  2151. const diagonalForwardOffset = originalStart - modifiedStart;
  2152. const diagonalReverseOffset = originalEnd - modifiedEnd;
  2153. const delta = diagonalReverseBase - diagonalForwardBase;
  2154. const deltaIsEven = delta % 2 === 0;
  2155. forwardPoints[diagonalForwardBase] = originalStart;
  2156. reversePoints[diagonalReverseBase] = originalEnd;
  2157. quitEarlyArr[0] = false;
  2158. for (let numDifferences = 1; numDifferences <= maxDifferences / 2 + 1; numDifferences++) {
  2159. let furthestOriginalIndex = 0;
  2160. let furthestModifiedIndex = 0;
  2161. diagonalForwardStart = this.ClipDiagonalBound(diagonalForwardBase - numDifferences, numDifferences, diagonalForwardBase, numDiagonals);
  2162. diagonalForwardEnd = this.ClipDiagonalBound(diagonalForwardBase + numDifferences, numDifferences, diagonalForwardBase, numDiagonals);
  2163. for (let diagonal = diagonalForwardStart; diagonal <= diagonalForwardEnd; diagonal += 2) {
  2164. if (diagonal === diagonalForwardStart || diagonal < diagonalForwardEnd && forwardPoints[diagonal - 1] < forwardPoints[diagonal + 1]) {
  2165. originalIndex = forwardPoints[diagonal + 1];
  2166. } else {
  2167. originalIndex = forwardPoints[diagonal - 1] + 1;
  2168. }
  2169. modifiedIndex = originalIndex - (diagonal - diagonalForwardBase) - diagonalForwardOffset;
  2170. const tempOriginalIndex = originalIndex;
  2171. while (originalIndex < originalEnd && modifiedIndex < modifiedEnd && this.ElementsAreEqual(originalIndex + 1, modifiedIndex + 1)) {
  2172. originalIndex++;
  2173. modifiedIndex++;
  2174. }
  2175. forwardPoints[diagonal] = originalIndex;
  2176. if (originalIndex + modifiedIndex > furthestOriginalIndex + furthestModifiedIndex) {
  2177. furthestOriginalIndex = originalIndex;
  2178. furthestModifiedIndex = modifiedIndex;
  2179. }
  2180. if (!deltaIsEven && Math.abs(diagonal - diagonalReverseBase) <= numDifferences - 1) {
  2181. if (originalIndex >= reversePoints[diagonal]) {
  2182. midOriginalArr[0] = originalIndex;
  2183. midModifiedArr[0] = modifiedIndex;
  2184. if (tempOriginalIndex <= reversePoints[diagonal] && 1447 > 0 && numDifferences <= 1447 + 1) {
  2185. return this.WALKTRACE(diagonalForwardBase, diagonalForwardStart, diagonalForwardEnd, diagonalForwardOffset, diagonalReverseBase, diagonalReverseStart, diagonalReverseEnd, diagonalReverseOffset, forwardPoints, reversePoints, originalIndex, originalEnd, midOriginalArr, modifiedIndex, modifiedEnd, midModifiedArr, deltaIsEven, quitEarlyArr);
  2186. } else {
  2187. return null;
  2188. }
  2189. }
  2190. }
  2191. }
  2192. const matchLengthOfLongest = (furthestOriginalIndex - originalStart + (furthestModifiedIndex - modifiedStart) - numDifferences) / 2;
  2193. if (this.ContinueProcessingPredicate !== null && !this.ContinueProcessingPredicate(furthestOriginalIndex, matchLengthOfLongest)) {
  2194. quitEarlyArr[0] = true;
  2195. midOriginalArr[0] = furthestOriginalIndex;
  2196. midModifiedArr[0] = furthestModifiedIndex;
  2197. if (matchLengthOfLongest > 0 && 1447 > 0 && numDifferences <= 1447 + 1) {
  2198. return this.WALKTRACE(diagonalForwardBase, diagonalForwardStart, diagonalForwardEnd, diagonalForwardOffset, diagonalReverseBase, diagonalReverseStart, diagonalReverseEnd, diagonalReverseOffset, forwardPoints, reversePoints, originalIndex, originalEnd, midOriginalArr, modifiedIndex, modifiedEnd, midModifiedArr, deltaIsEven, quitEarlyArr);
  2199. } else {
  2200. originalStart++;
  2201. modifiedStart++;
  2202. return [
  2203. new DiffChange(originalStart, originalEnd - originalStart + 1, modifiedStart, modifiedEnd - modifiedStart + 1)
  2204. ];
  2205. }
  2206. }
  2207. diagonalReverseStart = this.ClipDiagonalBound(diagonalReverseBase - numDifferences, numDifferences, diagonalReverseBase, numDiagonals);
  2208. diagonalReverseEnd = this.ClipDiagonalBound(diagonalReverseBase + numDifferences, numDifferences, diagonalReverseBase, numDiagonals);
  2209. for (let diagonal = diagonalReverseStart; diagonal <= diagonalReverseEnd; diagonal += 2) {
  2210. if (diagonal === diagonalReverseStart || diagonal < diagonalReverseEnd && reversePoints[diagonal - 1] >= reversePoints[diagonal + 1]) {
  2211. originalIndex = reversePoints[diagonal + 1] - 1;
  2212. } else {
  2213. originalIndex = reversePoints[diagonal - 1];
  2214. }
  2215. modifiedIndex = originalIndex - (diagonal - diagonalReverseBase) - diagonalReverseOffset;
  2216. const tempOriginalIndex = originalIndex;
  2217. while (originalIndex > originalStart && modifiedIndex > modifiedStart && this.ElementsAreEqual(originalIndex, modifiedIndex)) {
  2218. originalIndex--;
  2219. modifiedIndex--;
  2220. }
  2221. reversePoints[diagonal] = originalIndex;
  2222. if (deltaIsEven && Math.abs(diagonal - diagonalForwardBase) <= numDifferences) {
  2223. if (originalIndex <= forwardPoints[diagonal]) {
  2224. midOriginalArr[0] = originalIndex;
  2225. midModifiedArr[0] = modifiedIndex;
  2226. if (tempOriginalIndex >= forwardPoints[diagonal] && 1447 > 0 && numDifferences <= 1447 + 1) {
  2227. return this.WALKTRACE(diagonalForwardBase, diagonalForwardStart, diagonalForwardEnd, diagonalForwardOffset, diagonalReverseBase, diagonalReverseStart, diagonalReverseEnd, diagonalReverseOffset, forwardPoints, reversePoints, originalIndex, originalEnd, midOriginalArr, modifiedIndex, modifiedEnd, midModifiedArr, deltaIsEven, quitEarlyArr);
  2228. } else {
  2229. return null;
  2230. }
  2231. }
  2232. }
  2233. }
  2234. if (numDifferences <= 1447) {
  2235. let temp = new Int32Array(diagonalForwardEnd - diagonalForwardStart + 2);
  2236. temp[0] = diagonalForwardBase - diagonalForwardStart + 1;
  2237. MyArray.Copy2(forwardPoints, diagonalForwardStart, temp, 1, diagonalForwardEnd - diagonalForwardStart + 1);
  2238. this.m_forwardHistory.push(temp);
  2239. temp = new Int32Array(diagonalReverseEnd - diagonalReverseStart + 2);
  2240. temp[0] = diagonalReverseBase - diagonalReverseStart + 1;
  2241. MyArray.Copy2(reversePoints, diagonalReverseStart, temp, 1, diagonalReverseEnd - diagonalReverseStart + 1);
  2242. this.m_reverseHistory.push(temp);
  2243. }
  2244. }
  2245. return this.WALKTRACE(diagonalForwardBase, diagonalForwardStart, diagonalForwardEnd, diagonalForwardOffset, diagonalReverseBase, diagonalReverseStart, diagonalReverseEnd, diagonalReverseOffset, forwardPoints, reversePoints, originalIndex, originalEnd, midOriginalArr, modifiedIndex, modifiedEnd, midModifiedArr, deltaIsEven, quitEarlyArr);
  2246. }
  2247. PrettifyChanges(changes) {
  2248. for (let i = 0; i < changes.length; i++) {
  2249. const change = changes[i];
  2250. const originalStop = i < changes.length - 1 ? changes[i + 1].originalStart : this._originalElementsOrHash.length;
  2251. const modifiedStop = i < changes.length - 1 ? changes[i + 1].modifiedStart : this._modifiedElementsOrHash.length;
  2252. const checkOriginal = change.originalLength > 0;
  2253. const checkModified = change.modifiedLength > 0;
  2254. while (change.originalStart + change.originalLength < originalStop && change.modifiedStart + change.modifiedLength < modifiedStop && (!checkOriginal || this.OriginalElementsAreEqual(change.originalStart, change.originalStart + change.originalLength)) && (!checkModified || this.ModifiedElementsAreEqual(change.modifiedStart, change.modifiedStart + change.modifiedLength))) {
  2255. const startStrictEqual = this.ElementsAreStrictEqual(change.originalStart, change.modifiedStart);
  2256. const endStrictEqual = this.ElementsAreStrictEqual(change.originalStart + change.originalLength, change.modifiedStart + change.modifiedLength);
  2257. if (endStrictEqual && !startStrictEqual) {
  2258. break;
  2259. }
  2260. change.originalStart++;
  2261. change.modifiedStart++;
  2262. }
  2263. let mergedChangeArr = [null];
  2264. if (i < changes.length - 1 && this.ChangesOverlap(changes[i], changes[i + 1], mergedChangeArr)) {
  2265. changes[i] = mergedChangeArr[0];
  2266. changes.splice(i + 1, 1);
  2267. i--;
  2268. continue;
  2269. }
  2270. }
  2271. for (let i = changes.length - 1; i >= 0; i--) {
  2272. const change = changes[i];
  2273. let originalStop = 0;
  2274. let modifiedStop = 0;
  2275. if (i > 0) {
  2276. const prevChange = changes[i - 1];
  2277. originalStop = prevChange.originalStart + prevChange.originalLength;
  2278. modifiedStop = prevChange.modifiedStart + prevChange.modifiedLength;
  2279. }
  2280. const checkOriginal = change.originalLength > 0;
  2281. const checkModified = change.modifiedLength > 0;
  2282. let bestDelta = 0;
  2283. let bestScore = this._boundaryScore(change.originalStart, change.originalLength, change.modifiedStart, change.modifiedLength);
  2284. for (let delta = 1; ; delta++) {
  2285. const originalStart = change.originalStart - delta;
  2286. const modifiedStart = change.modifiedStart - delta;
  2287. if (originalStart < originalStop || modifiedStart < modifiedStop) {
  2288. break;
  2289. }
  2290. if (checkOriginal && !this.OriginalElementsAreEqual(originalStart, originalStart + change.originalLength)) {
  2291. break;
  2292. }
  2293. if (checkModified && !this.ModifiedElementsAreEqual(modifiedStart, modifiedStart + change.modifiedLength)) {
  2294. break;
  2295. }
  2296. const touchingPreviousChange = originalStart === originalStop && modifiedStart === modifiedStop;
  2297. const score = (touchingPreviousChange ? 5 : 0) + this._boundaryScore(originalStart, change.originalLength, modifiedStart, change.modifiedLength);
  2298. if (score > bestScore) {
  2299. bestScore = score;
  2300. bestDelta = delta;
  2301. }
  2302. }
  2303. change.originalStart -= bestDelta;
  2304. change.modifiedStart -= bestDelta;
  2305. const mergedChangeArr = [null];
  2306. if (i > 0 && this.ChangesOverlap(changes[i - 1], changes[i], mergedChangeArr)) {
  2307. changes[i - 1] = mergedChangeArr[0];
  2308. changes.splice(i, 1);
  2309. i++;
  2310. continue;
  2311. }
  2312. }
  2313. if (this._hasStrings) {
  2314. for (let i = 1, len = changes.length; i < len; i++) {
  2315. const aChange = changes[i - 1];
  2316. const bChange = changes[i];
  2317. const matchedLength = bChange.originalStart - aChange.originalStart - aChange.originalLength;
  2318. const aOriginalStart = aChange.originalStart;
  2319. const bOriginalEnd = bChange.originalStart + bChange.originalLength;
  2320. const abOriginalLength = bOriginalEnd - aOriginalStart;
  2321. const aModifiedStart = aChange.modifiedStart;
  2322. const bModifiedEnd = bChange.modifiedStart + bChange.modifiedLength;
  2323. const abModifiedLength = bModifiedEnd - aModifiedStart;
  2324. if (matchedLength < 5 && abOriginalLength < 20 && abModifiedLength < 20) {
  2325. const t = this._findBetterContiguousSequence(aOriginalStart, abOriginalLength, aModifiedStart, abModifiedLength, matchedLength);
  2326. if (t) {
  2327. const [originalMatchStart, modifiedMatchStart] = t;
  2328. if (originalMatchStart !== aChange.originalStart + aChange.originalLength || modifiedMatchStart !== aChange.modifiedStart + aChange.modifiedLength) {
  2329. aChange.originalLength = originalMatchStart - aChange.originalStart;
  2330. aChange.modifiedLength = modifiedMatchStart - aChange.modifiedStart;
  2331. bChange.originalStart = originalMatchStart + matchedLength;
  2332. bChange.modifiedStart = modifiedMatchStart + matchedLength;
  2333. bChange.originalLength = bOriginalEnd - bChange.originalStart;
  2334. bChange.modifiedLength = bModifiedEnd - bChange.modifiedStart;
  2335. }
  2336. }
  2337. }
  2338. }
  2339. }
  2340. return changes;
  2341. }
  2342. _findBetterContiguousSequence(originalStart, originalLength, modifiedStart, modifiedLength, desiredLength) {
  2343. if (originalLength < desiredLength || modifiedLength < desiredLength) {
  2344. return null;
  2345. }
  2346. const originalMax = originalStart + originalLength - desiredLength + 1;
  2347. const modifiedMax = modifiedStart + modifiedLength - desiredLength + 1;
  2348. let bestScore = 0;
  2349. let bestOriginalStart = 0;
  2350. let bestModifiedStart = 0;
  2351. for (let i = originalStart; i < originalMax; i++) {
  2352. for (let j = modifiedStart; j < modifiedMax; j++) {
  2353. const score = this._contiguousSequenceScore(i, j, desiredLength);
  2354. if (score > 0 && score > bestScore) {
  2355. bestScore = score;
  2356. bestOriginalStart = i;
  2357. bestModifiedStart = j;
  2358. }
  2359. }
  2360. }
  2361. if (bestScore > 0) {
  2362. return [bestOriginalStart, bestModifiedStart];
  2363. }
  2364. return null;
  2365. }
  2366. _contiguousSequenceScore(originalStart, modifiedStart, length) {
  2367. let score = 0;
  2368. for (let l = 0; l < length; l++) {
  2369. if (!this.ElementsAreEqual(originalStart + l, modifiedStart + l)) {
  2370. return 0;
  2371. }
  2372. score += this._originalStringElements[originalStart + l].length;
  2373. }
  2374. return score;
  2375. }
  2376. _OriginalIsBoundary(index) {
  2377. if (index <= 0 || index >= this._originalElementsOrHash.length - 1) {
  2378. return true;
  2379. }
  2380. return this._hasStrings && /^\s*$/.test(this._originalStringElements[index]);
  2381. }
  2382. _OriginalRegionIsBoundary(originalStart, originalLength) {
  2383. if (this._OriginalIsBoundary(originalStart) || this._OriginalIsBoundary(originalStart - 1)) {
  2384. return true;
  2385. }
  2386. if (originalLength > 0) {
  2387. const originalEnd = originalStart + originalLength;
  2388. if (this._OriginalIsBoundary(originalEnd - 1) || this._OriginalIsBoundary(originalEnd)) {
  2389. return true;
  2390. }
  2391. }
  2392. return false;
  2393. }
  2394. _ModifiedIsBoundary(index) {
  2395. if (index <= 0 || index >= this._modifiedElementsOrHash.length - 1) {
  2396. return true;
  2397. }
  2398. return this._hasStrings && /^\s*$/.test(this._modifiedStringElements[index]);
  2399. }
  2400. _ModifiedRegionIsBoundary(modifiedStart, modifiedLength) {
  2401. if (this._ModifiedIsBoundary(modifiedStart) || this._ModifiedIsBoundary(modifiedStart - 1)) {
  2402. return true;
  2403. }
  2404. if (modifiedLength > 0) {
  2405. const modifiedEnd = modifiedStart + modifiedLength;
  2406. if (this._ModifiedIsBoundary(modifiedEnd - 1) || this._ModifiedIsBoundary(modifiedEnd)) {
  2407. return true;
  2408. }
  2409. }
  2410. return false;
  2411. }
  2412. _boundaryScore(originalStart, originalLength, modifiedStart, modifiedLength) {
  2413. const originalScore = this._OriginalRegionIsBoundary(originalStart, originalLength) ? 1 : 0;
  2414. const modifiedScore = this._ModifiedRegionIsBoundary(modifiedStart, modifiedLength) ? 1 : 0;
  2415. return originalScore + modifiedScore;
  2416. }
  2417. ConcatenateChanges(left, right) {
  2418. let mergedChangeArr = [];
  2419. if (left.length === 0 || right.length === 0) {
  2420. return right.length > 0 ? right : left;
  2421. } else if (this.ChangesOverlap(left[left.length - 1], right[0], mergedChangeArr)) {
  2422. const result = new Array(left.length + right.length - 1);
  2423. MyArray.Copy(left, 0, result, 0, left.length - 1);
  2424. result[left.length - 1] = mergedChangeArr[0];
  2425. MyArray.Copy(right, 1, result, left.length, right.length - 1);
  2426. return result;
  2427. } else {
  2428. const result = new Array(left.length + right.length);
  2429. MyArray.Copy(left, 0, result, 0, left.length);
  2430. MyArray.Copy(right, 0, result, left.length, right.length);
  2431. return result;
  2432. }
  2433. }
  2434. ChangesOverlap(left, right, mergedChangeArr) {
  2435. Debug.Assert(left.originalStart <= right.originalStart, "Left change is not less than or equal to right change");
  2436. Debug.Assert(left.modifiedStart <= right.modifiedStart, "Left change is not less than or equal to right change");
  2437. if (left.originalStart + left.originalLength >= right.originalStart || left.modifiedStart + left.modifiedLength >= right.modifiedStart) {
  2438. const originalStart = left.originalStart;
  2439. let originalLength = left.originalLength;
  2440. const modifiedStart = left.modifiedStart;
  2441. let modifiedLength = left.modifiedLength;
  2442. if (left.originalStart + left.originalLength >= right.originalStart) {
  2443. originalLength = right.originalStart + right.originalLength - left.originalStart;
  2444. }
  2445. if (left.modifiedStart + left.modifiedLength >= right.modifiedStart) {
  2446. modifiedLength = right.modifiedStart + right.modifiedLength - left.modifiedStart;
  2447. }
  2448. mergedChangeArr[0] = new DiffChange(originalStart, originalLength, modifiedStart, modifiedLength);
  2449. return true;
  2450. } else {
  2451. mergedChangeArr[0] = null;
  2452. return false;
  2453. }
  2454. }
  2455. ClipDiagonalBound(diagonal, numDifferences, diagonalBaseIndex, numDiagonals) {
  2456. if (diagonal >= 0 && diagonal < numDiagonals) {
  2457. return diagonal;
  2458. }
  2459. const diagonalsBelow = diagonalBaseIndex;
  2460. const diagonalsAbove = numDiagonals - diagonalBaseIndex - 1;
  2461. const diffEven = numDifferences % 2 === 0;
  2462. if (diagonal < 0) {
  2463. const lowerBoundEven = diagonalsBelow % 2 === 0;
  2464. return diffEven === lowerBoundEven ? 0 : 1;
  2465. } else {
  2466. const upperBoundEven = diagonalsAbove % 2 === 0;
  2467. return diffEven === upperBoundEven ? numDiagonals - 1 : numDiagonals - 2;
  2468. }
  2469. }
  2470. };
  2471. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/process.js
  2472. var safeProcess;
  2473. if (typeof globals.vscode !== "undefined" && typeof globals.vscode.process !== "undefined") {
  2474. const sandboxProcess = globals.vscode.process;
  2475. safeProcess = {
  2476. get platform() {
  2477. return sandboxProcess.platform;
  2478. },
  2479. get arch() {
  2480. return sandboxProcess.arch;
  2481. },
  2482. get env() {
  2483. return sandboxProcess.env;
  2484. },
  2485. cwd() {
  2486. return sandboxProcess.cwd();
  2487. }
  2488. };
  2489. } else if (typeof process !== "undefined") {
  2490. safeProcess = {
  2491. get platform() {
  2492. return process.platform;
  2493. },
  2494. get arch() {
  2495. return process.arch;
  2496. },
  2497. get env() {
  2498. return process.env;
  2499. },
  2500. cwd() {
  2501. return process.env["VSCODE_CWD"] || process.cwd();
  2502. }
  2503. };
  2504. } else {
  2505. safeProcess = {
  2506. get platform() {
  2507. return isWindows ? "win32" : isMacintosh ? "darwin" : "linux";
  2508. },
  2509. get arch() {
  2510. return void 0;
  2511. },
  2512. get env() {
  2513. return {};
  2514. },
  2515. cwd() {
  2516. return "/";
  2517. }
  2518. };
  2519. }
  2520. var cwd = safeProcess.cwd;
  2521. var env = safeProcess.env;
  2522. var platform = safeProcess.platform;
  2523. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/path.js
  2524. var CHAR_UPPERCASE_A = 65;
  2525. var CHAR_LOWERCASE_A = 97;
  2526. var CHAR_UPPERCASE_Z = 90;
  2527. var CHAR_LOWERCASE_Z = 122;
  2528. var CHAR_DOT = 46;
  2529. var CHAR_FORWARD_SLASH = 47;
  2530. var CHAR_BACKWARD_SLASH = 92;
  2531. var CHAR_COLON = 58;
  2532. var CHAR_QUESTION_MARK = 63;
  2533. var ErrorInvalidArgType = class extends Error {
  2534. constructor(name, expected, actual) {
  2535. let determiner;
  2536. if (typeof expected === "string" && expected.indexOf("not ") === 0) {
  2537. determiner = "must not be";
  2538. expected = expected.replace(/^not /, "");
  2539. } else {
  2540. determiner = "must be";
  2541. }
  2542. const type = name.indexOf(".") !== -1 ? "property" : "argument";
  2543. let msg = `The "${name}" ${type} ${determiner} of type ${expected}`;
  2544. msg += `. Received type ${typeof actual}`;
  2545. super(msg);
  2546. this.code = "ERR_INVALID_ARG_TYPE";
  2547. }
  2548. };
  2549. function validateString(value, name) {
  2550. if (typeof value !== "string") {
  2551. throw new ErrorInvalidArgType(name, "string", value);
  2552. }
  2553. }
  2554. function isPathSeparator(code) {
  2555. return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
  2556. }
  2557. function isPosixPathSeparator(code) {
  2558. return code === CHAR_FORWARD_SLASH;
  2559. }
  2560. function isWindowsDeviceRoot(code) {
  2561. return code >= CHAR_UPPERCASE_A && code <= CHAR_UPPERCASE_Z || code >= CHAR_LOWERCASE_A && code <= CHAR_LOWERCASE_Z;
  2562. }
  2563. function normalizeString(path, allowAboveRoot, separator, isPathSeparator2) {
  2564. let res = "";
  2565. let lastSegmentLength = 0;
  2566. let lastSlash = -1;
  2567. let dots = 0;
  2568. let code = 0;
  2569. for (let i = 0; i <= path.length; ++i) {
  2570. if (i < path.length) {
  2571. code = path.charCodeAt(i);
  2572. } else if (isPathSeparator2(code)) {
  2573. break;
  2574. } else {
  2575. code = CHAR_FORWARD_SLASH;
  2576. }
  2577. if (isPathSeparator2(code)) {
  2578. if (lastSlash === i - 1 || dots === 1) {
  2579. } else if (dots === 2) {
  2580. if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== CHAR_DOT || res.charCodeAt(res.length - 2) !== CHAR_DOT) {
  2581. if (res.length > 2) {
  2582. const lastSlashIndex = res.lastIndexOf(separator);
  2583. if (lastSlashIndex === -1) {
  2584. res = "";
  2585. lastSegmentLength = 0;
  2586. } else {
  2587. res = res.slice(0, lastSlashIndex);
  2588. lastSegmentLength = res.length - 1 - res.lastIndexOf(separator);
  2589. }
  2590. lastSlash = i;
  2591. dots = 0;
  2592. continue;
  2593. } else if (res.length !== 0) {
  2594. res = "";
  2595. lastSegmentLength = 0;
  2596. lastSlash = i;
  2597. dots = 0;
  2598. continue;
  2599. }
  2600. }
  2601. if (allowAboveRoot) {
  2602. res += res.length > 0 ? `${separator}..` : "..";
  2603. lastSegmentLength = 2;
  2604. }
  2605. } else {
  2606. if (res.length > 0) {
  2607. res += `${separator}${path.slice(lastSlash + 1, i)}`;
  2608. } else {
  2609. res = path.slice(lastSlash + 1, i);
  2610. }
  2611. lastSegmentLength = i - lastSlash - 1;
  2612. }
  2613. lastSlash = i;
  2614. dots = 0;
  2615. } else if (code === CHAR_DOT && dots !== -1) {
  2616. ++dots;
  2617. } else {
  2618. dots = -1;
  2619. }
  2620. }
  2621. return res;
  2622. }
  2623. function _format(sep2, pathObject) {
  2624. if (pathObject === null || typeof pathObject !== "object") {
  2625. throw new ErrorInvalidArgType("pathObject", "Object", pathObject);
  2626. }
  2627. const dir = pathObject.dir || pathObject.root;
  2628. const base = pathObject.base || `${pathObject.name || ""}${pathObject.ext || ""}`;
  2629. if (!dir) {
  2630. return base;
  2631. }
  2632. return dir === pathObject.root ? `${dir}${base}` : `${dir}${sep2}${base}`;
  2633. }
  2634. var win32 = {
  2635. resolve(...pathSegments) {
  2636. let resolvedDevice = "";
  2637. let resolvedTail = "";
  2638. let resolvedAbsolute = false;
  2639. for (let i = pathSegments.length - 1; i >= -1; i--) {
  2640. let path;
  2641. if (i >= 0) {
  2642. path = pathSegments[i];
  2643. validateString(path, "path");
  2644. if (path.length === 0) {
  2645. continue;
  2646. }
  2647. } else if (resolvedDevice.length === 0) {
  2648. path = cwd();
  2649. } else {
  2650. path = env[`=${resolvedDevice}`] || cwd();
  2651. if (path === void 0 || path.slice(0, 2).toLowerCase() !== resolvedDevice.toLowerCase() && path.charCodeAt(2) === CHAR_BACKWARD_SLASH) {
  2652. path = `${resolvedDevice}\\`;
  2653. }
  2654. }
  2655. const len = path.length;
  2656. let rootEnd = 0;
  2657. let device = "";
  2658. let isAbsolute = false;
  2659. const code = path.charCodeAt(0);
  2660. if (len === 1) {
  2661. if (isPathSeparator(code)) {
  2662. rootEnd = 1;
  2663. isAbsolute = true;
  2664. }
  2665. } else if (isPathSeparator(code)) {
  2666. isAbsolute = true;
  2667. if (isPathSeparator(path.charCodeAt(1))) {
  2668. let j = 2;
  2669. let last = j;
  2670. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  2671. j++;
  2672. }
  2673. if (j < len && j !== last) {
  2674. const firstPart = path.slice(last, j);
  2675. last = j;
  2676. while (j < len && isPathSeparator(path.charCodeAt(j))) {
  2677. j++;
  2678. }
  2679. if (j < len && j !== last) {
  2680. last = j;
  2681. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  2682. j++;
  2683. }
  2684. if (j === len || j !== last) {
  2685. device = `\\\\${firstPart}\\${path.slice(last, j)}`;
  2686. rootEnd = j;
  2687. }
  2688. }
  2689. }
  2690. } else {
  2691. rootEnd = 1;
  2692. }
  2693. } else if (isWindowsDeviceRoot(code) && path.charCodeAt(1) === CHAR_COLON) {
  2694. device = path.slice(0, 2);
  2695. rootEnd = 2;
  2696. if (len > 2 && isPathSeparator(path.charCodeAt(2))) {
  2697. isAbsolute = true;
  2698. rootEnd = 3;
  2699. }
  2700. }
  2701. if (device.length > 0) {
  2702. if (resolvedDevice.length > 0) {
  2703. if (device.toLowerCase() !== resolvedDevice.toLowerCase()) {
  2704. continue;
  2705. }
  2706. } else {
  2707. resolvedDevice = device;
  2708. }
  2709. }
  2710. if (resolvedAbsolute) {
  2711. if (resolvedDevice.length > 0) {
  2712. break;
  2713. }
  2714. } else {
  2715. resolvedTail = `${path.slice(rootEnd)}\\${resolvedTail}`;
  2716. resolvedAbsolute = isAbsolute;
  2717. if (isAbsolute && resolvedDevice.length > 0) {
  2718. break;
  2719. }
  2720. }
  2721. }
  2722. resolvedTail = normalizeString(resolvedTail, !resolvedAbsolute, "\\", isPathSeparator);
  2723. return resolvedAbsolute ? `${resolvedDevice}\\${resolvedTail}` : `${resolvedDevice}${resolvedTail}` || ".";
  2724. },
  2725. normalize(path) {
  2726. validateString(path, "path");
  2727. const len = path.length;
  2728. if (len === 0) {
  2729. return ".";
  2730. }
  2731. let rootEnd = 0;
  2732. let device;
  2733. let isAbsolute = false;
  2734. const code = path.charCodeAt(0);
  2735. if (len === 1) {
  2736. return isPosixPathSeparator(code) ? "\\" : path;
  2737. }
  2738. if (isPathSeparator(code)) {
  2739. isAbsolute = true;
  2740. if (isPathSeparator(path.charCodeAt(1))) {
  2741. let j = 2;
  2742. let last = j;
  2743. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  2744. j++;
  2745. }
  2746. if (j < len && j !== last) {
  2747. const firstPart = path.slice(last, j);
  2748. last = j;
  2749. while (j < len && isPathSeparator(path.charCodeAt(j))) {
  2750. j++;
  2751. }
  2752. if (j < len && j !== last) {
  2753. last = j;
  2754. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  2755. j++;
  2756. }
  2757. if (j === len) {
  2758. return `\\\\${firstPart}\\${path.slice(last)}\\`;
  2759. }
  2760. if (j !== last) {
  2761. device = `\\\\${firstPart}\\${path.slice(last, j)}`;
  2762. rootEnd = j;
  2763. }
  2764. }
  2765. }
  2766. } else {
  2767. rootEnd = 1;
  2768. }
  2769. } else if (isWindowsDeviceRoot(code) && path.charCodeAt(1) === CHAR_COLON) {
  2770. device = path.slice(0, 2);
  2771. rootEnd = 2;
  2772. if (len > 2 && isPathSeparator(path.charCodeAt(2))) {
  2773. isAbsolute = true;
  2774. rootEnd = 3;
  2775. }
  2776. }
  2777. let tail = rootEnd < len ? normalizeString(path.slice(rootEnd), !isAbsolute, "\\", isPathSeparator) : "";
  2778. if (tail.length === 0 && !isAbsolute) {
  2779. tail = ".";
  2780. }
  2781. if (tail.length > 0 && isPathSeparator(path.charCodeAt(len - 1))) {
  2782. tail += "\\";
  2783. }
  2784. if (device === void 0) {
  2785. return isAbsolute ? `\\${tail}` : tail;
  2786. }
  2787. return isAbsolute ? `${device}\\${tail}` : `${device}${tail}`;
  2788. },
  2789. isAbsolute(path) {
  2790. validateString(path, "path");
  2791. const len = path.length;
  2792. if (len === 0) {
  2793. return false;
  2794. }
  2795. const code = path.charCodeAt(0);
  2796. return isPathSeparator(code) || len > 2 && isWindowsDeviceRoot(code) && path.charCodeAt(1) === CHAR_COLON && isPathSeparator(path.charCodeAt(2));
  2797. },
  2798. join(...paths2) {
  2799. if (paths2.length === 0) {
  2800. return ".";
  2801. }
  2802. let joined;
  2803. let firstPart;
  2804. for (let i = 0; i < paths2.length; ++i) {
  2805. const arg = paths2[i];
  2806. validateString(arg, "path");
  2807. if (arg.length > 0) {
  2808. if (joined === void 0) {
  2809. joined = firstPart = arg;
  2810. } else {
  2811. joined += `\\${arg}`;
  2812. }
  2813. }
  2814. }
  2815. if (joined === void 0) {
  2816. return ".";
  2817. }
  2818. let needsReplace = true;
  2819. let slashCount = 0;
  2820. if (typeof firstPart === "string" && isPathSeparator(firstPart.charCodeAt(0))) {
  2821. ++slashCount;
  2822. const firstLen = firstPart.length;
  2823. if (firstLen > 1 && isPathSeparator(firstPart.charCodeAt(1))) {
  2824. ++slashCount;
  2825. if (firstLen > 2) {
  2826. if (isPathSeparator(firstPart.charCodeAt(2))) {
  2827. ++slashCount;
  2828. } else {
  2829. needsReplace = false;
  2830. }
  2831. }
  2832. }
  2833. }
  2834. if (needsReplace) {
  2835. while (slashCount < joined.length && isPathSeparator(joined.charCodeAt(slashCount))) {
  2836. slashCount++;
  2837. }
  2838. if (slashCount >= 2) {
  2839. joined = `\\${joined.slice(slashCount)}`;
  2840. }
  2841. }
  2842. return win32.normalize(joined);
  2843. },
  2844. relative(from, to) {
  2845. validateString(from, "from");
  2846. validateString(to, "to");
  2847. if (from === to) {
  2848. return "";
  2849. }
  2850. const fromOrig = win32.resolve(from);
  2851. const toOrig = win32.resolve(to);
  2852. if (fromOrig === toOrig) {
  2853. return "";
  2854. }
  2855. from = fromOrig.toLowerCase();
  2856. to = toOrig.toLowerCase();
  2857. if (from === to) {
  2858. return "";
  2859. }
  2860. let fromStart = 0;
  2861. while (fromStart < from.length && from.charCodeAt(fromStart) === CHAR_BACKWARD_SLASH) {
  2862. fromStart++;
  2863. }
  2864. let fromEnd = from.length;
  2865. while (fromEnd - 1 > fromStart && from.charCodeAt(fromEnd - 1) === CHAR_BACKWARD_SLASH) {
  2866. fromEnd--;
  2867. }
  2868. const fromLen = fromEnd - fromStart;
  2869. let toStart = 0;
  2870. while (toStart < to.length && to.charCodeAt(toStart) === CHAR_BACKWARD_SLASH) {
  2871. toStart++;
  2872. }
  2873. let toEnd = to.length;
  2874. while (toEnd - 1 > toStart && to.charCodeAt(toEnd - 1) === CHAR_BACKWARD_SLASH) {
  2875. toEnd--;
  2876. }
  2877. const toLen = toEnd - toStart;
  2878. const length = fromLen < toLen ? fromLen : toLen;
  2879. let lastCommonSep = -1;
  2880. let i = 0;
  2881. for (; i < length; i++) {
  2882. const fromCode = from.charCodeAt(fromStart + i);
  2883. if (fromCode !== to.charCodeAt(toStart + i)) {
  2884. break;
  2885. } else if (fromCode === CHAR_BACKWARD_SLASH) {
  2886. lastCommonSep = i;
  2887. }
  2888. }
  2889. if (i !== length) {
  2890. if (lastCommonSep === -1) {
  2891. return toOrig;
  2892. }
  2893. } else {
  2894. if (toLen > length) {
  2895. if (to.charCodeAt(toStart + i) === CHAR_BACKWARD_SLASH) {
  2896. return toOrig.slice(toStart + i + 1);
  2897. }
  2898. if (i === 2) {
  2899. return toOrig.slice(toStart + i);
  2900. }
  2901. }
  2902. if (fromLen > length) {
  2903. if (from.charCodeAt(fromStart + i) === CHAR_BACKWARD_SLASH) {
  2904. lastCommonSep = i;
  2905. } else if (i === 2) {
  2906. lastCommonSep = 3;
  2907. }
  2908. }
  2909. if (lastCommonSep === -1) {
  2910. lastCommonSep = 0;
  2911. }
  2912. }
  2913. let out = "";
  2914. for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {
  2915. if (i === fromEnd || from.charCodeAt(i) === CHAR_BACKWARD_SLASH) {
  2916. out += out.length === 0 ? ".." : "\\..";
  2917. }
  2918. }
  2919. toStart += lastCommonSep;
  2920. if (out.length > 0) {
  2921. return `${out}${toOrig.slice(toStart, toEnd)}`;
  2922. }
  2923. if (toOrig.charCodeAt(toStart) === CHAR_BACKWARD_SLASH) {
  2924. ++toStart;
  2925. }
  2926. return toOrig.slice(toStart, toEnd);
  2927. },
  2928. toNamespacedPath(path) {
  2929. if (typeof path !== "string") {
  2930. return path;
  2931. }
  2932. if (path.length === 0) {
  2933. return "";
  2934. }
  2935. const resolvedPath = win32.resolve(path);
  2936. if (resolvedPath.length <= 2) {
  2937. return path;
  2938. }
  2939. if (resolvedPath.charCodeAt(0) === CHAR_BACKWARD_SLASH) {
  2940. if (resolvedPath.charCodeAt(1) === CHAR_BACKWARD_SLASH) {
  2941. const code = resolvedPath.charCodeAt(2);
  2942. if (code !== CHAR_QUESTION_MARK && code !== CHAR_DOT) {
  2943. return `\\\\?\\UNC\\${resolvedPath.slice(2)}`;
  2944. }
  2945. }
  2946. } else if (isWindowsDeviceRoot(resolvedPath.charCodeAt(0)) && resolvedPath.charCodeAt(1) === CHAR_COLON && resolvedPath.charCodeAt(2) === CHAR_BACKWARD_SLASH) {
  2947. return `\\\\?\\${resolvedPath}`;
  2948. }
  2949. return path;
  2950. },
  2951. dirname(path) {
  2952. validateString(path, "path");
  2953. const len = path.length;
  2954. if (len === 0) {
  2955. return ".";
  2956. }
  2957. let rootEnd = -1;
  2958. let offset = 0;
  2959. const code = path.charCodeAt(0);
  2960. if (len === 1) {
  2961. return isPathSeparator(code) ? path : ".";
  2962. }
  2963. if (isPathSeparator(code)) {
  2964. rootEnd = offset = 1;
  2965. if (isPathSeparator(path.charCodeAt(1))) {
  2966. let j = 2;
  2967. let last = j;
  2968. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  2969. j++;
  2970. }
  2971. if (j < len && j !== last) {
  2972. last = j;
  2973. while (j < len && isPathSeparator(path.charCodeAt(j))) {
  2974. j++;
  2975. }
  2976. if (j < len && j !== last) {
  2977. last = j;
  2978. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  2979. j++;
  2980. }
  2981. if (j === len) {
  2982. return path;
  2983. }
  2984. if (j !== last) {
  2985. rootEnd = offset = j + 1;
  2986. }
  2987. }
  2988. }
  2989. }
  2990. } else if (isWindowsDeviceRoot(code) && path.charCodeAt(1) === CHAR_COLON) {
  2991. rootEnd = len > 2 && isPathSeparator(path.charCodeAt(2)) ? 3 : 2;
  2992. offset = rootEnd;
  2993. }
  2994. let end = -1;
  2995. let matchedSlash = true;
  2996. for (let i = len - 1; i >= offset; --i) {
  2997. if (isPathSeparator(path.charCodeAt(i))) {
  2998. if (!matchedSlash) {
  2999. end = i;
  3000. break;
  3001. }
  3002. } else {
  3003. matchedSlash = false;
  3004. }
  3005. }
  3006. if (end === -1) {
  3007. if (rootEnd === -1) {
  3008. return ".";
  3009. }
  3010. end = rootEnd;
  3011. }
  3012. return path.slice(0, end);
  3013. },
  3014. basename(path, ext) {
  3015. if (ext !== void 0) {
  3016. validateString(ext, "ext");
  3017. }
  3018. validateString(path, "path");
  3019. let start = 0;
  3020. let end = -1;
  3021. let matchedSlash = true;
  3022. let i;
  3023. if (path.length >= 2 && isWindowsDeviceRoot(path.charCodeAt(0)) && path.charCodeAt(1) === CHAR_COLON) {
  3024. start = 2;
  3025. }
  3026. if (ext !== void 0 && ext.length > 0 && ext.length <= path.length) {
  3027. if (ext === path) {
  3028. return "";
  3029. }
  3030. let extIdx = ext.length - 1;
  3031. let firstNonSlashEnd = -1;
  3032. for (i = path.length - 1; i >= start; --i) {
  3033. const code = path.charCodeAt(i);
  3034. if (isPathSeparator(code)) {
  3035. if (!matchedSlash) {
  3036. start = i + 1;
  3037. break;
  3038. }
  3039. } else {
  3040. if (firstNonSlashEnd === -1) {
  3041. matchedSlash = false;
  3042. firstNonSlashEnd = i + 1;
  3043. }
  3044. if (extIdx >= 0) {
  3045. if (code === ext.charCodeAt(extIdx)) {
  3046. if (--extIdx === -1) {
  3047. end = i;
  3048. }
  3049. } else {
  3050. extIdx = -1;
  3051. end = firstNonSlashEnd;
  3052. }
  3053. }
  3054. }
  3055. }
  3056. if (start === end) {
  3057. end = firstNonSlashEnd;
  3058. } else if (end === -1) {
  3059. end = path.length;
  3060. }
  3061. return path.slice(start, end);
  3062. }
  3063. for (i = path.length - 1; i >= start; --i) {
  3064. if (isPathSeparator(path.charCodeAt(i))) {
  3065. if (!matchedSlash) {
  3066. start = i + 1;
  3067. break;
  3068. }
  3069. } else if (end === -1) {
  3070. matchedSlash = false;
  3071. end = i + 1;
  3072. }
  3073. }
  3074. if (end === -1) {
  3075. return "";
  3076. }
  3077. return path.slice(start, end);
  3078. },
  3079. extname(path) {
  3080. validateString(path, "path");
  3081. let start = 0;
  3082. let startDot = -1;
  3083. let startPart = 0;
  3084. let end = -1;
  3085. let matchedSlash = true;
  3086. let preDotState = 0;
  3087. if (path.length >= 2 && path.charCodeAt(1) === CHAR_COLON && isWindowsDeviceRoot(path.charCodeAt(0))) {
  3088. start = startPart = 2;
  3089. }
  3090. for (let i = path.length - 1; i >= start; --i) {
  3091. const code = path.charCodeAt(i);
  3092. if (isPathSeparator(code)) {
  3093. if (!matchedSlash) {
  3094. startPart = i + 1;
  3095. break;
  3096. }
  3097. continue;
  3098. }
  3099. if (end === -1) {
  3100. matchedSlash = false;
  3101. end = i + 1;
  3102. }
  3103. if (code === CHAR_DOT) {
  3104. if (startDot === -1) {
  3105. startDot = i;
  3106. } else if (preDotState !== 1) {
  3107. preDotState = 1;
  3108. }
  3109. } else if (startDot !== -1) {
  3110. preDotState = -1;
  3111. }
  3112. }
  3113. if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
  3114. return "";
  3115. }
  3116. return path.slice(startDot, end);
  3117. },
  3118. format: _format.bind(null, "\\"),
  3119. parse(path) {
  3120. validateString(path, "path");
  3121. const ret = {root: "", dir: "", base: "", ext: "", name: ""};
  3122. if (path.length === 0) {
  3123. return ret;
  3124. }
  3125. const len = path.length;
  3126. let rootEnd = 0;
  3127. let code = path.charCodeAt(0);
  3128. if (len === 1) {
  3129. if (isPathSeparator(code)) {
  3130. ret.root = ret.dir = path;
  3131. return ret;
  3132. }
  3133. ret.base = ret.name = path;
  3134. return ret;
  3135. }
  3136. if (isPathSeparator(code)) {
  3137. rootEnd = 1;
  3138. if (isPathSeparator(path.charCodeAt(1))) {
  3139. let j = 2;
  3140. let last = j;
  3141. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  3142. j++;
  3143. }
  3144. if (j < len && j !== last) {
  3145. last = j;
  3146. while (j < len && isPathSeparator(path.charCodeAt(j))) {
  3147. j++;
  3148. }
  3149. if (j < len && j !== last) {
  3150. last = j;
  3151. while (j < len && !isPathSeparator(path.charCodeAt(j))) {
  3152. j++;
  3153. }
  3154. if (j === len) {
  3155. rootEnd = j;
  3156. } else if (j !== last) {
  3157. rootEnd = j + 1;
  3158. }
  3159. }
  3160. }
  3161. }
  3162. } else if (isWindowsDeviceRoot(code) && path.charCodeAt(1) === CHAR_COLON) {
  3163. if (len <= 2) {
  3164. ret.root = ret.dir = path;
  3165. return ret;
  3166. }
  3167. rootEnd = 2;
  3168. if (isPathSeparator(path.charCodeAt(2))) {
  3169. if (len === 3) {
  3170. ret.root = ret.dir = path;
  3171. return ret;
  3172. }
  3173. rootEnd = 3;
  3174. }
  3175. }
  3176. if (rootEnd > 0) {
  3177. ret.root = path.slice(0, rootEnd);
  3178. }
  3179. let startDot = -1;
  3180. let startPart = rootEnd;
  3181. let end = -1;
  3182. let matchedSlash = true;
  3183. let i = path.length - 1;
  3184. let preDotState = 0;
  3185. for (; i >= rootEnd; --i) {
  3186. code = path.charCodeAt(i);
  3187. if (isPathSeparator(code)) {
  3188. if (!matchedSlash) {
  3189. startPart = i + 1;
  3190. break;
  3191. }
  3192. continue;
  3193. }
  3194. if (end === -1) {
  3195. matchedSlash = false;
  3196. end = i + 1;
  3197. }
  3198. if (code === CHAR_DOT) {
  3199. if (startDot === -1) {
  3200. startDot = i;
  3201. } else if (preDotState !== 1) {
  3202. preDotState = 1;
  3203. }
  3204. } else if (startDot !== -1) {
  3205. preDotState = -1;
  3206. }
  3207. }
  3208. if (end !== -1) {
  3209. if (startDot === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
  3210. ret.base = ret.name = path.slice(startPart, end);
  3211. } else {
  3212. ret.name = path.slice(startPart, startDot);
  3213. ret.base = path.slice(startPart, end);
  3214. ret.ext = path.slice(startDot, end);
  3215. }
  3216. }
  3217. if (startPart > 0 && startPart !== rootEnd) {
  3218. ret.dir = path.slice(0, startPart - 1);
  3219. } else {
  3220. ret.dir = ret.root;
  3221. }
  3222. return ret;
  3223. },
  3224. sep: "\\",
  3225. delimiter: ";",
  3226. win32: null,
  3227. posix: null
  3228. };
  3229. var posix = {
  3230. resolve(...pathSegments) {
  3231. let resolvedPath = "";
  3232. let resolvedAbsolute = false;
  3233. for (let i = pathSegments.length - 1; i >= -1 && !resolvedAbsolute; i--) {
  3234. const path = i >= 0 ? pathSegments[i] : cwd();
  3235. validateString(path, "path");
  3236. if (path.length === 0) {
  3237. continue;
  3238. }
  3239. resolvedPath = `${path}/${resolvedPath}`;
  3240. resolvedAbsolute = path.charCodeAt(0) === CHAR_FORWARD_SLASH;
  3241. }
  3242. resolvedPath = normalizeString(resolvedPath, !resolvedAbsolute, "/", isPosixPathSeparator);
  3243. if (resolvedAbsolute) {
  3244. return `/${resolvedPath}`;
  3245. }
  3246. return resolvedPath.length > 0 ? resolvedPath : ".";
  3247. },
  3248. normalize(path) {
  3249. validateString(path, "path");
  3250. if (path.length === 0) {
  3251. return ".";
  3252. }
  3253. const isAbsolute = path.charCodeAt(0) === CHAR_FORWARD_SLASH;
  3254. const trailingSeparator = path.charCodeAt(path.length - 1) === CHAR_FORWARD_SLASH;
  3255. path = normalizeString(path, !isAbsolute, "/", isPosixPathSeparator);
  3256. if (path.length === 0) {
  3257. if (isAbsolute) {
  3258. return "/";
  3259. }
  3260. return trailingSeparator ? "./" : ".";
  3261. }
  3262. if (trailingSeparator) {
  3263. path += "/";
  3264. }
  3265. return isAbsolute ? `/${path}` : path;
  3266. },
  3267. isAbsolute(path) {
  3268. validateString(path, "path");
  3269. return path.length > 0 && path.charCodeAt(0) === CHAR_FORWARD_SLASH;
  3270. },
  3271. join(...paths2) {
  3272. if (paths2.length === 0) {
  3273. return ".";
  3274. }
  3275. let joined;
  3276. for (let i = 0; i < paths2.length; ++i) {
  3277. const arg = paths2[i];
  3278. validateString(arg, "path");
  3279. if (arg.length > 0) {
  3280. if (joined === void 0) {
  3281. joined = arg;
  3282. } else {
  3283. joined += `/${arg}`;
  3284. }
  3285. }
  3286. }
  3287. if (joined === void 0) {
  3288. return ".";
  3289. }
  3290. return posix.normalize(joined);
  3291. },
  3292. relative(from, to) {
  3293. validateString(from, "from");
  3294. validateString(to, "to");
  3295. if (from === to) {
  3296. return "";
  3297. }
  3298. from = posix.resolve(from);
  3299. to = posix.resolve(to);
  3300. if (from === to) {
  3301. return "";
  3302. }
  3303. const fromStart = 1;
  3304. const fromEnd = from.length;
  3305. const fromLen = fromEnd - fromStart;
  3306. const toStart = 1;
  3307. const toLen = to.length - toStart;
  3308. const length = fromLen < toLen ? fromLen : toLen;
  3309. let lastCommonSep = -1;
  3310. let i = 0;
  3311. for (; i < length; i++) {
  3312. const fromCode = from.charCodeAt(fromStart + i);
  3313. if (fromCode !== to.charCodeAt(toStart + i)) {
  3314. break;
  3315. } else if (fromCode === CHAR_FORWARD_SLASH) {
  3316. lastCommonSep = i;
  3317. }
  3318. }
  3319. if (i === length) {
  3320. if (toLen > length) {
  3321. if (to.charCodeAt(toStart + i) === CHAR_FORWARD_SLASH) {
  3322. return to.slice(toStart + i + 1);
  3323. }
  3324. if (i === 0) {
  3325. return to.slice(toStart + i);
  3326. }
  3327. } else if (fromLen > length) {
  3328. if (from.charCodeAt(fromStart + i) === CHAR_FORWARD_SLASH) {
  3329. lastCommonSep = i;
  3330. } else if (i === 0) {
  3331. lastCommonSep = 0;
  3332. }
  3333. }
  3334. }
  3335. let out = "";
  3336. for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {
  3337. if (i === fromEnd || from.charCodeAt(i) === CHAR_FORWARD_SLASH) {
  3338. out += out.length === 0 ? ".." : "/..";
  3339. }
  3340. }
  3341. return `${out}${to.slice(toStart + lastCommonSep)}`;
  3342. },
  3343. toNamespacedPath(path) {
  3344. return path;
  3345. },
  3346. dirname(path) {
  3347. validateString(path, "path");
  3348. if (path.length === 0) {
  3349. return ".";
  3350. }
  3351. const hasRoot = path.charCodeAt(0) === CHAR_FORWARD_SLASH;
  3352. let end = -1;
  3353. let matchedSlash = true;
  3354. for (let i = path.length - 1; i >= 1; --i) {
  3355. if (path.charCodeAt(i) === CHAR_FORWARD_SLASH) {
  3356. if (!matchedSlash) {
  3357. end = i;
  3358. break;
  3359. }
  3360. } else {
  3361. matchedSlash = false;
  3362. }
  3363. }
  3364. if (end === -1) {
  3365. return hasRoot ? "/" : ".";
  3366. }
  3367. if (hasRoot && end === 1) {
  3368. return "//";
  3369. }
  3370. return path.slice(0, end);
  3371. },
  3372. basename(path, ext) {
  3373. if (ext !== void 0) {
  3374. validateString(ext, "ext");
  3375. }
  3376. validateString(path, "path");
  3377. let start = 0;
  3378. let end = -1;
  3379. let matchedSlash = true;
  3380. let i;
  3381. if (ext !== void 0 && ext.length > 0 && ext.length <= path.length) {
  3382. if (ext === path) {
  3383. return "";
  3384. }
  3385. let extIdx = ext.length - 1;
  3386. let firstNonSlashEnd = -1;
  3387. for (i = path.length - 1; i >= 0; --i) {
  3388. const code = path.charCodeAt(i);
  3389. if (code === CHAR_FORWARD_SLASH) {
  3390. if (!matchedSlash) {
  3391. start = i + 1;
  3392. break;
  3393. }
  3394. } else {
  3395. if (firstNonSlashEnd === -1) {
  3396. matchedSlash = false;
  3397. firstNonSlashEnd = i + 1;
  3398. }
  3399. if (extIdx >= 0) {
  3400. if (code === ext.charCodeAt(extIdx)) {
  3401. if (--extIdx === -1) {
  3402. end = i;
  3403. }
  3404. } else {
  3405. extIdx = -1;
  3406. end = firstNonSlashEnd;
  3407. }
  3408. }
  3409. }
  3410. }
  3411. if (start === end) {
  3412. end = firstNonSlashEnd;
  3413. } else if (end === -1) {
  3414. end = path.length;
  3415. }
  3416. return path.slice(start, end);
  3417. }
  3418. for (i = path.length - 1; i >= 0; --i) {
  3419. if (path.charCodeAt(i) === CHAR_FORWARD_SLASH) {
  3420. if (!matchedSlash) {
  3421. start = i + 1;
  3422. break;
  3423. }
  3424. } else if (end === -1) {
  3425. matchedSlash = false;
  3426. end = i + 1;
  3427. }
  3428. }
  3429. if (end === -1) {
  3430. return "";
  3431. }
  3432. return path.slice(start, end);
  3433. },
  3434. extname(path) {
  3435. validateString(path, "path");
  3436. let startDot = -1;
  3437. let startPart = 0;
  3438. let end = -1;
  3439. let matchedSlash = true;
  3440. let preDotState = 0;
  3441. for (let i = path.length - 1; i >= 0; --i) {
  3442. const code = path.charCodeAt(i);
  3443. if (code === CHAR_FORWARD_SLASH) {
  3444. if (!matchedSlash) {
  3445. startPart = i + 1;
  3446. break;
  3447. }
  3448. continue;
  3449. }
  3450. if (end === -1) {
  3451. matchedSlash = false;
  3452. end = i + 1;
  3453. }
  3454. if (code === CHAR_DOT) {
  3455. if (startDot === -1) {
  3456. startDot = i;
  3457. } else if (preDotState !== 1) {
  3458. preDotState = 1;
  3459. }
  3460. } else if (startDot !== -1) {
  3461. preDotState = -1;
  3462. }
  3463. }
  3464. if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
  3465. return "";
  3466. }
  3467. return path.slice(startDot, end);
  3468. },
  3469. format: _format.bind(null, "/"),
  3470. parse(path) {
  3471. validateString(path, "path");
  3472. const ret = {root: "", dir: "", base: "", ext: "", name: ""};
  3473. if (path.length === 0) {
  3474. return ret;
  3475. }
  3476. const isAbsolute = path.charCodeAt(0) === CHAR_FORWARD_SLASH;
  3477. let start;
  3478. if (isAbsolute) {
  3479. ret.root = "/";
  3480. start = 1;
  3481. } else {
  3482. start = 0;
  3483. }
  3484. let startDot = -1;
  3485. let startPart = 0;
  3486. let end = -1;
  3487. let matchedSlash = true;
  3488. let i = path.length - 1;
  3489. let preDotState = 0;
  3490. for (; i >= start; --i) {
  3491. const code = path.charCodeAt(i);
  3492. if (code === CHAR_FORWARD_SLASH) {
  3493. if (!matchedSlash) {
  3494. startPart = i + 1;
  3495. break;
  3496. }
  3497. continue;
  3498. }
  3499. if (end === -1) {
  3500. matchedSlash = false;
  3501. end = i + 1;
  3502. }
  3503. if (code === CHAR_DOT) {
  3504. if (startDot === -1) {
  3505. startDot = i;
  3506. } else if (preDotState !== 1) {
  3507. preDotState = 1;
  3508. }
  3509. } else if (startDot !== -1) {
  3510. preDotState = -1;
  3511. }
  3512. }
  3513. if (end !== -1) {
  3514. const start2 = startPart === 0 && isAbsolute ? 1 : startPart;
  3515. if (startDot === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
  3516. ret.base = ret.name = path.slice(start2, end);
  3517. } else {
  3518. ret.name = path.slice(start2, startDot);
  3519. ret.base = path.slice(start2, end);
  3520. ret.ext = path.slice(startDot, end);
  3521. }
  3522. }
  3523. if (startPart > 0) {
  3524. ret.dir = path.slice(0, startPart - 1);
  3525. } else if (isAbsolute) {
  3526. ret.dir = "/";
  3527. }
  3528. return ret;
  3529. },
  3530. sep: "/",
  3531. delimiter: ":",
  3532. win32: null,
  3533. posix: null
  3534. };
  3535. posix.win32 = win32.win32 = win32;
  3536. posix.posix = win32.posix = posix;
  3537. var normalize = platform === "win32" ? win32.normalize : posix.normalize;
  3538. var resolve = platform === "win32" ? win32.resolve : posix.resolve;
  3539. var relative = platform === "win32" ? win32.relative : posix.relative;
  3540. var dirname = platform === "win32" ? win32.dirname : posix.dirname;
  3541. var basename = platform === "win32" ? win32.basename : posix.basename;
  3542. var extname = platform === "win32" ? win32.extname : posix.extname;
  3543. var sep = platform === "win32" ? win32.sep : posix.sep;
  3544. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/uri.js
  3545. var _schemePattern = /^\w[\w\d+.-]*$/;
  3546. var _singleSlashStart = /^\//;
  3547. var _doubleSlashStart = /^\/\//;
  3548. function _validateUri(ret, _strict) {
  3549. if (!ret.scheme && _strict) {
  3550. throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${ret.authority}", path: "${ret.path}", query: "${ret.query}", fragment: "${ret.fragment}"}`);
  3551. }
  3552. if (ret.scheme && !_schemePattern.test(ret.scheme)) {
  3553. throw new Error("[UriError]: Scheme contains illegal characters.");
  3554. }
  3555. if (ret.path) {
  3556. if (ret.authority) {
  3557. if (!_singleSlashStart.test(ret.path)) {
  3558. throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character');
  3559. }
  3560. } else {
  3561. if (_doubleSlashStart.test(ret.path)) {
  3562. throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")');
  3563. }
  3564. }
  3565. }
  3566. }
  3567. function _schemeFix(scheme, _strict) {
  3568. if (!scheme && !_strict) {
  3569. return "file";
  3570. }
  3571. return scheme;
  3572. }
  3573. function _referenceResolution(scheme, path) {
  3574. switch (scheme) {
  3575. case "https":
  3576. case "http":
  3577. case "file":
  3578. if (!path) {
  3579. path = _slash;
  3580. } else if (path[0] !== _slash) {
  3581. path = _slash + path;
  3582. }
  3583. break;
  3584. }
  3585. return path;
  3586. }
  3587. var _empty = "";
  3588. var _slash = "/";
  3589. var _regexp = /^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;
  3590. var URI = class {
  3591. constructor(schemeOrData, authority, path, query, fragment, _strict = false) {
  3592. if (typeof schemeOrData === "object") {
  3593. this.scheme = schemeOrData.scheme || _empty;
  3594. this.authority = schemeOrData.authority || _empty;
  3595. this.path = schemeOrData.path || _empty;
  3596. this.query = schemeOrData.query || _empty;
  3597. this.fragment = schemeOrData.fragment || _empty;
  3598. } else {
  3599. this.scheme = _schemeFix(schemeOrData, _strict);
  3600. this.authority = authority || _empty;
  3601. this.path = _referenceResolution(this.scheme, path || _empty);
  3602. this.query = query || _empty;
  3603. this.fragment = fragment || _empty;
  3604. _validateUri(this, _strict);
  3605. }
  3606. }
  3607. static isUri(thing) {
  3608. if (thing instanceof URI) {
  3609. return true;
  3610. }
  3611. if (!thing) {
  3612. return false;
  3613. }
  3614. return typeof thing.authority === "string" && typeof thing.fragment === "string" && typeof thing.path === "string" && typeof thing.query === "string" && typeof thing.scheme === "string" && typeof thing.fsPath === "string" && typeof thing.with === "function" && typeof thing.toString === "function";
  3615. }
  3616. get fsPath() {
  3617. return uriToFsPath(this, false);
  3618. }
  3619. with(change) {
  3620. if (!change) {
  3621. return this;
  3622. }
  3623. let {scheme, authority, path, query, fragment} = change;
  3624. if (scheme === void 0) {
  3625. scheme = this.scheme;
  3626. } else if (scheme === null) {
  3627. scheme = _empty;
  3628. }
  3629. if (authority === void 0) {
  3630. authority = this.authority;
  3631. } else if (authority === null) {
  3632. authority = _empty;
  3633. }
  3634. if (path === void 0) {
  3635. path = this.path;
  3636. } else if (path === null) {
  3637. path = _empty;
  3638. }
  3639. if (query === void 0) {
  3640. query = this.query;
  3641. } else if (query === null) {
  3642. query = _empty;
  3643. }
  3644. if (fragment === void 0) {
  3645. fragment = this.fragment;
  3646. } else if (fragment === null) {
  3647. fragment = _empty;
  3648. }
  3649. if (scheme === this.scheme && authority === this.authority && path === this.path && query === this.query && fragment === this.fragment) {
  3650. return this;
  3651. }
  3652. return new Uri(scheme, authority, path, query, fragment);
  3653. }
  3654. static parse(value, _strict = false) {
  3655. const match = _regexp.exec(value);
  3656. if (!match) {
  3657. return new Uri(_empty, _empty, _empty, _empty, _empty);
  3658. }
  3659. return new Uri(match[2] || _empty, percentDecode(match[4] || _empty), percentDecode(match[5] || _empty), percentDecode(match[7] || _empty), percentDecode(match[9] || _empty), _strict);
  3660. }
  3661. static file(path) {
  3662. let authority = _empty;
  3663. if (isWindows) {
  3664. path = path.replace(/\\/g, _slash);
  3665. }
  3666. if (path[0] === _slash && path[1] === _slash) {
  3667. const idx = path.indexOf(_slash, 2);
  3668. if (idx === -1) {
  3669. authority = path.substring(2);
  3670. path = _slash;
  3671. } else {
  3672. authority = path.substring(2, idx);
  3673. path = path.substring(idx) || _slash;
  3674. }
  3675. }
  3676. return new Uri("file", authority, path, _empty, _empty);
  3677. }
  3678. static from(components) {
  3679. const result = new Uri(components.scheme, components.authority, components.path, components.query, components.fragment);
  3680. _validateUri(result, true);
  3681. return result;
  3682. }
  3683. static joinPath(uri, ...pathFragment) {
  3684. if (!uri.path) {
  3685. throw new Error(`[UriError]: cannot call joinPath on URI without path`);
  3686. }
  3687. let newPath;
  3688. if (isWindows && uri.scheme === "file") {
  3689. newPath = URI.file(win32.join(uriToFsPath(uri, true), ...pathFragment)).path;
  3690. } else {
  3691. newPath = posix.join(uri.path, ...pathFragment);
  3692. }
  3693. return uri.with({path: newPath});
  3694. }
  3695. toString(skipEncoding = false) {
  3696. return _asFormatted(this, skipEncoding);
  3697. }
  3698. toJSON() {
  3699. return this;
  3700. }
  3701. static revive(data) {
  3702. if (!data) {
  3703. return data;
  3704. } else if (data instanceof URI) {
  3705. return data;
  3706. } else {
  3707. const result = new Uri(data);
  3708. result._formatted = data.external;
  3709. result._fsPath = data._sep === _pathSepMarker ? data.fsPath : null;
  3710. return result;
  3711. }
  3712. }
  3713. };
  3714. var _pathSepMarker = isWindows ? 1 : void 0;
  3715. var Uri = class extends URI {
  3716. constructor() {
  3717. super(...arguments);
  3718. this._formatted = null;
  3719. this._fsPath = null;
  3720. }
  3721. get fsPath() {
  3722. if (!this._fsPath) {
  3723. this._fsPath = uriToFsPath(this, false);
  3724. }
  3725. return this._fsPath;
  3726. }
  3727. toString(skipEncoding = false) {
  3728. if (!skipEncoding) {
  3729. if (!this._formatted) {
  3730. this._formatted = _asFormatted(this, false);
  3731. }
  3732. return this._formatted;
  3733. } else {
  3734. return _asFormatted(this, true);
  3735. }
  3736. }
  3737. toJSON() {
  3738. const res = {
  3739. $mid: 1
  3740. };
  3741. if (this._fsPath) {
  3742. res.fsPath = this._fsPath;
  3743. res._sep = _pathSepMarker;
  3744. }
  3745. if (this._formatted) {
  3746. res.external = this._formatted;
  3747. }
  3748. if (this.path) {
  3749. res.path = this.path;
  3750. }
  3751. if (this.scheme) {
  3752. res.scheme = this.scheme;
  3753. }
  3754. if (this.authority) {
  3755. res.authority = this.authority;
  3756. }
  3757. if (this.query) {
  3758. res.query = this.query;
  3759. }
  3760. if (this.fragment) {
  3761. res.fragment = this.fragment;
  3762. }
  3763. return res;
  3764. }
  3765. };
  3766. var encodeTable = {
  3767. [58]: "%3A",
  3768. [47]: "%2F",
  3769. [63]: "%3F",
  3770. [35]: "%23",
  3771. [91]: "%5B",
  3772. [93]: "%5D",
  3773. [64]: "%40",
  3774. [33]: "%21",
  3775. [36]: "%24",
  3776. [38]: "%26",
  3777. [39]: "%27",
  3778. [40]: "%28",
  3779. [41]: "%29",
  3780. [42]: "%2A",
  3781. [43]: "%2B",
  3782. [44]: "%2C",
  3783. [59]: "%3B",
  3784. [61]: "%3D",
  3785. [32]: "%20"
  3786. };
  3787. function encodeURIComponentFast(uriComponent, allowSlash) {
  3788. let res = void 0;
  3789. let nativeEncodePos = -1;
  3790. for (let pos = 0; pos < uriComponent.length; pos++) {
  3791. const code = uriComponent.charCodeAt(pos);
  3792. if (code >= 97 && code <= 122 || code >= 65 && code <= 90 || code >= 48 && code <= 57 || code === 45 || code === 46 || code === 95 || code === 126 || allowSlash && code === 47) {
  3793. if (nativeEncodePos !== -1) {
  3794. res += encodeURIComponent(uriComponent.substring(nativeEncodePos, pos));
  3795. nativeEncodePos = -1;
  3796. }
  3797. if (res !== void 0) {
  3798. res += uriComponent.charAt(pos);
  3799. }
  3800. } else {
  3801. if (res === void 0) {
  3802. res = uriComponent.substr(0, pos);
  3803. }
  3804. const escaped = encodeTable[code];
  3805. if (escaped !== void 0) {
  3806. if (nativeEncodePos !== -1) {
  3807. res += encodeURIComponent(uriComponent.substring(nativeEncodePos, pos));
  3808. nativeEncodePos = -1;
  3809. }
  3810. res += escaped;
  3811. } else if (nativeEncodePos === -1) {
  3812. nativeEncodePos = pos;
  3813. }
  3814. }
  3815. }
  3816. if (nativeEncodePos !== -1) {
  3817. res += encodeURIComponent(uriComponent.substring(nativeEncodePos));
  3818. }
  3819. return res !== void 0 ? res : uriComponent;
  3820. }
  3821. function encodeURIComponentMinimal(path) {
  3822. let res = void 0;
  3823. for (let pos = 0; pos < path.length; pos++) {
  3824. const code = path.charCodeAt(pos);
  3825. if (code === 35 || code === 63) {
  3826. if (res === void 0) {
  3827. res = path.substr(0, pos);
  3828. }
  3829. res += encodeTable[code];
  3830. } else {
  3831. if (res !== void 0) {
  3832. res += path[pos];
  3833. }
  3834. }
  3835. }
  3836. return res !== void 0 ? res : path;
  3837. }
  3838. function uriToFsPath(uri, keepDriveLetterCasing) {
  3839. let value;
  3840. if (uri.authority && uri.path.length > 1 && uri.scheme === "file") {
  3841. value = `//${uri.authority}${uri.path}`;
  3842. } else if (uri.path.charCodeAt(0) === 47 && (uri.path.charCodeAt(1) >= 65 && uri.path.charCodeAt(1) <= 90 || uri.path.charCodeAt(1) >= 97 && uri.path.charCodeAt(1) <= 122) && uri.path.charCodeAt(2) === 58) {
  3843. if (!keepDriveLetterCasing) {
  3844. value = uri.path[1].toLowerCase() + uri.path.substr(2);
  3845. } else {
  3846. value = uri.path.substr(1);
  3847. }
  3848. } else {
  3849. value = uri.path;
  3850. }
  3851. if (isWindows) {
  3852. value = value.replace(/\//g, "\\");
  3853. }
  3854. return value;
  3855. }
  3856. function _asFormatted(uri, skipEncoding) {
  3857. const encoder = !skipEncoding ? encodeURIComponentFast : encodeURIComponentMinimal;
  3858. let res = "";
  3859. let {scheme, authority, path, query, fragment} = uri;
  3860. if (scheme) {
  3861. res += scheme;
  3862. res += ":";
  3863. }
  3864. if (authority || scheme === "file") {
  3865. res += _slash;
  3866. res += _slash;
  3867. }
  3868. if (authority) {
  3869. let idx = authority.indexOf("@");
  3870. if (idx !== -1) {
  3871. const userinfo = authority.substr(0, idx);
  3872. authority = authority.substr(idx + 1);
  3873. idx = userinfo.indexOf(":");
  3874. if (idx === -1) {
  3875. res += encoder(userinfo, false);
  3876. } else {
  3877. res += encoder(userinfo.substr(0, idx), false);
  3878. res += ":";
  3879. res += encoder(userinfo.substr(idx + 1), false);
  3880. }
  3881. res += "@";
  3882. }
  3883. authority = authority.toLowerCase();
  3884. idx = authority.indexOf(":");
  3885. if (idx === -1) {
  3886. res += encoder(authority, false);
  3887. } else {
  3888. res += encoder(authority.substr(0, idx), false);
  3889. res += authority.substr(idx);
  3890. }
  3891. }
  3892. if (path) {
  3893. if (path.length >= 3 && path.charCodeAt(0) === 47 && path.charCodeAt(2) === 58) {
  3894. const code = path.charCodeAt(1);
  3895. if (code >= 65 && code <= 90) {
  3896. path = `/${String.fromCharCode(code + 32)}:${path.substr(3)}`;
  3897. }
  3898. } else if (path.length >= 2 && path.charCodeAt(1) === 58) {
  3899. const code = path.charCodeAt(0);
  3900. if (code >= 65 && code <= 90) {
  3901. path = `${String.fromCharCode(code + 32)}:${path.substr(2)}`;
  3902. }
  3903. }
  3904. res += encoder(path, true);
  3905. }
  3906. if (query) {
  3907. res += "?";
  3908. res += encoder(query, false);
  3909. }
  3910. if (fragment) {
  3911. res += "#";
  3912. res += !skipEncoding ? encodeURIComponentFast(fragment, false) : fragment;
  3913. }
  3914. return res;
  3915. }
  3916. function decodeURIComponentGraceful(str) {
  3917. try {
  3918. return decodeURIComponent(str);
  3919. } catch (_a3) {
  3920. if (str.length > 3) {
  3921. return str.substr(0, 3) + decodeURIComponentGraceful(str.substr(3));
  3922. } else {
  3923. return str;
  3924. }
  3925. }
  3926. }
  3927. var _rEncodedAsHex = /(%[0-9A-Za-z][0-9A-Za-z])+/g;
  3928. function percentDecode(str) {
  3929. if (!str.match(_rEncodedAsHex)) {
  3930. return str;
  3931. }
  3932. return str.replace(_rEncodedAsHex, (match) => decodeURIComponentGraceful(match));
  3933. }
  3934. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/core/position.js
  3935. var Position = class {
  3936. constructor(lineNumber, column) {
  3937. this.lineNumber = lineNumber;
  3938. this.column = column;
  3939. }
  3940. with(newLineNumber = this.lineNumber, newColumn = this.column) {
  3941. if (newLineNumber === this.lineNumber && newColumn === this.column) {
  3942. return this;
  3943. } else {
  3944. return new Position(newLineNumber, newColumn);
  3945. }
  3946. }
  3947. delta(deltaLineNumber = 0, deltaColumn = 0) {
  3948. return this.with(this.lineNumber + deltaLineNumber, this.column + deltaColumn);
  3949. }
  3950. equals(other) {
  3951. return Position.equals(this, other);
  3952. }
  3953. static equals(a, b) {
  3954. if (!a && !b) {
  3955. return true;
  3956. }
  3957. return !!a && !!b && a.lineNumber === b.lineNumber && a.column === b.column;
  3958. }
  3959. isBefore(other) {
  3960. return Position.isBefore(this, other);
  3961. }
  3962. static isBefore(a, b) {
  3963. if (a.lineNumber < b.lineNumber) {
  3964. return true;
  3965. }
  3966. if (b.lineNumber < a.lineNumber) {
  3967. return false;
  3968. }
  3969. return a.column < b.column;
  3970. }
  3971. isBeforeOrEqual(other) {
  3972. return Position.isBeforeOrEqual(this, other);
  3973. }
  3974. static isBeforeOrEqual(a, b) {
  3975. if (a.lineNumber < b.lineNumber) {
  3976. return true;
  3977. }
  3978. if (b.lineNumber < a.lineNumber) {
  3979. return false;
  3980. }
  3981. return a.column <= b.column;
  3982. }
  3983. static compare(a, b) {
  3984. const aLineNumber = a.lineNumber | 0;
  3985. const bLineNumber = b.lineNumber | 0;
  3986. if (aLineNumber === bLineNumber) {
  3987. const aColumn = a.column | 0;
  3988. const bColumn = b.column | 0;
  3989. return aColumn - bColumn;
  3990. }
  3991. return aLineNumber - bLineNumber;
  3992. }
  3993. clone() {
  3994. return new Position(this.lineNumber, this.column);
  3995. }
  3996. toString() {
  3997. return "(" + this.lineNumber + "," + this.column + ")";
  3998. }
  3999. static lift(pos) {
  4000. return new Position(pos.lineNumber, pos.column);
  4001. }
  4002. static isIPosition(obj) {
  4003. return obj && typeof obj.lineNumber === "number" && typeof obj.column === "number";
  4004. }
  4005. };
  4006. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/core/range.js
  4007. var Range = class {
  4008. constructor(startLineNumber, startColumn, endLineNumber, endColumn) {
  4009. if (startLineNumber > endLineNumber || startLineNumber === endLineNumber && startColumn > endColumn) {
  4010. this.startLineNumber = endLineNumber;
  4011. this.startColumn = endColumn;
  4012. this.endLineNumber = startLineNumber;
  4013. this.endColumn = startColumn;
  4014. } else {
  4015. this.startLineNumber = startLineNumber;
  4016. this.startColumn = startColumn;
  4017. this.endLineNumber = endLineNumber;
  4018. this.endColumn = endColumn;
  4019. }
  4020. }
  4021. isEmpty() {
  4022. return Range.isEmpty(this);
  4023. }
  4024. static isEmpty(range) {
  4025. return range.startLineNumber === range.endLineNumber && range.startColumn === range.endColumn;
  4026. }
  4027. containsPosition(position) {
  4028. return Range.containsPosition(this, position);
  4029. }
  4030. static containsPosition(range, position) {
  4031. if (position.lineNumber < range.startLineNumber || position.lineNumber > range.endLineNumber) {
  4032. return false;
  4033. }
  4034. if (position.lineNumber === range.startLineNumber && position.column < range.startColumn) {
  4035. return false;
  4036. }
  4037. if (position.lineNumber === range.endLineNumber && position.column > range.endColumn) {
  4038. return false;
  4039. }
  4040. return true;
  4041. }
  4042. static strictContainsPosition(range, position) {
  4043. if (position.lineNumber < range.startLineNumber || position.lineNumber > range.endLineNumber) {
  4044. return false;
  4045. }
  4046. if (position.lineNumber === range.startLineNumber && position.column <= range.startColumn) {
  4047. return false;
  4048. }
  4049. if (position.lineNumber === range.endLineNumber && position.column >= range.endColumn) {
  4050. return false;
  4051. }
  4052. return true;
  4053. }
  4054. containsRange(range) {
  4055. return Range.containsRange(this, range);
  4056. }
  4057. static containsRange(range, otherRange) {
  4058. if (otherRange.startLineNumber < range.startLineNumber || otherRange.endLineNumber < range.startLineNumber) {
  4059. return false;
  4060. }
  4061. if (otherRange.startLineNumber > range.endLineNumber || otherRange.endLineNumber > range.endLineNumber) {
  4062. return false;
  4063. }
  4064. if (otherRange.startLineNumber === range.startLineNumber && otherRange.startColumn < range.startColumn) {
  4065. return false;
  4066. }
  4067. if (otherRange.endLineNumber === range.endLineNumber && otherRange.endColumn > range.endColumn) {
  4068. return false;
  4069. }
  4070. return true;
  4071. }
  4072. strictContainsRange(range) {
  4073. return Range.strictContainsRange(this, range);
  4074. }
  4075. static strictContainsRange(range, otherRange) {
  4076. if (otherRange.startLineNumber < range.startLineNumber || otherRange.endLineNumber < range.startLineNumber) {
  4077. return false;
  4078. }
  4079. if (otherRange.startLineNumber > range.endLineNumber || otherRange.endLineNumber > range.endLineNumber) {
  4080. return false;
  4081. }
  4082. if (otherRange.startLineNumber === range.startLineNumber && otherRange.startColumn <= range.startColumn) {
  4083. return false;
  4084. }
  4085. if (otherRange.endLineNumber === range.endLineNumber && otherRange.endColumn >= range.endColumn) {
  4086. return false;
  4087. }
  4088. return true;
  4089. }
  4090. plusRange(range) {
  4091. return Range.plusRange(this, range);
  4092. }
  4093. static plusRange(a, b) {
  4094. let startLineNumber;
  4095. let startColumn;
  4096. let endLineNumber;
  4097. let endColumn;
  4098. if (b.startLineNumber < a.startLineNumber) {
  4099. startLineNumber = b.startLineNumber;
  4100. startColumn = b.startColumn;
  4101. } else if (b.startLineNumber === a.startLineNumber) {
  4102. startLineNumber = b.startLineNumber;
  4103. startColumn = Math.min(b.startColumn, a.startColumn);
  4104. } else {
  4105. startLineNumber = a.startLineNumber;
  4106. startColumn = a.startColumn;
  4107. }
  4108. if (b.endLineNumber > a.endLineNumber) {
  4109. endLineNumber = b.endLineNumber;
  4110. endColumn = b.endColumn;
  4111. } else if (b.endLineNumber === a.endLineNumber) {
  4112. endLineNumber = b.endLineNumber;
  4113. endColumn = Math.max(b.endColumn, a.endColumn);
  4114. } else {
  4115. endLineNumber = a.endLineNumber;
  4116. endColumn = a.endColumn;
  4117. }
  4118. return new Range(startLineNumber, startColumn, endLineNumber, endColumn);
  4119. }
  4120. intersectRanges(range) {
  4121. return Range.intersectRanges(this, range);
  4122. }
  4123. static intersectRanges(a, b) {
  4124. let resultStartLineNumber = a.startLineNumber;
  4125. let resultStartColumn = a.startColumn;
  4126. let resultEndLineNumber = a.endLineNumber;
  4127. let resultEndColumn = a.endColumn;
  4128. let otherStartLineNumber = b.startLineNumber;
  4129. let otherStartColumn = b.startColumn;
  4130. let otherEndLineNumber = b.endLineNumber;
  4131. let otherEndColumn = b.endColumn;
  4132. if (resultStartLineNumber < otherStartLineNumber) {
  4133. resultStartLineNumber = otherStartLineNumber;
  4134. resultStartColumn = otherStartColumn;
  4135. } else if (resultStartLineNumber === otherStartLineNumber) {
  4136. resultStartColumn = Math.max(resultStartColumn, otherStartColumn);
  4137. }
  4138. if (resultEndLineNumber > otherEndLineNumber) {
  4139. resultEndLineNumber = otherEndLineNumber;
  4140. resultEndColumn = otherEndColumn;
  4141. } else if (resultEndLineNumber === otherEndLineNumber) {
  4142. resultEndColumn = Math.min(resultEndColumn, otherEndColumn);
  4143. }
  4144. if (resultStartLineNumber > resultEndLineNumber) {
  4145. return null;
  4146. }
  4147. if (resultStartLineNumber === resultEndLineNumber && resultStartColumn > resultEndColumn) {
  4148. return null;
  4149. }
  4150. return new Range(resultStartLineNumber, resultStartColumn, resultEndLineNumber, resultEndColumn);
  4151. }
  4152. equalsRange(other) {
  4153. return Range.equalsRange(this, other);
  4154. }
  4155. static equalsRange(a, b) {
  4156. return !!a && !!b && a.startLineNumber === b.startLineNumber && a.startColumn === b.startColumn && a.endLineNumber === b.endLineNumber && a.endColumn === b.endColumn;
  4157. }
  4158. getEndPosition() {
  4159. return Range.getEndPosition(this);
  4160. }
  4161. static getEndPosition(range) {
  4162. return new Position(range.endLineNumber, range.endColumn);
  4163. }
  4164. getStartPosition() {
  4165. return Range.getStartPosition(this);
  4166. }
  4167. static getStartPosition(range) {
  4168. return new Position(range.startLineNumber, range.startColumn);
  4169. }
  4170. toString() {
  4171. return "[" + this.startLineNumber + "," + this.startColumn + " -> " + this.endLineNumber + "," + this.endColumn + "]";
  4172. }
  4173. setEndPosition(endLineNumber, endColumn) {
  4174. return new Range(this.startLineNumber, this.startColumn, endLineNumber, endColumn);
  4175. }
  4176. setStartPosition(startLineNumber, startColumn) {
  4177. return new Range(startLineNumber, startColumn, this.endLineNumber, this.endColumn);
  4178. }
  4179. collapseToStart() {
  4180. return Range.collapseToStart(this);
  4181. }
  4182. static collapseToStart(range) {
  4183. return new Range(range.startLineNumber, range.startColumn, range.startLineNumber, range.startColumn);
  4184. }
  4185. static fromPositions(start, end = start) {
  4186. return new Range(start.lineNumber, start.column, end.lineNumber, end.column);
  4187. }
  4188. static lift(range) {
  4189. if (!range) {
  4190. return null;
  4191. }
  4192. return new Range(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn);
  4193. }
  4194. static isIRange(obj) {
  4195. return obj && typeof obj.startLineNumber === "number" && typeof obj.startColumn === "number" && typeof obj.endLineNumber === "number" && typeof obj.endColumn === "number";
  4196. }
  4197. static areIntersectingOrTouching(a, b) {
  4198. if (a.endLineNumber < b.startLineNumber || a.endLineNumber === b.startLineNumber && a.endColumn < b.startColumn) {
  4199. return false;
  4200. }
  4201. if (b.endLineNumber < a.startLineNumber || b.endLineNumber === a.startLineNumber && b.endColumn < a.startColumn) {
  4202. return false;
  4203. }
  4204. return true;
  4205. }
  4206. static areIntersecting(a, b) {
  4207. if (a.endLineNumber < b.startLineNumber || a.endLineNumber === b.startLineNumber && a.endColumn <= b.startColumn) {
  4208. return false;
  4209. }
  4210. if (b.endLineNumber < a.startLineNumber || b.endLineNumber === a.startLineNumber && b.endColumn <= a.startColumn) {
  4211. return false;
  4212. }
  4213. return true;
  4214. }
  4215. static compareRangesUsingStarts(a, b) {
  4216. if (a && b) {
  4217. const aStartLineNumber = a.startLineNumber | 0;
  4218. const bStartLineNumber = b.startLineNumber | 0;
  4219. if (aStartLineNumber === bStartLineNumber) {
  4220. const aStartColumn = a.startColumn | 0;
  4221. const bStartColumn = b.startColumn | 0;
  4222. if (aStartColumn === bStartColumn) {
  4223. const aEndLineNumber = a.endLineNumber | 0;
  4224. const bEndLineNumber = b.endLineNumber | 0;
  4225. if (aEndLineNumber === bEndLineNumber) {
  4226. const aEndColumn = a.endColumn | 0;
  4227. const bEndColumn = b.endColumn | 0;
  4228. return aEndColumn - bEndColumn;
  4229. }
  4230. return aEndLineNumber - bEndLineNumber;
  4231. }
  4232. return aStartColumn - bStartColumn;
  4233. }
  4234. return aStartLineNumber - bStartLineNumber;
  4235. }
  4236. const aExists = a ? 1 : 0;
  4237. const bExists = b ? 1 : 0;
  4238. return aExists - bExists;
  4239. }
  4240. static compareRangesUsingEnds(a, b) {
  4241. if (a.endLineNumber === b.endLineNumber) {
  4242. if (a.endColumn === b.endColumn) {
  4243. if (a.startLineNumber === b.startLineNumber) {
  4244. return a.startColumn - b.startColumn;
  4245. }
  4246. return a.startLineNumber - b.startLineNumber;
  4247. }
  4248. return a.endColumn - b.endColumn;
  4249. }
  4250. return a.endLineNumber - b.endLineNumber;
  4251. }
  4252. static spansMultipleLines(range) {
  4253. return range.endLineNumber > range.startLineNumber;
  4254. }
  4255. toJSON() {
  4256. return this;
  4257. }
  4258. };
  4259. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/diff/diffComputer.js
  4260. var MINIMUM_MATCHING_CHARACTER_LENGTH = 3;
  4261. function computeDiff(originalSequence, modifiedSequence, continueProcessingPredicate, pretty) {
  4262. const diffAlgo = new LcsDiff(originalSequence, modifiedSequence, continueProcessingPredicate);
  4263. return diffAlgo.ComputeDiff(pretty);
  4264. }
  4265. var LineSequence = class {
  4266. constructor(lines) {
  4267. const startColumns = [];
  4268. const endColumns = [];
  4269. for (let i = 0, length = lines.length; i < length; i++) {
  4270. startColumns[i] = getFirstNonBlankColumn(lines[i], 1);
  4271. endColumns[i] = getLastNonBlankColumn(lines[i], 1);
  4272. }
  4273. this.lines = lines;
  4274. this._startColumns = startColumns;
  4275. this._endColumns = endColumns;
  4276. }
  4277. getElements() {
  4278. const elements = [];
  4279. for (let i = 0, len = this.lines.length; i < len; i++) {
  4280. elements[i] = this.lines[i].substring(this._startColumns[i] - 1, this._endColumns[i] - 1);
  4281. }
  4282. return elements;
  4283. }
  4284. getStrictElement(index) {
  4285. return this.lines[index];
  4286. }
  4287. getStartLineNumber(i) {
  4288. return i + 1;
  4289. }
  4290. getEndLineNumber(i) {
  4291. return i + 1;
  4292. }
  4293. createCharSequence(shouldIgnoreTrimWhitespace, startIndex, endIndex) {
  4294. const charCodes = [];
  4295. const lineNumbers = [];
  4296. const columns = [];
  4297. let len = 0;
  4298. for (let index = startIndex; index <= endIndex; index++) {
  4299. const lineContent = this.lines[index];
  4300. const startColumn = shouldIgnoreTrimWhitespace ? this._startColumns[index] : 1;
  4301. const endColumn = shouldIgnoreTrimWhitespace ? this._endColumns[index] : lineContent.length + 1;
  4302. for (let col = startColumn; col < endColumn; col++) {
  4303. charCodes[len] = lineContent.charCodeAt(col - 1);
  4304. lineNumbers[len] = index + 1;
  4305. columns[len] = col;
  4306. len++;
  4307. }
  4308. }
  4309. return new CharSequence(charCodes, lineNumbers, columns);
  4310. }
  4311. };
  4312. var CharSequence = class {
  4313. constructor(charCodes, lineNumbers, columns) {
  4314. this._charCodes = charCodes;
  4315. this._lineNumbers = lineNumbers;
  4316. this._columns = columns;
  4317. }
  4318. getElements() {
  4319. return this._charCodes;
  4320. }
  4321. getStartLineNumber(i) {
  4322. return this._lineNumbers[i];
  4323. }
  4324. getStartColumn(i) {
  4325. return this._columns[i];
  4326. }
  4327. getEndLineNumber(i) {
  4328. return this._lineNumbers[i];
  4329. }
  4330. getEndColumn(i) {
  4331. return this._columns[i] + 1;
  4332. }
  4333. };
  4334. var CharChange = class {
  4335. constructor(originalStartLineNumber, originalStartColumn, originalEndLineNumber, originalEndColumn, modifiedStartLineNumber, modifiedStartColumn, modifiedEndLineNumber, modifiedEndColumn) {
  4336. this.originalStartLineNumber = originalStartLineNumber;
  4337. this.originalStartColumn = originalStartColumn;
  4338. this.originalEndLineNumber = originalEndLineNumber;
  4339. this.originalEndColumn = originalEndColumn;
  4340. this.modifiedStartLineNumber = modifiedStartLineNumber;
  4341. this.modifiedStartColumn = modifiedStartColumn;
  4342. this.modifiedEndLineNumber = modifiedEndLineNumber;
  4343. this.modifiedEndColumn = modifiedEndColumn;
  4344. }
  4345. static createFromDiffChange(diffChange, originalCharSequence, modifiedCharSequence) {
  4346. let originalStartLineNumber;
  4347. let originalStartColumn;
  4348. let originalEndLineNumber;
  4349. let originalEndColumn;
  4350. let modifiedStartLineNumber;
  4351. let modifiedStartColumn;
  4352. let modifiedEndLineNumber;
  4353. let modifiedEndColumn;
  4354. if (diffChange.originalLength === 0) {
  4355. originalStartLineNumber = 0;
  4356. originalStartColumn = 0;
  4357. originalEndLineNumber = 0;
  4358. originalEndColumn = 0;
  4359. } else {
  4360. originalStartLineNumber = originalCharSequence.getStartLineNumber(diffChange.originalStart);
  4361. originalStartColumn = originalCharSequence.getStartColumn(diffChange.originalStart);
  4362. originalEndLineNumber = originalCharSequence.getEndLineNumber(diffChange.originalStart + diffChange.originalLength - 1);
  4363. originalEndColumn = originalCharSequence.getEndColumn(diffChange.originalStart + diffChange.originalLength - 1);
  4364. }
  4365. if (diffChange.modifiedLength === 0) {
  4366. modifiedStartLineNumber = 0;
  4367. modifiedStartColumn = 0;
  4368. modifiedEndLineNumber = 0;
  4369. modifiedEndColumn = 0;
  4370. } else {
  4371. modifiedStartLineNumber = modifiedCharSequence.getStartLineNumber(diffChange.modifiedStart);
  4372. modifiedStartColumn = modifiedCharSequence.getStartColumn(diffChange.modifiedStart);
  4373. modifiedEndLineNumber = modifiedCharSequence.getEndLineNumber(diffChange.modifiedStart + diffChange.modifiedLength - 1);
  4374. modifiedEndColumn = modifiedCharSequence.getEndColumn(diffChange.modifiedStart + diffChange.modifiedLength - 1);
  4375. }
  4376. return new CharChange(originalStartLineNumber, originalStartColumn, originalEndLineNumber, originalEndColumn, modifiedStartLineNumber, modifiedStartColumn, modifiedEndLineNumber, modifiedEndColumn);
  4377. }
  4378. };
  4379. function postProcessCharChanges(rawChanges) {
  4380. if (rawChanges.length <= 1) {
  4381. return rawChanges;
  4382. }
  4383. const result = [rawChanges[0]];
  4384. let prevChange = result[0];
  4385. for (let i = 1, len = rawChanges.length; i < len; i++) {
  4386. const currChange = rawChanges[i];
  4387. const originalMatchingLength = currChange.originalStart - (prevChange.originalStart + prevChange.originalLength);
  4388. const modifiedMatchingLength = currChange.modifiedStart - (prevChange.modifiedStart + prevChange.modifiedLength);
  4389. const matchingLength = Math.min(originalMatchingLength, modifiedMatchingLength);
  4390. if (matchingLength < MINIMUM_MATCHING_CHARACTER_LENGTH) {
  4391. prevChange.originalLength = currChange.originalStart + currChange.originalLength - prevChange.originalStart;
  4392. prevChange.modifiedLength = currChange.modifiedStart + currChange.modifiedLength - prevChange.modifiedStart;
  4393. } else {
  4394. result.push(currChange);
  4395. prevChange = currChange;
  4396. }
  4397. }
  4398. return result;
  4399. }
  4400. var LineChange = class {
  4401. constructor(originalStartLineNumber, originalEndLineNumber, modifiedStartLineNumber, modifiedEndLineNumber, charChanges) {
  4402. this.originalStartLineNumber = originalStartLineNumber;
  4403. this.originalEndLineNumber = originalEndLineNumber;
  4404. this.modifiedStartLineNumber = modifiedStartLineNumber;
  4405. this.modifiedEndLineNumber = modifiedEndLineNumber;
  4406. this.charChanges = charChanges;
  4407. }
  4408. static createFromDiffResult(shouldIgnoreTrimWhitespace, diffChange, originalLineSequence, modifiedLineSequence, continueCharDiff, shouldComputeCharChanges, shouldPostProcessCharChanges) {
  4409. let originalStartLineNumber;
  4410. let originalEndLineNumber;
  4411. let modifiedStartLineNumber;
  4412. let modifiedEndLineNumber;
  4413. let charChanges = void 0;
  4414. if (diffChange.originalLength === 0) {
  4415. originalStartLineNumber = originalLineSequence.getStartLineNumber(diffChange.originalStart) - 1;
  4416. originalEndLineNumber = 0;
  4417. } else {
  4418. originalStartLineNumber = originalLineSequence.getStartLineNumber(diffChange.originalStart);
  4419. originalEndLineNumber = originalLineSequence.getEndLineNumber(diffChange.originalStart + diffChange.originalLength - 1);
  4420. }
  4421. if (diffChange.modifiedLength === 0) {
  4422. modifiedStartLineNumber = modifiedLineSequence.getStartLineNumber(diffChange.modifiedStart) - 1;
  4423. modifiedEndLineNumber = 0;
  4424. } else {
  4425. modifiedStartLineNumber = modifiedLineSequence.getStartLineNumber(diffChange.modifiedStart);
  4426. modifiedEndLineNumber = modifiedLineSequence.getEndLineNumber(diffChange.modifiedStart + diffChange.modifiedLength - 1);
  4427. }
  4428. if (shouldComputeCharChanges && diffChange.originalLength > 0 && diffChange.originalLength < 20 && diffChange.modifiedLength > 0 && diffChange.modifiedLength < 20 && continueCharDiff()) {
  4429. const originalCharSequence = originalLineSequence.createCharSequence(shouldIgnoreTrimWhitespace, diffChange.originalStart, diffChange.originalStart + diffChange.originalLength - 1);
  4430. const modifiedCharSequence = modifiedLineSequence.createCharSequence(shouldIgnoreTrimWhitespace, diffChange.modifiedStart, diffChange.modifiedStart + diffChange.modifiedLength - 1);
  4431. let rawChanges = computeDiff(originalCharSequence, modifiedCharSequence, continueCharDiff, true).changes;
  4432. if (shouldPostProcessCharChanges) {
  4433. rawChanges = postProcessCharChanges(rawChanges);
  4434. }
  4435. charChanges = [];
  4436. for (let i = 0, length = rawChanges.length; i < length; i++) {
  4437. charChanges.push(CharChange.createFromDiffChange(rawChanges[i], originalCharSequence, modifiedCharSequence));
  4438. }
  4439. }
  4440. return new LineChange(originalStartLineNumber, originalEndLineNumber, modifiedStartLineNumber, modifiedEndLineNumber, charChanges);
  4441. }
  4442. };
  4443. var DiffComputer = class {
  4444. constructor(originalLines, modifiedLines, opts) {
  4445. this.shouldComputeCharChanges = opts.shouldComputeCharChanges;
  4446. this.shouldPostProcessCharChanges = opts.shouldPostProcessCharChanges;
  4447. this.shouldIgnoreTrimWhitespace = opts.shouldIgnoreTrimWhitespace;
  4448. this.shouldMakePrettyDiff = opts.shouldMakePrettyDiff;
  4449. this.originalLines = originalLines;
  4450. this.modifiedLines = modifiedLines;
  4451. this.original = new LineSequence(originalLines);
  4452. this.modified = new LineSequence(modifiedLines);
  4453. this.continueLineDiff = createContinueProcessingPredicate(opts.maxComputationTime);
  4454. this.continueCharDiff = createContinueProcessingPredicate(opts.maxComputationTime === 0 ? 0 : Math.min(opts.maxComputationTime, 5e3));
  4455. }
  4456. computeDiff() {
  4457. if (this.original.lines.length === 1 && this.original.lines[0].length === 0) {
  4458. if (this.modified.lines.length === 1 && this.modified.lines[0].length === 0) {
  4459. return {
  4460. quitEarly: false,
  4461. changes: []
  4462. };
  4463. }
  4464. return {
  4465. quitEarly: false,
  4466. changes: [{
  4467. originalStartLineNumber: 1,
  4468. originalEndLineNumber: 1,
  4469. modifiedStartLineNumber: 1,
  4470. modifiedEndLineNumber: this.modified.lines.length,
  4471. charChanges: [{
  4472. modifiedEndColumn: 0,
  4473. modifiedEndLineNumber: 0,
  4474. modifiedStartColumn: 0,
  4475. modifiedStartLineNumber: 0,
  4476. originalEndColumn: 0,
  4477. originalEndLineNumber: 0,
  4478. originalStartColumn: 0,
  4479. originalStartLineNumber: 0
  4480. }]
  4481. }]
  4482. };
  4483. }
  4484. if (this.modified.lines.length === 1 && this.modified.lines[0].length === 0) {
  4485. return {
  4486. quitEarly: false,
  4487. changes: [{
  4488. originalStartLineNumber: 1,
  4489. originalEndLineNumber: this.original.lines.length,
  4490. modifiedStartLineNumber: 1,
  4491. modifiedEndLineNumber: 1,
  4492. charChanges: [{
  4493. modifiedEndColumn: 0,
  4494. modifiedEndLineNumber: 0,
  4495. modifiedStartColumn: 0,
  4496. modifiedStartLineNumber: 0,
  4497. originalEndColumn: 0,
  4498. originalEndLineNumber: 0,
  4499. originalStartColumn: 0,
  4500. originalStartLineNumber: 0
  4501. }]
  4502. }]
  4503. };
  4504. }
  4505. const diffResult = computeDiff(this.original, this.modified, this.continueLineDiff, this.shouldMakePrettyDiff);
  4506. const rawChanges = diffResult.changes;
  4507. const quitEarly = diffResult.quitEarly;
  4508. if (this.shouldIgnoreTrimWhitespace) {
  4509. const lineChanges = [];
  4510. for (let i = 0, length = rawChanges.length; i < length; i++) {
  4511. lineChanges.push(LineChange.createFromDiffResult(this.shouldIgnoreTrimWhitespace, rawChanges[i], this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges));
  4512. }
  4513. return {
  4514. quitEarly,
  4515. changes: lineChanges
  4516. };
  4517. }
  4518. const result = [];
  4519. let originalLineIndex = 0;
  4520. let modifiedLineIndex = 0;
  4521. for (let i = -1, len = rawChanges.length; i < len; i++) {
  4522. const nextChange = i + 1 < len ? rawChanges[i + 1] : null;
  4523. const originalStop = nextChange ? nextChange.originalStart : this.originalLines.length;
  4524. const modifiedStop = nextChange ? nextChange.modifiedStart : this.modifiedLines.length;
  4525. while (originalLineIndex < originalStop && modifiedLineIndex < modifiedStop) {
  4526. const originalLine = this.originalLines[originalLineIndex];
  4527. const modifiedLine = this.modifiedLines[modifiedLineIndex];
  4528. if (originalLine !== modifiedLine) {
  4529. {
  4530. let originalStartColumn = getFirstNonBlankColumn(originalLine, 1);
  4531. let modifiedStartColumn = getFirstNonBlankColumn(modifiedLine, 1);
  4532. while (originalStartColumn > 1 && modifiedStartColumn > 1) {
  4533. const originalChar = originalLine.charCodeAt(originalStartColumn - 2);
  4534. const modifiedChar = modifiedLine.charCodeAt(modifiedStartColumn - 2);
  4535. if (originalChar !== modifiedChar) {
  4536. break;
  4537. }
  4538. originalStartColumn--;
  4539. modifiedStartColumn--;
  4540. }
  4541. if (originalStartColumn > 1 || modifiedStartColumn > 1) {
  4542. this._pushTrimWhitespaceCharChange(result, originalLineIndex + 1, 1, originalStartColumn, modifiedLineIndex + 1, 1, modifiedStartColumn);
  4543. }
  4544. }
  4545. {
  4546. let originalEndColumn = getLastNonBlankColumn(originalLine, 1);
  4547. let modifiedEndColumn = getLastNonBlankColumn(modifiedLine, 1);
  4548. const originalMaxColumn = originalLine.length + 1;
  4549. const modifiedMaxColumn = modifiedLine.length + 1;
  4550. while (originalEndColumn < originalMaxColumn && modifiedEndColumn < modifiedMaxColumn) {
  4551. const originalChar = originalLine.charCodeAt(originalEndColumn - 1);
  4552. const modifiedChar = originalLine.charCodeAt(modifiedEndColumn - 1);
  4553. if (originalChar !== modifiedChar) {
  4554. break;
  4555. }
  4556. originalEndColumn++;
  4557. modifiedEndColumn++;
  4558. }
  4559. if (originalEndColumn < originalMaxColumn || modifiedEndColumn < modifiedMaxColumn) {
  4560. this._pushTrimWhitespaceCharChange(result, originalLineIndex + 1, originalEndColumn, originalMaxColumn, modifiedLineIndex + 1, modifiedEndColumn, modifiedMaxColumn);
  4561. }
  4562. }
  4563. }
  4564. originalLineIndex++;
  4565. modifiedLineIndex++;
  4566. }
  4567. if (nextChange) {
  4568. result.push(LineChange.createFromDiffResult(this.shouldIgnoreTrimWhitespace, nextChange, this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges));
  4569. originalLineIndex += nextChange.originalLength;
  4570. modifiedLineIndex += nextChange.modifiedLength;
  4571. }
  4572. }
  4573. return {
  4574. quitEarly,
  4575. changes: result
  4576. };
  4577. }
  4578. _pushTrimWhitespaceCharChange(result, originalLineNumber, originalStartColumn, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedEndColumn) {
  4579. if (this._mergeTrimWhitespaceCharChange(result, originalLineNumber, originalStartColumn, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedEndColumn)) {
  4580. return;
  4581. }
  4582. let charChanges = void 0;
  4583. if (this.shouldComputeCharChanges) {
  4584. charChanges = [new CharChange(originalLineNumber, originalStartColumn, originalLineNumber, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedLineNumber, modifiedEndColumn)];
  4585. }
  4586. result.push(new LineChange(originalLineNumber, originalLineNumber, modifiedLineNumber, modifiedLineNumber, charChanges));
  4587. }
  4588. _mergeTrimWhitespaceCharChange(result, originalLineNumber, originalStartColumn, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedEndColumn) {
  4589. const len = result.length;
  4590. if (len === 0) {
  4591. return false;
  4592. }
  4593. const prevChange = result[len - 1];
  4594. if (prevChange.originalEndLineNumber === 0 || prevChange.modifiedEndLineNumber === 0) {
  4595. return false;
  4596. }
  4597. if (prevChange.originalEndLineNumber + 1 === originalLineNumber && prevChange.modifiedEndLineNumber + 1 === modifiedLineNumber) {
  4598. prevChange.originalEndLineNumber = originalLineNumber;
  4599. prevChange.modifiedEndLineNumber = modifiedLineNumber;
  4600. if (this.shouldComputeCharChanges && prevChange.charChanges) {
  4601. prevChange.charChanges.push(new CharChange(originalLineNumber, originalStartColumn, originalLineNumber, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedLineNumber, modifiedEndColumn));
  4602. }
  4603. return true;
  4604. }
  4605. return false;
  4606. }
  4607. };
  4608. function getFirstNonBlankColumn(txt, defaultValue) {
  4609. const r = firstNonWhitespaceIndex(txt);
  4610. if (r === -1) {
  4611. return defaultValue;
  4612. }
  4613. return r + 1;
  4614. }
  4615. function getLastNonBlankColumn(txt, defaultValue) {
  4616. const r = lastNonWhitespaceIndex(txt);
  4617. if (r === -1) {
  4618. return defaultValue;
  4619. }
  4620. return r + 2;
  4621. }
  4622. function createContinueProcessingPredicate(maximumRuntime) {
  4623. if (maximumRuntime === 0) {
  4624. return () => true;
  4625. }
  4626. const startTime = Date.now();
  4627. return () => {
  4628. return Date.now() - startTime < maximumRuntime;
  4629. };
  4630. }
  4631. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/uint.js
  4632. function toUint8(v) {
  4633. if (v < 0) {
  4634. return 0;
  4635. }
  4636. if (v > 255) {
  4637. return 255;
  4638. }
  4639. return v | 0;
  4640. }
  4641. function toUint32(v) {
  4642. if (v < 0) {
  4643. return 0;
  4644. }
  4645. if (v > 4294967295) {
  4646. return 4294967295;
  4647. }
  4648. return v | 0;
  4649. }
  4650. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/model/prefixSumComputer.js
  4651. var PrefixSumComputer = class {
  4652. constructor(values) {
  4653. this.values = values;
  4654. this.prefixSum = new Uint32Array(values.length);
  4655. this.prefixSumValidIndex = new Int32Array(1);
  4656. this.prefixSumValidIndex[0] = -1;
  4657. }
  4658. insertValues(insertIndex, insertValues) {
  4659. insertIndex = toUint32(insertIndex);
  4660. const oldValues = this.values;
  4661. const oldPrefixSum = this.prefixSum;
  4662. const insertValuesLen = insertValues.length;
  4663. if (insertValuesLen === 0) {
  4664. return false;
  4665. }
  4666. this.values = new Uint32Array(oldValues.length + insertValuesLen);
  4667. this.values.set(oldValues.subarray(0, insertIndex), 0);
  4668. this.values.set(oldValues.subarray(insertIndex), insertIndex + insertValuesLen);
  4669. this.values.set(insertValues, insertIndex);
  4670. if (insertIndex - 1 < this.prefixSumValidIndex[0]) {
  4671. this.prefixSumValidIndex[0] = insertIndex - 1;
  4672. }
  4673. this.prefixSum = new Uint32Array(this.values.length);
  4674. if (this.prefixSumValidIndex[0] >= 0) {
  4675. this.prefixSum.set(oldPrefixSum.subarray(0, this.prefixSumValidIndex[0] + 1));
  4676. }
  4677. return true;
  4678. }
  4679. setValue(index, value) {
  4680. index = toUint32(index);
  4681. value = toUint32(value);
  4682. if (this.values[index] === value) {
  4683. return false;
  4684. }
  4685. this.values[index] = value;
  4686. if (index - 1 < this.prefixSumValidIndex[0]) {
  4687. this.prefixSumValidIndex[0] = index - 1;
  4688. }
  4689. return true;
  4690. }
  4691. removeValues(startIndex, count) {
  4692. startIndex = toUint32(startIndex);
  4693. count = toUint32(count);
  4694. const oldValues = this.values;
  4695. const oldPrefixSum = this.prefixSum;
  4696. if (startIndex >= oldValues.length) {
  4697. return false;
  4698. }
  4699. const maxCount = oldValues.length - startIndex;
  4700. if (count >= maxCount) {
  4701. count = maxCount;
  4702. }
  4703. if (count === 0) {
  4704. return false;
  4705. }
  4706. this.values = new Uint32Array(oldValues.length - count);
  4707. this.values.set(oldValues.subarray(0, startIndex), 0);
  4708. this.values.set(oldValues.subarray(startIndex + count), startIndex);
  4709. this.prefixSum = new Uint32Array(this.values.length);
  4710. if (startIndex - 1 < this.prefixSumValidIndex[0]) {
  4711. this.prefixSumValidIndex[0] = startIndex - 1;
  4712. }
  4713. if (this.prefixSumValidIndex[0] >= 0) {
  4714. this.prefixSum.set(oldPrefixSum.subarray(0, this.prefixSumValidIndex[0] + 1));
  4715. }
  4716. return true;
  4717. }
  4718. getTotalSum() {
  4719. if (this.values.length === 0) {
  4720. return 0;
  4721. }
  4722. return this._getPrefixSum(this.values.length - 1);
  4723. }
  4724. getPrefixSum(index) {
  4725. if (index < 0) {
  4726. return 0;
  4727. }
  4728. index = toUint32(index);
  4729. return this._getPrefixSum(index);
  4730. }
  4731. _getPrefixSum(index) {
  4732. if (index <= this.prefixSumValidIndex[0]) {
  4733. return this.prefixSum[index];
  4734. }
  4735. let startIndex = this.prefixSumValidIndex[0] + 1;
  4736. if (startIndex === 0) {
  4737. this.prefixSum[0] = this.values[0];
  4738. startIndex++;
  4739. }
  4740. if (index >= this.values.length) {
  4741. index = this.values.length - 1;
  4742. }
  4743. for (let i = startIndex; i <= index; i++) {
  4744. this.prefixSum[i] = this.prefixSum[i - 1] + this.values[i];
  4745. }
  4746. this.prefixSumValidIndex[0] = Math.max(this.prefixSumValidIndex[0], index);
  4747. return this.prefixSum[index];
  4748. }
  4749. getIndexOf(sum) {
  4750. sum = Math.floor(sum);
  4751. this.getTotalSum();
  4752. let low = 0;
  4753. let high = this.values.length - 1;
  4754. let mid = 0;
  4755. let midStop = 0;
  4756. let midStart = 0;
  4757. while (low <= high) {
  4758. mid = low + (high - low) / 2 | 0;
  4759. midStop = this.prefixSum[mid];
  4760. midStart = midStop - this.values[mid];
  4761. if (sum < midStart) {
  4762. high = mid - 1;
  4763. } else if (sum >= midStop) {
  4764. low = mid + 1;
  4765. } else {
  4766. break;
  4767. }
  4768. }
  4769. return new PrefixSumIndexOfResult(mid, sum - midStart);
  4770. }
  4771. };
  4772. var PrefixSumIndexOfResult = class {
  4773. constructor(index, remainder) {
  4774. this.index = index;
  4775. this.remainder = remainder;
  4776. this._prefixSumIndexOfResultBrand = void 0;
  4777. this.index = index;
  4778. this.remainder = remainder;
  4779. }
  4780. };
  4781. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/model/mirrorTextModel.js
  4782. var MirrorTextModel = class {
  4783. constructor(uri, lines, eol, versionId) {
  4784. this._uri = uri;
  4785. this._lines = lines;
  4786. this._eol = eol;
  4787. this._versionId = versionId;
  4788. this._lineStarts = null;
  4789. this._cachedTextValue = null;
  4790. }
  4791. dispose() {
  4792. this._lines.length = 0;
  4793. }
  4794. get version() {
  4795. return this._versionId;
  4796. }
  4797. getText() {
  4798. if (this._cachedTextValue === null) {
  4799. this._cachedTextValue = this._lines.join(this._eol);
  4800. }
  4801. return this._cachedTextValue;
  4802. }
  4803. onEvents(e) {
  4804. if (e.eol && e.eol !== this._eol) {
  4805. this._eol = e.eol;
  4806. this._lineStarts = null;
  4807. }
  4808. const changes = e.changes;
  4809. for (const change of changes) {
  4810. this._acceptDeleteRange(change.range);
  4811. this._acceptInsertText(new Position(change.range.startLineNumber, change.range.startColumn), change.text);
  4812. }
  4813. this._versionId = e.versionId;
  4814. this._cachedTextValue = null;
  4815. }
  4816. _ensureLineStarts() {
  4817. if (!this._lineStarts) {
  4818. const eolLength = this._eol.length;
  4819. const linesLength = this._lines.length;
  4820. const lineStartValues = new Uint32Array(linesLength);
  4821. for (let i = 0; i < linesLength; i++) {
  4822. lineStartValues[i] = this._lines[i].length + eolLength;
  4823. }
  4824. this._lineStarts = new PrefixSumComputer(lineStartValues);
  4825. }
  4826. }
  4827. _setLineText(lineIndex, newValue) {
  4828. this._lines[lineIndex] = newValue;
  4829. if (this._lineStarts) {
  4830. this._lineStarts.setValue(lineIndex, this._lines[lineIndex].length + this._eol.length);
  4831. }
  4832. }
  4833. _acceptDeleteRange(range) {
  4834. if (range.startLineNumber === range.endLineNumber) {
  4835. if (range.startColumn === range.endColumn) {
  4836. return;
  4837. }
  4838. this._setLineText(range.startLineNumber - 1, this._lines[range.startLineNumber - 1].substring(0, range.startColumn - 1) + this._lines[range.startLineNumber - 1].substring(range.endColumn - 1));
  4839. return;
  4840. }
  4841. this._setLineText(range.startLineNumber - 1, this._lines[range.startLineNumber - 1].substring(0, range.startColumn - 1) + this._lines[range.endLineNumber - 1].substring(range.endColumn - 1));
  4842. this._lines.splice(range.startLineNumber, range.endLineNumber - range.startLineNumber);
  4843. if (this._lineStarts) {
  4844. this._lineStarts.removeValues(range.startLineNumber, range.endLineNumber - range.startLineNumber);
  4845. }
  4846. }
  4847. _acceptInsertText(position, insertText) {
  4848. if (insertText.length === 0) {
  4849. return;
  4850. }
  4851. const insertLines = splitLines(insertText);
  4852. if (insertLines.length === 1) {
  4853. this._setLineText(position.lineNumber - 1, this._lines[position.lineNumber - 1].substring(0, position.column - 1) + insertLines[0] + this._lines[position.lineNumber - 1].substring(position.column - 1));
  4854. return;
  4855. }
  4856. insertLines[insertLines.length - 1] += this._lines[position.lineNumber - 1].substring(position.column - 1);
  4857. this._setLineText(position.lineNumber - 1, this._lines[position.lineNumber - 1].substring(0, position.column - 1) + insertLines[0]);
  4858. const newLengths = new Uint32Array(insertLines.length - 1);
  4859. for (let i = 1; i < insertLines.length; i++) {
  4860. this._lines.splice(position.lineNumber + i - 1, 0, insertLines[i]);
  4861. newLengths[i - 1] = insertLines[i].length + this._eol.length;
  4862. }
  4863. if (this._lineStarts) {
  4864. this._lineStarts.insertValues(position.lineNumber, newLengths);
  4865. }
  4866. }
  4867. };
  4868. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js
  4869. var USUAL_WORD_SEPARATORS = "`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";
  4870. function createWordRegExp(allowInWords = "") {
  4871. let source = "(-?\\d*\\.\\d\\w*)|([^";
  4872. for (const sep2 of USUAL_WORD_SEPARATORS) {
  4873. if (allowInWords.indexOf(sep2) >= 0) {
  4874. continue;
  4875. }
  4876. source += "\\" + sep2;
  4877. }
  4878. source += "\\s]+)";
  4879. return new RegExp(source, "g");
  4880. }
  4881. var DEFAULT_WORD_REGEXP = createWordRegExp();
  4882. function ensureValidWordDefinition(wordDefinition) {
  4883. let result = DEFAULT_WORD_REGEXP;
  4884. if (wordDefinition && wordDefinition instanceof RegExp) {
  4885. if (!wordDefinition.global) {
  4886. let flags = "g";
  4887. if (wordDefinition.ignoreCase) {
  4888. flags += "i";
  4889. }
  4890. if (wordDefinition.multiline) {
  4891. flags += "m";
  4892. }
  4893. if (wordDefinition.unicode) {
  4894. flags += "u";
  4895. }
  4896. result = new RegExp(wordDefinition.source, flags);
  4897. } else {
  4898. result = wordDefinition;
  4899. }
  4900. }
  4901. result.lastIndex = 0;
  4902. return result;
  4903. }
  4904. var _defaultConfig = {
  4905. maxLen: 1e3,
  4906. windowSize: 15,
  4907. timeBudget: 150
  4908. };
  4909. function getWordAtText(column, wordDefinition, text, textOffset, config = _defaultConfig) {
  4910. if (text.length > config.maxLen) {
  4911. let start = column - config.maxLen / 2;
  4912. if (start < 0) {
  4913. start = 0;
  4914. } else {
  4915. textOffset += start;
  4916. }
  4917. text = text.substring(start, column + config.maxLen / 2);
  4918. return getWordAtText(column, wordDefinition, text, textOffset, config);
  4919. }
  4920. const t1 = Date.now();
  4921. const pos = column - 1 - textOffset;
  4922. let prevRegexIndex = -1;
  4923. let match = null;
  4924. for (let i = 1; ; i++) {
  4925. if (Date.now() - t1 >= config.timeBudget) {
  4926. break;
  4927. }
  4928. const regexIndex = pos - config.windowSize * i;
  4929. wordDefinition.lastIndex = Math.max(0, regexIndex);
  4930. const thisMatch = _findRegexMatchEnclosingPosition(wordDefinition, text, pos, prevRegexIndex);
  4931. if (!thisMatch && match) {
  4932. break;
  4933. }
  4934. match = thisMatch;
  4935. if (regexIndex <= 0) {
  4936. break;
  4937. }
  4938. prevRegexIndex = regexIndex;
  4939. }
  4940. if (match) {
  4941. const result = {
  4942. word: match[0],
  4943. startColumn: textOffset + 1 + match.index,
  4944. endColumn: textOffset + 1 + match.index + match[0].length
  4945. };
  4946. wordDefinition.lastIndex = 0;
  4947. return result;
  4948. }
  4949. return null;
  4950. }
  4951. function _findRegexMatchEnclosingPosition(wordDefinition, text, pos, stopPos) {
  4952. let match;
  4953. while (match = wordDefinition.exec(text)) {
  4954. const matchIndex = match.index || 0;
  4955. if (matchIndex <= pos && wordDefinition.lastIndex >= pos) {
  4956. return match;
  4957. } else if (stopPos > 0 && matchIndex > stopPos) {
  4958. return null;
  4959. }
  4960. }
  4961. return null;
  4962. }
  4963. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js
  4964. var CharacterClassifier = class {
  4965. constructor(_defaultValue) {
  4966. const defaultValue = toUint8(_defaultValue);
  4967. this._defaultValue = defaultValue;
  4968. this._asciiMap = CharacterClassifier._createAsciiMap(defaultValue);
  4969. this._map = new Map();
  4970. }
  4971. static _createAsciiMap(defaultValue) {
  4972. const asciiMap = new Uint8Array(256);
  4973. for (let i = 0; i < 256; i++) {
  4974. asciiMap[i] = defaultValue;
  4975. }
  4976. return asciiMap;
  4977. }
  4978. set(charCode, _value) {
  4979. const value = toUint8(_value);
  4980. if (charCode >= 0 && charCode < 256) {
  4981. this._asciiMap[charCode] = value;
  4982. } else {
  4983. this._map.set(charCode, value);
  4984. }
  4985. }
  4986. get(charCode) {
  4987. if (charCode >= 0 && charCode < 256) {
  4988. return this._asciiMap[charCode];
  4989. } else {
  4990. return this._map.get(charCode) || this._defaultValue;
  4991. }
  4992. }
  4993. };
  4994. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/languages/linkComputer.js
  4995. var Uint8Matrix = class {
  4996. constructor(rows, cols, defaultValue) {
  4997. const data = new Uint8Array(rows * cols);
  4998. for (let i = 0, len = rows * cols; i < len; i++) {
  4999. data[i] = defaultValue;
  5000. }
  5001. this._data = data;
  5002. this.rows = rows;
  5003. this.cols = cols;
  5004. }
  5005. get(row, col) {
  5006. return this._data[row * this.cols + col];
  5007. }
  5008. set(row, col, value) {
  5009. this._data[row * this.cols + col] = value;
  5010. }
  5011. };
  5012. var StateMachine = class {
  5013. constructor(edges) {
  5014. let maxCharCode = 0;
  5015. let maxState = 0;
  5016. for (let i = 0, len = edges.length; i < len; i++) {
  5017. const [from, chCode, to] = edges[i];
  5018. if (chCode > maxCharCode) {
  5019. maxCharCode = chCode;
  5020. }
  5021. if (from > maxState) {
  5022. maxState = from;
  5023. }
  5024. if (to > maxState) {
  5025. maxState = to;
  5026. }
  5027. }
  5028. maxCharCode++;
  5029. maxState++;
  5030. const states = new Uint8Matrix(maxState, maxCharCode, 0);
  5031. for (let i = 0, len = edges.length; i < len; i++) {
  5032. const [from, chCode, to] = edges[i];
  5033. states.set(from, chCode, to);
  5034. }
  5035. this._states = states;
  5036. this._maxCharCode = maxCharCode;
  5037. }
  5038. nextState(currentState, chCode) {
  5039. if (chCode < 0 || chCode >= this._maxCharCode) {
  5040. return 0;
  5041. }
  5042. return this._states.get(currentState, chCode);
  5043. }
  5044. };
  5045. var _stateMachine = null;
  5046. function getStateMachine() {
  5047. if (_stateMachine === null) {
  5048. _stateMachine = new StateMachine([
  5049. [1, 104, 2],
  5050. [1, 72, 2],
  5051. [1, 102, 6],
  5052. [1, 70, 6],
  5053. [2, 116, 3],
  5054. [2, 84, 3],
  5055. [3, 116, 4],
  5056. [3, 84, 4],
  5057. [4, 112, 5],
  5058. [4, 80, 5],
  5059. [5, 115, 9],
  5060. [5, 83, 9],
  5061. [5, 58, 10],
  5062. [6, 105, 7],
  5063. [6, 73, 7],
  5064. [7, 108, 8],
  5065. [7, 76, 8],
  5066. [8, 101, 9],
  5067. [8, 69, 9],
  5068. [9, 58, 10],
  5069. [10, 47, 11],
  5070. [11, 47, 12]
  5071. ]);
  5072. }
  5073. return _stateMachine;
  5074. }
  5075. var _classifier = null;
  5076. function getClassifier() {
  5077. if (_classifier === null) {
  5078. _classifier = new CharacterClassifier(0);
  5079. const FORCE_TERMINATION_CHARACTERS = ` <>'"\u3001\u3002\uFF61\uFF64\uFF0C\uFF0E\uFF1A\uFF1B\u2018\u3008\u300C\u300E\u3014\uFF08\uFF3B\uFF5B\uFF62\uFF63\uFF5D\uFF3D\uFF09\u3015\u300F\u300D\u3009\u2019\uFF40\uFF5E\u2026`;
  5080. for (let i = 0; i < FORCE_TERMINATION_CHARACTERS.length; i++) {
  5081. _classifier.set(FORCE_TERMINATION_CHARACTERS.charCodeAt(i), 1);
  5082. }
  5083. const CANNOT_END_WITH_CHARACTERS = ".,;";
  5084. for (let i = 0; i < CANNOT_END_WITH_CHARACTERS.length; i++) {
  5085. _classifier.set(CANNOT_END_WITH_CHARACTERS.charCodeAt(i), 2);
  5086. }
  5087. }
  5088. return _classifier;
  5089. }
  5090. var LinkComputer = class {
  5091. static _createLink(classifier, line, lineNumber, linkBeginIndex, linkEndIndex) {
  5092. let lastIncludedCharIndex = linkEndIndex - 1;
  5093. do {
  5094. const chCode = line.charCodeAt(lastIncludedCharIndex);
  5095. const chClass = classifier.get(chCode);
  5096. if (chClass !== 2) {
  5097. break;
  5098. }
  5099. lastIncludedCharIndex--;
  5100. } while (lastIncludedCharIndex > linkBeginIndex);
  5101. if (linkBeginIndex > 0) {
  5102. const charCodeBeforeLink = line.charCodeAt(linkBeginIndex - 1);
  5103. const lastCharCodeInLink = line.charCodeAt(lastIncludedCharIndex);
  5104. if (charCodeBeforeLink === 40 && lastCharCodeInLink === 41 || charCodeBeforeLink === 91 && lastCharCodeInLink === 93 || charCodeBeforeLink === 123 && lastCharCodeInLink === 125) {
  5105. lastIncludedCharIndex--;
  5106. }
  5107. }
  5108. return {
  5109. range: {
  5110. startLineNumber: lineNumber,
  5111. startColumn: linkBeginIndex + 1,
  5112. endLineNumber: lineNumber,
  5113. endColumn: lastIncludedCharIndex + 2
  5114. },
  5115. url: line.substring(linkBeginIndex, lastIncludedCharIndex + 1)
  5116. };
  5117. }
  5118. static computeLinks(model, stateMachine = getStateMachine()) {
  5119. const classifier = getClassifier();
  5120. const result = [];
  5121. for (let i = 1, lineCount = model.getLineCount(); i <= lineCount; i++) {
  5122. const line = model.getLineContent(i);
  5123. const len = line.length;
  5124. let j = 0;
  5125. let linkBeginIndex = 0;
  5126. let linkBeginChCode = 0;
  5127. let state = 1;
  5128. let hasOpenParens = false;
  5129. let hasOpenSquareBracket = false;
  5130. let inSquareBrackets = false;
  5131. let hasOpenCurlyBracket = false;
  5132. while (j < len) {
  5133. let resetStateMachine = false;
  5134. const chCode = line.charCodeAt(j);
  5135. if (state === 13) {
  5136. let chClass;
  5137. switch (chCode) {
  5138. case 40:
  5139. hasOpenParens = true;
  5140. chClass = 0;
  5141. break;
  5142. case 41:
  5143. chClass = hasOpenParens ? 0 : 1;
  5144. break;
  5145. case 91:
  5146. inSquareBrackets = true;
  5147. hasOpenSquareBracket = true;
  5148. chClass = 0;
  5149. break;
  5150. case 93:
  5151. inSquareBrackets = false;
  5152. chClass = hasOpenSquareBracket ? 0 : 1;
  5153. break;
  5154. case 123:
  5155. hasOpenCurlyBracket = true;
  5156. chClass = 0;
  5157. break;
  5158. case 125:
  5159. chClass = hasOpenCurlyBracket ? 0 : 1;
  5160. break;
  5161. case 39:
  5162. chClass = linkBeginChCode === 34 || linkBeginChCode === 96 ? 0 : 1;
  5163. break;
  5164. case 34:
  5165. chClass = linkBeginChCode === 39 || linkBeginChCode === 96 ? 0 : 1;
  5166. break;
  5167. case 96:
  5168. chClass = linkBeginChCode === 39 || linkBeginChCode === 34 ? 0 : 1;
  5169. break;
  5170. case 42:
  5171. chClass = linkBeginChCode === 42 ? 1 : 0;
  5172. break;
  5173. case 124:
  5174. chClass = linkBeginChCode === 124 ? 1 : 0;
  5175. break;
  5176. case 32:
  5177. chClass = inSquareBrackets ? 0 : 1;
  5178. break;
  5179. default:
  5180. chClass = classifier.get(chCode);
  5181. }
  5182. if (chClass === 1) {
  5183. result.push(LinkComputer._createLink(classifier, line, i, linkBeginIndex, j));
  5184. resetStateMachine = true;
  5185. }
  5186. } else if (state === 12) {
  5187. let chClass;
  5188. if (chCode === 91) {
  5189. hasOpenSquareBracket = true;
  5190. chClass = 0;
  5191. } else {
  5192. chClass = classifier.get(chCode);
  5193. }
  5194. if (chClass === 1) {
  5195. resetStateMachine = true;
  5196. } else {
  5197. state = 13;
  5198. }
  5199. } else {
  5200. state = stateMachine.nextState(state, chCode);
  5201. if (state === 0) {
  5202. resetStateMachine = true;
  5203. }
  5204. }
  5205. if (resetStateMachine) {
  5206. state = 1;
  5207. hasOpenParens = false;
  5208. hasOpenSquareBracket = false;
  5209. hasOpenCurlyBracket = false;
  5210. linkBeginIndex = j + 1;
  5211. linkBeginChCode = chCode;
  5212. }
  5213. j++;
  5214. }
  5215. if (state === 13) {
  5216. result.push(LinkComputer._createLink(classifier, line, i, linkBeginIndex, len));
  5217. }
  5218. }
  5219. return result;
  5220. }
  5221. };
  5222. function computeLinks(model) {
  5223. if (!model || typeof model.getLineCount !== "function" || typeof model.getLineContent !== "function") {
  5224. return [];
  5225. }
  5226. return LinkComputer.computeLinks(model);
  5227. }
  5228. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/languages/supports/inplaceReplaceSupport.js
  5229. var BasicInplaceReplace = class {
  5230. constructor() {
  5231. this._defaultValueSet = [
  5232. ["true", "false"],
  5233. ["True", "False"],
  5234. ["Private", "Public", "Friend", "ReadOnly", "Partial", "Protected", "WriteOnly"],
  5235. ["public", "protected", "private"]
  5236. ];
  5237. }
  5238. navigateValueSet(range1, text1, range2, text2, up) {
  5239. if (range1 && text1) {
  5240. const result = this.doNavigateValueSet(text1, up);
  5241. if (result) {
  5242. return {
  5243. range: range1,
  5244. value: result
  5245. };
  5246. }
  5247. }
  5248. if (range2 && text2) {
  5249. const result = this.doNavigateValueSet(text2, up);
  5250. if (result) {
  5251. return {
  5252. range: range2,
  5253. value: result
  5254. };
  5255. }
  5256. }
  5257. return null;
  5258. }
  5259. doNavigateValueSet(text, up) {
  5260. const numberResult = this.numberReplace(text, up);
  5261. if (numberResult !== null) {
  5262. return numberResult;
  5263. }
  5264. return this.textReplace(text, up);
  5265. }
  5266. numberReplace(value, up) {
  5267. const precision = Math.pow(10, value.length - (value.lastIndexOf(".") + 1));
  5268. let n1 = Number(value);
  5269. let n2 = parseFloat(value);
  5270. if (!isNaN(n1) && !isNaN(n2) && n1 === n2) {
  5271. if (n1 === 0 && !up) {
  5272. return null;
  5273. } else {
  5274. n1 = Math.floor(n1 * precision);
  5275. n1 += up ? precision : -precision;
  5276. return String(n1 / precision);
  5277. }
  5278. }
  5279. return null;
  5280. }
  5281. textReplace(value, up) {
  5282. return this.valueSetsReplace(this._defaultValueSet, value, up);
  5283. }
  5284. valueSetsReplace(valueSets, value, up) {
  5285. let result = null;
  5286. for (let i = 0, len = valueSets.length; result === null && i < len; i++) {
  5287. result = this.valueSetReplace(valueSets[i], value, up);
  5288. }
  5289. return result;
  5290. }
  5291. valueSetReplace(valueSet, value, up) {
  5292. let idx = valueSet.indexOf(value);
  5293. if (idx >= 0) {
  5294. idx += up ? 1 : -1;
  5295. if (idx < 0) {
  5296. idx = valueSet.length - 1;
  5297. } else {
  5298. idx %= valueSet.length;
  5299. }
  5300. return valueSet[idx];
  5301. }
  5302. return null;
  5303. }
  5304. };
  5305. BasicInplaceReplace.INSTANCE = new BasicInplaceReplace();
  5306. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/cancellation.js
  5307. var shortcutEvent = Object.freeze(function(callback, context) {
  5308. const handle = setTimeout(callback.bind(context), 0);
  5309. return {dispose() {
  5310. clearTimeout(handle);
  5311. }};
  5312. });
  5313. var CancellationToken;
  5314. (function(CancellationToken2) {
  5315. function isCancellationToken(thing) {
  5316. if (thing === CancellationToken2.None || thing === CancellationToken2.Cancelled) {
  5317. return true;
  5318. }
  5319. if (thing instanceof MutableToken) {
  5320. return true;
  5321. }
  5322. if (!thing || typeof thing !== "object") {
  5323. return false;
  5324. }
  5325. return typeof thing.isCancellationRequested === "boolean" && typeof thing.onCancellationRequested === "function";
  5326. }
  5327. CancellationToken2.isCancellationToken = isCancellationToken;
  5328. CancellationToken2.None = Object.freeze({
  5329. isCancellationRequested: false,
  5330. onCancellationRequested: Event.None
  5331. });
  5332. CancellationToken2.Cancelled = Object.freeze({
  5333. isCancellationRequested: true,
  5334. onCancellationRequested: shortcutEvent
  5335. });
  5336. })(CancellationToken || (CancellationToken = {}));
  5337. var MutableToken = class {
  5338. constructor() {
  5339. this._isCancelled = false;
  5340. this._emitter = null;
  5341. }
  5342. cancel() {
  5343. if (!this._isCancelled) {
  5344. this._isCancelled = true;
  5345. if (this._emitter) {
  5346. this._emitter.fire(void 0);
  5347. this.dispose();
  5348. }
  5349. }
  5350. }
  5351. get isCancellationRequested() {
  5352. return this._isCancelled;
  5353. }
  5354. get onCancellationRequested() {
  5355. if (this._isCancelled) {
  5356. return shortcutEvent;
  5357. }
  5358. if (!this._emitter) {
  5359. this._emitter = new Emitter();
  5360. }
  5361. return this._emitter.event;
  5362. }
  5363. dispose() {
  5364. if (this._emitter) {
  5365. this._emitter.dispose();
  5366. this._emitter = null;
  5367. }
  5368. }
  5369. };
  5370. var CancellationTokenSource = class {
  5371. constructor(parent) {
  5372. this._token = void 0;
  5373. this._parentListener = void 0;
  5374. this._parentListener = parent && parent.onCancellationRequested(this.cancel, this);
  5375. }
  5376. get token() {
  5377. if (!this._token) {
  5378. this._token = new MutableToken();
  5379. }
  5380. return this._token;
  5381. }
  5382. cancel() {
  5383. if (!this._token) {
  5384. this._token = CancellationToken.Cancelled;
  5385. } else if (this._token instanceof MutableToken) {
  5386. this._token.cancel();
  5387. }
  5388. }
  5389. dispose(cancel = false) {
  5390. if (cancel) {
  5391. this.cancel();
  5392. }
  5393. if (this._parentListener) {
  5394. this._parentListener.dispose();
  5395. }
  5396. if (!this._token) {
  5397. this._token = CancellationToken.None;
  5398. } else if (this._token instanceof MutableToken) {
  5399. this._token.dispose();
  5400. }
  5401. }
  5402. };
  5403. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/keyCodes.js
  5404. var KeyCodeStrMap = class {
  5405. constructor() {
  5406. this._keyCodeToStr = [];
  5407. this._strToKeyCode = Object.create(null);
  5408. }
  5409. define(keyCode, str) {
  5410. this._keyCodeToStr[keyCode] = str;
  5411. this._strToKeyCode[str.toLowerCase()] = keyCode;
  5412. }
  5413. keyCodeToStr(keyCode) {
  5414. return this._keyCodeToStr[keyCode];
  5415. }
  5416. strToKeyCode(str) {
  5417. return this._strToKeyCode[str.toLowerCase()] || 0;
  5418. }
  5419. };
  5420. var uiMap = new KeyCodeStrMap();
  5421. var userSettingsUSMap = new KeyCodeStrMap();
  5422. var userSettingsGeneralMap = new KeyCodeStrMap();
  5423. var EVENT_KEY_CODE_MAP = new Array(230);
  5424. var NATIVE_WINDOWS_KEY_CODE_TO_KEY_CODE = {};
  5425. var scanCodeIntToStr = [];
  5426. var scanCodeStrToInt = Object.create(null);
  5427. var scanCodeLowerCaseStrToInt = Object.create(null);
  5428. var IMMUTABLE_CODE_TO_KEY_CODE = [];
  5429. var IMMUTABLE_KEY_CODE_TO_CODE = [];
  5430. for (let i = 0; i <= 193; i++) {
  5431. IMMUTABLE_CODE_TO_KEY_CODE[i] = -1;
  5432. }
  5433. for (let i = 0; i <= 127; i++) {
  5434. IMMUTABLE_KEY_CODE_TO_CODE[i] = -1;
  5435. }
  5436. (function() {
  5437. const empty = "";
  5438. const mappings = [
  5439. [0, 1, 0, "None", 0, "unknown", 0, "VK_UNKNOWN", empty, empty],
  5440. [0, 1, 1, "Hyper", 0, empty, 0, empty, empty, empty],
  5441. [0, 1, 2, "Super", 0, empty, 0, empty, empty, empty],
  5442. [0, 1, 3, "Fn", 0, empty, 0, empty, empty, empty],
  5443. [0, 1, 4, "FnLock", 0, empty, 0, empty, empty, empty],
  5444. [0, 1, 5, "Suspend", 0, empty, 0, empty, empty, empty],
  5445. [0, 1, 6, "Resume", 0, empty, 0, empty, empty, empty],
  5446. [0, 1, 7, "Turbo", 0, empty, 0, empty, empty, empty],
  5447. [0, 1, 8, "Sleep", 0, empty, 0, "VK_SLEEP", empty, empty],
  5448. [0, 1, 9, "WakeUp", 0, empty, 0, empty, empty, empty],
  5449. [31, 0, 10, "KeyA", 31, "A", 65, "VK_A", empty, empty],
  5450. [32, 0, 11, "KeyB", 32, "B", 66, "VK_B", empty, empty],
  5451. [33, 0, 12, "KeyC", 33, "C", 67, "VK_C", empty, empty],
  5452. [34, 0, 13, "KeyD", 34, "D", 68, "VK_D", empty, empty],
  5453. [35, 0, 14, "KeyE", 35, "E", 69, "VK_E", empty, empty],
  5454. [36, 0, 15, "KeyF", 36, "F", 70, "VK_F", empty, empty],
  5455. [37, 0, 16, "KeyG", 37, "G", 71, "VK_G", empty, empty],
  5456. [38, 0, 17, "KeyH", 38, "H", 72, "VK_H", empty, empty],
  5457. [39, 0, 18, "KeyI", 39, "I", 73, "VK_I", empty, empty],
  5458. [40, 0, 19, "KeyJ", 40, "J", 74, "VK_J", empty, empty],
  5459. [41, 0, 20, "KeyK", 41, "K", 75, "VK_K", empty, empty],
  5460. [42, 0, 21, "KeyL", 42, "L", 76, "VK_L", empty, empty],
  5461. [43, 0, 22, "KeyM", 43, "M", 77, "VK_M", empty, empty],
  5462. [44, 0, 23, "KeyN", 44, "N", 78, "VK_N", empty, empty],
  5463. [45, 0, 24, "KeyO", 45, "O", 79, "VK_O", empty, empty],
  5464. [46, 0, 25, "KeyP", 46, "P", 80, "VK_P", empty, empty],
  5465. [47, 0, 26, "KeyQ", 47, "Q", 81, "VK_Q", empty, empty],
  5466. [48, 0, 27, "KeyR", 48, "R", 82, "VK_R", empty, empty],
  5467. [49, 0, 28, "KeyS", 49, "S", 83, "VK_S", empty, empty],
  5468. [50, 0, 29, "KeyT", 50, "T", 84, "VK_T", empty, empty],
  5469. [51, 0, 30, "KeyU", 51, "U", 85, "VK_U", empty, empty],
  5470. [52, 0, 31, "KeyV", 52, "V", 86, "VK_V", empty, empty],
  5471. [53, 0, 32, "KeyW", 53, "W", 87, "VK_W", empty, empty],
  5472. [54, 0, 33, "KeyX", 54, "X", 88, "VK_X", empty, empty],
  5473. [55, 0, 34, "KeyY", 55, "Y", 89, "VK_Y", empty, empty],
  5474. [56, 0, 35, "KeyZ", 56, "Z", 90, "VK_Z", empty, empty],
  5475. [22, 0, 36, "Digit1", 22, "1", 49, "VK_1", empty, empty],
  5476. [23, 0, 37, "Digit2", 23, "2", 50, "VK_2", empty, empty],
  5477. [24, 0, 38, "Digit3", 24, "3", 51, "VK_3", empty, empty],
  5478. [25, 0, 39, "Digit4", 25, "4", 52, "VK_4", empty, empty],
  5479. [26, 0, 40, "Digit5", 26, "5", 53, "VK_5", empty, empty],
  5480. [27, 0, 41, "Digit6", 27, "6", 54, "VK_6", empty, empty],
  5481. [28, 0, 42, "Digit7", 28, "7", 55, "VK_7", empty, empty],
  5482. [29, 0, 43, "Digit8", 29, "8", 56, "VK_8", empty, empty],
  5483. [30, 0, 44, "Digit9", 30, "9", 57, "VK_9", empty, empty],
  5484. [21, 0, 45, "Digit0", 21, "0", 48, "VK_0", empty, empty],
  5485. [3, 1, 46, "Enter", 3, "Enter", 13, "VK_RETURN", empty, empty],
  5486. [9, 1, 47, "Escape", 9, "Escape", 27, "VK_ESCAPE", empty, empty],
  5487. [1, 1, 48, "Backspace", 1, "Backspace", 8, "VK_BACK", empty, empty],
  5488. [2, 1, 49, "Tab", 2, "Tab", 9, "VK_TAB", empty, empty],
  5489. [10, 1, 50, "Space", 10, "Space", 32, "VK_SPACE", empty, empty],
  5490. [83, 0, 51, "Minus", 83, "-", 189, "VK_OEM_MINUS", "-", "OEM_MINUS"],
  5491. [81, 0, 52, "Equal", 81, "=", 187, "VK_OEM_PLUS", "=", "OEM_PLUS"],
  5492. [87, 0, 53, "BracketLeft", 87, "[", 219, "VK_OEM_4", "[", "OEM_4"],
  5493. [89, 0, 54, "BracketRight", 89, "]", 221, "VK_OEM_6", "]", "OEM_6"],
  5494. [88, 0, 55, "Backslash", 88, "\\", 220, "VK_OEM_5", "\\", "OEM_5"],
  5495. [0, 0, 56, "IntlHash", 0, empty, 0, empty, empty, empty],
  5496. [80, 0, 57, "Semicolon", 80, ";", 186, "VK_OEM_1", ";", "OEM_1"],
  5497. [90, 0, 58, "Quote", 90, "'", 222, "VK_OEM_7", "'", "OEM_7"],
  5498. [86, 0, 59, "Backquote", 86, "`", 192, "VK_OEM_3", "`", "OEM_3"],
  5499. [82, 0, 60, "Comma", 82, ",", 188, "VK_OEM_COMMA", ",", "OEM_COMMA"],
  5500. [84, 0, 61, "Period", 84, ".", 190, "VK_OEM_PERIOD", ".", "OEM_PERIOD"],
  5501. [85, 0, 62, "Slash", 85, "/", 191, "VK_OEM_2", "/", "OEM_2"],
  5502. [8, 1, 63, "CapsLock", 8, "CapsLock", 20, "VK_CAPITAL", empty, empty],
  5503. [59, 1, 64, "F1", 59, "F1", 112, "VK_F1", empty, empty],
  5504. [60, 1, 65, "F2", 60, "F2", 113, "VK_F2", empty, empty],
  5505. [61, 1, 66, "F3", 61, "F3", 114, "VK_F3", empty, empty],
  5506. [62, 1, 67, "F4", 62, "F4", 115, "VK_F4", empty, empty],
  5507. [63, 1, 68, "F5", 63, "F5", 116, "VK_F5", empty, empty],
  5508. [64, 1, 69, "F6", 64, "F6", 117, "VK_F6", empty, empty],
  5509. [65, 1, 70, "F7", 65, "F7", 118, "VK_F7", empty, empty],
  5510. [66, 1, 71, "F8", 66, "F8", 119, "VK_F8", empty, empty],
  5511. [67, 1, 72, "F9", 67, "F9", 120, "VK_F9", empty, empty],
  5512. [68, 1, 73, "F10", 68, "F10", 121, "VK_F10", empty, empty],
  5513. [69, 1, 74, "F11", 69, "F11", 122, "VK_F11", empty, empty],
  5514. [70, 1, 75, "F12", 70, "F12", 123, "VK_F12", empty, empty],
  5515. [0, 1, 76, "PrintScreen", 0, empty, 0, empty, empty, empty],
  5516. [79, 1, 77, "ScrollLock", 79, "ScrollLock", 145, "VK_SCROLL", empty, empty],
  5517. [7, 1, 78, "Pause", 7, "PauseBreak", 19, "VK_PAUSE", empty, empty],
  5518. [19, 1, 79, "Insert", 19, "Insert", 45, "VK_INSERT", empty, empty],
  5519. [14, 1, 80, "Home", 14, "Home", 36, "VK_HOME", empty, empty],
  5520. [11, 1, 81, "PageUp", 11, "PageUp", 33, "VK_PRIOR", empty, empty],
  5521. [20, 1, 82, "Delete", 20, "Delete", 46, "VK_DELETE", empty, empty],
  5522. [13, 1, 83, "End", 13, "End", 35, "VK_END", empty, empty],
  5523. [12, 1, 84, "PageDown", 12, "PageDown", 34, "VK_NEXT", empty, empty],
  5524. [17, 1, 85, "ArrowRight", 17, "RightArrow", 39, "VK_RIGHT", "Right", empty],
  5525. [15, 1, 86, "ArrowLeft", 15, "LeftArrow", 37, "VK_LEFT", "Left", empty],
  5526. [18, 1, 87, "ArrowDown", 18, "DownArrow", 40, "VK_DOWN", "Down", empty],
  5527. [16, 1, 88, "ArrowUp", 16, "UpArrow", 38, "VK_UP", "Up", empty],
  5528. [78, 1, 89, "NumLock", 78, "NumLock", 144, "VK_NUMLOCK", empty, empty],
  5529. [108, 1, 90, "NumpadDivide", 108, "NumPad_Divide", 111, "VK_DIVIDE", empty, empty],
  5530. [103, 1, 91, "NumpadMultiply", 103, "NumPad_Multiply", 106, "VK_MULTIPLY", empty, empty],
  5531. [106, 1, 92, "NumpadSubtract", 106, "NumPad_Subtract", 109, "VK_SUBTRACT", empty, empty],
  5532. [104, 1, 93, "NumpadAdd", 104, "NumPad_Add", 107, "VK_ADD", empty, empty],
  5533. [3, 1, 94, "NumpadEnter", 3, empty, 0, empty, empty, empty],
  5534. [94, 1, 95, "Numpad1", 94, "NumPad1", 97, "VK_NUMPAD1", empty, empty],
  5535. [95, 1, 96, "Numpad2", 95, "NumPad2", 98, "VK_NUMPAD2", empty, empty],
  5536. [96, 1, 97, "Numpad3", 96, "NumPad3", 99, "VK_NUMPAD3", empty, empty],
  5537. [97, 1, 98, "Numpad4", 97, "NumPad4", 100, "VK_NUMPAD4", empty, empty],
  5538. [98, 1, 99, "Numpad5", 98, "NumPad5", 101, "VK_NUMPAD5", empty, empty],
  5539. [99, 1, 100, "Numpad6", 99, "NumPad6", 102, "VK_NUMPAD6", empty, empty],
  5540. [100, 1, 101, "Numpad7", 100, "NumPad7", 103, "VK_NUMPAD7", empty, empty],
  5541. [101, 1, 102, "Numpad8", 101, "NumPad8", 104, "VK_NUMPAD8", empty, empty],
  5542. [102, 1, 103, "Numpad9", 102, "NumPad9", 105, "VK_NUMPAD9", empty, empty],
  5543. [93, 1, 104, "Numpad0", 93, "NumPad0", 96, "VK_NUMPAD0", empty, empty],
  5544. [107, 1, 105, "NumpadDecimal", 107, "NumPad_Decimal", 110, "VK_DECIMAL", empty, empty],
  5545. [92, 0, 106, "IntlBackslash", 92, "OEM_102", 226, "VK_OEM_102", empty, empty],
  5546. [58, 1, 107, "ContextMenu", 58, "ContextMenu", 93, empty, empty, empty],
  5547. [0, 1, 108, "Power", 0, empty, 0, empty, empty, empty],
  5548. [0, 1, 109, "NumpadEqual", 0, empty, 0, empty, empty, empty],
  5549. [71, 1, 110, "F13", 71, "F13", 124, "VK_F13", empty, empty],
  5550. [72, 1, 111, "F14", 72, "F14", 125, "VK_F14", empty, empty],
  5551. [73, 1, 112, "F15", 73, "F15", 126, "VK_F15", empty, empty],
  5552. [74, 1, 113, "F16", 74, "F16", 127, "VK_F16", empty, empty],
  5553. [75, 1, 114, "F17", 75, "F17", 128, "VK_F17", empty, empty],
  5554. [76, 1, 115, "F18", 76, "F18", 129, "VK_F18", empty, empty],
  5555. [77, 1, 116, "F19", 77, "F19", 130, "VK_F19", empty, empty],
  5556. [0, 1, 117, "F20", 0, empty, 0, "VK_F20", empty, empty],
  5557. [0, 1, 118, "F21", 0, empty, 0, "VK_F21", empty, empty],
  5558. [0, 1, 119, "F22", 0, empty, 0, "VK_F22", empty, empty],
  5559. [0, 1, 120, "F23", 0, empty, 0, "VK_F23", empty, empty],
  5560. [0, 1, 121, "F24", 0, empty, 0, "VK_F24", empty, empty],
  5561. [0, 1, 122, "Open", 0, empty, 0, empty, empty, empty],
  5562. [0, 1, 123, "Help", 0, empty, 0, empty, empty, empty],
  5563. [0, 1, 124, "Select", 0, empty, 0, empty, empty, empty],
  5564. [0, 1, 125, "Again", 0, empty, 0, empty, empty, empty],
  5565. [0, 1, 126, "Undo", 0, empty, 0, empty, empty, empty],
  5566. [0, 1, 127, "Cut", 0, empty, 0, empty, empty, empty],
  5567. [0, 1, 128, "Copy", 0, empty, 0, empty, empty, empty],
  5568. [0, 1, 129, "Paste", 0, empty, 0, empty, empty, empty],
  5569. [0, 1, 130, "Find", 0, empty, 0, empty, empty, empty],
  5570. [0, 1, 131, "AudioVolumeMute", 112, "AudioVolumeMute", 173, "VK_VOLUME_MUTE", empty, empty],
  5571. [0, 1, 132, "AudioVolumeUp", 113, "AudioVolumeUp", 175, "VK_VOLUME_UP", empty, empty],
  5572. [0, 1, 133, "AudioVolumeDown", 114, "AudioVolumeDown", 174, "VK_VOLUME_DOWN", empty, empty],
  5573. [105, 1, 134, "NumpadComma", 105, "NumPad_Separator", 108, "VK_SEPARATOR", empty, empty],
  5574. [110, 0, 135, "IntlRo", 110, "ABNT_C1", 193, "VK_ABNT_C1", empty, empty],
  5575. [0, 1, 136, "KanaMode", 0, empty, 0, empty, empty, empty],
  5576. [0, 0, 137, "IntlYen", 0, empty, 0, empty, empty, empty],
  5577. [0, 1, 138, "Convert", 0, empty, 0, empty, empty, empty],
  5578. [0, 1, 139, "NonConvert", 0, empty, 0, empty, empty, empty],
  5579. [0, 1, 140, "Lang1", 0, empty, 0, empty, empty, empty],
  5580. [0, 1, 141, "Lang2", 0, empty, 0, empty, empty, empty],
  5581. [0, 1, 142, "Lang3", 0, empty, 0, empty, empty, empty],
  5582. [0, 1, 143, "Lang4", 0, empty, 0, empty, empty, empty],
  5583. [0, 1, 144, "Lang5", 0, empty, 0, empty, empty, empty],
  5584. [0, 1, 145, "Abort", 0, empty, 0, empty, empty, empty],
  5585. [0, 1, 146, "Props", 0, empty, 0, empty, empty, empty],
  5586. [0, 1, 147, "NumpadParenLeft", 0, empty, 0, empty, empty, empty],
  5587. [0, 1, 148, "NumpadParenRight", 0, empty, 0, empty, empty, empty],
  5588. [0, 1, 149, "NumpadBackspace", 0, empty, 0, empty, empty, empty],
  5589. [0, 1, 150, "NumpadMemoryStore", 0, empty, 0, empty, empty, empty],
  5590. [0, 1, 151, "NumpadMemoryRecall", 0, empty, 0, empty, empty, empty],
  5591. [0, 1, 152, "NumpadMemoryClear", 0, empty, 0, empty, empty, empty],
  5592. [0, 1, 153, "NumpadMemoryAdd", 0, empty, 0, empty, empty, empty],
  5593. [0, 1, 154, "NumpadMemorySubtract", 0, empty, 0, empty, empty, empty],
  5594. [0, 1, 155, "NumpadClear", 126, "Clear", 12, "VK_CLEAR", empty, empty],
  5595. [0, 1, 156, "NumpadClearEntry", 0, empty, 0, empty, empty, empty],
  5596. [5, 1, 0, empty, 5, "Ctrl", 17, "VK_CONTROL", empty, empty],
  5597. [4, 1, 0, empty, 4, "Shift", 16, "VK_SHIFT", empty, empty],
  5598. [6, 1, 0, empty, 6, "Alt", 18, "VK_MENU", empty, empty],
  5599. [57, 1, 0, empty, 57, "Meta", 0, "VK_COMMAND", empty, empty],
  5600. [5, 1, 157, "ControlLeft", 5, empty, 0, "VK_LCONTROL", empty, empty],
  5601. [4, 1, 158, "ShiftLeft", 4, empty, 0, "VK_LSHIFT", empty, empty],
  5602. [6, 1, 159, "AltLeft", 6, empty, 0, "VK_LMENU", empty, empty],
  5603. [57, 1, 160, "MetaLeft", 57, empty, 0, "VK_LWIN", empty, empty],
  5604. [5, 1, 161, "ControlRight", 5, empty, 0, "VK_RCONTROL", empty, empty],
  5605. [4, 1, 162, "ShiftRight", 4, empty, 0, "VK_RSHIFT", empty, empty],
  5606. [6, 1, 163, "AltRight", 6, empty, 0, "VK_RMENU", empty, empty],
  5607. [57, 1, 164, "MetaRight", 57, empty, 0, "VK_RWIN", empty, empty],
  5608. [0, 1, 165, "BrightnessUp", 0, empty, 0, empty, empty, empty],
  5609. [0, 1, 166, "BrightnessDown", 0, empty, 0, empty, empty, empty],
  5610. [0, 1, 167, "MediaPlay", 0, empty, 0, empty, empty, empty],
  5611. [0, 1, 168, "MediaRecord", 0, empty, 0, empty, empty, empty],
  5612. [0, 1, 169, "MediaFastForward", 0, empty, 0, empty, empty, empty],
  5613. [0, 1, 170, "MediaRewind", 0, empty, 0, empty, empty, empty],
  5614. [114, 1, 171, "MediaTrackNext", 119, "MediaTrackNext", 176, "VK_MEDIA_NEXT_TRACK", empty, empty],
  5615. [115, 1, 172, "MediaTrackPrevious", 120, "MediaTrackPrevious", 177, "VK_MEDIA_PREV_TRACK", empty, empty],
  5616. [116, 1, 173, "MediaStop", 121, "MediaStop", 178, "VK_MEDIA_STOP", empty, empty],
  5617. [0, 1, 174, "Eject", 0, empty, 0, empty, empty, empty],
  5618. [117, 1, 175, "MediaPlayPause", 122, "MediaPlayPause", 179, "VK_MEDIA_PLAY_PAUSE", empty, empty],
  5619. [0, 1, 176, "MediaSelect", 123, "LaunchMediaPlayer", 181, "VK_MEDIA_LAUNCH_MEDIA_SELECT", empty, empty],
  5620. [0, 1, 177, "LaunchMail", 124, "LaunchMail", 180, "VK_MEDIA_LAUNCH_MAIL", empty, empty],
  5621. [0, 1, 178, "LaunchApp2", 125, "LaunchApp2", 183, "VK_MEDIA_LAUNCH_APP2", empty, empty],
  5622. [0, 1, 179, "LaunchApp1", 0, empty, 0, "VK_MEDIA_LAUNCH_APP1", empty, empty],
  5623. [0, 1, 180, "SelectTask", 0, empty, 0, empty, empty, empty],
  5624. [0, 1, 181, "LaunchScreenSaver", 0, empty, 0, empty, empty, empty],
  5625. [0, 1, 182, "BrowserSearch", 115, "BrowserSearch", 170, "VK_BROWSER_SEARCH", empty, empty],
  5626. [0, 1, 183, "BrowserHome", 116, "BrowserHome", 172, "VK_BROWSER_HOME", empty, empty],
  5627. [112, 1, 184, "BrowserBack", 117, "BrowserBack", 166, "VK_BROWSER_BACK", empty, empty],
  5628. [113, 1, 185, "BrowserForward", 118, "BrowserForward", 167, "VK_BROWSER_FORWARD", empty, empty],
  5629. [0, 1, 186, "BrowserStop", 0, empty, 0, "VK_BROWSER_STOP", empty, empty],
  5630. [0, 1, 187, "BrowserRefresh", 0, empty, 0, "VK_BROWSER_REFRESH", empty, empty],
  5631. [0, 1, 188, "BrowserFavorites", 0, empty, 0, "VK_BROWSER_FAVORITES", empty, empty],
  5632. [0, 1, 189, "ZoomToggle", 0, empty, 0, empty, empty, empty],
  5633. [0, 1, 190, "MailReply", 0, empty, 0, empty, empty, empty],
  5634. [0, 1, 191, "MailForward", 0, empty, 0, empty, empty, empty],
  5635. [0, 1, 192, "MailSend", 0, empty, 0, empty, empty, empty],
  5636. [109, 1, 0, empty, 109, "KeyInComposition", 229, empty, empty, empty],
  5637. [111, 1, 0, empty, 111, "ABNT_C2", 194, "VK_ABNT_C2", empty, empty],
  5638. [91, 1, 0, empty, 91, "OEM_8", 223, "VK_OEM_8", empty, empty],
  5639. [0, 1, 0, empty, 0, empty, 0, "VK_KANA", empty, empty],
  5640. [0, 1, 0, empty, 0, empty, 0, "VK_HANGUL", empty, empty],
  5641. [0, 1, 0, empty, 0, empty, 0, "VK_JUNJA", empty, empty],
  5642. [0, 1, 0, empty, 0, empty, 0, "VK_FINAL", empty, empty],
  5643. [0, 1, 0, empty, 0, empty, 0, "VK_HANJA", empty, empty],
  5644. [0, 1, 0, empty, 0, empty, 0, "VK_KANJI", empty, empty],
  5645. [0, 1, 0, empty, 0, empty, 0, "VK_CONVERT", empty, empty],
  5646. [0, 1, 0, empty, 0, empty, 0, "VK_NONCONVERT", empty, empty],
  5647. [0, 1, 0, empty, 0, empty, 0, "VK_ACCEPT", empty, empty],
  5648. [0, 1, 0, empty, 0, empty, 0, "VK_MODECHANGE", empty, empty],
  5649. [0, 1, 0, empty, 0, empty, 0, "VK_SELECT", empty, empty],
  5650. [0, 1, 0, empty, 0, empty, 0, "VK_PRINT", empty, empty],
  5651. [0, 1, 0, empty, 0, empty, 0, "VK_EXECUTE", empty, empty],
  5652. [0, 1, 0, empty, 0, empty, 0, "VK_SNAPSHOT", empty, empty],
  5653. [0, 1, 0, empty, 0, empty, 0, "VK_HELP", empty, empty],
  5654. [0, 1, 0, empty, 0, empty, 0, "VK_APPS", empty, empty],
  5655. [0, 1, 0, empty, 0, empty, 0, "VK_PROCESSKEY", empty, empty],
  5656. [0, 1, 0, empty, 0, empty, 0, "VK_PACKET", empty, empty],
  5657. [0, 1, 0, empty, 0, empty, 0, "VK_DBE_SBCSCHAR", empty, empty],
  5658. [0, 1, 0, empty, 0, empty, 0, "VK_DBE_DBCSCHAR", empty, empty],
  5659. [0, 1, 0, empty, 0, empty, 0, "VK_ATTN", empty, empty],
  5660. [0, 1, 0, empty, 0, empty, 0, "VK_CRSEL", empty, empty],
  5661. [0, 1, 0, empty, 0, empty, 0, "VK_EXSEL", empty, empty],
  5662. [0, 1, 0, empty, 0, empty, 0, "VK_EREOF", empty, empty],
  5663. [0, 1, 0, empty, 0, empty, 0, "VK_PLAY", empty, empty],
  5664. [0, 1, 0, empty, 0, empty, 0, "VK_ZOOM", empty, empty],
  5665. [0, 1, 0, empty, 0, empty, 0, "VK_NONAME", empty, empty],
  5666. [0, 1, 0, empty, 0, empty, 0, "VK_PA1", empty, empty],
  5667. [0, 1, 0, empty, 0, empty, 0, "VK_OEM_CLEAR", empty, empty]
  5668. ];
  5669. let seenKeyCode = [];
  5670. let seenScanCode = [];
  5671. for (const mapping of mappings) {
  5672. const [_keyCodeOrd, immutable, scanCode, scanCodeStr, keyCode, keyCodeStr, eventKeyCode, vkey, usUserSettingsLabel, generalUserSettingsLabel] = mapping;
  5673. if (!seenScanCode[scanCode]) {
  5674. seenScanCode[scanCode] = true;
  5675. scanCodeIntToStr[scanCode] = scanCodeStr;
  5676. scanCodeStrToInt[scanCodeStr] = scanCode;
  5677. scanCodeLowerCaseStrToInt[scanCodeStr.toLowerCase()] = scanCode;
  5678. if (immutable) {
  5679. IMMUTABLE_CODE_TO_KEY_CODE[scanCode] = keyCode;
  5680. if (keyCode !== 0 && keyCode !== 3 && keyCode !== 5 && keyCode !== 4 && keyCode !== 6 && keyCode !== 57) {
  5681. IMMUTABLE_KEY_CODE_TO_CODE[keyCode] = scanCode;
  5682. }
  5683. }
  5684. }
  5685. if (!seenKeyCode[keyCode]) {
  5686. seenKeyCode[keyCode] = true;
  5687. if (!keyCodeStr) {
  5688. throw new Error(`String representation missing for key code ${keyCode} around scan code ${scanCodeStr}`);
  5689. }
  5690. uiMap.define(keyCode, keyCodeStr);
  5691. userSettingsUSMap.define(keyCode, usUserSettingsLabel || keyCodeStr);
  5692. userSettingsGeneralMap.define(keyCode, generalUserSettingsLabel || usUserSettingsLabel || keyCodeStr);
  5693. }
  5694. if (eventKeyCode) {
  5695. EVENT_KEY_CODE_MAP[eventKeyCode] = keyCode;
  5696. }
  5697. if (vkey) {
  5698. NATIVE_WINDOWS_KEY_CODE_TO_KEY_CODE[vkey] = keyCode;
  5699. }
  5700. }
  5701. IMMUTABLE_KEY_CODE_TO_CODE[3] = 46;
  5702. })();
  5703. var KeyCodeUtils;
  5704. (function(KeyCodeUtils2) {
  5705. function toString(keyCode) {
  5706. return uiMap.keyCodeToStr(keyCode);
  5707. }
  5708. KeyCodeUtils2.toString = toString;
  5709. function fromString(key) {
  5710. return uiMap.strToKeyCode(key);
  5711. }
  5712. KeyCodeUtils2.fromString = fromString;
  5713. function toUserSettingsUS(keyCode) {
  5714. return userSettingsUSMap.keyCodeToStr(keyCode);
  5715. }
  5716. KeyCodeUtils2.toUserSettingsUS = toUserSettingsUS;
  5717. function toUserSettingsGeneral(keyCode) {
  5718. return userSettingsGeneralMap.keyCodeToStr(keyCode);
  5719. }
  5720. KeyCodeUtils2.toUserSettingsGeneral = toUserSettingsGeneral;
  5721. function fromUserSettings(key) {
  5722. return userSettingsUSMap.strToKeyCode(key) || userSettingsGeneralMap.strToKeyCode(key);
  5723. }
  5724. KeyCodeUtils2.fromUserSettings = fromUserSettings;
  5725. function toElectronAccelerator(keyCode) {
  5726. if (keyCode >= 93 && keyCode <= 108) {
  5727. return null;
  5728. }
  5729. switch (keyCode) {
  5730. case 16:
  5731. return "Up";
  5732. case 18:
  5733. return "Down";
  5734. case 15:
  5735. return "Left";
  5736. case 17:
  5737. return "Right";
  5738. }
  5739. return uiMap.keyCodeToStr(keyCode);
  5740. }
  5741. KeyCodeUtils2.toElectronAccelerator = toElectronAccelerator;
  5742. })(KeyCodeUtils || (KeyCodeUtils = {}));
  5743. function KeyChord(firstPart, secondPart) {
  5744. const chordPart = (secondPart & 65535) << 16 >>> 0;
  5745. return (firstPart | chordPart) >>> 0;
  5746. }
  5747. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/core/selection.js
  5748. var Selection = class extends Range {
  5749. constructor(selectionStartLineNumber, selectionStartColumn, positionLineNumber, positionColumn) {
  5750. super(selectionStartLineNumber, selectionStartColumn, positionLineNumber, positionColumn);
  5751. this.selectionStartLineNumber = selectionStartLineNumber;
  5752. this.selectionStartColumn = selectionStartColumn;
  5753. this.positionLineNumber = positionLineNumber;
  5754. this.positionColumn = positionColumn;
  5755. }
  5756. toString() {
  5757. return "[" + this.selectionStartLineNumber + "," + this.selectionStartColumn + " -> " + this.positionLineNumber + "," + this.positionColumn + "]";
  5758. }
  5759. equalsSelection(other) {
  5760. return Selection.selectionsEqual(this, other);
  5761. }
  5762. static selectionsEqual(a, b) {
  5763. return a.selectionStartLineNumber === b.selectionStartLineNumber && a.selectionStartColumn === b.selectionStartColumn && a.positionLineNumber === b.positionLineNumber && a.positionColumn === b.positionColumn;
  5764. }
  5765. getDirection() {
  5766. if (this.selectionStartLineNumber === this.startLineNumber && this.selectionStartColumn === this.startColumn) {
  5767. return 0;
  5768. }
  5769. return 1;
  5770. }
  5771. setEndPosition(endLineNumber, endColumn) {
  5772. if (this.getDirection() === 0) {
  5773. return new Selection(this.startLineNumber, this.startColumn, endLineNumber, endColumn);
  5774. }
  5775. return new Selection(endLineNumber, endColumn, this.startLineNumber, this.startColumn);
  5776. }
  5777. getPosition() {
  5778. return new Position(this.positionLineNumber, this.positionColumn);
  5779. }
  5780. getSelectionStart() {
  5781. return new Position(this.selectionStartLineNumber, this.selectionStartColumn);
  5782. }
  5783. setStartPosition(startLineNumber, startColumn) {
  5784. if (this.getDirection() === 0) {
  5785. return new Selection(startLineNumber, startColumn, this.endLineNumber, this.endColumn);
  5786. }
  5787. return new Selection(this.endLineNumber, this.endColumn, startLineNumber, startColumn);
  5788. }
  5789. static fromPositions(start, end = start) {
  5790. return new Selection(start.lineNumber, start.column, end.lineNumber, end.column);
  5791. }
  5792. static fromRange(range, direction) {
  5793. if (direction === 0) {
  5794. return new Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn);
  5795. } else {
  5796. return new Selection(range.endLineNumber, range.endColumn, range.startLineNumber, range.startColumn);
  5797. }
  5798. }
  5799. static liftSelection(sel) {
  5800. return new Selection(sel.selectionStartLineNumber, sel.selectionStartColumn, sel.positionLineNumber, sel.positionColumn);
  5801. }
  5802. static selectionsArrEqual(a, b) {
  5803. if (a && !b || !a && b) {
  5804. return false;
  5805. }
  5806. if (!a && !b) {
  5807. return true;
  5808. }
  5809. if (a.length !== b.length) {
  5810. return false;
  5811. }
  5812. for (let i = 0, len = a.length; i < len; i++) {
  5813. if (!this.selectionsEqual(a[i], b[i])) {
  5814. return false;
  5815. }
  5816. }
  5817. return true;
  5818. }
  5819. static isISelection(obj) {
  5820. return obj && typeof obj.selectionStartLineNumber === "number" && typeof obj.selectionStartColumn === "number" && typeof obj.positionLineNumber === "number" && typeof obj.positionColumn === "number";
  5821. }
  5822. static createWithDirection(startLineNumber, startColumn, endLineNumber, endColumn, direction) {
  5823. if (direction === 0) {
  5824. return new Selection(startLineNumber, startColumn, endLineNumber, endColumn);
  5825. }
  5826. return new Selection(endLineNumber, endColumn, startLineNumber, startColumn);
  5827. }
  5828. };
  5829. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/tokenizationRegistry.js
  5830. var __awaiter = function(thisArg, _arguments, P, generator) {
  5831. function adopt(value) {
  5832. return value instanceof P ? value : new P(function(resolve2) {
  5833. resolve2(value);
  5834. });
  5835. }
  5836. return new (P || (P = Promise))(function(resolve2, reject) {
  5837. function fulfilled(value) {
  5838. try {
  5839. step(generator.next(value));
  5840. } catch (e) {
  5841. reject(e);
  5842. }
  5843. }
  5844. function rejected(value) {
  5845. try {
  5846. step(generator["throw"](value));
  5847. } catch (e) {
  5848. reject(e);
  5849. }
  5850. }
  5851. function step(result) {
  5852. result.done ? resolve2(result.value) : adopt(result.value).then(fulfilled, rejected);
  5853. }
  5854. step((generator = generator.apply(thisArg, _arguments || [])).next());
  5855. });
  5856. };
  5857. var TokenizationRegistry = class {
  5858. constructor() {
  5859. this._map = new Map();
  5860. this._factories = new Map();
  5861. this._onDidChange = new Emitter();
  5862. this.onDidChange = this._onDidChange.event;
  5863. this._colorMap = null;
  5864. }
  5865. fire(languages) {
  5866. this._onDidChange.fire({
  5867. changedLanguages: languages,
  5868. changedColorMap: false
  5869. });
  5870. }
  5871. register(language, support) {
  5872. this._map.set(language, support);
  5873. this.fire([language]);
  5874. return toDisposable(() => {
  5875. if (this._map.get(language) !== support) {
  5876. return;
  5877. }
  5878. this._map.delete(language);
  5879. this.fire([language]);
  5880. });
  5881. }
  5882. registerFactory(languageId, factory) {
  5883. var _a3;
  5884. (_a3 = this._factories.get(languageId)) === null || _a3 === void 0 ? void 0 : _a3.dispose();
  5885. const myData = new TokenizationSupportFactoryData(this, languageId, factory);
  5886. this._factories.set(languageId, myData);
  5887. return toDisposable(() => {
  5888. const v = this._factories.get(languageId);
  5889. if (!v || v !== myData) {
  5890. return;
  5891. }
  5892. this._factories.delete(languageId);
  5893. v.dispose();
  5894. });
  5895. }
  5896. getOrCreate(languageId) {
  5897. return __awaiter(this, void 0, void 0, function* () {
  5898. const tokenizationSupport = this.get(languageId);
  5899. if (tokenizationSupport) {
  5900. return tokenizationSupport;
  5901. }
  5902. const factory = this._factories.get(languageId);
  5903. if (!factory || factory.isResolved) {
  5904. return null;
  5905. }
  5906. yield factory.resolve();
  5907. return this.get(languageId);
  5908. });
  5909. }
  5910. get(language) {
  5911. return this._map.get(language) || null;
  5912. }
  5913. isResolved(languageId) {
  5914. const tokenizationSupport = this.get(languageId);
  5915. if (tokenizationSupport) {
  5916. return true;
  5917. }
  5918. const factory = this._factories.get(languageId);
  5919. if (!factory || factory.isResolved) {
  5920. return true;
  5921. }
  5922. return false;
  5923. }
  5924. setColorMap(colorMap) {
  5925. this._colorMap = colorMap;
  5926. this._onDidChange.fire({
  5927. changedLanguages: Array.from(this._map.keys()),
  5928. changedColorMap: true
  5929. });
  5930. }
  5931. getColorMap() {
  5932. return this._colorMap;
  5933. }
  5934. getDefaultBackground() {
  5935. if (this._colorMap && this._colorMap.length > 2) {
  5936. return this._colorMap[2];
  5937. }
  5938. return null;
  5939. }
  5940. };
  5941. var TokenizationSupportFactoryData = class extends Disposable {
  5942. constructor(_registry, _languageId, _factory) {
  5943. super();
  5944. this._registry = _registry;
  5945. this._languageId = _languageId;
  5946. this._factory = _factory;
  5947. this._isDisposed = false;
  5948. this._resolvePromise = null;
  5949. this._isResolved = false;
  5950. }
  5951. get isResolved() {
  5952. return this._isResolved;
  5953. }
  5954. dispose() {
  5955. this._isDisposed = true;
  5956. super.dispose();
  5957. }
  5958. resolve() {
  5959. return __awaiter(this, void 0, void 0, function* () {
  5960. if (!this._resolvePromise) {
  5961. this._resolvePromise = this._create();
  5962. }
  5963. return this._resolvePromise;
  5964. });
  5965. }
  5966. _create() {
  5967. return __awaiter(this, void 0, void 0, function* () {
  5968. const value = yield Promise.resolve(this._factory.createTokenizationSupport());
  5969. this._isResolved = true;
  5970. if (value && !this._isDisposed) {
  5971. this._register(this._registry.register(this._languageId, value));
  5972. }
  5973. });
  5974. }
  5975. };
  5976. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/base/common/codicons.js
  5977. var Codicon = class {
  5978. constructor(id, definition, description) {
  5979. this.id = id;
  5980. this.definition = definition;
  5981. this.description = description;
  5982. Codicon._allCodicons.push(this);
  5983. }
  5984. get classNames() {
  5985. return "codicon codicon-" + this.id;
  5986. }
  5987. get classNamesArray() {
  5988. return ["codicon", "codicon-" + this.id];
  5989. }
  5990. get cssSelector() {
  5991. return ".codicon.codicon-" + this.id;
  5992. }
  5993. static getAll() {
  5994. return Codicon._allCodicons;
  5995. }
  5996. };
  5997. Codicon._allCodicons = [];
  5998. Codicon.add = new Codicon("add", {fontCharacter: "\\ea60"});
  5999. Codicon.plus = new Codicon("plus", Codicon.add.definition);
  6000. Codicon.gistNew = new Codicon("gist-new", Codicon.add.definition);
  6001. Codicon.repoCreate = new Codicon("repo-create", Codicon.add.definition);
  6002. Codicon.lightbulb = new Codicon("lightbulb", {fontCharacter: "\\ea61"});
  6003. Codicon.lightBulb = new Codicon("light-bulb", {fontCharacter: "\\ea61"});
  6004. Codicon.repo = new Codicon("repo", {fontCharacter: "\\ea62"});
  6005. Codicon.repoDelete = new Codicon("repo-delete", {fontCharacter: "\\ea62"});
  6006. Codicon.gistFork = new Codicon("gist-fork", {fontCharacter: "\\ea63"});
  6007. Codicon.repoForked = new Codicon("repo-forked", {fontCharacter: "\\ea63"});
  6008. Codicon.gitPullRequest = new Codicon("git-pull-request", {fontCharacter: "\\ea64"});
  6009. Codicon.gitPullRequestAbandoned = new Codicon("git-pull-request-abandoned", {fontCharacter: "\\ea64"});
  6010. Codicon.recordKeys = new Codicon("record-keys", {fontCharacter: "\\ea65"});
  6011. Codicon.keyboard = new Codicon("keyboard", {fontCharacter: "\\ea65"});
  6012. Codicon.tag = new Codicon("tag", {fontCharacter: "\\ea66"});
  6013. Codicon.tagAdd = new Codicon("tag-add", {fontCharacter: "\\ea66"});
  6014. Codicon.tagRemove = new Codicon("tag-remove", {fontCharacter: "\\ea66"});
  6015. Codicon.person = new Codicon("person", {fontCharacter: "\\ea67"});
  6016. Codicon.personFollow = new Codicon("person-follow", {fontCharacter: "\\ea67"});
  6017. Codicon.personOutline = new Codicon("person-outline", {fontCharacter: "\\ea67"});
  6018. Codicon.personFilled = new Codicon("person-filled", {fontCharacter: "\\ea67"});
  6019. Codicon.gitBranch = new Codicon("git-branch", {fontCharacter: "\\ea68"});
  6020. Codicon.gitBranchCreate = new Codicon("git-branch-create", {fontCharacter: "\\ea68"});
  6021. Codicon.gitBranchDelete = new Codicon("git-branch-delete", {fontCharacter: "\\ea68"});
  6022. Codicon.sourceControl = new Codicon("source-control", {fontCharacter: "\\ea68"});
  6023. Codicon.mirror = new Codicon("mirror", {fontCharacter: "\\ea69"});
  6024. Codicon.mirrorPublic = new Codicon("mirror-public", {fontCharacter: "\\ea69"});
  6025. Codicon.star = new Codicon("star", {fontCharacter: "\\ea6a"});
  6026. Codicon.starAdd = new Codicon("star-add", {fontCharacter: "\\ea6a"});
  6027. Codicon.starDelete = new Codicon("star-delete", {fontCharacter: "\\ea6a"});
  6028. Codicon.starEmpty = new Codicon("star-empty", {fontCharacter: "\\ea6a"});
  6029. Codicon.comment = new Codicon("comment", {fontCharacter: "\\ea6b"});
  6030. Codicon.commentAdd = new Codicon("comment-add", {fontCharacter: "\\ea6b"});
  6031. Codicon.alert = new Codicon("alert", {fontCharacter: "\\ea6c"});
  6032. Codicon.warning = new Codicon("warning", {fontCharacter: "\\ea6c"});
  6033. Codicon.search = new Codicon("search", {fontCharacter: "\\ea6d"});
  6034. Codicon.searchSave = new Codicon("search-save", {fontCharacter: "\\ea6d"});
  6035. Codicon.logOut = new Codicon("log-out", {fontCharacter: "\\ea6e"});
  6036. Codicon.signOut = new Codicon("sign-out", {fontCharacter: "\\ea6e"});
  6037. Codicon.logIn = new Codicon("log-in", {fontCharacter: "\\ea6f"});
  6038. Codicon.signIn = new Codicon("sign-in", {fontCharacter: "\\ea6f"});
  6039. Codicon.eye = new Codicon("eye", {fontCharacter: "\\ea70"});
  6040. Codicon.eyeUnwatch = new Codicon("eye-unwatch", {fontCharacter: "\\ea70"});
  6041. Codicon.eyeWatch = new Codicon("eye-watch", {fontCharacter: "\\ea70"});
  6042. Codicon.circleFilled = new Codicon("circle-filled", {fontCharacter: "\\ea71"});
  6043. Codicon.primitiveDot = new Codicon("primitive-dot", {fontCharacter: "\\ea71"});
  6044. Codicon.closeDirty = new Codicon("close-dirty", {fontCharacter: "\\ea71"});
  6045. Codicon.debugBreakpoint = new Codicon("debug-breakpoint", {fontCharacter: "\\ea71"});
  6046. Codicon.debugBreakpointDisabled = new Codicon("debug-breakpoint-disabled", {fontCharacter: "\\ea71"});
  6047. Codicon.debugHint = new Codicon("debug-hint", {fontCharacter: "\\ea71"});
  6048. Codicon.primitiveSquare = new Codicon("primitive-square", {fontCharacter: "\\ea72"});
  6049. Codicon.edit = new Codicon("edit", {fontCharacter: "\\ea73"});
  6050. Codicon.pencil = new Codicon("pencil", {fontCharacter: "\\ea73"});
  6051. Codicon.info = new Codicon("info", {fontCharacter: "\\ea74"});
  6052. Codicon.issueOpened = new Codicon("issue-opened", {fontCharacter: "\\ea74"});
  6053. Codicon.gistPrivate = new Codicon("gist-private", {fontCharacter: "\\ea75"});
  6054. Codicon.gitForkPrivate = new Codicon("git-fork-private", {fontCharacter: "\\ea75"});
  6055. Codicon.lock = new Codicon("lock", {fontCharacter: "\\ea75"});
  6056. Codicon.mirrorPrivate = new Codicon("mirror-private", {fontCharacter: "\\ea75"});
  6057. Codicon.close = new Codicon("close", {fontCharacter: "\\ea76"});
  6058. Codicon.removeClose = new Codicon("remove-close", {fontCharacter: "\\ea76"});
  6059. Codicon.x = new Codicon("x", {fontCharacter: "\\ea76"});
  6060. Codicon.repoSync = new Codicon("repo-sync", {fontCharacter: "\\ea77"});
  6061. Codicon.sync = new Codicon("sync", {fontCharacter: "\\ea77"});
  6062. Codicon.clone = new Codicon("clone", {fontCharacter: "\\ea78"});
  6063. Codicon.desktopDownload = new Codicon("desktop-download", {fontCharacter: "\\ea78"});
  6064. Codicon.beaker = new Codicon("beaker", {fontCharacter: "\\ea79"});
  6065. Codicon.microscope = new Codicon("microscope", {fontCharacter: "\\ea79"});
  6066. Codicon.vm = new Codicon("vm", {fontCharacter: "\\ea7a"});
  6067. Codicon.deviceDesktop = new Codicon("device-desktop", {fontCharacter: "\\ea7a"});
  6068. Codicon.file = new Codicon("file", {fontCharacter: "\\ea7b"});
  6069. Codicon.fileText = new Codicon("file-text", {fontCharacter: "\\ea7b"});
  6070. Codicon.more = new Codicon("more", {fontCharacter: "\\ea7c"});
  6071. Codicon.ellipsis = new Codicon("ellipsis", {fontCharacter: "\\ea7c"});
  6072. Codicon.kebabHorizontal = new Codicon("kebab-horizontal", {fontCharacter: "\\ea7c"});
  6073. Codicon.mailReply = new Codicon("mail-reply", {fontCharacter: "\\ea7d"});
  6074. Codicon.reply = new Codicon("reply", {fontCharacter: "\\ea7d"});
  6075. Codicon.organization = new Codicon("organization", {fontCharacter: "\\ea7e"});
  6076. Codicon.organizationFilled = new Codicon("organization-filled", {fontCharacter: "\\ea7e"});
  6077. Codicon.organizationOutline = new Codicon("organization-outline", {fontCharacter: "\\ea7e"});
  6078. Codicon.newFile = new Codicon("new-file", {fontCharacter: "\\ea7f"});
  6079. Codicon.fileAdd = new Codicon("file-add", {fontCharacter: "\\ea7f"});
  6080. Codicon.newFolder = new Codicon("new-folder", {fontCharacter: "\\ea80"});
  6081. Codicon.fileDirectoryCreate = new Codicon("file-directory-create", {fontCharacter: "\\ea80"});
  6082. Codicon.trash = new Codicon("trash", {fontCharacter: "\\ea81"});
  6083. Codicon.trashcan = new Codicon("trashcan", {fontCharacter: "\\ea81"});
  6084. Codicon.history = new Codicon("history", {fontCharacter: "\\ea82"});
  6085. Codicon.clock = new Codicon("clock", {fontCharacter: "\\ea82"});
  6086. Codicon.folder = new Codicon("folder", {fontCharacter: "\\ea83"});
  6087. Codicon.fileDirectory = new Codicon("file-directory", {fontCharacter: "\\ea83"});
  6088. Codicon.symbolFolder = new Codicon("symbol-folder", {fontCharacter: "\\ea83"});
  6089. Codicon.logoGithub = new Codicon("logo-github", {fontCharacter: "\\ea84"});
  6090. Codicon.markGithub = new Codicon("mark-github", {fontCharacter: "\\ea84"});
  6091. Codicon.github = new Codicon("github", {fontCharacter: "\\ea84"});
  6092. Codicon.terminal = new Codicon("terminal", {fontCharacter: "\\ea85"});
  6093. Codicon.console = new Codicon("console", {fontCharacter: "\\ea85"});
  6094. Codicon.repl = new Codicon("repl", {fontCharacter: "\\ea85"});
  6095. Codicon.zap = new Codicon("zap", {fontCharacter: "\\ea86"});
  6096. Codicon.symbolEvent = new Codicon("symbol-event", {fontCharacter: "\\ea86"});
  6097. Codicon.error = new Codicon("error", {fontCharacter: "\\ea87"});
  6098. Codicon.stop = new Codicon("stop", {fontCharacter: "\\ea87"});
  6099. Codicon.variable = new Codicon("variable", {fontCharacter: "\\ea88"});
  6100. Codicon.symbolVariable = new Codicon("symbol-variable", {fontCharacter: "\\ea88"});
  6101. Codicon.array = new Codicon("array", {fontCharacter: "\\ea8a"});
  6102. Codicon.symbolArray = new Codicon("symbol-array", {fontCharacter: "\\ea8a"});
  6103. Codicon.symbolModule = new Codicon("symbol-module", {fontCharacter: "\\ea8b"});
  6104. Codicon.symbolPackage = new Codicon("symbol-package", {fontCharacter: "\\ea8b"});
  6105. Codicon.symbolNamespace = new Codicon("symbol-namespace", {fontCharacter: "\\ea8b"});
  6106. Codicon.symbolObject = new Codicon("symbol-object", {fontCharacter: "\\ea8b"});
  6107. Codicon.symbolMethod = new Codicon("symbol-method", {fontCharacter: "\\ea8c"});
  6108. Codicon.symbolFunction = new Codicon("symbol-function", {fontCharacter: "\\ea8c"});
  6109. Codicon.symbolConstructor = new Codicon("symbol-constructor", {fontCharacter: "\\ea8c"});
  6110. Codicon.symbolBoolean = new Codicon("symbol-boolean", {fontCharacter: "\\ea8f"});
  6111. Codicon.symbolNull = new Codicon("symbol-null", {fontCharacter: "\\ea8f"});
  6112. Codicon.symbolNumeric = new Codicon("symbol-numeric", {fontCharacter: "\\ea90"});
  6113. Codicon.symbolNumber = new Codicon("symbol-number", {fontCharacter: "\\ea90"});
  6114. Codicon.symbolStructure = new Codicon("symbol-structure", {fontCharacter: "\\ea91"});
  6115. Codicon.symbolStruct = new Codicon("symbol-struct", {fontCharacter: "\\ea91"});
  6116. Codicon.symbolParameter = new Codicon("symbol-parameter", {fontCharacter: "\\ea92"});
  6117. Codicon.symbolTypeParameter = new Codicon("symbol-type-parameter", {fontCharacter: "\\ea92"});
  6118. Codicon.symbolKey = new Codicon("symbol-key", {fontCharacter: "\\ea93"});
  6119. Codicon.symbolText = new Codicon("symbol-text", {fontCharacter: "\\ea93"});
  6120. Codicon.symbolReference = new Codicon("symbol-reference", {fontCharacter: "\\ea94"});
  6121. Codicon.goToFile = new Codicon("go-to-file", {fontCharacter: "\\ea94"});
  6122. Codicon.symbolEnum = new Codicon("symbol-enum", {fontCharacter: "\\ea95"});
  6123. Codicon.symbolValue = new Codicon("symbol-value", {fontCharacter: "\\ea95"});
  6124. Codicon.symbolRuler = new Codicon("symbol-ruler", {fontCharacter: "\\ea96"});
  6125. Codicon.symbolUnit = new Codicon("symbol-unit", {fontCharacter: "\\ea96"});
  6126. Codicon.activateBreakpoints = new Codicon("activate-breakpoints", {fontCharacter: "\\ea97"});
  6127. Codicon.archive = new Codicon("archive", {fontCharacter: "\\ea98"});
  6128. Codicon.arrowBoth = new Codicon("arrow-both", {fontCharacter: "\\ea99"});
  6129. Codicon.arrowDown = new Codicon("arrow-down", {fontCharacter: "\\ea9a"});
  6130. Codicon.arrowLeft = new Codicon("arrow-left", {fontCharacter: "\\ea9b"});
  6131. Codicon.arrowRight = new Codicon("arrow-right", {fontCharacter: "\\ea9c"});
  6132. Codicon.arrowSmallDown = new Codicon("arrow-small-down", {fontCharacter: "\\ea9d"});
  6133. Codicon.arrowSmallLeft = new Codicon("arrow-small-left", {fontCharacter: "\\ea9e"});
  6134. Codicon.arrowSmallRight = new Codicon("arrow-small-right", {fontCharacter: "\\ea9f"});
  6135. Codicon.arrowSmallUp = new Codicon("arrow-small-up", {fontCharacter: "\\eaa0"});
  6136. Codicon.arrowUp = new Codicon("arrow-up", {fontCharacter: "\\eaa1"});
  6137. Codicon.bell = new Codicon("bell", {fontCharacter: "\\eaa2"});
  6138. Codicon.bold = new Codicon("bold", {fontCharacter: "\\eaa3"});
  6139. Codicon.book = new Codicon("book", {fontCharacter: "\\eaa4"});
  6140. Codicon.bookmark = new Codicon("bookmark", {fontCharacter: "\\eaa5"});
  6141. Codicon.debugBreakpointConditionalUnverified = new Codicon("debug-breakpoint-conditional-unverified", {fontCharacter: "\\eaa6"});
  6142. Codicon.debugBreakpointConditional = new Codicon("debug-breakpoint-conditional", {fontCharacter: "\\eaa7"});
  6143. Codicon.debugBreakpointConditionalDisabled = new Codicon("debug-breakpoint-conditional-disabled", {fontCharacter: "\\eaa7"});
  6144. Codicon.debugBreakpointDataUnverified = new Codicon("debug-breakpoint-data-unverified", {fontCharacter: "\\eaa8"});
  6145. Codicon.debugBreakpointData = new Codicon("debug-breakpoint-data", {fontCharacter: "\\eaa9"});
  6146. Codicon.debugBreakpointDataDisabled = new Codicon("debug-breakpoint-data-disabled", {fontCharacter: "\\eaa9"});
  6147. Codicon.debugBreakpointLogUnverified = new Codicon("debug-breakpoint-log-unverified", {fontCharacter: "\\eaaa"});
  6148. Codicon.debugBreakpointLog = new Codicon("debug-breakpoint-log", {fontCharacter: "\\eaab"});
  6149. Codicon.debugBreakpointLogDisabled = new Codicon("debug-breakpoint-log-disabled", {fontCharacter: "\\eaab"});
  6150. Codicon.briefcase = new Codicon("briefcase", {fontCharacter: "\\eaac"});
  6151. Codicon.broadcast = new Codicon("broadcast", {fontCharacter: "\\eaad"});
  6152. Codicon.browser = new Codicon("browser", {fontCharacter: "\\eaae"});
  6153. Codicon.bug = new Codicon("bug", {fontCharacter: "\\eaaf"});
  6154. Codicon.calendar = new Codicon("calendar", {fontCharacter: "\\eab0"});
  6155. Codicon.caseSensitive = new Codicon("case-sensitive", {fontCharacter: "\\eab1"});
  6156. Codicon.check = new Codicon("check", {fontCharacter: "\\eab2"});
  6157. Codicon.checklist = new Codicon("checklist", {fontCharacter: "\\eab3"});
  6158. Codicon.chevronDown = new Codicon("chevron-down", {fontCharacter: "\\eab4"});
  6159. Codicon.dropDownButton = new Codicon("drop-down-button", Codicon.chevronDown.definition);
  6160. Codicon.chevronLeft = new Codicon("chevron-left", {fontCharacter: "\\eab5"});
  6161. Codicon.chevronRight = new Codicon("chevron-right", {fontCharacter: "\\eab6"});
  6162. Codicon.chevronUp = new Codicon("chevron-up", {fontCharacter: "\\eab7"});
  6163. Codicon.chromeClose = new Codicon("chrome-close", {fontCharacter: "\\eab8"});
  6164. Codicon.chromeMaximize = new Codicon("chrome-maximize", {fontCharacter: "\\eab9"});
  6165. Codicon.chromeMinimize = new Codicon("chrome-minimize", {fontCharacter: "\\eaba"});
  6166. Codicon.chromeRestore = new Codicon("chrome-restore", {fontCharacter: "\\eabb"});
  6167. Codicon.circleOutline = new Codicon("circle-outline", {fontCharacter: "\\eabc"});
  6168. Codicon.debugBreakpointUnverified = new Codicon("debug-breakpoint-unverified", {fontCharacter: "\\eabc"});
  6169. Codicon.circleSlash = new Codicon("circle-slash", {fontCharacter: "\\eabd"});
  6170. Codicon.circuitBoard = new Codicon("circuit-board", {fontCharacter: "\\eabe"});
  6171. Codicon.clearAll = new Codicon("clear-all", {fontCharacter: "\\eabf"});
  6172. Codicon.clippy = new Codicon("clippy", {fontCharacter: "\\eac0"});
  6173. Codicon.closeAll = new Codicon("close-all", {fontCharacter: "\\eac1"});
  6174. Codicon.cloudDownload = new Codicon("cloud-download", {fontCharacter: "\\eac2"});
  6175. Codicon.cloudUpload = new Codicon("cloud-upload", {fontCharacter: "\\eac3"});
  6176. Codicon.code = new Codicon("code", {fontCharacter: "\\eac4"});
  6177. Codicon.collapseAll = new Codicon("collapse-all", {fontCharacter: "\\eac5"});
  6178. Codicon.colorMode = new Codicon("color-mode", {fontCharacter: "\\eac6"});
  6179. Codicon.commentDiscussion = new Codicon("comment-discussion", {fontCharacter: "\\eac7"});
  6180. Codicon.compareChanges = new Codicon("compare-changes", {fontCharacter: "\\eafd"});
  6181. Codicon.creditCard = new Codicon("credit-card", {fontCharacter: "\\eac9"});
  6182. Codicon.dash = new Codicon("dash", {fontCharacter: "\\eacc"});
  6183. Codicon.dashboard = new Codicon("dashboard", {fontCharacter: "\\eacd"});
  6184. Codicon.database = new Codicon("database", {fontCharacter: "\\eace"});
  6185. Codicon.debugContinue = new Codicon("debug-continue", {fontCharacter: "\\eacf"});
  6186. Codicon.debugDisconnect = new Codicon("debug-disconnect", {fontCharacter: "\\ead0"});
  6187. Codicon.debugPause = new Codicon("debug-pause", {fontCharacter: "\\ead1"});
  6188. Codicon.debugRestart = new Codicon("debug-restart", {fontCharacter: "\\ead2"});
  6189. Codicon.debugStart = new Codicon("debug-start", {fontCharacter: "\\ead3"});
  6190. Codicon.debugStepInto = new Codicon("debug-step-into", {fontCharacter: "\\ead4"});
  6191. Codicon.debugStepOut = new Codicon("debug-step-out", {fontCharacter: "\\ead5"});
  6192. Codicon.debugStepOver = new Codicon("debug-step-over", {fontCharacter: "\\ead6"});
  6193. Codicon.debugStop = new Codicon("debug-stop", {fontCharacter: "\\ead7"});
  6194. Codicon.debug = new Codicon("debug", {fontCharacter: "\\ead8"});
  6195. Codicon.deviceCameraVideo = new Codicon("device-camera-video", {fontCharacter: "\\ead9"});
  6196. Codicon.deviceCamera = new Codicon("device-camera", {fontCharacter: "\\eada"});
  6197. Codicon.deviceMobile = new Codicon("device-mobile", {fontCharacter: "\\eadb"});
  6198. Codicon.diffAdded = new Codicon("diff-added", {fontCharacter: "\\eadc"});
  6199. Codicon.diffIgnored = new Codicon("diff-ignored", {fontCharacter: "\\eadd"});
  6200. Codicon.diffModified = new Codicon("diff-modified", {fontCharacter: "\\eade"});
  6201. Codicon.diffRemoved = new Codicon("diff-removed", {fontCharacter: "\\eadf"});
  6202. Codicon.diffRenamed = new Codicon("diff-renamed", {fontCharacter: "\\eae0"});
  6203. Codicon.diff = new Codicon("diff", {fontCharacter: "\\eae1"});
  6204. Codicon.discard = new Codicon("discard", {fontCharacter: "\\eae2"});
  6205. Codicon.editorLayout = new Codicon("editor-layout", {fontCharacter: "\\eae3"});
  6206. Codicon.emptyWindow = new Codicon("empty-window", {fontCharacter: "\\eae4"});
  6207. Codicon.exclude = new Codicon("exclude", {fontCharacter: "\\eae5"});
  6208. Codicon.extensions = new Codicon("extensions", {fontCharacter: "\\eae6"});
  6209. Codicon.eyeClosed = new Codicon("eye-closed", {fontCharacter: "\\eae7"});
  6210. Codicon.fileBinary = new Codicon("file-binary", {fontCharacter: "\\eae8"});
  6211. Codicon.fileCode = new Codicon("file-code", {fontCharacter: "\\eae9"});
  6212. Codicon.fileMedia = new Codicon("file-media", {fontCharacter: "\\eaea"});
  6213. Codicon.filePdf = new Codicon("file-pdf", {fontCharacter: "\\eaeb"});
  6214. Codicon.fileSubmodule = new Codicon("file-submodule", {fontCharacter: "\\eaec"});
  6215. Codicon.fileSymlinkDirectory = new Codicon("file-symlink-directory", {fontCharacter: "\\eaed"});
  6216. Codicon.fileSymlinkFile = new Codicon("file-symlink-file", {fontCharacter: "\\eaee"});
  6217. Codicon.fileZip = new Codicon("file-zip", {fontCharacter: "\\eaef"});
  6218. Codicon.files = new Codicon("files", {fontCharacter: "\\eaf0"});
  6219. Codicon.filter = new Codicon("filter", {fontCharacter: "\\eaf1"});
  6220. Codicon.flame = new Codicon("flame", {fontCharacter: "\\eaf2"});
  6221. Codicon.foldDown = new Codicon("fold-down", {fontCharacter: "\\eaf3"});
  6222. Codicon.foldUp = new Codicon("fold-up", {fontCharacter: "\\eaf4"});
  6223. Codicon.fold = new Codicon("fold", {fontCharacter: "\\eaf5"});
  6224. Codicon.folderActive = new Codicon("folder-active", {fontCharacter: "\\eaf6"});
  6225. Codicon.folderOpened = new Codicon("folder-opened", {fontCharacter: "\\eaf7"});
  6226. Codicon.gear = new Codicon("gear", {fontCharacter: "\\eaf8"});
  6227. Codicon.gift = new Codicon("gift", {fontCharacter: "\\eaf9"});
  6228. Codicon.gistSecret = new Codicon("gist-secret", {fontCharacter: "\\eafa"});
  6229. Codicon.gist = new Codicon("gist", {fontCharacter: "\\eafb"});
  6230. Codicon.gitCommit = new Codicon("git-commit", {fontCharacter: "\\eafc"});
  6231. Codicon.gitCompare = new Codicon("git-compare", {fontCharacter: "\\eafd"});
  6232. Codicon.gitMerge = new Codicon("git-merge", {fontCharacter: "\\eafe"});
  6233. Codicon.githubAction = new Codicon("github-action", {fontCharacter: "\\eaff"});
  6234. Codicon.githubAlt = new Codicon("github-alt", {fontCharacter: "\\eb00"});
  6235. Codicon.globe = new Codicon("globe", {fontCharacter: "\\eb01"});
  6236. Codicon.grabber = new Codicon("grabber", {fontCharacter: "\\eb02"});
  6237. Codicon.graph = new Codicon("graph", {fontCharacter: "\\eb03"});
  6238. Codicon.gripper = new Codicon("gripper", {fontCharacter: "\\eb04"});
  6239. Codicon.heart = new Codicon("heart", {fontCharacter: "\\eb05"});
  6240. Codicon.home = new Codicon("home", {fontCharacter: "\\eb06"});
  6241. Codicon.horizontalRule = new Codicon("horizontal-rule", {fontCharacter: "\\eb07"});
  6242. Codicon.hubot = new Codicon("hubot", {fontCharacter: "\\eb08"});
  6243. Codicon.inbox = new Codicon("inbox", {fontCharacter: "\\eb09"});
  6244. Codicon.issueClosed = new Codicon("issue-closed", {fontCharacter: "\\eba4"});
  6245. Codicon.issueReopened = new Codicon("issue-reopened", {fontCharacter: "\\eb0b"});
  6246. Codicon.issues = new Codicon("issues", {fontCharacter: "\\eb0c"});
  6247. Codicon.italic = new Codicon("italic", {fontCharacter: "\\eb0d"});
  6248. Codicon.jersey = new Codicon("jersey", {fontCharacter: "\\eb0e"});
  6249. Codicon.json = new Codicon("json", {fontCharacter: "\\eb0f"});
  6250. Codicon.kebabVertical = new Codicon("kebab-vertical", {fontCharacter: "\\eb10"});
  6251. Codicon.key = new Codicon("key", {fontCharacter: "\\eb11"});
  6252. Codicon.law = new Codicon("law", {fontCharacter: "\\eb12"});
  6253. Codicon.lightbulbAutofix = new Codicon("lightbulb-autofix", {fontCharacter: "\\eb13"});
  6254. Codicon.linkExternal = new Codicon("link-external", {fontCharacter: "\\eb14"});
  6255. Codicon.link = new Codicon("link", {fontCharacter: "\\eb15"});
  6256. Codicon.listOrdered = new Codicon("list-ordered", {fontCharacter: "\\eb16"});
  6257. Codicon.listUnordered = new Codicon("list-unordered", {fontCharacter: "\\eb17"});
  6258. Codicon.liveShare = new Codicon("live-share", {fontCharacter: "\\eb18"});
  6259. Codicon.loading = new Codicon("loading", {fontCharacter: "\\eb19"});
  6260. Codicon.location = new Codicon("location", {fontCharacter: "\\eb1a"});
  6261. Codicon.mailRead = new Codicon("mail-read", {fontCharacter: "\\eb1b"});
  6262. Codicon.mail = new Codicon("mail", {fontCharacter: "\\eb1c"});
  6263. Codicon.markdown = new Codicon("markdown", {fontCharacter: "\\eb1d"});
  6264. Codicon.megaphone = new Codicon("megaphone", {fontCharacter: "\\eb1e"});
  6265. Codicon.mention = new Codicon("mention", {fontCharacter: "\\eb1f"});
  6266. Codicon.milestone = new Codicon("milestone", {fontCharacter: "\\eb20"});
  6267. Codicon.mortarBoard = new Codicon("mortar-board", {fontCharacter: "\\eb21"});
  6268. Codicon.move = new Codicon("move", {fontCharacter: "\\eb22"});
  6269. Codicon.multipleWindows = new Codicon("multiple-windows", {fontCharacter: "\\eb23"});
  6270. Codicon.mute = new Codicon("mute", {fontCharacter: "\\eb24"});
  6271. Codicon.noNewline = new Codicon("no-newline", {fontCharacter: "\\eb25"});
  6272. Codicon.note = new Codicon("note", {fontCharacter: "\\eb26"});
  6273. Codicon.octoface = new Codicon("octoface", {fontCharacter: "\\eb27"});
  6274. Codicon.openPreview = new Codicon("open-preview", {fontCharacter: "\\eb28"});
  6275. Codicon.package_ = new Codicon("package", {fontCharacter: "\\eb29"});
  6276. Codicon.paintcan = new Codicon("paintcan", {fontCharacter: "\\eb2a"});
  6277. Codicon.pin = new Codicon("pin", {fontCharacter: "\\eb2b"});
  6278. Codicon.play = new Codicon("play", {fontCharacter: "\\eb2c"});
  6279. Codicon.run = new Codicon("run", {fontCharacter: "\\eb2c"});
  6280. Codicon.plug = new Codicon("plug", {fontCharacter: "\\eb2d"});
  6281. Codicon.preserveCase = new Codicon("preserve-case", {fontCharacter: "\\eb2e"});
  6282. Codicon.preview = new Codicon("preview", {fontCharacter: "\\eb2f"});
  6283. Codicon.project = new Codicon("project", {fontCharacter: "\\eb30"});
  6284. Codicon.pulse = new Codicon("pulse", {fontCharacter: "\\eb31"});
  6285. Codicon.question = new Codicon("question", {fontCharacter: "\\eb32"});
  6286. Codicon.quote = new Codicon("quote", {fontCharacter: "\\eb33"});
  6287. Codicon.radioTower = new Codicon("radio-tower", {fontCharacter: "\\eb34"});
  6288. Codicon.reactions = new Codicon("reactions", {fontCharacter: "\\eb35"});
  6289. Codicon.references = new Codicon("references", {fontCharacter: "\\eb36"});
  6290. Codicon.refresh = new Codicon("refresh", {fontCharacter: "\\eb37"});
  6291. Codicon.regex = new Codicon("regex", {fontCharacter: "\\eb38"});
  6292. Codicon.remoteExplorer = new Codicon("remote-explorer", {fontCharacter: "\\eb39"});
  6293. Codicon.remote = new Codicon("remote", {fontCharacter: "\\eb3a"});
  6294. Codicon.remove = new Codicon("remove", {fontCharacter: "\\eb3b"});
  6295. Codicon.replaceAll = new Codicon("replace-all", {fontCharacter: "\\eb3c"});
  6296. Codicon.replace = new Codicon("replace", {fontCharacter: "\\eb3d"});
  6297. Codicon.repoClone = new Codicon("repo-clone", {fontCharacter: "\\eb3e"});
  6298. Codicon.repoForcePush = new Codicon("repo-force-push", {fontCharacter: "\\eb3f"});
  6299. Codicon.repoPull = new Codicon("repo-pull", {fontCharacter: "\\eb40"});
  6300. Codicon.repoPush = new Codicon("repo-push", {fontCharacter: "\\eb41"});
  6301. Codicon.report = new Codicon("report", {fontCharacter: "\\eb42"});
  6302. Codicon.requestChanges = new Codicon("request-changes", {fontCharacter: "\\eb43"});
  6303. Codicon.rocket = new Codicon("rocket", {fontCharacter: "\\eb44"});
  6304. Codicon.rootFolderOpened = new Codicon("root-folder-opened", {fontCharacter: "\\eb45"});
  6305. Codicon.rootFolder = new Codicon("root-folder", {fontCharacter: "\\eb46"});
  6306. Codicon.rss = new Codicon("rss", {fontCharacter: "\\eb47"});
  6307. Codicon.ruby = new Codicon("ruby", {fontCharacter: "\\eb48"});
  6308. Codicon.saveAll = new Codicon("save-all", {fontCharacter: "\\eb49"});
  6309. Codicon.saveAs = new Codicon("save-as", {fontCharacter: "\\eb4a"});
  6310. Codicon.save = new Codicon("save", {fontCharacter: "\\eb4b"});
  6311. Codicon.screenFull = new Codicon("screen-full", {fontCharacter: "\\eb4c"});
  6312. Codicon.screenNormal = new Codicon("screen-normal", {fontCharacter: "\\eb4d"});
  6313. Codicon.searchStop = new Codicon("search-stop", {fontCharacter: "\\eb4e"});
  6314. Codicon.server = new Codicon("server", {fontCharacter: "\\eb50"});
  6315. Codicon.settingsGear = new Codicon("settings-gear", {fontCharacter: "\\eb51"});
  6316. Codicon.settings = new Codicon("settings", {fontCharacter: "\\eb52"});
  6317. Codicon.shield = new Codicon("shield", {fontCharacter: "\\eb53"});
  6318. Codicon.smiley = new Codicon("smiley", {fontCharacter: "\\eb54"});
  6319. Codicon.sortPrecedence = new Codicon("sort-precedence", {fontCharacter: "\\eb55"});
  6320. Codicon.splitHorizontal = new Codicon("split-horizontal", {fontCharacter: "\\eb56"});
  6321. Codicon.splitVertical = new Codicon("split-vertical", {fontCharacter: "\\eb57"});
  6322. Codicon.squirrel = new Codicon("squirrel", {fontCharacter: "\\eb58"});
  6323. Codicon.starFull = new Codicon("star-full", {fontCharacter: "\\eb59"});
  6324. Codicon.starHalf = new Codicon("star-half", {fontCharacter: "\\eb5a"});
  6325. Codicon.symbolClass = new Codicon("symbol-class", {fontCharacter: "\\eb5b"});
  6326. Codicon.symbolColor = new Codicon("symbol-color", {fontCharacter: "\\eb5c"});
  6327. Codicon.symbolCustomColor = new Codicon("symbol-customcolor", {fontCharacter: "\\eb5c"});
  6328. Codicon.symbolConstant = new Codicon("symbol-constant", {fontCharacter: "\\eb5d"});
  6329. Codicon.symbolEnumMember = new Codicon("symbol-enum-member", {fontCharacter: "\\eb5e"});
  6330. Codicon.symbolField = new Codicon("symbol-field", {fontCharacter: "\\eb5f"});
  6331. Codicon.symbolFile = new Codicon("symbol-file", {fontCharacter: "\\eb60"});
  6332. Codicon.symbolInterface = new Codicon("symbol-interface", {fontCharacter: "\\eb61"});
  6333. Codicon.symbolKeyword = new Codicon("symbol-keyword", {fontCharacter: "\\eb62"});
  6334. Codicon.symbolMisc = new Codicon("symbol-misc", {fontCharacter: "\\eb63"});
  6335. Codicon.symbolOperator = new Codicon("symbol-operator", {fontCharacter: "\\eb64"});
  6336. Codicon.symbolProperty = new Codicon("symbol-property", {fontCharacter: "\\eb65"});
  6337. Codicon.wrench = new Codicon("wrench", {fontCharacter: "\\eb65"});
  6338. Codicon.wrenchSubaction = new Codicon("wrench-subaction", {fontCharacter: "\\eb65"});
  6339. Codicon.symbolSnippet = new Codicon("symbol-snippet", {fontCharacter: "\\eb66"});
  6340. Codicon.tasklist = new Codicon("tasklist", {fontCharacter: "\\eb67"});
  6341. Codicon.telescope = new Codicon("telescope", {fontCharacter: "\\eb68"});
  6342. Codicon.textSize = new Codicon("text-size", {fontCharacter: "\\eb69"});
  6343. Codicon.threeBars = new Codicon("three-bars", {fontCharacter: "\\eb6a"});
  6344. Codicon.thumbsdown = new Codicon("thumbsdown", {fontCharacter: "\\eb6b"});
  6345. Codicon.thumbsup = new Codicon("thumbsup", {fontCharacter: "\\eb6c"});
  6346. Codicon.tools = new Codicon("tools", {fontCharacter: "\\eb6d"});
  6347. Codicon.triangleDown = new Codicon("triangle-down", {fontCharacter: "\\eb6e"});
  6348. Codicon.triangleLeft = new Codicon("triangle-left", {fontCharacter: "\\eb6f"});
  6349. Codicon.triangleRight = new Codicon("triangle-right", {fontCharacter: "\\eb70"});
  6350. Codicon.triangleUp = new Codicon("triangle-up", {fontCharacter: "\\eb71"});
  6351. Codicon.twitter = new Codicon("twitter", {fontCharacter: "\\eb72"});
  6352. Codicon.unfold = new Codicon("unfold", {fontCharacter: "\\eb73"});
  6353. Codicon.unlock = new Codicon("unlock", {fontCharacter: "\\eb74"});
  6354. Codicon.unmute = new Codicon("unmute", {fontCharacter: "\\eb75"});
  6355. Codicon.unverified = new Codicon("unverified", {fontCharacter: "\\eb76"});
  6356. Codicon.verified = new Codicon("verified", {fontCharacter: "\\eb77"});
  6357. Codicon.versions = new Codicon("versions", {fontCharacter: "\\eb78"});
  6358. Codicon.vmActive = new Codicon("vm-active", {fontCharacter: "\\eb79"});
  6359. Codicon.vmOutline = new Codicon("vm-outline", {fontCharacter: "\\eb7a"});
  6360. Codicon.vmRunning = new Codicon("vm-running", {fontCharacter: "\\eb7b"});
  6361. Codicon.watch = new Codicon("watch", {fontCharacter: "\\eb7c"});
  6362. Codicon.whitespace = new Codicon("whitespace", {fontCharacter: "\\eb7d"});
  6363. Codicon.wholeWord = new Codicon("whole-word", {fontCharacter: "\\eb7e"});
  6364. Codicon.window = new Codicon("window", {fontCharacter: "\\eb7f"});
  6365. Codicon.wordWrap = new Codicon("word-wrap", {fontCharacter: "\\eb80"});
  6366. Codicon.zoomIn = new Codicon("zoom-in", {fontCharacter: "\\eb81"});
  6367. Codicon.zoomOut = new Codicon("zoom-out", {fontCharacter: "\\eb82"});
  6368. Codicon.listFilter = new Codicon("list-filter", {fontCharacter: "\\eb83"});
  6369. Codicon.listFlat = new Codicon("list-flat", {fontCharacter: "\\eb84"});
  6370. Codicon.listSelection = new Codicon("list-selection", {fontCharacter: "\\eb85"});
  6371. Codicon.selection = new Codicon("selection", {fontCharacter: "\\eb85"});
  6372. Codicon.listTree = new Codicon("list-tree", {fontCharacter: "\\eb86"});
  6373. Codicon.debugBreakpointFunctionUnverified = new Codicon("debug-breakpoint-function-unverified", {fontCharacter: "\\eb87"});
  6374. Codicon.debugBreakpointFunction = new Codicon("debug-breakpoint-function", {fontCharacter: "\\eb88"});
  6375. Codicon.debugBreakpointFunctionDisabled = new Codicon("debug-breakpoint-function-disabled", {fontCharacter: "\\eb88"});
  6376. Codicon.debugStackframeActive = new Codicon("debug-stackframe-active", {fontCharacter: "\\eb89"});
  6377. Codicon.debugStackframeDot = new Codicon("debug-stackframe-dot", {fontCharacter: "\\eb8a"});
  6378. Codicon.debugStackframe = new Codicon("debug-stackframe", {fontCharacter: "\\eb8b"});
  6379. Codicon.debugStackframeFocused = new Codicon("debug-stackframe-focused", {fontCharacter: "\\eb8b"});
  6380. Codicon.debugBreakpointUnsupported = new Codicon("debug-breakpoint-unsupported", {fontCharacter: "\\eb8c"});
  6381. Codicon.symbolString = new Codicon("symbol-string", {fontCharacter: "\\eb8d"});
  6382. Codicon.debugReverseContinue = new Codicon("debug-reverse-continue", {fontCharacter: "\\eb8e"});
  6383. Codicon.debugStepBack = new Codicon("debug-step-back", {fontCharacter: "\\eb8f"});
  6384. Codicon.debugRestartFrame = new Codicon("debug-restart-frame", {fontCharacter: "\\eb90"});
  6385. Codicon.callIncoming = new Codicon("call-incoming", {fontCharacter: "\\eb92"});
  6386. Codicon.callOutgoing = new Codicon("call-outgoing", {fontCharacter: "\\eb93"});
  6387. Codicon.menu = new Codicon("menu", {fontCharacter: "\\eb94"});
  6388. Codicon.expandAll = new Codicon("expand-all", {fontCharacter: "\\eb95"});
  6389. Codicon.feedback = new Codicon("feedback", {fontCharacter: "\\eb96"});
  6390. Codicon.groupByRefType = new Codicon("group-by-ref-type", {fontCharacter: "\\eb97"});
  6391. Codicon.ungroupByRefType = new Codicon("ungroup-by-ref-type", {fontCharacter: "\\eb98"});
  6392. Codicon.account = new Codicon("account", {fontCharacter: "\\eb99"});
  6393. Codicon.bellDot = new Codicon("bell-dot", {fontCharacter: "\\eb9a"});
  6394. Codicon.debugConsole = new Codicon("debug-console", {fontCharacter: "\\eb9b"});
  6395. Codicon.library = new Codicon("library", {fontCharacter: "\\eb9c"});
  6396. Codicon.output = new Codicon("output", {fontCharacter: "\\eb9d"});
  6397. Codicon.runAll = new Codicon("run-all", {fontCharacter: "\\eb9e"});
  6398. Codicon.syncIgnored = new Codicon("sync-ignored", {fontCharacter: "\\eb9f"});
  6399. Codicon.pinned = new Codicon("pinned", {fontCharacter: "\\eba0"});
  6400. Codicon.githubInverted = new Codicon("github-inverted", {fontCharacter: "\\eba1"});
  6401. Codicon.debugAlt = new Codicon("debug-alt", {fontCharacter: "\\eb91"});
  6402. Codicon.serverProcess = new Codicon("server-process", {fontCharacter: "\\eba2"});
  6403. Codicon.serverEnvironment = new Codicon("server-environment", {fontCharacter: "\\eba3"});
  6404. Codicon.pass = new Codicon("pass", {fontCharacter: "\\eba4"});
  6405. Codicon.stopCircle = new Codicon("stop-circle", {fontCharacter: "\\eba5"});
  6406. Codicon.playCircle = new Codicon("play-circle", {fontCharacter: "\\eba6"});
  6407. Codicon.record = new Codicon("record", {fontCharacter: "\\eba7"});
  6408. Codicon.debugAltSmall = new Codicon("debug-alt-small", {fontCharacter: "\\eba8"});
  6409. Codicon.vmConnect = new Codicon("vm-connect", {fontCharacter: "\\eba9"});
  6410. Codicon.cloud = new Codicon("cloud", {fontCharacter: "\\ebaa"});
  6411. Codicon.merge = new Codicon("merge", {fontCharacter: "\\ebab"});
  6412. Codicon.exportIcon = new Codicon("export", {fontCharacter: "\\ebac"});
  6413. Codicon.graphLeft = new Codicon("graph-left", {fontCharacter: "\\ebad"});
  6414. Codicon.magnet = new Codicon("magnet", {fontCharacter: "\\ebae"});
  6415. Codicon.notebook = new Codicon("notebook", {fontCharacter: "\\ebaf"});
  6416. Codicon.redo = new Codicon("redo", {fontCharacter: "\\ebb0"});
  6417. Codicon.checkAll = new Codicon("check-all", {fontCharacter: "\\ebb1"});
  6418. Codicon.pinnedDirty = new Codicon("pinned-dirty", {fontCharacter: "\\ebb2"});
  6419. Codicon.passFilled = new Codicon("pass-filled", {fontCharacter: "\\ebb3"});
  6420. Codicon.circleLargeFilled = new Codicon("circle-large-filled", {fontCharacter: "\\ebb4"});
  6421. Codicon.circleLargeOutline = new Codicon("circle-large-outline", {fontCharacter: "\\ebb5"});
  6422. Codicon.combine = new Codicon("combine", {fontCharacter: "\\ebb6"});
  6423. Codicon.gather = new Codicon("gather", {fontCharacter: "\\ebb6"});
  6424. Codicon.table = new Codicon("table", {fontCharacter: "\\ebb7"});
  6425. Codicon.variableGroup = new Codicon("variable-group", {fontCharacter: "\\ebb8"});
  6426. Codicon.typeHierarchy = new Codicon("type-hierarchy", {fontCharacter: "\\ebb9"});
  6427. Codicon.typeHierarchySub = new Codicon("type-hierarchy-sub", {fontCharacter: "\\ebba"});
  6428. Codicon.typeHierarchySuper = new Codicon("type-hierarchy-super", {fontCharacter: "\\ebbb"});
  6429. Codicon.gitPullRequestCreate = new Codicon("git-pull-request-create", {fontCharacter: "\\ebbc"});
  6430. Codicon.runAbove = new Codicon("run-above", {fontCharacter: "\\ebbd"});
  6431. Codicon.runBelow = new Codicon("run-below", {fontCharacter: "\\ebbe"});
  6432. Codicon.notebookTemplate = new Codicon("notebook-template", {fontCharacter: "\\ebbf"});
  6433. Codicon.debugRerun = new Codicon("debug-rerun", {fontCharacter: "\\ebc0"});
  6434. Codicon.workspaceTrusted = new Codicon("workspace-trusted", {fontCharacter: "\\ebc1"});
  6435. Codicon.workspaceUntrusted = new Codicon("workspace-untrusted", {fontCharacter: "\\ebc2"});
  6436. Codicon.workspaceUnspecified = new Codicon("workspace-unspecified", {fontCharacter: "\\ebc3"});
  6437. Codicon.terminalCmd = new Codicon("terminal-cmd", {fontCharacter: "\\ebc4"});
  6438. Codicon.terminalDebian = new Codicon("terminal-debian", {fontCharacter: "\\ebc5"});
  6439. Codicon.terminalLinux = new Codicon("terminal-linux", {fontCharacter: "\\ebc6"});
  6440. Codicon.terminalPowershell = new Codicon("terminal-powershell", {fontCharacter: "\\ebc7"});
  6441. Codicon.terminalTmux = new Codicon("terminal-tmux", {fontCharacter: "\\ebc8"});
  6442. Codicon.terminalUbuntu = new Codicon("terminal-ubuntu", {fontCharacter: "\\ebc9"});
  6443. Codicon.terminalBash = new Codicon("terminal-bash", {fontCharacter: "\\ebca"});
  6444. Codicon.arrowSwap = new Codicon("arrow-swap", {fontCharacter: "\\ebcb"});
  6445. Codicon.copy = new Codicon("copy", {fontCharacter: "\\ebcc"});
  6446. Codicon.personAdd = new Codicon("person-add", {fontCharacter: "\\ebcd"});
  6447. Codicon.filterFilled = new Codicon("filter-filled", {fontCharacter: "\\ebce"});
  6448. Codicon.wand = new Codicon("wand", {fontCharacter: "\\ebcf"});
  6449. Codicon.debugLineByLine = new Codicon("debug-line-by-line", {fontCharacter: "\\ebd0"});
  6450. Codicon.inspect = new Codicon("inspect", {fontCharacter: "\\ebd1"});
  6451. Codicon.layers = new Codicon("layers", {fontCharacter: "\\ebd2"});
  6452. Codicon.layersDot = new Codicon("layers-dot", {fontCharacter: "\\ebd3"});
  6453. Codicon.layersActive = new Codicon("layers-active", {fontCharacter: "\\ebd4"});
  6454. Codicon.compass = new Codicon("compass", {fontCharacter: "\\ebd5"});
  6455. Codicon.compassDot = new Codicon("compass-dot", {fontCharacter: "\\ebd6"});
  6456. Codicon.compassActive = new Codicon("compass-active", {fontCharacter: "\\ebd7"});
  6457. Codicon.azure = new Codicon("azure", {fontCharacter: "\\ebd8"});
  6458. Codicon.issueDraft = new Codicon("issue-draft", {fontCharacter: "\\ebd9"});
  6459. Codicon.gitPullRequestClosed = new Codicon("git-pull-request-closed", {fontCharacter: "\\ebda"});
  6460. Codicon.gitPullRequestDraft = new Codicon("git-pull-request-draft", {fontCharacter: "\\ebdb"});
  6461. Codicon.debugAll = new Codicon("debug-all", {fontCharacter: "\\ebdc"});
  6462. Codicon.debugCoverage = new Codicon("debug-coverage", {fontCharacter: "\\ebdd"});
  6463. Codicon.runErrors = new Codicon("run-errors", {fontCharacter: "\\ebde"});
  6464. Codicon.folderLibrary = new Codicon("folder-library", {fontCharacter: "\\ebdf"});
  6465. Codicon.debugContinueSmall = new Codicon("debug-continue-small", {fontCharacter: "\\ebe0"});
  6466. Codicon.beakerStop = new Codicon("beaker-stop", {fontCharacter: "\\ebe1"});
  6467. Codicon.graphLine = new Codicon("graph-line", {fontCharacter: "\\ebe2"});
  6468. Codicon.graphScatter = new Codicon("graph-scatter", {fontCharacter: "\\ebe3"});
  6469. Codicon.pieChart = new Codicon("pie-chart", {fontCharacter: "\\ebe4"});
  6470. Codicon.bracket = new Codicon("bracket", Codicon.json.definition);
  6471. Codicon.bracketDot = new Codicon("bracket-dot", {fontCharacter: "\\ebe5"});
  6472. Codicon.bracketError = new Codicon("bracket-error", {fontCharacter: "\\ebe6"});
  6473. Codicon.lockSmall = new Codicon("lock-small", {fontCharacter: "\\ebe7"});
  6474. Codicon.azureDevops = new Codicon("azure-devops", {fontCharacter: "\\ebe8"});
  6475. Codicon.verifiedFilled = new Codicon("verified-filled", {fontCharacter: "\\ebe9"});
  6476. Codicon.newLine = new Codicon("newline", {fontCharacter: "\\ebea"});
  6477. Codicon.layout = new Codicon("layout", {fontCharacter: "\\ebeb"});
  6478. Codicon.layoutActivitybarLeft = new Codicon("layout-activitybar-left", {fontCharacter: "\\ebec"});
  6479. Codicon.layoutActivitybarRight = new Codicon("layout-activitybar-right", {fontCharacter: "\\ebed"});
  6480. Codicon.layoutPanelLeft = new Codicon("layout-panel-left", {fontCharacter: "\\ebee"});
  6481. Codicon.layoutPanelCenter = new Codicon("layout-panel-center", {fontCharacter: "\\ebef"});
  6482. Codicon.layoutPanelJustify = new Codicon("layout-panel-justify", {fontCharacter: "\\ebf0"});
  6483. Codicon.layoutPanelRight = new Codicon("layout-panel-right", {fontCharacter: "\\ebf1"});
  6484. Codicon.layoutPanel = new Codicon("layout-panel", {fontCharacter: "\\ebf2"});
  6485. Codicon.layoutSidebarLeft = new Codicon("layout-sidebar-left", {fontCharacter: "\\ebf3"});
  6486. Codicon.layoutSidebarRight = new Codicon("layout-sidebar-right", {fontCharacter: "\\ebf4"});
  6487. Codicon.layoutStatusbar = new Codicon("layout-statusbar", {fontCharacter: "\\ebf5"});
  6488. Codicon.layoutMenubar = new Codicon("layout-menubar", {fontCharacter: "\\ebf6"});
  6489. Codicon.layoutCentered = new Codicon("layout-centered", {fontCharacter: "\\ebf7"});
  6490. Codicon.target = new Codicon("target", {fontCharacter: "\\ebf8"});
  6491. Codicon.indent = new Codicon("indent", {fontCharacter: "\\ebf9"});
  6492. Codicon.recordSmall = new Codicon("record-small", {fontCharacter: "\\ebfa"});
  6493. Codicon.errorSmall = new Codicon("error-small", {fontCharacter: "\\ebfb"});
  6494. Codicon.arrowCircleDown = new Codicon("arrow-circle-down", {fontCharacter: "\\ebfc"});
  6495. Codicon.arrowCircleLeft = new Codicon("arrow-circle-left", {fontCharacter: "\\ebfd"});
  6496. Codicon.arrowCircleRight = new Codicon("arrow-circle-right", {fontCharacter: "\\ebfe"});
  6497. Codicon.arrowCircleUp = new Codicon("arrow-circle-up", {fontCharacter: "\\ebff"});
  6498. Codicon.dialogError = new Codicon("dialog-error", Codicon.error.definition);
  6499. Codicon.dialogWarning = new Codicon("dialog-warning", Codicon.warning.definition);
  6500. Codicon.dialogInfo = new Codicon("dialog-info", Codicon.info.definition);
  6501. Codicon.dialogClose = new Codicon("dialog-close", Codicon.close.definition);
  6502. Codicon.treeItemExpanded = new Codicon("tree-item-expanded", Codicon.chevronDown.definition);
  6503. Codicon.treeFilterOnTypeOn = new Codicon("tree-filter-on-type-on", Codicon.listFilter.definition);
  6504. Codicon.treeFilterOnTypeOff = new Codicon("tree-filter-on-type-off", Codicon.listSelection.definition);
  6505. Codicon.treeFilterClear = new Codicon("tree-filter-clear", Codicon.close.definition);
  6506. Codicon.treeItemLoading = new Codicon("tree-item-loading", Codicon.loading.definition);
  6507. Codicon.menuSelection = new Codicon("menu-selection", Codicon.check.definition);
  6508. Codicon.menuSubmenu = new Codicon("menu-submenu", Codicon.chevronRight.definition);
  6509. Codicon.menuBarMore = new Codicon("menubar-more", Codicon.more.definition);
  6510. Codicon.scrollbarButtonLeft = new Codicon("scrollbar-button-left", Codicon.triangleLeft.definition);
  6511. Codicon.scrollbarButtonRight = new Codicon("scrollbar-button-right", Codicon.triangleRight.definition);
  6512. Codicon.scrollbarButtonUp = new Codicon("scrollbar-button-up", Codicon.triangleUp.definition);
  6513. Codicon.scrollbarButtonDown = new Codicon("scrollbar-button-down", Codicon.triangleDown.definition);
  6514. Codicon.toolBarMore = new Codicon("toolbar-more", Codicon.more.definition);
  6515. Codicon.quickInputBack = new Codicon("quick-input-back", Codicon.arrowLeft.definition);
  6516. var CSSIcon;
  6517. (function(CSSIcon2) {
  6518. CSSIcon2.iconNameSegment = "[A-Za-z0-9]+";
  6519. CSSIcon2.iconNameExpression = "[A-Za-z0-9-]+";
  6520. CSSIcon2.iconModifierExpression = "~[A-Za-z]+";
  6521. CSSIcon2.iconNameCharacter = "[A-Za-z0-9~-]";
  6522. const cssIconIdRegex = new RegExp(`^(${CSSIcon2.iconNameExpression})(${CSSIcon2.iconModifierExpression})?$`);
  6523. function asClassNameArray(icon) {
  6524. if (icon instanceof Codicon) {
  6525. return ["codicon", "codicon-" + icon.id];
  6526. }
  6527. const match = cssIconIdRegex.exec(icon.id);
  6528. if (!match) {
  6529. return asClassNameArray(Codicon.error);
  6530. }
  6531. let [, id, modifier] = match;
  6532. const classNames = ["codicon", "codicon-" + id];
  6533. if (modifier) {
  6534. classNames.push("codicon-modifier-" + modifier.substr(1));
  6535. }
  6536. return classNames;
  6537. }
  6538. CSSIcon2.asClassNameArray = asClassNameArray;
  6539. function asClassName(icon) {
  6540. return asClassNameArray(icon).join(" ");
  6541. }
  6542. CSSIcon2.asClassName = asClassName;
  6543. function asCSSSelector(icon) {
  6544. return "." + asClassNameArray(icon).join(".");
  6545. }
  6546. CSSIcon2.asCSSSelector = asCSSSelector;
  6547. })(CSSIcon || (CSSIcon = {}));
  6548. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/languages.js
  6549. var Token = class {
  6550. constructor(offset, type, language) {
  6551. this._tokenBrand = void 0;
  6552. this.offset = offset;
  6553. this.type = type;
  6554. this.language = language;
  6555. }
  6556. toString() {
  6557. return "(" + this.offset + ", " + this.type + ")";
  6558. }
  6559. };
  6560. var CompletionItemKinds;
  6561. (function(CompletionItemKinds2) {
  6562. const byKind = new Map();
  6563. byKind.set(0, Codicon.symbolMethod);
  6564. byKind.set(1, Codicon.symbolFunction);
  6565. byKind.set(2, Codicon.symbolConstructor);
  6566. byKind.set(3, Codicon.symbolField);
  6567. byKind.set(4, Codicon.symbolVariable);
  6568. byKind.set(5, Codicon.symbolClass);
  6569. byKind.set(6, Codicon.symbolStruct);
  6570. byKind.set(7, Codicon.symbolInterface);
  6571. byKind.set(8, Codicon.symbolModule);
  6572. byKind.set(9, Codicon.symbolProperty);
  6573. byKind.set(10, Codicon.symbolEvent);
  6574. byKind.set(11, Codicon.symbolOperator);
  6575. byKind.set(12, Codicon.symbolUnit);
  6576. byKind.set(13, Codicon.symbolValue);
  6577. byKind.set(15, Codicon.symbolEnum);
  6578. byKind.set(14, Codicon.symbolConstant);
  6579. byKind.set(15, Codicon.symbolEnum);
  6580. byKind.set(16, Codicon.symbolEnumMember);
  6581. byKind.set(17, Codicon.symbolKeyword);
  6582. byKind.set(27, Codicon.symbolSnippet);
  6583. byKind.set(18, Codicon.symbolText);
  6584. byKind.set(19, Codicon.symbolColor);
  6585. byKind.set(20, Codicon.symbolFile);
  6586. byKind.set(21, Codicon.symbolReference);
  6587. byKind.set(22, Codicon.symbolCustomColor);
  6588. byKind.set(23, Codicon.symbolFolder);
  6589. byKind.set(24, Codicon.symbolTypeParameter);
  6590. byKind.set(25, Codicon.account);
  6591. byKind.set(26, Codicon.issues);
  6592. function toIcon(kind) {
  6593. let codicon = byKind.get(kind);
  6594. if (!codicon) {
  6595. console.info("No codicon found for CompletionItemKind " + kind);
  6596. codicon = Codicon.symbolProperty;
  6597. }
  6598. return codicon;
  6599. }
  6600. CompletionItemKinds2.toIcon = toIcon;
  6601. const data = new Map();
  6602. data.set("method", 0);
  6603. data.set("function", 1);
  6604. data.set("constructor", 2);
  6605. data.set("field", 3);
  6606. data.set("variable", 4);
  6607. data.set("class", 5);
  6608. data.set("struct", 6);
  6609. data.set("interface", 7);
  6610. data.set("module", 8);
  6611. data.set("property", 9);
  6612. data.set("event", 10);
  6613. data.set("operator", 11);
  6614. data.set("unit", 12);
  6615. data.set("value", 13);
  6616. data.set("constant", 14);
  6617. data.set("enum", 15);
  6618. data.set("enum-member", 16);
  6619. data.set("enumMember", 16);
  6620. data.set("keyword", 17);
  6621. data.set("snippet", 27);
  6622. data.set("text", 18);
  6623. data.set("color", 19);
  6624. data.set("file", 20);
  6625. data.set("reference", 21);
  6626. data.set("customcolor", 22);
  6627. data.set("folder", 23);
  6628. data.set("type-parameter", 24);
  6629. data.set("typeParameter", 24);
  6630. data.set("account", 25);
  6631. data.set("issue", 26);
  6632. function fromString(value, strict) {
  6633. let res = data.get(value);
  6634. if (typeof res === "undefined" && !strict) {
  6635. res = 9;
  6636. }
  6637. return res;
  6638. }
  6639. CompletionItemKinds2.fromString = fromString;
  6640. })(CompletionItemKinds || (CompletionItemKinds = {}));
  6641. var InlineCompletionTriggerKind;
  6642. (function(InlineCompletionTriggerKind3) {
  6643. InlineCompletionTriggerKind3[InlineCompletionTriggerKind3["Automatic"] = 0] = "Automatic";
  6644. InlineCompletionTriggerKind3[InlineCompletionTriggerKind3["Explicit"] = 1] = "Explicit";
  6645. })(InlineCompletionTriggerKind || (InlineCompletionTriggerKind = {}));
  6646. var SignatureHelpTriggerKind;
  6647. (function(SignatureHelpTriggerKind3) {
  6648. SignatureHelpTriggerKind3[SignatureHelpTriggerKind3["Invoke"] = 1] = "Invoke";
  6649. SignatureHelpTriggerKind3[SignatureHelpTriggerKind3["TriggerCharacter"] = 2] = "TriggerCharacter";
  6650. SignatureHelpTriggerKind3[SignatureHelpTriggerKind3["ContentChange"] = 3] = "ContentChange";
  6651. })(SignatureHelpTriggerKind || (SignatureHelpTriggerKind = {}));
  6652. var DocumentHighlightKind;
  6653. (function(DocumentHighlightKind3) {
  6654. DocumentHighlightKind3[DocumentHighlightKind3["Text"] = 0] = "Text";
  6655. DocumentHighlightKind3[DocumentHighlightKind3["Read"] = 1] = "Read";
  6656. DocumentHighlightKind3[DocumentHighlightKind3["Write"] = 2] = "Write";
  6657. })(DocumentHighlightKind || (DocumentHighlightKind = {}));
  6658. var SymbolKinds;
  6659. (function(SymbolKinds2) {
  6660. const byKind = new Map();
  6661. byKind.set(0, Codicon.symbolFile);
  6662. byKind.set(1, Codicon.symbolModule);
  6663. byKind.set(2, Codicon.symbolNamespace);
  6664. byKind.set(3, Codicon.symbolPackage);
  6665. byKind.set(4, Codicon.symbolClass);
  6666. byKind.set(5, Codicon.symbolMethod);
  6667. byKind.set(6, Codicon.symbolProperty);
  6668. byKind.set(7, Codicon.symbolField);
  6669. byKind.set(8, Codicon.symbolConstructor);
  6670. byKind.set(9, Codicon.symbolEnum);
  6671. byKind.set(10, Codicon.symbolInterface);
  6672. byKind.set(11, Codicon.symbolFunction);
  6673. byKind.set(12, Codicon.symbolVariable);
  6674. byKind.set(13, Codicon.symbolConstant);
  6675. byKind.set(14, Codicon.symbolString);
  6676. byKind.set(15, Codicon.symbolNumber);
  6677. byKind.set(16, Codicon.symbolBoolean);
  6678. byKind.set(17, Codicon.symbolArray);
  6679. byKind.set(18, Codicon.symbolObject);
  6680. byKind.set(19, Codicon.symbolKey);
  6681. byKind.set(20, Codicon.symbolNull);
  6682. byKind.set(21, Codicon.symbolEnumMember);
  6683. byKind.set(22, Codicon.symbolStruct);
  6684. byKind.set(23, Codicon.symbolEvent);
  6685. byKind.set(24, Codicon.symbolOperator);
  6686. byKind.set(25, Codicon.symbolTypeParameter);
  6687. function toIcon(kind) {
  6688. let icon = byKind.get(kind);
  6689. if (!icon) {
  6690. console.info("No codicon found for SymbolKind " + kind);
  6691. icon = Codicon.symbolProperty;
  6692. }
  6693. return icon;
  6694. }
  6695. SymbolKinds2.toIcon = toIcon;
  6696. })(SymbolKinds || (SymbolKinds = {}));
  6697. var FoldingRangeKind = class {
  6698. constructor(value) {
  6699. this.value = value;
  6700. }
  6701. };
  6702. FoldingRangeKind.Comment = new FoldingRangeKind("comment");
  6703. FoldingRangeKind.Imports = new FoldingRangeKind("imports");
  6704. FoldingRangeKind.Region = new FoldingRangeKind("region");
  6705. var Command;
  6706. (function(Command2) {
  6707. function is(obj) {
  6708. if (!obj || typeof obj !== "object") {
  6709. return false;
  6710. }
  6711. return typeof obj.id === "string" && typeof obj.title === "string";
  6712. }
  6713. Command2.is = is;
  6714. })(Command || (Command = {}));
  6715. var InlayHintKind;
  6716. (function(InlayHintKind3) {
  6717. InlayHintKind3[InlayHintKind3["Type"] = 1] = "Type";
  6718. InlayHintKind3[InlayHintKind3["Parameter"] = 2] = "Parameter";
  6719. })(InlayHintKind || (InlayHintKind = {}));
  6720. var TokenizationRegistry2 = new TokenizationRegistry();
  6721. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/standalone/standaloneEnums.js
  6722. var AccessibilitySupport;
  6723. (function(AccessibilitySupport2) {
  6724. AccessibilitySupport2[AccessibilitySupport2["Unknown"] = 0] = "Unknown";
  6725. AccessibilitySupport2[AccessibilitySupport2["Disabled"] = 1] = "Disabled";
  6726. AccessibilitySupport2[AccessibilitySupport2["Enabled"] = 2] = "Enabled";
  6727. })(AccessibilitySupport || (AccessibilitySupport = {}));
  6728. var CompletionItemInsertTextRule;
  6729. (function(CompletionItemInsertTextRule2) {
  6730. CompletionItemInsertTextRule2[CompletionItemInsertTextRule2["KeepWhitespace"] = 1] = "KeepWhitespace";
  6731. CompletionItemInsertTextRule2[CompletionItemInsertTextRule2["InsertAsSnippet"] = 4] = "InsertAsSnippet";
  6732. })(CompletionItemInsertTextRule || (CompletionItemInsertTextRule = {}));
  6733. var CompletionItemKind;
  6734. (function(CompletionItemKind2) {
  6735. CompletionItemKind2[CompletionItemKind2["Method"] = 0] = "Method";
  6736. CompletionItemKind2[CompletionItemKind2["Function"] = 1] = "Function";
  6737. CompletionItemKind2[CompletionItemKind2["Constructor"] = 2] = "Constructor";
  6738. CompletionItemKind2[CompletionItemKind2["Field"] = 3] = "Field";
  6739. CompletionItemKind2[CompletionItemKind2["Variable"] = 4] = "Variable";
  6740. CompletionItemKind2[CompletionItemKind2["Class"] = 5] = "Class";
  6741. CompletionItemKind2[CompletionItemKind2["Struct"] = 6] = "Struct";
  6742. CompletionItemKind2[CompletionItemKind2["Interface"] = 7] = "Interface";
  6743. CompletionItemKind2[CompletionItemKind2["Module"] = 8] = "Module";
  6744. CompletionItemKind2[CompletionItemKind2["Property"] = 9] = "Property";
  6745. CompletionItemKind2[CompletionItemKind2["Event"] = 10] = "Event";
  6746. CompletionItemKind2[CompletionItemKind2["Operator"] = 11] = "Operator";
  6747. CompletionItemKind2[CompletionItemKind2["Unit"] = 12] = "Unit";
  6748. CompletionItemKind2[CompletionItemKind2["Value"] = 13] = "Value";
  6749. CompletionItemKind2[CompletionItemKind2["Constant"] = 14] = "Constant";
  6750. CompletionItemKind2[CompletionItemKind2["Enum"] = 15] = "Enum";
  6751. CompletionItemKind2[CompletionItemKind2["EnumMember"] = 16] = "EnumMember";
  6752. CompletionItemKind2[CompletionItemKind2["Keyword"] = 17] = "Keyword";
  6753. CompletionItemKind2[CompletionItemKind2["Text"] = 18] = "Text";
  6754. CompletionItemKind2[CompletionItemKind2["Color"] = 19] = "Color";
  6755. CompletionItemKind2[CompletionItemKind2["File"] = 20] = "File";
  6756. CompletionItemKind2[CompletionItemKind2["Reference"] = 21] = "Reference";
  6757. CompletionItemKind2[CompletionItemKind2["Customcolor"] = 22] = "Customcolor";
  6758. CompletionItemKind2[CompletionItemKind2["Folder"] = 23] = "Folder";
  6759. CompletionItemKind2[CompletionItemKind2["TypeParameter"] = 24] = "TypeParameter";
  6760. CompletionItemKind2[CompletionItemKind2["User"] = 25] = "User";
  6761. CompletionItemKind2[CompletionItemKind2["Issue"] = 26] = "Issue";
  6762. CompletionItemKind2[CompletionItemKind2["Snippet"] = 27] = "Snippet";
  6763. })(CompletionItemKind || (CompletionItemKind = {}));
  6764. var CompletionItemTag;
  6765. (function(CompletionItemTag2) {
  6766. CompletionItemTag2[CompletionItemTag2["Deprecated"] = 1] = "Deprecated";
  6767. })(CompletionItemTag || (CompletionItemTag = {}));
  6768. var CompletionTriggerKind;
  6769. (function(CompletionTriggerKind2) {
  6770. CompletionTriggerKind2[CompletionTriggerKind2["Invoke"] = 0] = "Invoke";
  6771. CompletionTriggerKind2[CompletionTriggerKind2["TriggerCharacter"] = 1] = "TriggerCharacter";
  6772. CompletionTriggerKind2[CompletionTriggerKind2["TriggerForIncompleteCompletions"] = 2] = "TriggerForIncompleteCompletions";
  6773. })(CompletionTriggerKind || (CompletionTriggerKind = {}));
  6774. var ContentWidgetPositionPreference;
  6775. (function(ContentWidgetPositionPreference2) {
  6776. ContentWidgetPositionPreference2[ContentWidgetPositionPreference2["EXACT"] = 0] = "EXACT";
  6777. ContentWidgetPositionPreference2[ContentWidgetPositionPreference2["ABOVE"] = 1] = "ABOVE";
  6778. ContentWidgetPositionPreference2[ContentWidgetPositionPreference2["BELOW"] = 2] = "BELOW";
  6779. })(ContentWidgetPositionPreference || (ContentWidgetPositionPreference = {}));
  6780. var CursorChangeReason;
  6781. (function(CursorChangeReason2) {
  6782. CursorChangeReason2[CursorChangeReason2["NotSet"] = 0] = "NotSet";
  6783. CursorChangeReason2[CursorChangeReason2["ContentFlush"] = 1] = "ContentFlush";
  6784. CursorChangeReason2[CursorChangeReason2["RecoverFromMarkers"] = 2] = "RecoverFromMarkers";
  6785. CursorChangeReason2[CursorChangeReason2["Explicit"] = 3] = "Explicit";
  6786. CursorChangeReason2[CursorChangeReason2["Paste"] = 4] = "Paste";
  6787. CursorChangeReason2[CursorChangeReason2["Undo"] = 5] = "Undo";
  6788. CursorChangeReason2[CursorChangeReason2["Redo"] = 6] = "Redo";
  6789. })(CursorChangeReason || (CursorChangeReason = {}));
  6790. var DefaultEndOfLine;
  6791. (function(DefaultEndOfLine2) {
  6792. DefaultEndOfLine2[DefaultEndOfLine2["LF"] = 1] = "LF";
  6793. DefaultEndOfLine2[DefaultEndOfLine2["CRLF"] = 2] = "CRLF";
  6794. })(DefaultEndOfLine || (DefaultEndOfLine = {}));
  6795. var DocumentHighlightKind2;
  6796. (function(DocumentHighlightKind3) {
  6797. DocumentHighlightKind3[DocumentHighlightKind3["Text"] = 0] = "Text";
  6798. DocumentHighlightKind3[DocumentHighlightKind3["Read"] = 1] = "Read";
  6799. DocumentHighlightKind3[DocumentHighlightKind3["Write"] = 2] = "Write";
  6800. })(DocumentHighlightKind2 || (DocumentHighlightKind2 = {}));
  6801. var EditorAutoIndentStrategy;
  6802. (function(EditorAutoIndentStrategy2) {
  6803. EditorAutoIndentStrategy2[EditorAutoIndentStrategy2["None"] = 0] = "None";
  6804. EditorAutoIndentStrategy2[EditorAutoIndentStrategy2["Keep"] = 1] = "Keep";
  6805. EditorAutoIndentStrategy2[EditorAutoIndentStrategy2["Brackets"] = 2] = "Brackets";
  6806. EditorAutoIndentStrategy2[EditorAutoIndentStrategy2["Advanced"] = 3] = "Advanced";
  6807. EditorAutoIndentStrategy2[EditorAutoIndentStrategy2["Full"] = 4] = "Full";
  6808. })(EditorAutoIndentStrategy || (EditorAutoIndentStrategy = {}));
  6809. var EditorOption;
  6810. (function(EditorOption2) {
  6811. EditorOption2[EditorOption2["acceptSuggestionOnCommitCharacter"] = 0] = "acceptSuggestionOnCommitCharacter";
  6812. EditorOption2[EditorOption2["acceptSuggestionOnEnter"] = 1] = "acceptSuggestionOnEnter";
  6813. EditorOption2[EditorOption2["accessibilitySupport"] = 2] = "accessibilitySupport";
  6814. EditorOption2[EditorOption2["accessibilityPageSize"] = 3] = "accessibilityPageSize";
  6815. EditorOption2[EditorOption2["ariaLabel"] = 4] = "ariaLabel";
  6816. EditorOption2[EditorOption2["autoClosingBrackets"] = 5] = "autoClosingBrackets";
  6817. EditorOption2[EditorOption2["autoClosingDelete"] = 6] = "autoClosingDelete";
  6818. EditorOption2[EditorOption2["autoClosingOvertype"] = 7] = "autoClosingOvertype";
  6819. EditorOption2[EditorOption2["autoClosingQuotes"] = 8] = "autoClosingQuotes";
  6820. EditorOption2[EditorOption2["autoIndent"] = 9] = "autoIndent";
  6821. EditorOption2[EditorOption2["automaticLayout"] = 10] = "automaticLayout";
  6822. EditorOption2[EditorOption2["autoSurround"] = 11] = "autoSurround";
  6823. EditorOption2[EditorOption2["bracketPairColorization"] = 12] = "bracketPairColorization";
  6824. EditorOption2[EditorOption2["guides"] = 13] = "guides";
  6825. EditorOption2[EditorOption2["codeLens"] = 14] = "codeLens";
  6826. EditorOption2[EditorOption2["codeLensFontFamily"] = 15] = "codeLensFontFamily";
  6827. EditorOption2[EditorOption2["codeLensFontSize"] = 16] = "codeLensFontSize";
  6828. EditorOption2[EditorOption2["colorDecorators"] = 17] = "colorDecorators";
  6829. EditorOption2[EditorOption2["columnSelection"] = 18] = "columnSelection";
  6830. EditorOption2[EditorOption2["comments"] = 19] = "comments";
  6831. EditorOption2[EditorOption2["contextmenu"] = 20] = "contextmenu";
  6832. EditorOption2[EditorOption2["copyWithSyntaxHighlighting"] = 21] = "copyWithSyntaxHighlighting";
  6833. EditorOption2[EditorOption2["cursorBlinking"] = 22] = "cursorBlinking";
  6834. EditorOption2[EditorOption2["cursorSmoothCaretAnimation"] = 23] = "cursorSmoothCaretAnimation";
  6835. EditorOption2[EditorOption2["cursorStyle"] = 24] = "cursorStyle";
  6836. EditorOption2[EditorOption2["cursorSurroundingLines"] = 25] = "cursorSurroundingLines";
  6837. EditorOption2[EditorOption2["cursorSurroundingLinesStyle"] = 26] = "cursorSurroundingLinesStyle";
  6838. EditorOption2[EditorOption2["cursorWidth"] = 27] = "cursorWidth";
  6839. EditorOption2[EditorOption2["disableLayerHinting"] = 28] = "disableLayerHinting";
  6840. EditorOption2[EditorOption2["disableMonospaceOptimizations"] = 29] = "disableMonospaceOptimizations";
  6841. EditorOption2[EditorOption2["domReadOnly"] = 30] = "domReadOnly";
  6842. EditorOption2[EditorOption2["dragAndDrop"] = 31] = "dragAndDrop";
  6843. EditorOption2[EditorOption2["emptySelectionClipboard"] = 32] = "emptySelectionClipboard";
  6844. EditorOption2[EditorOption2["extraEditorClassName"] = 33] = "extraEditorClassName";
  6845. EditorOption2[EditorOption2["fastScrollSensitivity"] = 34] = "fastScrollSensitivity";
  6846. EditorOption2[EditorOption2["find"] = 35] = "find";
  6847. EditorOption2[EditorOption2["fixedOverflowWidgets"] = 36] = "fixedOverflowWidgets";
  6848. EditorOption2[EditorOption2["folding"] = 37] = "folding";
  6849. EditorOption2[EditorOption2["foldingStrategy"] = 38] = "foldingStrategy";
  6850. EditorOption2[EditorOption2["foldingHighlight"] = 39] = "foldingHighlight";
  6851. EditorOption2[EditorOption2["foldingImportsByDefault"] = 40] = "foldingImportsByDefault";
  6852. EditorOption2[EditorOption2["foldingMaximumRegions"] = 41] = "foldingMaximumRegions";
  6853. EditorOption2[EditorOption2["unfoldOnClickAfterEndOfLine"] = 42] = "unfoldOnClickAfterEndOfLine";
  6854. EditorOption2[EditorOption2["fontFamily"] = 43] = "fontFamily";
  6855. EditorOption2[EditorOption2["fontInfo"] = 44] = "fontInfo";
  6856. EditorOption2[EditorOption2["fontLigatures"] = 45] = "fontLigatures";
  6857. EditorOption2[EditorOption2["fontSize"] = 46] = "fontSize";
  6858. EditorOption2[EditorOption2["fontWeight"] = 47] = "fontWeight";
  6859. EditorOption2[EditorOption2["formatOnPaste"] = 48] = "formatOnPaste";
  6860. EditorOption2[EditorOption2["formatOnType"] = 49] = "formatOnType";
  6861. EditorOption2[EditorOption2["glyphMargin"] = 50] = "glyphMargin";
  6862. EditorOption2[EditorOption2["gotoLocation"] = 51] = "gotoLocation";
  6863. EditorOption2[EditorOption2["hideCursorInOverviewRuler"] = 52] = "hideCursorInOverviewRuler";
  6864. EditorOption2[EditorOption2["hover"] = 53] = "hover";
  6865. EditorOption2[EditorOption2["inDiffEditor"] = 54] = "inDiffEditor";
  6866. EditorOption2[EditorOption2["inlineSuggest"] = 55] = "inlineSuggest";
  6867. EditorOption2[EditorOption2["letterSpacing"] = 56] = "letterSpacing";
  6868. EditorOption2[EditorOption2["lightbulb"] = 57] = "lightbulb";
  6869. EditorOption2[EditorOption2["lineDecorationsWidth"] = 58] = "lineDecorationsWidth";
  6870. EditorOption2[EditorOption2["lineHeight"] = 59] = "lineHeight";
  6871. EditorOption2[EditorOption2["lineNumbers"] = 60] = "lineNumbers";
  6872. EditorOption2[EditorOption2["lineNumbersMinChars"] = 61] = "lineNumbersMinChars";
  6873. EditorOption2[EditorOption2["linkedEditing"] = 62] = "linkedEditing";
  6874. EditorOption2[EditorOption2["links"] = 63] = "links";
  6875. EditorOption2[EditorOption2["matchBrackets"] = 64] = "matchBrackets";
  6876. EditorOption2[EditorOption2["minimap"] = 65] = "minimap";
  6877. EditorOption2[EditorOption2["mouseStyle"] = 66] = "mouseStyle";
  6878. EditorOption2[EditorOption2["mouseWheelScrollSensitivity"] = 67] = "mouseWheelScrollSensitivity";
  6879. EditorOption2[EditorOption2["mouseWheelZoom"] = 68] = "mouseWheelZoom";
  6880. EditorOption2[EditorOption2["multiCursorMergeOverlapping"] = 69] = "multiCursorMergeOverlapping";
  6881. EditorOption2[EditorOption2["multiCursorModifier"] = 70] = "multiCursorModifier";
  6882. EditorOption2[EditorOption2["multiCursorPaste"] = 71] = "multiCursorPaste";
  6883. EditorOption2[EditorOption2["occurrencesHighlight"] = 72] = "occurrencesHighlight";
  6884. EditorOption2[EditorOption2["overviewRulerBorder"] = 73] = "overviewRulerBorder";
  6885. EditorOption2[EditorOption2["overviewRulerLanes"] = 74] = "overviewRulerLanes";
  6886. EditorOption2[EditorOption2["padding"] = 75] = "padding";
  6887. EditorOption2[EditorOption2["parameterHints"] = 76] = "parameterHints";
  6888. EditorOption2[EditorOption2["peekWidgetDefaultFocus"] = 77] = "peekWidgetDefaultFocus";
  6889. EditorOption2[EditorOption2["definitionLinkOpensInPeek"] = 78] = "definitionLinkOpensInPeek";
  6890. EditorOption2[EditorOption2["quickSuggestions"] = 79] = "quickSuggestions";
  6891. EditorOption2[EditorOption2["quickSuggestionsDelay"] = 80] = "quickSuggestionsDelay";
  6892. EditorOption2[EditorOption2["readOnly"] = 81] = "readOnly";
  6893. EditorOption2[EditorOption2["renameOnType"] = 82] = "renameOnType";
  6894. EditorOption2[EditorOption2["renderControlCharacters"] = 83] = "renderControlCharacters";
  6895. EditorOption2[EditorOption2["renderFinalNewline"] = 84] = "renderFinalNewline";
  6896. EditorOption2[EditorOption2["renderLineHighlight"] = 85] = "renderLineHighlight";
  6897. EditorOption2[EditorOption2["renderLineHighlightOnlyWhenFocus"] = 86] = "renderLineHighlightOnlyWhenFocus";
  6898. EditorOption2[EditorOption2["renderValidationDecorations"] = 87] = "renderValidationDecorations";
  6899. EditorOption2[EditorOption2["renderWhitespace"] = 88] = "renderWhitespace";
  6900. EditorOption2[EditorOption2["revealHorizontalRightPadding"] = 89] = "revealHorizontalRightPadding";
  6901. EditorOption2[EditorOption2["roundedSelection"] = 90] = "roundedSelection";
  6902. EditorOption2[EditorOption2["rulers"] = 91] = "rulers";
  6903. EditorOption2[EditorOption2["scrollbar"] = 92] = "scrollbar";
  6904. EditorOption2[EditorOption2["scrollBeyondLastColumn"] = 93] = "scrollBeyondLastColumn";
  6905. EditorOption2[EditorOption2["scrollBeyondLastLine"] = 94] = "scrollBeyondLastLine";
  6906. EditorOption2[EditorOption2["scrollPredominantAxis"] = 95] = "scrollPredominantAxis";
  6907. EditorOption2[EditorOption2["selectionClipboard"] = 96] = "selectionClipboard";
  6908. EditorOption2[EditorOption2["selectionHighlight"] = 97] = "selectionHighlight";
  6909. EditorOption2[EditorOption2["selectOnLineNumbers"] = 98] = "selectOnLineNumbers";
  6910. EditorOption2[EditorOption2["showFoldingControls"] = 99] = "showFoldingControls";
  6911. EditorOption2[EditorOption2["showUnused"] = 100] = "showUnused";
  6912. EditorOption2[EditorOption2["snippetSuggestions"] = 101] = "snippetSuggestions";
  6913. EditorOption2[EditorOption2["smartSelect"] = 102] = "smartSelect";
  6914. EditorOption2[EditorOption2["smoothScrolling"] = 103] = "smoothScrolling";
  6915. EditorOption2[EditorOption2["stickyTabStops"] = 104] = "stickyTabStops";
  6916. EditorOption2[EditorOption2["stopRenderingLineAfter"] = 105] = "stopRenderingLineAfter";
  6917. EditorOption2[EditorOption2["suggest"] = 106] = "suggest";
  6918. EditorOption2[EditorOption2["suggestFontSize"] = 107] = "suggestFontSize";
  6919. EditorOption2[EditorOption2["suggestLineHeight"] = 108] = "suggestLineHeight";
  6920. EditorOption2[EditorOption2["suggestOnTriggerCharacters"] = 109] = "suggestOnTriggerCharacters";
  6921. EditorOption2[EditorOption2["suggestSelection"] = 110] = "suggestSelection";
  6922. EditorOption2[EditorOption2["tabCompletion"] = 111] = "tabCompletion";
  6923. EditorOption2[EditorOption2["tabIndex"] = 112] = "tabIndex";
  6924. EditorOption2[EditorOption2["unicodeHighlighting"] = 113] = "unicodeHighlighting";
  6925. EditorOption2[EditorOption2["unusualLineTerminators"] = 114] = "unusualLineTerminators";
  6926. EditorOption2[EditorOption2["useShadowDOM"] = 115] = "useShadowDOM";
  6927. EditorOption2[EditorOption2["useTabStops"] = 116] = "useTabStops";
  6928. EditorOption2[EditorOption2["wordSeparators"] = 117] = "wordSeparators";
  6929. EditorOption2[EditorOption2["wordWrap"] = 118] = "wordWrap";
  6930. EditorOption2[EditorOption2["wordWrapBreakAfterCharacters"] = 119] = "wordWrapBreakAfterCharacters";
  6931. EditorOption2[EditorOption2["wordWrapBreakBeforeCharacters"] = 120] = "wordWrapBreakBeforeCharacters";
  6932. EditorOption2[EditorOption2["wordWrapColumn"] = 121] = "wordWrapColumn";
  6933. EditorOption2[EditorOption2["wordWrapOverride1"] = 122] = "wordWrapOverride1";
  6934. EditorOption2[EditorOption2["wordWrapOverride2"] = 123] = "wordWrapOverride2";
  6935. EditorOption2[EditorOption2["wrappingIndent"] = 124] = "wrappingIndent";
  6936. EditorOption2[EditorOption2["wrappingStrategy"] = 125] = "wrappingStrategy";
  6937. EditorOption2[EditorOption2["showDeprecated"] = 126] = "showDeprecated";
  6938. EditorOption2[EditorOption2["inlayHints"] = 127] = "inlayHints";
  6939. EditorOption2[EditorOption2["editorClassName"] = 128] = "editorClassName";
  6940. EditorOption2[EditorOption2["pixelRatio"] = 129] = "pixelRatio";
  6941. EditorOption2[EditorOption2["tabFocusMode"] = 130] = "tabFocusMode";
  6942. EditorOption2[EditorOption2["layoutInfo"] = 131] = "layoutInfo";
  6943. EditorOption2[EditorOption2["wrappingInfo"] = 132] = "wrappingInfo";
  6944. })(EditorOption || (EditorOption = {}));
  6945. var EndOfLinePreference;
  6946. (function(EndOfLinePreference2) {
  6947. EndOfLinePreference2[EndOfLinePreference2["TextDefined"] = 0] = "TextDefined";
  6948. EndOfLinePreference2[EndOfLinePreference2["LF"] = 1] = "LF";
  6949. EndOfLinePreference2[EndOfLinePreference2["CRLF"] = 2] = "CRLF";
  6950. })(EndOfLinePreference || (EndOfLinePreference = {}));
  6951. var EndOfLineSequence;
  6952. (function(EndOfLineSequence2) {
  6953. EndOfLineSequence2[EndOfLineSequence2["LF"] = 0] = "LF";
  6954. EndOfLineSequence2[EndOfLineSequence2["CRLF"] = 1] = "CRLF";
  6955. })(EndOfLineSequence || (EndOfLineSequence = {}));
  6956. var IndentAction;
  6957. (function(IndentAction2) {
  6958. IndentAction2[IndentAction2["None"] = 0] = "None";
  6959. IndentAction2[IndentAction2["Indent"] = 1] = "Indent";
  6960. IndentAction2[IndentAction2["IndentOutdent"] = 2] = "IndentOutdent";
  6961. IndentAction2[IndentAction2["Outdent"] = 3] = "Outdent";
  6962. })(IndentAction || (IndentAction = {}));
  6963. var InjectedTextCursorStops;
  6964. (function(InjectedTextCursorStops3) {
  6965. InjectedTextCursorStops3[InjectedTextCursorStops3["Both"] = 0] = "Both";
  6966. InjectedTextCursorStops3[InjectedTextCursorStops3["Right"] = 1] = "Right";
  6967. InjectedTextCursorStops3[InjectedTextCursorStops3["Left"] = 2] = "Left";
  6968. InjectedTextCursorStops3[InjectedTextCursorStops3["None"] = 3] = "None";
  6969. })(InjectedTextCursorStops || (InjectedTextCursorStops = {}));
  6970. var InlayHintKind2;
  6971. (function(InlayHintKind3) {
  6972. InlayHintKind3[InlayHintKind3["Type"] = 1] = "Type";
  6973. InlayHintKind3[InlayHintKind3["Parameter"] = 2] = "Parameter";
  6974. })(InlayHintKind2 || (InlayHintKind2 = {}));
  6975. var InlineCompletionTriggerKind2;
  6976. (function(InlineCompletionTriggerKind3) {
  6977. InlineCompletionTriggerKind3[InlineCompletionTriggerKind3["Automatic"] = 0] = "Automatic";
  6978. InlineCompletionTriggerKind3[InlineCompletionTriggerKind3["Explicit"] = 1] = "Explicit";
  6979. })(InlineCompletionTriggerKind2 || (InlineCompletionTriggerKind2 = {}));
  6980. var KeyCode;
  6981. (function(KeyCode2) {
  6982. KeyCode2[KeyCode2["DependsOnKbLayout"] = -1] = "DependsOnKbLayout";
  6983. KeyCode2[KeyCode2["Unknown"] = 0] = "Unknown";
  6984. KeyCode2[KeyCode2["Backspace"] = 1] = "Backspace";
  6985. KeyCode2[KeyCode2["Tab"] = 2] = "Tab";
  6986. KeyCode2[KeyCode2["Enter"] = 3] = "Enter";
  6987. KeyCode2[KeyCode2["Shift"] = 4] = "Shift";
  6988. KeyCode2[KeyCode2["Ctrl"] = 5] = "Ctrl";
  6989. KeyCode2[KeyCode2["Alt"] = 6] = "Alt";
  6990. KeyCode2[KeyCode2["PauseBreak"] = 7] = "PauseBreak";
  6991. KeyCode2[KeyCode2["CapsLock"] = 8] = "CapsLock";
  6992. KeyCode2[KeyCode2["Escape"] = 9] = "Escape";
  6993. KeyCode2[KeyCode2["Space"] = 10] = "Space";
  6994. KeyCode2[KeyCode2["PageUp"] = 11] = "PageUp";
  6995. KeyCode2[KeyCode2["PageDown"] = 12] = "PageDown";
  6996. KeyCode2[KeyCode2["End"] = 13] = "End";
  6997. KeyCode2[KeyCode2["Home"] = 14] = "Home";
  6998. KeyCode2[KeyCode2["LeftArrow"] = 15] = "LeftArrow";
  6999. KeyCode2[KeyCode2["UpArrow"] = 16] = "UpArrow";
  7000. KeyCode2[KeyCode2["RightArrow"] = 17] = "RightArrow";
  7001. KeyCode2[KeyCode2["DownArrow"] = 18] = "DownArrow";
  7002. KeyCode2[KeyCode2["Insert"] = 19] = "Insert";
  7003. KeyCode2[KeyCode2["Delete"] = 20] = "Delete";
  7004. KeyCode2[KeyCode2["Digit0"] = 21] = "Digit0";
  7005. KeyCode2[KeyCode2["Digit1"] = 22] = "Digit1";
  7006. KeyCode2[KeyCode2["Digit2"] = 23] = "Digit2";
  7007. KeyCode2[KeyCode2["Digit3"] = 24] = "Digit3";
  7008. KeyCode2[KeyCode2["Digit4"] = 25] = "Digit4";
  7009. KeyCode2[KeyCode2["Digit5"] = 26] = "Digit5";
  7010. KeyCode2[KeyCode2["Digit6"] = 27] = "Digit6";
  7011. KeyCode2[KeyCode2["Digit7"] = 28] = "Digit7";
  7012. KeyCode2[KeyCode2["Digit8"] = 29] = "Digit8";
  7013. KeyCode2[KeyCode2["Digit9"] = 30] = "Digit9";
  7014. KeyCode2[KeyCode2["KeyA"] = 31] = "KeyA";
  7015. KeyCode2[KeyCode2["KeyB"] = 32] = "KeyB";
  7016. KeyCode2[KeyCode2["KeyC"] = 33] = "KeyC";
  7017. KeyCode2[KeyCode2["KeyD"] = 34] = "KeyD";
  7018. KeyCode2[KeyCode2["KeyE"] = 35] = "KeyE";
  7019. KeyCode2[KeyCode2["KeyF"] = 36] = "KeyF";
  7020. KeyCode2[KeyCode2["KeyG"] = 37] = "KeyG";
  7021. KeyCode2[KeyCode2["KeyH"] = 38] = "KeyH";
  7022. KeyCode2[KeyCode2["KeyI"] = 39] = "KeyI";
  7023. KeyCode2[KeyCode2["KeyJ"] = 40] = "KeyJ";
  7024. KeyCode2[KeyCode2["KeyK"] = 41] = "KeyK";
  7025. KeyCode2[KeyCode2["KeyL"] = 42] = "KeyL";
  7026. KeyCode2[KeyCode2["KeyM"] = 43] = "KeyM";
  7027. KeyCode2[KeyCode2["KeyN"] = 44] = "KeyN";
  7028. KeyCode2[KeyCode2["KeyO"] = 45] = "KeyO";
  7029. KeyCode2[KeyCode2["KeyP"] = 46] = "KeyP";
  7030. KeyCode2[KeyCode2["KeyQ"] = 47] = "KeyQ";
  7031. KeyCode2[KeyCode2["KeyR"] = 48] = "KeyR";
  7032. KeyCode2[KeyCode2["KeyS"] = 49] = "KeyS";
  7033. KeyCode2[KeyCode2["KeyT"] = 50] = "KeyT";
  7034. KeyCode2[KeyCode2["KeyU"] = 51] = "KeyU";
  7035. KeyCode2[KeyCode2["KeyV"] = 52] = "KeyV";
  7036. KeyCode2[KeyCode2["KeyW"] = 53] = "KeyW";
  7037. KeyCode2[KeyCode2["KeyX"] = 54] = "KeyX";
  7038. KeyCode2[KeyCode2["KeyY"] = 55] = "KeyY";
  7039. KeyCode2[KeyCode2["KeyZ"] = 56] = "KeyZ";
  7040. KeyCode2[KeyCode2["Meta"] = 57] = "Meta";
  7041. KeyCode2[KeyCode2["ContextMenu"] = 58] = "ContextMenu";
  7042. KeyCode2[KeyCode2["F1"] = 59] = "F1";
  7043. KeyCode2[KeyCode2["F2"] = 60] = "F2";
  7044. KeyCode2[KeyCode2["F3"] = 61] = "F3";
  7045. KeyCode2[KeyCode2["F4"] = 62] = "F4";
  7046. KeyCode2[KeyCode2["F5"] = 63] = "F5";
  7047. KeyCode2[KeyCode2["F6"] = 64] = "F6";
  7048. KeyCode2[KeyCode2["F7"] = 65] = "F7";
  7049. KeyCode2[KeyCode2["F8"] = 66] = "F8";
  7050. KeyCode2[KeyCode2["F9"] = 67] = "F9";
  7051. KeyCode2[KeyCode2["F10"] = 68] = "F10";
  7052. KeyCode2[KeyCode2["F11"] = 69] = "F11";
  7053. KeyCode2[KeyCode2["F12"] = 70] = "F12";
  7054. KeyCode2[KeyCode2["F13"] = 71] = "F13";
  7055. KeyCode2[KeyCode2["F14"] = 72] = "F14";
  7056. KeyCode2[KeyCode2["F15"] = 73] = "F15";
  7057. KeyCode2[KeyCode2["F16"] = 74] = "F16";
  7058. KeyCode2[KeyCode2["F17"] = 75] = "F17";
  7059. KeyCode2[KeyCode2["F18"] = 76] = "F18";
  7060. KeyCode2[KeyCode2["F19"] = 77] = "F19";
  7061. KeyCode2[KeyCode2["NumLock"] = 78] = "NumLock";
  7062. KeyCode2[KeyCode2["ScrollLock"] = 79] = "ScrollLock";
  7063. KeyCode2[KeyCode2["Semicolon"] = 80] = "Semicolon";
  7064. KeyCode2[KeyCode2["Equal"] = 81] = "Equal";
  7065. KeyCode2[KeyCode2["Comma"] = 82] = "Comma";
  7066. KeyCode2[KeyCode2["Minus"] = 83] = "Minus";
  7067. KeyCode2[KeyCode2["Period"] = 84] = "Period";
  7068. KeyCode2[KeyCode2["Slash"] = 85] = "Slash";
  7069. KeyCode2[KeyCode2["Backquote"] = 86] = "Backquote";
  7070. KeyCode2[KeyCode2["BracketLeft"] = 87] = "BracketLeft";
  7071. KeyCode2[KeyCode2["Backslash"] = 88] = "Backslash";
  7072. KeyCode2[KeyCode2["BracketRight"] = 89] = "BracketRight";
  7073. KeyCode2[KeyCode2["Quote"] = 90] = "Quote";
  7074. KeyCode2[KeyCode2["OEM_8"] = 91] = "OEM_8";
  7075. KeyCode2[KeyCode2["IntlBackslash"] = 92] = "IntlBackslash";
  7076. KeyCode2[KeyCode2["Numpad0"] = 93] = "Numpad0";
  7077. KeyCode2[KeyCode2["Numpad1"] = 94] = "Numpad1";
  7078. KeyCode2[KeyCode2["Numpad2"] = 95] = "Numpad2";
  7079. KeyCode2[KeyCode2["Numpad3"] = 96] = "Numpad3";
  7080. KeyCode2[KeyCode2["Numpad4"] = 97] = "Numpad4";
  7081. KeyCode2[KeyCode2["Numpad5"] = 98] = "Numpad5";
  7082. KeyCode2[KeyCode2["Numpad6"] = 99] = "Numpad6";
  7083. KeyCode2[KeyCode2["Numpad7"] = 100] = "Numpad7";
  7084. KeyCode2[KeyCode2["Numpad8"] = 101] = "Numpad8";
  7085. KeyCode2[KeyCode2["Numpad9"] = 102] = "Numpad9";
  7086. KeyCode2[KeyCode2["NumpadMultiply"] = 103] = "NumpadMultiply";
  7087. KeyCode2[KeyCode2["NumpadAdd"] = 104] = "NumpadAdd";
  7088. KeyCode2[KeyCode2["NUMPAD_SEPARATOR"] = 105] = "NUMPAD_SEPARATOR";
  7089. KeyCode2[KeyCode2["NumpadSubtract"] = 106] = "NumpadSubtract";
  7090. KeyCode2[KeyCode2["NumpadDecimal"] = 107] = "NumpadDecimal";
  7091. KeyCode2[KeyCode2["NumpadDivide"] = 108] = "NumpadDivide";
  7092. KeyCode2[KeyCode2["KEY_IN_COMPOSITION"] = 109] = "KEY_IN_COMPOSITION";
  7093. KeyCode2[KeyCode2["ABNT_C1"] = 110] = "ABNT_C1";
  7094. KeyCode2[KeyCode2["ABNT_C2"] = 111] = "ABNT_C2";
  7095. KeyCode2[KeyCode2["AudioVolumeMute"] = 112] = "AudioVolumeMute";
  7096. KeyCode2[KeyCode2["AudioVolumeUp"] = 113] = "AudioVolumeUp";
  7097. KeyCode2[KeyCode2["AudioVolumeDown"] = 114] = "AudioVolumeDown";
  7098. KeyCode2[KeyCode2["BrowserSearch"] = 115] = "BrowserSearch";
  7099. KeyCode2[KeyCode2["BrowserHome"] = 116] = "BrowserHome";
  7100. KeyCode2[KeyCode2["BrowserBack"] = 117] = "BrowserBack";
  7101. KeyCode2[KeyCode2["BrowserForward"] = 118] = "BrowserForward";
  7102. KeyCode2[KeyCode2["MediaTrackNext"] = 119] = "MediaTrackNext";
  7103. KeyCode2[KeyCode2["MediaTrackPrevious"] = 120] = "MediaTrackPrevious";
  7104. KeyCode2[KeyCode2["MediaStop"] = 121] = "MediaStop";
  7105. KeyCode2[KeyCode2["MediaPlayPause"] = 122] = "MediaPlayPause";
  7106. KeyCode2[KeyCode2["LaunchMediaPlayer"] = 123] = "LaunchMediaPlayer";
  7107. KeyCode2[KeyCode2["LaunchMail"] = 124] = "LaunchMail";
  7108. KeyCode2[KeyCode2["LaunchApp2"] = 125] = "LaunchApp2";
  7109. KeyCode2[KeyCode2["Clear"] = 126] = "Clear";
  7110. KeyCode2[KeyCode2["MAX_VALUE"] = 127] = "MAX_VALUE";
  7111. })(KeyCode || (KeyCode = {}));
  7112. var MarkerSeverity;
  7113. (function(MarkerSeverity2) {
  7114. MarkerSeverity2[MarkerSeverity2["Hint"] = 1] = "Hint";
  7115. MarkerSeverity2[MarkerSeverity2["Info"] = 2] = "Info";
  7116. MarkerSeverity2[MarkerSeverity2["Warning"] = 4] = "Warning";
  7117. MarkerSeverity2[MarkerSeverity2["Error"] = 8] = "Error";
  7118. })(MarkerSeverity || (MarkerSeverity = {}));
  7119. var MarkerTag;
  7120. (function(MarkerTag2) {
  7121. MarkerTag2[MarkerTag2["Unnecessary"] = 1] = "Unnecessary";
  7122. MarkerTag2[MarkerTag2["Deprecated"] = 2] = "Deprecated";
  7123. })(MarkerTag || (MarkerTag = {}));
  7124. var MinimapPosition;
  7125. (function(MinimapPosition3) {
  7126. MinimapPosition3[MinimapPosition3["Inline"] = 1] = "Inline";
  7127. MinimapPosition3[MinimapPosition3["Gutter"] = 2] = "Gutter";
  7128. })(MinimapPosition || (MinimapPosition = {}));
  7129. var MouseTargetType;
  7130. (function(MouseTargetType2) {
  7131. MouseTargetType2[MouseTargetType2["UNKNOWN"] = 0] = "UNKNOWN";
  7132. MouseTargetType2[MouseTargetType2["TEXTAREA"] = 1] = "TEXTAREA";
  7133. MouseTargetType2[MouseTargetType2["GUTTER_GLYPH_MARGIN"] = 2] = "GUTTER_GLYPH_MARGIN";
  7134. MouseTargetType2[MouseTargetType2["GUTTER_LINE_NUMBERS"] = 3] = "GUTTER_LINE_NUMBERS";
  7135. MouseTargetType2[MouseTargetType2["GUTTER_LINE_DECORATIONS"] = 4] = "GUTTER_LINE_DECORATIONS";
  7136. MouseTargetType2[MouseTargetType2["GUTTER_VIEW_ZONE"] = 5] = "GUTTER_VIEW_ZONE";
  7137. MouseTargetType2[MouseTargetType2["CONTENT_TEXT"] = 6] = "CONTENT_TEXT";
  7138. MouseTargetType2[MouseTargetType2["CONTENT_EMPTY"] = 7] = "CONTENT_EMPTY";
  7139. MouseTargetType2[MouseTargetType2["CONTENT_VIEW_ZONE"] = 8] = "CONTENT_VIEW_ZONE";
  7140. MouseTargetType2[MouseTargetType2["CONTENT_WIDGET"] = 9] = "CONTENT_WIDGET";
  7141. MouseTargetType2[MouseTargetType2["OVERVIEW_RULER"] = 10] = "OVERVIEW_RULER";
  7142. MouseTargetType2[MouseTargetType2["SCROLLBAR"] = 11] = "SCROLLBAR";
  7143. MouseTargetType2[MouseTargetType2["OVERLAY_WIDGET"] = 12] = "OVERLAY_WIDGET";
  7144. MouseTargetType2[MouseTargetType2["OUTSIDE_EDITOR"] = 13] = "OUTSIDE_EDITOR";
  7145. })(MouseTargetType || (MouseTargetType = {}));
  7146. var OverlayWidgetPositionPreference;
  7147. (function(OverlayWidgetPositionPreference2) {
  7148. OverlayWidgetPositionPreference2[OverlayWidgetPositionPreference2["TOP_RIGHT_CORNER"] = 0] = "TOP_RIGHT_CORNER";
  7149. OverlayWidgetPositionPreference2[OverlayWidgetPositionPreference2["BOTTOM_RIGHT_CORNER"] = 1] = "BOTTOM_RIGHT_CORNER";
  7150. OverlayWidgetPositionPreference2[OverlayWidgetPositionPreference2["TOP_CENTER"] = 2] = "TOP_CENTER";
  7151. })(OverlayWidgetPositionPreference || (OverlayWidgetPositionPreference = {}));
  7152. var OverviewRulerLane;
  7153. (function(OverviewRulerLane3) {
  7154. OverviewRulerLane3[OverviewRulerLane3["Left"] = 1] = "Left";
  7155. OverviewRulerLane3[OverviewRulerLane3["Center"] = 2] = "Center";
  7156. OverviewRulerLane3[OverviewRulerLane3["Right"] = 4] = "Right";
  7157. OverviewRulerLane3[OverviewRulerLane3["Full"] = 7] = "Full";
  7158. })(OverviewRulerLane || (OverviewRulerLane = {}));
  7159. var PositionAffinity;
  7160. (function(PositionAffinity2) {
  7161. PositionAffinity2[PositionAffinity2["Left"] = 0] = "Left";
  7162. PositionAffinity2[PositionAffinity2["Right"] = 1] = "Right";
  7163. PositionAffinity2[PositionAffinity2["None"] = 2] = "None";
  7164. })(PositionAffinity || (PositionAffinity = {}));
  7165. var RenderLineNumbersType;
  7166. (function(RenderLineNumbersType2) {
  7167. RenderLineNumbersType2[RenderLineNumbersType2["Off"] = 0] = "Off";
  7168. RenderLineNumbersType2[RenderLineNumbersType2["On"] = 1] = "On";
  7169. RenderLineNumbersType2[RenderLineNumbersType2["Relative"] = 2] = "Relative";
  7170. RenderLineNumbersType2[RenderLineNumbersType2["Interval"] = 3] = "Interval";
  7171. RenderLineNumbersType2[RenderLineNumbersType2["Custom"] = 4] = "Custom";
  7172. })(RenderLineNumbersType || (RenderLineNumbersType = {}));
  7173. var RenderMinimap;
  7174. (function(RenderMinimap2) {
  7175. RenderMinimap2[RenderMinimap2["None"] = 0] = "None";
  7176. RenderMinimap2[RenderMinimap2["Text"] = 1] = "Text";
  7177. RenderMinimap2[RenderMinimap2["Blocks"] = 2] = "Blocks";
  7178. })(RenderMinimap || (RenderMinimap = {}));
  7179. var ScrollType;
  7180. (function(ScrollType2) {
  7181. ScrollType2[ScrollType2["Smooth"] = 0] = "Smooth";
  7182. ScrollType2[ScrollType2["Immediate"] = 1] = "Immediate";
  7183. })(ScrollType || (ScrollType = {}));
  7184. var ScrollbarVisibility;
  7185. (function(ScrollbarVisibility2) {
  7186. ScrollbarVisibility2[ScrollbarVisibility2["Auto"] = 1] = "Auto";
  7187. ScrollbarVisibility2[ScrollbarVisibility2["Hidden"] = 2] = "Hidden";
  7188. ScrollbarVisibility2[ScrollbarVisibility2["Visible"] = 3] = "Visible";
  7189. })(ScrollbarVisibility || (ScrollbarVisibility = {}));
  7190. var SelectionDirection;
  7191. (function(SelectionDirection2) {
  7192. SelectionDirection2[SelectionDirection2["LTR"] = 0] = "LTR";
  7193. SelectionDirection2[SelectionDirection2["RTL"] = 1] = "RTL";
  7194. })(SelectionDirection || (SelectionDirection = {}));
  7195. var SignatureHelpTriggerKind2;
  7196. (function(SignatureHelpTriggerKind3) {
  7197. SignatureHelpTriggerKind3[SignatureHelpTriggerKind3["Invoke"] = 1] = "Invoke";
  7198. SignatureHelpTriggerKind3[SignatureHelpTriggerKind3["TriggerCharacter"] = 2] = "TriggerCharacter";
  7199. SignatureHelpTriggerKind3[SignatureHelpTriggerKind3["ContentChange"] = 3] = "ContentChange";
  7200. })(SignatureHelpTriggerKind2 || (SignatureHelpTriggerKind2 = {}));
  7201. var SymbolKind;
  7202. (function(SymbolKind2) {
  7203. SymbolKind2[SymbolKind2["File"] = 0] = "File";
  7204. SymbolKind2[SymbolKind2["Module"] = 1] = "Module";
  7205. SymbolKind2[SymbolKind2["Namespace"] = 2] = "Namespace";
  7206. SymbolKind2[SymbolKind2["Package"] = 3] = "Package";
  7207. SymbolKind2[SymbolKind2["Class"] = 4] = "Class";
  7208. SymbolKind2[SymbolKind2["Method"] = 5] = "Method";
  7209. SymbolKind2[SymbolKind2["Property"] = 6] = "Property";
  7210. SymbolKind2[SymbolKind2["Field"] = 7] = "Field";
  7211. SymbolKind2[SymbolKind2["Constructor"] = 8] = "Constructor";
  7212. SymbolKind2[SymbolKind2["Enum"] = 9] = "Enum";
  7213. SymbolKind2[SymbolKind2["Interface"] = 10] = "Interface";
  7214. SymbolKind2[SymbolKind2["Function"] = 11] = "Function";
  7215. SymbolKind2[SymbolKind2["Variable"] = 12] = "Variable";
  7216. SymbolKind2[SymbolKind2["Constant"] = 13] = "Constant";
  7217. SymbolKind2[SymbolKind2["String"] = 14] = "String";
  7218. SymbolKind2[SymbolKind2["Number"] = 15] = "Number";
  7219. SymbolKind2[SymbolKind2["Boolean"] = 16] = "Boolean";
  7220. SymbolKind2[SymbolKind2["Array"] = 17] = "Array";
  7221. SymbolKind2[SymbolKind2["Object"] = 18] = "Object";
  7222. SymbolKind2[SymbolKind2["Key"] = 19] = "Key";
  7223. SymbolKind2[SymbolKind2["Null"] = 20] = "Null";
  7224. SymbolKind2[SymbolKind2["EnumMember"] = 21] = "EnumMember";
  7225. SymbolKind2[SymbolKind2["Struct"] = 22] = "Struct";
  7226. SymbolKind2[SymbolKind2["Event"] = 23] = "Event";
  7227. SymbolKind2[SymbolKind2["Operator"] = 24] = "Operator";
  7228. SymbolKind2[SymbolKind2["TypeParameter"] = 25] = "TypeParameter";
  7229. })(SymbolKind || (SymbolKind = {}));
  7230. var SymbolTag;
  7231. (function(SymbolTag2) {
  7232. SymbolTag2[SymbolTag2["Deprecated"] = 1] = "Deprecated";
  7233. })(SymbolTag || (SymbolTag = {}));
  7234. var TextEditorCursorBlinkingStyle;
  7235. (function(TextEditorCursorBlinkingStyle2) {
  7236. TextEditorCursorBlinkingStyle2[TextEditorCursorBlinkingStyle2["Hidden"] = 0] = "Hidden";
  7237. TextEditorCursorBlinkingStyle2[TextEditorCursorBlinkingStyle2["Blink"] = 1] = "Blink";
  7238. TextEditorCursorBlinkingStyle2[TextEditorCursorBlinkingStyle2["Smooth"] = 2] = "Smooth";
  7239. TextEditorCursorBlinkingStyle2[TextEditorCursorBlinkingStyle2["Phase"] = 3] = "Phase";
  7240. TextEditorCursorBlinkingStyle2[TextEditorCursorBlinkingStyle2["Expand"] = 4] = "Expand";
  7241. TextEditorCursorBlinkingStyle2[TextEditorCursorBlinkingStyle2["Solid"] = 5] = "Solid";
  7242. })(TextEditorCursorBlinkingStyle || (TextEditorCursorBlinkingStyle = {}));
  7243. var TextEditorCursorStyle;
  7244. (function(TextEditorCursorStyle2) {
  7245. TextEditorCursorStyle2[TextEditorCursorStyle2["Line"] = 1] = "Line";
  7246. TextEditorCursorStyle2[TextEditorCursorStyle2["Block"] = 2] = "Block";
  7247. TextEditorCursorStyle2[TextEditorCursorStyle2["Underline"] = 3] = "Underline";
  7248. TextEditorCursorStyle2[TextEditorCursorStyle2["LineThin"] = 4] = "LineThin";
  7249. TextEditorCursorStyle2[TextEditorCursorStyle2["BlockOutline"] = 5] = "BlockOutline";
  7250. TextEditorCursorStyle2[TextEditorCursorStyle2["UnderlineThin"] = 6] = "UnderlineThin";
  7251. })(TextEditorCursorStyle || (TextEditorCursorStyle = {}));
  7252. var TrackedRangeStickiness;
  7253. (function(TrackedRangeStickiness2) {
  7254. TrackedRangeStickiness2[TrackedRangeStickiness2["AlwaysGrowsWhenTypingAtEdges"] = 0] = "AlwaysGrowsWhenTypingAtEdges";
  7255. TrackedRangeStickiness2[TrackedRangeStickiness2["NeverGrowsWhenTypingAtEdges"] = 1] = "NeverGrowsWhenTypingAtEdges";
  7256. TrackedRangeStickiness2[TrackedRangeStickiness2["GrowsOnlyWhenTypingBefore"] = 2] = "GrowsOnlyWhenTypingBefore";
  7257. TrackedRangeStickiness2[TrackedRangeStickiness2["GrowsOnlyWhenTypingAfter"] = 3] = "GrowsOnlyWhenTypingAfter";
  7258. })(TrackedRangeStickiness || (TrackedRangeStickiness = {}));
  7259. var WrappingIndent;
  7260. (function(WrappingIndent2) {
  7261. WrappingIndent2[WrappingIndent2["None"] = 0] = "None";
  7262. WrappingIndent2[WrappingIndent2["Same"] = 1] = "Same";
  7263. WrappingIndent2[WrappingIndent2["Indent"] = 2] = "Indent";
  7264. WrappingIndent2[WrappingIndent2["DeepIndent"] = 3] = "DeepIndent";
  7265. })(WrappingIndent || (WrappingIndent = {}));
  7266. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/services/editorBaseApi.js
  7267. var KeyMod = class {
  7268. static chord(firstPart, secondPart) {
  7269. return KeyChord(firstPart, secondPart);
  7270. }
  7271. };
  7272. KeyMod.CtrlCmd = 2048;
  7273. KeyMod.Shift = 1024;
  7274. KeyMod.Alt = 512;
  7275. KeyMod.WinCtrl = 256;
  7276. function createMonacoBaseAPI() {
  7277. return {
  7278. editor: void 0,
  7279. languages: void 0,
  7280. CancellationTokenSource,
  7281. Emitter,
  7282. KeyCode,
  7283. KeyMod,
  7284. Position,
  7285. Range,
  7286. Selection,
  7287. SelectionDirection,
  7288. MarkerSeverity,
  7289. MarkerTag,
  7290. Uri: URI,
  7291. Token
  7292. };
  7293. }
  7294. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js
  7295. var WordCharacterClassifier = class extends CharacterClassifier {
  7296. constructor(wordSeparators) {
  7297. super(0);
  7298. for (let i = 0, len = wordSeparators.length; i < len; i++) {
  7299. this.set(wordSeparators.charCodeAt(i), 2);
  7300. }
  7301. this.set(32, 1);
  7302. this.set(9, 1);
  7303. }
  7304. };
  7305. function once2(computeFn) {
  7306. const cache = {};
  7307. return (input) => {
  7308. if (!cache.hasOwnProperty(input)) {
  7309. cache[input] = computeFn(input);
  7310. }
  7311. return cache[input];
  7312. };
  7313. }
  7314. var getMapForWordSeparators = once2((input) => new WordCharacterClassifier(input));
  7315. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/model.js
  7316. var OverviewRulerLane2;
  7317. (function(OverviewRulerLane3) {
  7318. OverviewRulerLane3[OverviewRulerLane3["Left"] = 1] = "Left";
  7319. OverviewRulerLane3[OverviewRulerLane3["Center"] = 2] = "Center";
  7320. OverviewRulerLane3[OverviewRulerLane3["Right"] = 4] = "Right";
  7321. OverviewRulerLane3[OverviewRulerLane3["Full"] = 7] = "Full";
  7322. })(OverviewRulerLane2 || (OverviewRulerLane2 = {}));
  7323. var MinimapPosition2;
  7324. (function(MinimapPosition3) {
  7325. MinimapPosition3[MinimapPosition3["Inline"] = 1] = "Inline";
  7326. MinimapPosition3[MinimapPosition3["Gutter"] = 2] = "Gutter";
  7327. })(MinimapPosition2 || (MinimapPosition2 = {}));
  7328. var InjectedTextCursorStops2;
  7329. (function(InjectedTextCursorStops3) {
  7330. InjectedTextCursorStops3[InjectedTextCursorStops3["Both"] = 0] = "Both";
  7331. InjectedTextCursorStops3[InjectedTextCursorStops3["Right"] = 1] = "Right";
  7332. InjectedTextCursorStops3[InjectedTextCursorStops3["Left"] = 2] = "Left";
  7333. InjectedTextCursorStops3[InjectedTextCursorStops3["None"] = 3] = "None";
  7334. })(InjectedTextCursorStops2 || (InjectedTextCursorStops2 = {}));
  7335. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js
  7336. function leftIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength) {
  7337. if (matchStartIndex === 0) {
  7338. return true;
  7339. }
  7340. const charBefore = text.charCodeAt(matchStartIndex - 1);
  7341. if (wordSeparators.get(charBefore) !== 0) {
  7342. return true;
  7343. }
  7344. if (charBefore === 13 || charBefore === 10) {
  7345. return true;
  7346. }
  7347. if (matchLength > 0) {
  7348. const firstCharInMatch = text.charCodeAt(matchStartIndex);
  7349. if (wordSeparators.get(firstCharInMatch) !== 0) {
  7350. return true;
  7351. }
  7352. }
  7353. return false;
  7354. }
  7355. function rightIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength) {
  7356. if (matchStartIndex + matchLength === textLength) {
  7357. return true;
  7358. }
  7359. const charAfter = text.charCodeAt(matchStartIndex + matchLength);
  7360. if (wordSeparators.get(charAfter) !== 0) {
  7361. return true;
  7362. }
  7363. if (charAfter === 13 || charAfter === 10) {
  7364. return true;
  7365. }
  7366. if (matchLength > 0) {
  7367. const lastCharInMatch = text.charCodeAt(matchStartIndex + matchLength - 1);
  7368. if (wordSeparators.get(lastCharInMatch) !== 0) {
  7369. return true;
  7370. }
  7371. }
  7372. return false;
  7373. }
  7374. function isValidMatch(wordSeparators, text, textLength, matchStartIndex, matchLength) {
  7375. return leftIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength) && rightIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength);
  7376. }
  7377. var Searcher = class {
  7378. constructor(wordSeparators, searchRegex) {
  7379. this._wordSeparators = wordSeparators;
  7380. this._searchRegex = searchRegex;
  7381. this._prevMatchStartIndex = -1;
  7382. this._prevMatchLength = 0;
  7383. }
  7384. reset(lastIndex) {
  7385. this._searchRegex.lastIndex = lastIndex;
  7386. this._prevMatchStartIndex = -1;
  7387. this._prevMatchLength = 0;
  7388. }
  7389. next(text) {
  7390. const textLength = text.length;
  7391. let m;
  7392. do {
  7393. if (this._prevMatchStartIndex + this._prevMatchLength === textLength) {
  7394. return null;
  7395. }
  7396. m = this._searchRegex.exec(text);
  7397. if (!m) {
  7398. return null;
  7399. }
  7400. const matchStartIndex = m.index;
  7401. const matchLength = m[0].length;
  7402. if (matchStartIndex === this._prevMatchStartIndex && matchLength === this._prevMatchLength) {
  7403. if (matchLength === 0) {
  7404. if (getNextCodePoint(text, textLength, this._searchRegex.lastIndex) > 65535) {
  7405. this._searchRegex.lastIndex += 2;
  7406. } else {
  7407. this._searchRegex.lastIndex += 1;
  7408. }
  7409. continue;
  7410. }
  7411. return null;
  7412. }
  7413. this._prevMatchStartIndex = matchStartIndex;
  7414. this._prevMatchLength = matchLength;
  7415. if (!this._wordSeparators || isValidMatch(this._wordSeparators, text, textLength, matchStartIndex, matchLength)) {
  7416. return m;
  7417. }
  7418. } while (m);
  7419. return null;
  7420. }
  7421. };
  7422. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/services/unicodeTextModelHighlighter.js
  7423. var UnicodeTextModelHighlighter = class {
  7424. static computeUnicodeHighlights(model, options, range) {
  7425. const startLine = range ? range.startLineNumber : 1;
  7426. const endLine = range ? range.endLineNumber : model.getLineCount();
  7427. const codePointHighlighter = new CodePointHighlighter(options);
  7428. const candidates = codePointHighlighter.getCandidateCodePoints();
  7429. let regex;
  7430. if (candidates === "allNonBasicAscii") {
  7431. regex = new RegExp("[^\\t\\n\\r\\x20-\\x7E]", "g");
  7432. } else {
  7433. regex = new RegExp(`${buildRegExpCharClassExpr(Array.from(candidates))}`, "g");
  7434. }
  7435. const searcher = new Searcher(null, regex);
  7436. const ranges = [];
  7437. let hasMore = false;
  7438. let m;
  7439. let ambiguousCharacterCount = 0;
  7440. let invisibleCharacterCount = 0;
  7441. let nonBasicAsciiCharacterCount = 0;
  7442. forLoop:
  7443. for (let lineNumber = startLine, lineCount = endLine; lineNumber <= lineCount; lineNumber++) {
  7444. const lineContent = model.getLineContent(lineNumber);
  7445. const lineLength = lineContent.length;
  7446. searcher.reset(0);
  7447. do {
  7448. m = searcher.next(lineContent);
  7449. if (m) {
  7450. let startIndex = m.index;
  7451. let endIndex = m.index + m[0].length;
  7452. if (startIndex > 0) {
  7453. const charCodeBefore = lineContent.charCodeAt(startIndex - 1);
  7454. if (isHighSurrogate(charCodeBefore)) {
  7455. startIndex--;
  7456. }
  7457. }
  7458. if (endIndex + 1 < lineLength) {
  7459. const charCodeBefore = lineContent.charCodeAt(endIndex - 1);
  7460. if (isHighSurrogate(charCodeBefore)) {
  7461. endIndex++;
  7462. }
  7463. }
  7464. const str = lineContent.substring(startIndex, endIndex);
  7465. const word = getWordAtText(startIndex + 1, DEFAULT_WORD_REGEXP, lineContent, 0);
  7466. const highlightReason = codePointHighlighter.shouldHighlightNonBasicASCII(str, word ? word.word : null);
  7467. if (highlightReason !== 0) {
  7468. if (highlightReason === 3) {
  7469. ambiguousCharacterCount++;
  7470. } else if (highlightReason === 2) {
  7471. invisibleCharacterCount++;
  7472. } else if (highlightReason === 1) {
  7473. nonBasicAsciiCharacterCount++;
  7474. } else {
  7475. assertNever(highlightReason);
  7476. }
  7477. const MAX_RESULT_LENGTH = 1e3;
  7478. if (ranges.length >= MAX_RESULT_LENGTH) {
  7479. hasMore = true;
  7480. break forLoop;
  7481. }
  7482. ranges.push(new Range(lineNumber, startIndex + 1, lineNumber, endIndex + 1));
  7483. }
  7484. }
  7485. } while (m);
  7486. }
  7487. return {
  7488. ranges,
  7489. hasMore,
  7490. ambiguousCharacterCount,
  7491. invisibleCharacterCount,
  7492. nonBasicAsciiCharacterCount
  7493. };
  7494. }
  7495. static computeUnicodeHighlightReason(char, options) {
  7496. const codePointHighlighter = new CodePointHighlighter(options);
  7497. const reason = codePointHighlighter.shouldHighlightNonBasicASCII(char, null);
  7498. switch (reason) {
  7499. case 0:
  7500. return null;
  7501. case 2:
  7502. return {kind: 1};
  7503. case 3: {
  7504. const codePoint = char.codePointAt(0);
  7505. const primaryConfusable = codePointHighlighter.ambiguousCharacters.getPrimaryConfusable(codePoint);
  7506. const notAmbiguousInLocales = AmbiguousCharacters.getLocales().filter((l) => !AmbiguousCharacters.getInstance(new Set([...options.allowedLocales, l])).isAmbiguous(codePoint));
  7507. return {kind: 0, confusableWith: String.fromCodePoint(primaryConfusable), notAmbiguousInLocales};
  7508. }
  7509. case 1:
  7510. return {kind: 2};
  7511. }
  7512. }
  7513. };
  7514. function buildRegExpCharClassExpr(codePoints, flags) {
  7515. const src = `[${escapeRegExpCharacters(codePoints.map((i) => String.fromCodePoint(i)).join(""))}]`;
  7516. return src;
  7517. }
  7518. var CodePointHighlighter = class {
  7519. constructor(options) {
  7520. this.options = options;
  7521. this.allowedCodePoints = new Set(options.allowedCodePoints);
  7522. this.ambiguousCharacters = AmbiguousCharacters.getInstance(new Set(options.allowedLocales));
  7523. }
  7524. getCandidateCodePoints() {
  7525. if (this.options.nonBasicASCII) {
  7526. return "allNonBasicAscii";
  7527. }
  7528. const set = new Set();
  7529. if (this.options.invisibleCharacters) {
  7530. for (const cp of InvisibleCharacters.codePoints) {
  7531. if (!isAllowedInvisibleCharacter(String.fromCodePoint(cp))) {
  7532. set.add(cp);
  7533. }
  7534. }
  7535. }
  7536. if (this.options.ambiguousCharacters) {
  7537. for (const cp of this.ambiguousCharacters.getConfusableCodePoints()) {
  7538. set.add(cp);
  7539. }
  7540. }
  7541. for (const cp of this.allowedCodePoints) {
  7542. set.delete(cp);
  7543. }
  7544. return set;
  7545. }
  7546. shouldHighlightNonBasicASCII(character, wordContext) {
  7547. const codePoint = character.codePointAt(0);
  7548. if (this.allowedCodePoints.has(codePoint)) {
  7549. return 0;
  7550. }
  7551. if (this.options.nonBasicASCII) {
  7552. return 1;
  7553. }
  7554. let hasBasicASCIICharacters = false;
  7555. let hasNonConfusableNonBasicAsciiCharacter = false;
  7556. if (wordContext) {
  7557. for (let char of wordContext) {
  7558. const codePoint2 = char.codePointAt(0);
  7559. const isBasicASCII2 = isBasicASCII(char);
  7560. hasBasicASCIICharacters = hasBasicASCIICharacters || isBasicASCII2;
  7561. if (!isBasicASCII2 && !this.ambiguousCharacters.isAmbiguous(codePoint2) && !InvisibleCharacters.isInvisibleCharacter(codePoint2)) {
  7562. hasNonConfusableNonBasicAsciiCharacter = true;
  7563. }
  7564. }
  7565. }
  7566. if (!hasBasicASCIICharacters && hasNonConfusableNonBasicAsciiCharacter) {
  7567. return 0;
  7568. }
  7569. if (this.options.invisibleCharacters) {
  7570. if (!isAllowedInvisibleCharacter(character) && InvisibleCharacters.isInvisibleCharacter(codePoint)) {
  7571. return 2;
  7572. }
  7573. }
  7574. if (this.options.ambiguousCharacters) {
  7575. if (this.ambiguousCharacters.isAmbiguous(codePoint)) {
  7576. return 3;
  7577. }
  7578. }
  7579. return 0;
  7580. }
  7581. };
  7582. function isAllowedInvisibleCharacter(character) {
  7583. return character === " " || character === "\n" || character === " ";
  7584. }
  7585. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/common/services/editorSimpleWorker.js
  7586. var __awaiter2 = function(thisArg, _arguments, P, generator) {
  7587. function adopt(value) {
  7588. return value instanceof P ? value : new P(function(resolve2) {
  7589. resolve2(value);
  7590. });
  7591. }
  7592. return new (P || (P = Promise))(function(resolve2, reject) {
  7593. function fulfilled(value) {
  7594. try {
  7595. step(generator.next(value));
  7596. } catch (e) {
  7597. reject(e);
  7598. }
  7599. }
  7600. function rejected(value) {
  7601. try {
  7602. step(generator["throw"](value));
  7603. } catch (e) {
  7604. reject(e);
  7605. }
  7606. }
  7607. function step(result) {
  7608. result.done ? resolve2(result.value) : adopt(result.value).then(fulfilled, rejected);
  7609. }
  7610. step((generator = generator.apply(thisArg, _arguments || [])).next());
  7611. });
  7612. };
  7613. var MirrorModel = class extends MirrorTextModel {
  7614. get uri() {
  7615. return this._uri;
  7616. }
  7617. get eol() {
  7618. return this._eol;
  7619. }
  7620. getValue() {
  7621. return this.getText();
  7622. }
  7623. getLinesContent() {
  7624. return this._lines.slice(0);
  7625. }
  7626. getLineCount() {
  7627. return this._lines.length;
  7628. }
  7629. getLineContent(lineNumber) {
  7630. return this._lines[lineNumber - 1];
  7631. }
  7632. getWordAtPosition(position, wordDefinition) {
  7633. const wordAtText = getWordAtText(position.column, ensureValidWordDefinition(wordDefinition), this._lines[position.lineNumber - 1], 0);
  7634. if (wordAtText) {
  7635. return new Range(position.lineNumber, wordAtText.startColumn, position.lineNumber, wordAtText.endColumn);
  7636. }
  7637. return null;
  7638. }
  7639. words(wordDefinition) {
  7640. const lines = this._lines;
  7641. const wordenize = this._wordenize.bind(this);
  7642. let lineNumber = 0;
  7643. let lineText = "";
  7644. let wordRangesIdx = 0;
  7645. let wordRanges = [];
  7646. return {
  7647. *[Symbol.iterator]() {
  7648. while (true) {
  7649. if (wordRangesIdx < wordRanges.length) {
  7650. const value = lineText.substring(wordRanges[wordRangesIdx].start, wordRanges[wordRangesIdx].end);
  7651. wordRangesIdx += 1;
  7652. yield value;
  7653. } else {
  7654. if (lineNumber < lines.length) {
  7655. lineText = lines[lineNumber];
  7656. wordRanges = wordenize(lineText, wordDefinition);
  7657. wordRangesIdx = 0;
  7658. lineNumber += 1;
  7659. } else {
  7660. break;
  7661. }
  7662. }
  7663. }
  7664. }
  7665. };
  7666. }
  7667. getLineWords(lineNumber, wordDefinition) {
  7668. const content = this._lines[lineNumber - 1];
  7669. const ranges = this._wordenize(content, wordDefinition);
  7670. const words = [];
  7671. for (const range of ranges) {
  7672. words.push({
  7673. word: content.substring(range.start, range.end),
  7674. startColumn: range.start + 1,
  7675. endColumn: range.end + 1
  7676. });
  7677. }
  7678. return words;
  7679. }
  7680. _wordenize(content, wordDefinition) {
  7681. const result = [];
  7682. let match;
  7683. wordDefinition.lastIndex = 0;
  7684. while (match = wordDefinition.exec(content)) {
  7685. if (match[0].length === 0) {
  7686. break;
  7687. }
  7688. result.push({start: match.index, end: match.index + match[0].length});
  7689. }
  7690. return result;
  7691. }
  7692. getValueInRange(range) {
  7693. range = this._validateRange(range);
  7694. if (range.startLineNumber === range.endLineNumber) {
  7695. return this._lines[range.startLineNumber - 1].substring(range.startColumn - 1, range.endColumn - 1);
  7696. }
  7697. const lineEnding = this._eol;
  7698. const startLineIndex = range.startLineNumber - 1;
  7699. const endLineIndex = range.endLineNumber - 1;
  7700. const resultLines = [];
  7701. resultLines.push(this._lines[startLineIndex].substring(range.startColumn - 1));
  7702. for (let i = startLineIndex + 1; i < endLineIndex; i++) {
  7703. resultLines.push(this._lines[i]);
  7704. }
  7705. resultLines.push(this._lines[endLineIndex].substring(0, range.endColumn - 1));
  7706. return resultLines.join(lineEnding);
  7707. }
  7708. offsetAt(position) {
  7709. position = this._validatePosition(position);
  7710. this._ensureLineStarts();
  7711. return this._lineStarts.getPrefixSum(position.lineNumber - 2) + (position.column - 1);
  7712. }
  7713. positionAt(offset) {
  7714. offset = Math.floor(offset);
  7715. offset = Math.max(0, offset);
  7716. this._ensureLineStarts();
  7717. const out = this._lineStarts.getIndexOf(offset);
  7718. const lineLength = this._lines[out.index].length;
  7719. return {
  7720. lineNumber: 1 + out.index,
  7721. column: 1 + Math.min(out.remainder, lineLength)
  7722. };
  7723. }
  7724. _validateRange(range) {
  7725. const start = this._validatePosition({lineNumber: range.startLineNumber, column: range.startColumn});
  7726. const end = this._validatePosition({lineNumber: range.endLineNumber, column: range.endColumn});
  7727. if (start.lineNumber !== range.startLineNumber || start.column !== range.startColumn || end.lineNumber !== range.endLineNumber || end.column !== range.endColumn) {
  7728. return {
  7729. startLineNumber: start.lineNumber,
  7730. startColumn: start.column,
  7731. endLineNumber: end.lineNumber,
  7732. endColumn: end.column
  7733. };
  7734. }
  7735. return range;
  7736. }
  7737. _validatePosition(position) {
  7738. if (!Position.isIPosition(position)) {
  7739. throw new Error("bad position");
  7740. }
  7741. let {lineNumber, column} = position;
  7742. let hasChanged = false;
  7743. if (lineNumber < 1) {
  7744. lineNumber = 1;
  7745. column = 1;
  7746. hasChanged = true;
  7747. } else if (lineNumber > this._lines.length) {
  7748. lineNumber = this._lines.length;
  7749. column = this._lines[lineNumber - 1].length + 1;
  7750. hasChanged = true;
  7751. } else {
  7752. const maxCharacter = this._lines[lineNumber - 1].length + 1;
  7753. if (column < 1) {
  7754. column = 1;
  7755. hasChanged = true;
  7756. } else if (column > maxCharacter) {
  7757. column = maxCharacter;
  7758. hasChanged = true;
  7759. }
  7760. }
  7761. if (!hasChanged) {
  7762. return position;
  7763. } else {
  7764. return {lineNumber, column};
  7765. }
  7766. }
  7767. };
  7768. var EditorSimpleWorker = class {
  7769. constructor(host, foreignModuleFactory) {
  7770. this._host = host;
  7771. this._models = Object.create(null);
  7772. this._foreignModuleFactory = foreignModuleFactory;
  7773. this._foreignModule = null;
  7774. }
  7775. dispose() {
  7776. this._models = Object.create(null);
  7777. }
  7778. _getModel(uri) {
  7779. return this._models[uri];
  7780. }
  7781. _getModels() {
  7782. const all = [];
  7783. Object.keys(this._models).forEach((key) => all.push(this._models[key]));
  7784. return all;
  7785. }
  7786. acceptNewModel(data) {
  7787. this._models[data.url] = new MirrorModel(URI.parse(data.url), data.lines, data.EOL, data.versionId);
  7788. }
  7789. acceptModelChanged(strURL, e) {
  7790. if (!this._models[strURL]) {
  7791. return;
  7792. }
  7793. const model = this._models[strURL];
  7794. model.onEvents(e);
  7795. }
  7796. acceptRemovedModel(strURL) {
  7797. if (!this._models[strURL]) {
  7798. return;
  7799. }
  7800. delete this._models[strURL];
  7801. }
  7802. computeUnicodeHighlights(url, options, range) {
  7803. return __awaiter2(this, void 0, void 0, function* () {
  7804. const model = this._getModel(url);
  7805. if (!model) {
  7806. return {ranges: [], hasMore: false, ambiguousCharacterCount: 0, invisibleCharacterCount: 0, nonBasicAsciiCharacterCount: 0};
  7807. }
  7808. return UnicodeTextModelHighlighter.computeUnicodeHighlights(model, options, range);
  7809. });
  7810. }
  7811. computeDiff(originalUrl, modifiedUrl, ignoreTrimWhitespace, maxComputationTime) {
  7812. return __awaiter2(this, void 0, void 0, function* () {
  7813. const original = this._getModel(originalUrl);
  7814. const modified = this._getModel(modifiedUrl);
  7815. if (!original || !modified) {
  7816. return null;
  7817. }
  7818. const originalLines = original.getLinesContent();
  7819. const modifiedLines = modified.getLinesContent();
  7820. const diffComputer = new DiffComputer(originalLines, modifiedLines, {
  7821. shouldComputeCharChanges: true,
  7822. shouldPostProcessCharChanges: true,
  7823. shouldIgnoreTrimWhitespace: ignoreTrimWhitespace,
  7824. shouldMakePrettyDiff: true,
  7825. maxComputationTime
  7826. });
  7827. const diffResult = diffComputer.computeDiff();
  7828. const identical = diffResult.changes.length > 0 ? false : this._modelsAreIdentical(original, modified);
  7829. return {
  7830. quitEarly: diffResult.quitEarly,
  7831. identical,
  7832. changes: diffResult.changes
  7833. };
  7834. });
  7835. }
  7836. _modelsAreIdentical(original, modified) {
  7837. const originalLineCount = original.getLineCount();
  7838. const modifiedLineCount = modified.getLineCount();
  7839. if (originalLineCount !== modifiedLineCount) {
  7840. return false;
  7841. }
  7842. for (let line = 1; line <= originalLineCount; line++) {
  7843. const originalLine = original.getLineContent(line);
  7844. const modifiedLine = modified.getLineContent(line);
  7845. if (originalLine !== modifiedLine) {
  7846. return false;
  7847. }
  7848. }
  7849. return true;
  7850. }
  7851. computeMoreMinimalEdits(modelUrl, edits) {
  7852. return __awaiter2(this, void 0, void 0, function* () {
  7853. const model = this._getModel(modelUrl);
  7854. if (!model) {
  7855. return edits;
  7856. }
  7857. const result = [];
  7858. let lastEol = void 0;
  7859. edits = edits.slice(0).sort((a, b) => {
  7860. if (a.range && b.range) {
  7861. return Range.compareRangesUsingStarts(a.range, b.range);
  7862. }
  7863. const aRng = a.range ? 0 : 1;
  7864. const bRng = b.range ? 0 : 1;
  7865. return aRng - bRng;
  7866. });
  7867. for (let {range, text, eol} of edits) {
  7868. if (typeof eol === "number") {
  7869. lastEol = eol;
  7870. }
  7871. if (Range.isEmpty(range) && !text) {
  7872. continue;
  7873. }
  7874. const original = model.getValueInRange(range);
  7875. text = text.replace(/\r\n|\n|\r/g, model.eol);
  7876. if (original === text) {
  7877. continue;
  7878. }
  7879. if (Math.max(text.length, original.length) > EditorSimpleWorker._diffLimit) {
  7880. result.push({range, text});
  7881. continue;
  7882. }
  7883. const changes = stringDiff(original, text, false);
  7884. const editOffset = model.offsetAt(Range.lift(range).getStartPosition());
  7885. for (const change of changes) {
  7886. const start = model.positionAt(editOffset + change.originalStart);
  7887. const end = model.positionAt(editOffset + change.originalStart + change.originalLength);
  7888. const newEdit = {
  7889. text: text.substr(change.modifiedStart, change.modifiedLength),
  7890. range: {startLineNumber: start.lineNumber, startColumn: start.column, endLineNumber: end.lineNumber, endColumn: end.column}
  7891. };
  7892. if (model.getValueInRange(newEdit.range) !== newEdit.text) {
  7893. result.push(newEdit);
  7894. }
  7895. }
  7896. }
  7897. if (typeof lastEol === "number") {
  7898. result.push({eol: lastEol, text: "", range: {startLineNumber: 0, startColumn: 0, endLineNumber: 0, endColumn: 0}});
  7899. }
  7900. return result;
  7901. });
  7902. }
  7903. computeLinks(modelUrl) {
  7904. return __awaiter2(this, void 0, void 0, function* () {
  7905. const model = this._getModel(modelUrl);
  7906. if (!model) {
  7907. return null;
  7908. }
  7909. return computeLinks(model);
  7910. });
  7911. }
  7912. textualSuggest(modelUrls, leadingWord, wordDef, wordDefFlags) {
  7913. return __awaiter2(this, void 0, void 0, function* () {
  7914. const sw = new StopWatch(true);
  7915. const wordDefRegExp = new RegExp(wordDef, wordDefFlags);
  7916. const seen = new Set();
  7917. outer:
  7918. for (let url of modelUrls) {
  7919. const model = this._getModel(url);
  7920. if (!model) {
  7921. continue;
  7922. }
  7923. for (let word of model.words(wordDefRegExp)) {
  7924. if (word === leadingWord || !isNaN(Number(word))) {
  7925. continue;
  7926. }
  7927. seen.add(word);
  7928. if (seen.size > EditorSimpleWorker._suggestionsLimit) {
  7929. break outer;
  7930. }
  7931. }
  7932. }
  7933. return {words: Array.from(seen), duration: sw.elapsed()};
  7934. });
  7935. }
  7936. computeWordRanges(modelUrl, range, wordDef, wordDefFlags) {
  7937. return __awaiter2(this, void 0, void 0, function* () {
  7938. const model = this._getModel(modelUrl);
  7939. if (!model) {
  7940. return Object.create(null);
  7941. }
  7942. const wordDefRegExp = new RegExp(wordDef, wordDefFlags);
  7943. const result = Object.create(null);
  7944. for (let line = range.startLineNumber; line < range.endLineNumber; line++) {
  7945. const words = model.getLineWords(line, wordDefRegExp);
  7946. for (const word of words) {
  7947. if (!isNaN(Number(word.word))) {
  7948. continue;
  7949. }
  7950. let array = result[word.word];
  7951. if (!array) {
  7952. array = [];
  7953. result[word.word] = array;
  7954. }
  7955. array.push({
  7956. startLineNumber: line,
  7957. startColumn: word.startColumn,
  7958. endLineNumber: line,
  7959. endColumn: word.endColumn
  7960. });
  7961. }
  7962. }
  7963. return result;
  7964. });
  7965. }
  7966. navigateValueSet(modelUrl, range, up, wordDef, wordDefFlags) {
  7967. return __awaiter2(this, void 0, void 0, function* () {
  7968. const model = this._getModel(modelUrl);
  7969. if (!model) {
  7970. return null;
  7971. }
  7972. const wordDefRegExp = new RegExp(wordDef, wordDefFlags);
  7973. if (range.startColumn === range.endColumn) {
  7974. range = {
  7975. startLineNumber: range.startLineNumber,
  7976. startColumn: range.startColumn,
  7977. endLineNumber: range.endLineNumber,
  7978. endColumn: range.endColumn + 1
  7979. };
  7980. }
  7981. const selectionText = model.getValueInRange(range);
  7982. const wordRange = model.getWordAtPosition({lineNumber: range.startLineNumber, column: range.startColumn}, wordDefRegExp);
  7983. if (!wordRange) {
  7984. return null;
  7985. }
  7986. const word = model.getValueInRange(wordRange);
  7987. const result = BasicInplaceReplace.INSTANCE.navigateValueSet(range, selectionText, wordRange, word, up);
  7988. return result;
  7989. });
  7990. }
  7991. loadForeignModule(moduleId, createData, foreignHostMethods) {
  7992. const proxyMethodRequest = (method, args) => {
  7993. return this._host.fhr(method, args);
  7994. };
  7995. const foreignHost = createProxyObject(foreignHostMethods, proxyMethodRequest);
  7996. const ctx = {
  7997. host: foreignHost,
  7998. getMirrorModels: () => {
  7999. return this._getModels();
  8000. }
  8001. };
  8002. if (this._foreignModuleFactory) {
  8003. this._foreignModule = this._foreignModuleFactory(ctx, createData);
  8004. return Promise.resolve(getAllMethodNames(this._foreignModule));
  8005. }
  8006. return Promise.reject(new Error(`Unexpected usage`));
  8007. }
  8008. fmr(method, args) {
  8009. if (!this._foreignModule || typeof this._foreignModule[method] !== "function") {
  8010. return Promise.reject(new Error("Missing requestHandler or method: " + method));
  8011. }
  8012. try {
  8013. return Promise.resolve(this._foreignModule[method].apply(this._foreignModule, args));
  8014. } catch (e) {
  8015. return Promise.reject(e);
  8016. }
  8017. }
  8018. };
  8019. EditorSimpleWorker._diffLimit = 1e5;
  8020. EditorSimpleWorker._suggestionsLimit = 1e4;
  8021. if (typeof importScripts === "function") {
  8022. globals.monaco = createMonacoBaseAPI();
  8023. }
  8024. // node_modules/.pnpm/monaco-editor@0.33.0/node_modules/monaco-editor/esm/vs/editor/editor.worker.js
  8025. var initialized = false;
  8026. function initialize(foreignModule) {
  8027. if (initialized) {
  8028. return;
  8029. }
  8030. initialized = true;
  8031. const simpleWorker = new SimpleWorkerServer((msg) => {
  8032. self.postMessage(msg);
  8033. }, (host) => new EditorSimpleWorker(host, foreignModule));
  8034. self.onmessage = (e) => {
  8035. simpleWorker.onmessage(e.data);
  8036. };
  8037. }
  8038. self.onmessage = (e) => {
  8039. if (!initialized) {
  8040. initialize(null);
  8041. }
  8042. };
  8043. })();